Avaliação do Usuário

Estrela ativaEstrela ativaEstrela ativaEstrela ativaEstrela ativa
 


NOTA DE PUBLICAÇÃO


Este tutorial é uma tradução, com adaptação livre, do original Developing a Model-View-Controller (MVC) Component for Joomla!1.6 tutorial, de Christophe Demko, publicado no site de documentação do Joomla, o docs.joomla.org.

A tradução e publicação no Mabesi.com foi autorizada pelo próprio autor, com o qual entramos em contato, sendo a única condição imposta a de seguir as regras para documentação eletrônica do Joomla!, cuja licença pode ser encontrada em http://docs.joomla.org/JEDL., e que obriga, principalmente, a inclusão da informação da própria licença de uso e distribuição do documento, além de citar o nome do autor da obra original, o que fazemos com muito prazer.


INTRODUÇÃO


A motivação para a elaboração da tradução deste tutorial é a de que ainda há pouquíssima oferta de conteúdo em português, principalmente no Brasil, para que os usuários e aprendizes do CMS Joomla possam se aventurar nesta nova versão do sistema.

O tutorial completo será dividido em partes, que podem ser ou não iguais àquelas publicadas originalmente no endereço acima referenciado.

Tomei a liberdade de modificar vários trechos, alterando, acrescentando ou retirando conteúdo, com a finalidade de adaptar os ensinamentos à realidade brasileira. Acredito que ao utilizar termos e exemplos com os quais o público brasileiro está acostumado a assimilação será facilitada e o objetivo será alcançado.

Como o autor se absteve de utilizar seu nome como exemplo para autor, resolvi utilizar o meu próprio nome nos exemplos traduzidos, não com a finalidade de me apropriar da criação, mas somente para complementar os exemplos com algo mais próximo do real.

Os nomes utilizados no desenvolvimento do componente serão mantidos em inglês a fim de obedecer o padrão estabelecido, mantendo-se assim a compatibilidade e a universalidade. Porém os comentários serão traduzidos para facilitar o entendimento e a aplicação pelo leitor brasileiro.



REQUERIMENTOS


Estes são os itens que você precisará para utilizar este tutorial:Servidor web rodando com PHP e MYSQL.

  • Servidor web rodando com PHP e MySql:
    • Apache: v2.x  ou superiror (recomendado)
    • PHP: v5.2.4 ou superior
    • MySQL: v5.0.4 ou superior

ou

    • Microsoft IIS: v7
    • PHP v5.2.4 ou superior
    • MySQL v5.1
  • Joomla! na versão 1.6 ou superior, instalado e funcionando; e


ESTRUTURA DO CMS

O Joomla! 1.6 é construído utilizando três diferentes aplicativos:

* Instalação (installation - utilizado para a instalação do Joomla)
* Administrador (administrator - utilizado para gerenciar o conteúdo)
* Público (public - utilizado para exibir o conteúdo)

O aplicativo de instalação é utilizado apenas uma vez. Os aplicativos administrador e público são utilizados para gerenciamento e exibição do conteúdo, respectivamente, e utilizam o conceito de componentes. Cada componente instalado no sistema possui dois pontos de entrada:

* um localizado no diretório components (diretório de componentes, que é usado para exibir o conteúdo)
* outro localizado no diretório administrator/components (que é utilizado para gerenciamento de conteúdo)

Ambos são chamados com_componentname/componentname.php - o prefixo com_ é um vestígio histórico, ou seja, foi herdado das versões anteriores e indica que a extensão é do tipo componente.



O PRIMEIRO COMPONENTE BÁSICO


Vamos criar o componente Hello World! (Olá Mundo).

Visualização Pública

Com o seu editor favorito, crie um arquivo chamado nomedoseusite/components/com_helloworld/helloworld.php com o seguinte conteúdo:


Hello world

Após instalar este componente você pode testá-lo através da chamada ao endereço nomedoseusite/index.php?option = com_helloworld em seu navegador (não se esqueça que nomedoseusite é o prefixo contendo o caminho de instalação do Joomla! 1,6).



GERENCIAMENTO ADMINISTRATIVO


Com o seu editor de arquivos favorito, crie um arquivo chamado nomedoseusite/administrator/components/com_helloworld/helloworld.php contendo


Hello world administration

Você pode testar este componente básico, colocando administrator/index.php?option=com_helloworld na sua barra de endereço do navegador após a instalação do componente.



EMPACOTANDO UM ARQUIVO ZIP PARA INSTALAÇÃO


Se você já usou o Joomla antes de ler este tutorial, você deve ter notado que as extensões são instaladas usando um arquivo compactado contendo todas as coisas que são necessárias para instalar e desinstalar as extensões do sistema. Vamos então criar um destes arquivos para o nosso componente HelloWorld.

Com o gerenciador e editor de arquivos favorito, crie uma pasta fora do seu diretório de instalação do Joomla! 1.6, com um nome qualquer, contendo a seguinte estrutura de arquivos e subdiretórios :


helloworld.xml
site/helloworld.php

site/index.html
admin/index.html
admin/helloworld.php
admin/sql/index.html
admin/sql/updates/index.html
admin/sql/updates/mysql/index.html

admin/sql/updates/mysql/0.0.1.sql


O arquivo admin/sql/updates/mysql/0.0.1.sql é um arquivo sem qualquer conteúdo que permite inicializar o esquema de versão do componente com_helloworld.

O arquivo helloworld.xml é o chamado arquivo de manifesto. Ele contem as informações a respeito do componente para que o Joomla saiba qual é o seu nome, a sua versão e o seu conteúdo, além de outras informações. Através dele o sistema sabe quais são os arquivos que devem ser instalados, tanto no diretório público quanto no administrativo.

Caso você pretenda criar um componente para distribuição, o idioma padrão adotado é a língua inglesa. Assim sendo todas as informações sobre o seu componente devem estar em inglês, quer sejam os nomes dos arquivos, a descrição da extensão ou mesmo os comentários. Neste caso em particular os comentários estarão em português para facilitar a compreensão, já que o mesmo servirá apenas para estudo. Porém perceba que o componente será todo construído em inglês.


Conteúdo do arquivo helloworld.xml:

<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="1.6.0" method="upgrade">
<name>Hello World!</name>
<!-- Os seguintes elementos são opcionais e sem restrição de formato -->
<creationDate>March 2011</creationDate>
<author>Plinio Mabesi</author>
<authorEmail>plinio.mabesi@mabesi.com</authorEmail>
<authorUrl>http://www.mabesi.com</authorUrl>
<!--  Informações de Copyright apenas para exemplo!!! -->
<copyright>Copyright © 2011 - Plinio Mabesi - All rights reserved</copyright>
<license>Here you put any informations about license</license>
<!--  O texto da versão fica registrado na tabela de componentes -->
<version>0.0.1</version>
<!-- A descrição é opcional e o padrão é o nome -->
<description>Description of the Hello World component...</description>

<update> <!-- Este trecho é executado em atualizações; Novo no Joomla! 1.6 -->
<schemas>
<schemapath type="mysql">sql/updates/mysql</schemapath>
</schemas>
</update>

<!-- Seção de Cópia de Arquivos Principais do Site -->
<!-- Perceba o atributo folder: Este atributo descreve a pasta de origem do pacote a partir da qual os arquivos são copiados para instalação, portanto os arquivos desta seção serão copiados da pasta /site/ do pacote -->
<files folder="site">
<filename>index.html</filename>
<filename>helloworld.php</filename>
</files>

<administration>
<!-- Seção Menu de Administração -->
<menu>Hello World!</menu>
<!-- Seção de Cópia de Arquivos Principais de Administração -->
<!-- Perceba o atributo folder: Este atributo descreve a pasta de origem do pacote a partir da qual os arquivos são copiados para instalação, portanto os arquivos desta seção serão copiados da pasta /admin/ do pacote -->
<files folder="admin">
<!-- Seção de Cópia de Arquivos Principais de Admin -->
<filename>index.html</filename>
<filename>helloworld.php</filename>
<!-- Seção de arquivos SQL (Neste caso a pasta toda) -->
<folder>sql</folder>
</files>
</administration>
</extension>

Conteúdo do arquivo site/helloworld.php:

Hello World


Conteúdo do arquivo admin/helloworld.php:

Hello World administration





Conteúdo do arquivo index.html, comum a todos os diretórios:

<html><body bgcolor="#FFFFFF"></body></html>


Depois de criados os diretórios e os arquivos gere um arquivo compactado a partir de todo o conteúdo da pasta que foi criada inicialmente (não inclua a pasta, somente o seu conteúdo) e instale o componente utlizando o gerenciador de extensões do Joomla! 1.6.

Você poderá testar o componente criado digitando nomedoseusite/index.php?option=com_helloworld ou nomedoseusite/administrator/index.php?option=com_helloworld na barra de endereço do seu navegador. Você poderá notar também que o componente Hello World! estará visível no menu de componentes da sua instalação do Joomla! 1.6.

 

Componente MVC para Joomla 1.6 - Parte 02


{jcomments on}

Seja social. Compartilhe!