Ixonn Group

Noções Básicas do Módulo

You are here:
< All Topics
A documentação dos módulos é válida a partir da versão 2.3.2


Os módulos Ixonn usam a base de código da estrutura PHP do Codeigniter, como controladores, modelos, arquivos de linguagem, bibliotecas, visualizações, etc. Se você já conhece a estrutura do Codeigniter, poderá iniciar facilmente, caso contrário, recomendamos que você visite o site oficial. site e documentação.

Além disso, adicionamos várias funções auxiliares, recursos, ganchos de ação e filtros que facilitarão o processo de criação e integração de módulos.

Localização e nome dos módulos

Todos os módulos devem ser adicionados à pasta modules no diretório raiz onde o Ixonn está instalado e cada módulo deve ter um nome de pasta exclusivo e um arquivo init com o mesmo nome que o nome da pasta do módulo.

Criando seu primeiro módulo

Antes de começar a desenvolver um módulo, certifique-se de definir o modo de desenvolvimento para ver os erros e as funções / ganchos avisos de descontinuação.

Para começar e criar seu primeiro módulo, siga as etapas abaixo.

  • Navegue para a instalação do Ixonn e abra o diretório modules
  • Crie um novo diretório e nomeie-o após o seu módulo (e.q. sample_module)
  • Crie um novo arquivo PHP com o mesmo nome que o diretório do módulo, neste caso, sample_module.php, esse arquivo atuará como “arquivo init” para este módulo.

Nesse caso, o módulo já está criado e registrado, mas ainda não faz nada, nem adiciona nenhum nome ou descrição, adicionaremos os metadados do módulo como nome, descrição, URL, autor por meio de um comentário em bloco PHP que atuará como módulo cabeçalhos.

Os cabeçalhos dos módulos devem ser adicionados apenas ao arquivo do módulo init.

Agora abra o arquivo sample_module.php que criamos antes e adicione o seguinte comentário na parte superior do arquivo:

<? php

 

/ **

 * Garante que o arquivo init do módulo não possa ser acessado diretamente, somente dentro do aplicativo.

 * /

definido (‘BASEPATH’) ou sair (‘Não é permitido acesso direto ao script’);

 

/ *

Nome do módulo: Módulo Ixonn de amostra

Descrição: Descrição do módulo de amostra.

Versão: 2.3.0

Requer pelo menos: 2.3. *

* /

Depois de salvar o arquivo, você pode navegar na área de administração do Ixonn para Configuração-> Módulos e poderá ver o seu módulo listado.

O comentário funcionará como um cabeçalho de arquivo para o módulo; você deve verificar o guia de cabeçalhos de arquivo se quiser se familiarizar.

Certifique-se de sempre adicionar o cabeçalho do nome do módulo

É muito importante garantir que o nome da pasta do módulo e o nome do arquivo .php sejam os mesmos, caso contrário, o módulo não será mostrado na lista de módulos


Ganchos básicos

Você precisará implementar alguns ganchos básicos ao criar um novo módulo, como register_activation_hook (), register_deactivation_hook () e register_uninstall_hook ()

Se você conhece o WordPress, provavelmente conhece o trabalho que esses ganchos fazem.

Adicionando ganchos

Você pode adicionar ganchos nos arquivos .php do módulo com:

hooks () -> add_action ($ tag, $ function_to_add, $ priority = 10, $ accept_args = 1);

hooks () -> add_filter ($ tag, $ function_to_add, $ priority = 10, $ accept_args = 1);

hooks () -> do_action ($ tag, $ arg = ”);

hooks () -> apply_filters ($ tag, $ value, $ additionalParams);

Você pode adicionar seus próprios filtros e ações para poder usá-los também na implementação do módulo. A adição de ações e filtros ajudará outros módulos a interagir com seu módulo e a ampliar as funcionalidades do módulo.

Prefixo de funções personalizadas

Você sempre deve prefixar as funções e classes personalizadas para evitar conflitos com as funções ou classes padrão do Ixonn ou com qualquer outro módulo.

Usando a instância do Codeigniter em arquivos de módulo

Provavelmente, você desejará usar a instância da estrutura Codeigniter no arquivo init do módulo ou qualquer outro arquivo de módulo que não esteja estendendo as classes base da estrutura.

$ this, funciona apenas em seus controladores, modelos ou visualizações.

Você pode conseguir isso em qualquer lugar em seus arquivos com o seguinte código:

Primeiro, atribua o objeto CodeIgniter a uma variável:

$ CI = & get_instance ();


Depois de atribuir o objeto a uma variável, você a usará em vez de $ this

$ CI = & get_instance ();

 

$ CI-> load-> helper (‘module_name / helper_name’);

$ CI-> carregar-> biblioteca (‘module_name / library_name’);

Prefixo do banco de dados

A partir da versão 2.3.0, o Ixonn tem a opção de definir o prefixo personalizado das tabelas do banco de dados.

O prefixo da tabela padrão em Ixonn é tbl

Você sempre deve usar nossa função personalizada db_prefix () para obter o prefixo do banco de dados ao consultar o banco de dados, isso garantirá que, caso o usuário altere o prefixo do banco de dados, seu módulo continuará funcionando com o novo prefixo do usuário.

Aqui está um exemplo do arquivo install.php do módulo de acompanhamento de metas.

<? php

 

definido (‘BASEPATH’) ou sair (‘Não é permitido acesso direto ao script’);

 

if (! $ CI-> db-> table_exists (db_prefix (). ‘goals’)) {

    $ CI-> db-> query (‘CREATE TABLE’ ‘. Db_prefix (). “Goals` (

  `id` int (11) NÃO NULL,

  `subject` varchar (191) NÃO NULL,

  texto `description` NÃO NULL,

  data `start_date` NÃO NULL,

  data `end_date` NÃO NULL,

  `goal_type` int (11) NÃO NULL,

  `contract_type` int (11) NÃO NULL PADRÃO ‘0’,

  `conquista` int (11) NÃO NULL,

  `notify_when_fail` tinyint (1) NÃO NULL PADRÃO ‘1’,

  `notify_when_achieve` tinyint (1) NÃO NULL PADRÃO ‘1’,

  ‘notificado` int (11) NÃO NULL PADRÃO’ 0 ‘,

  `staff_id` int (11) NÃO NULL PADRÃO ‘0’

) MOTOR = InnoDB PADRÃO CHARSET = ”. $ CI-> db-> char_set. ‘;’);

Criar opções de módulo

O Ixonn possui tabela nas opções do banco de dados para armazenar várias configurações para uso interno e configurações usadas nos recursos. Desenvolvemos funções PHP personalizadas que executam consultas para buscar opções do banco de dados.

Os nomes das opções são cadeias e devem ser exclusivos para que não entrem em conflito com o Ixonn ou com outros módulos.

add_option ($ nome, $ valor, $ carregamento automático)


$ name
Obrigatório (string). O nome da opção a ser adicionada, verifique se ela é única e prefixada com E.q. o nome do seu módulo.

$ value
O valor da opção (string)

$ autoload
(inteiro) 1 ou 0
Se essa opção deve ser carregada automaticamente com todas as outras opções, se você estiver usando a opção por muito tempo na visualização, o melhor é carregá-la automaticamente para evitar várias consultas para obter a opção. O padrão é 1

Lembre-se de que a função add_option não criará a opção se o nome da opção já existir na tabela de opções.

get_option ($ option_name);


Recupere uma opção do banco de dados, $ option_name (string), seu nome da opção.

update_option ($ option_name, $ new_value);


A função update_option atualizará o valor da opção, desde a versão 2.3.3, quando você chamar update_option se a opção não existir, o Ixonn irá

Artigos Relacionados

Table of Contents
Scroll Up