Pesquisando...
01 abril 2010

Introdução ao desenvolvimento de Componentes para Joomla 1.5

Escrito por Jennifer Payne

"Bom gente, apesar de ainda não programar muito bem, estou aprendendo a programar php direto no Joomla. Em homenagem aos meus alunos Hugo, Sílvio e Rafael e outros que se interessam a começar a desenvolver para Joomla que crio este post.

Para seguir este tutorial, eu assumo que você conheça o Joomla, php e mySQL.

Preparando o nosso componente (básico)

Para desenvolver componentes, é necessário fazer três coisas, uma é preparar as pastas e os arquivos php que receberão a programação, dizer ao Joomla, no seu BD que seu componente existe e por fim, programar
  • Crie um folder na pasta components chamado com_seucomponente.
  • Crie em administrator/components uma pasta com o mesmo nome.
Um componente tem área administrativa e comportamentos no front-end, então, preste atenção na hora de criar arquivos para não confundir aonde os mesmos devem ser colocados. O nome do seu componente não deve conter espaços. O Joomla quando for executar seu componente, ele vai buscar um arquivo php com o mesmo nome da pasta (tirando o com_) que irá se comportar como o index do seu componente
  • Crie um arquivo chamado seucomponente.php em components/com_seucomponente e dentro cole a seguinte linha de código
<?php
defined( '_JEXEC' ) or die( 'Restricted access' ); //Este código diz que esse componente só //poderá ser executado pelo Joomla e é a primeira preocupação com segurança que se tem. echo '<div class="componentheading">Meu Primeiro Componente</div>';
?>

Dica: Ao invés deste echo simples você poderia utilizar <?php echo JText::_( ‘Meu Primeiro Componente’); ?> esta tag JText diz que é um texto do Joomla, onde, se houver algum componente tradutor para outra língua, este texto será automaticamente traduzido, e ficaria "My first Component", caso fosse trauzido para inglês.

Se você digitar http://localhost/joomla/index.php?option=com_seucomponent no seu navegador, você já verá seu código em ação. agora na pasta administrator/components/com_seucomponent crie um arquivo chamado admin.seucomponent.php e adicione o seguinte código

<?php
defined( '_JEXEC' ) or die( 'Restricted access' );
echo 'Meu Componente, administrador';
?>

digite no seu navegador http://localhost/joomla/administrator/index.php?option=com_seucomponent


Note que você já pode entrar através da url no seu componente, mas ainda pode ser melhorado. Vamos registrar a existência deste componente no back-end do Joomla, para que possamos criar link para ele nos menus do front-end e para que possamos acessar sua área administrativa no back-end, caso seja criado.

O prefixo das tabelas do Joomla são por padrão _jos, se a sua for diferente, mude nas suas tabelas o seguinte

INSERT INTO jos_components (name, link, admin_menu_link,
admin_menu_alt, 'option', admin_menu_img, params)
VALUES ('Meu Componente', 'option=com_seucomponent',
'option=com_seucomponent', 'Admin do Componente', 'com_seucomponent',
'js/ThemeOffice/component.png', '');


Você pode fazer da forma abaixo caso utilize algo como phpmyadmin


Agora logue na sua área administrativa e em Components veja que seu componente já aparece. Mas não é tudo, você pode criar link para ele na área de menu. =) Você agora está preparado para criar seu componente, como você faria caso não esteja programando para Joomla, basta ir em components/com_seucomponent/seucomponent.php e começar a preparar o que será exibido ao visitante do seu site!

O que eu gosto do Joomla, é que você está livre para abrir conexões externas com outro banco, chamar novos arquivos, integrar com o banco do Joomla, enfim. Uma vez preparado o componente, você pode fazer o que quiser com ele!

Este post foi somente para dar uma noção de como criar coisas para Joomla, ainda há muito a ser feito, como criar o xml, criar a área administrativa e etc. Na medida que eu mesma for aprendendo mais, vou compartilhando o conhecimento com vocês

Leituras recomendadas:

Learning Joomla! 1.5 - Extension Development
Creating Modules, Components, and Plug-Ins with PHP
Joseph LeBlanc <--- Melhor para iniciantes (este tutorial foi baseado nele)
e Professional Joomla!


Dan Rahmel <--- Esse cara é muito, muito bom! Um pouco prolixo demais, então recomendo o Joseph para começar Infelizmente, ambos os livros estão em inglês, mas como digo para meus alunos... "É necessidade do profissional da área de TI ter o conhecimento no mínimo do inglês técnico. Acontece que para um livro ser traduzido, tem que ter demanda de leitores, a maior demanda estão entre os que querem iniciar naquela área, à medida que vão se especializando, as pessoas vão desistindo, parando de procurar, logo a demanda cai e assim, há menos prospectos de venda e então, os ótimos livros (nível intermediário, avançado)em sua maioria não chegam a ser traduzidos, a não ser a tecnologia a ser traduzida seja REALMENTE popular, o que não é o caso do Joomla, ainda". Pessoal, have fun!"
Siga também Jennifer Payne
Em 01 abril 2010

0 comentários:

Postar um comentário