Criando um módulo básico no Magento _ Bloix

download Criando um módulo básico no Magento _ Bloix

of 8

Transcript of Criando um módulo básico no Magento _ Bloix

03/02/12

Criando um m dulo bsico no Magento | Bloix

BloixHome Sobre o Blog Deixe Sua Idia

Ferramenta de Pesquisadigi e aq i o q e proc ra... Find i

Criando um m dulo bsico no MagentoA criao de um modulo no Magento E-commerce exige conhecimento em vrias coisas como a declarao de resources, declarao e criao de eventos, criao de blocks, helpers e models, etc. Na criao de uma loja virtual voc pode tambm tanto criar mdulos para suas prprias funcionalidades como para funcionalidades j existentes no Magento, como mtodos de envio ou mtodos de pagamento. Cada uma dessas merece um post especfico pela sua complexidade. Nesse artigo vou explicar a criao de um mdulo bsico. Tudo que for necessrio para comear a escrever um mdulo.

Entendendo a estrutura de m dulos no MagentoOs mdulos devem ficar dentro da pasta app que por sua vez fica na raz da aplicao. Como o Magento implementa MVC os arquivos dos mdulos que contm cdigo PHP e cdigo HTML ficam separados dentro das pastas code e design respectivamente. Se voc est perdido com esse monte de pastas no se preocupe, farei um post s sobre elas. J dentro da pasta , temos mais 3 pastas:

core Aqui dentro ficam todos os mdulos que fazem parte do core do Magento. Nunca altere nenhum arquivo aqui dentro, pois o risco de dar problema na hora de fazer upgrade muito grande. community J nesta pasta fica todos os mdulos disponibilizados pela comunidade. Se voc baixar algum mdulo a partir do Magento Connect ele vai jogar esses mdulos aqui dentro. Caso voc baixe por conta prpria recomendado que voc jogue o cdigo aqui dentro. local A pasta onde voc deve escrever os mdulos especficos da sua loja. Se por exemplo voc sobrescreveu algum mdulo do Magento para atender a uma especificao do seu cliente, ponha seu cdigo aqui. Dentro de cada pasta dessa temos vrias outras pastas. Essas pastas representam as companhias que desenvolveram os mdulos e dentro das pastas das companhias temos os mdulos disponibilizados por elas. Por exemplo, se a NOIX criasse um mdulo chamado e ou outro , e eles fossem disponibilizados para a comunidade teriamos os dois caminhos: /app/code/community/Noix/AdvancedBanners /app/code/community/Noix/AdvancedSearch

Entendendo o m duloAntes de mais nada vamos entender o que nosso mdulo ir fazer. Como a idia manter a simplicidade para melhorar o entendimento, vamos apenas fazer com que nosso mdulo imprima Hello World quando eu acessar o endereo . importante saber que o Magento escrito em cima do Zend Framework e o entender bsico do fluxo interno. Em resumo funciona da seguinte maneira: 1. Recebendo a requisio do usurio Quando o usurio escreve no navegador o Magento recebe a informao da URL que eles est tentando acessar. Aps receber a URL do usurio o Magento faz o seguinte processo: retira sua url base e repassa todo o resto para seu Router. No nosso casobloix.com.br/gestaodeconteudo/criando-um-modulo-basico-no-magento 1/8

03/02/12

Criando um m dulo bsico no Magento | Bloix

nossa url base e tentaremos acessar o endereo . Logo o Magento repassar para seu Router o texto . 2. Fazendo rotas O Magento mantm um registro de todas as rotas que ele deve fazer em seu Router, ou seja, uma vez a URL tratada, o texto que restar o Magento saber tratar para descobrir qual mdulo, qual controller e qual action ele deve chamar e quais os parmetros ele deve passar. Sabendo disso vamos criar a estrutura do nosso mdulo que dever seguir o caminho: Dentro da pasta deve ser criada uma pasta chamada controllers, onde ficaro todos os daquele mdulo. Crie tambm dentro de uma pasta chamada etc. O corao dos mdulos do Magento so seus XML s. Quase tudo nele configurvel atravs de XML. E as configuraes dos mdulos ficaro dentro de suas respectivas pastas . Agora temos as pastas Diretrios Magento e .

Configurando o m duloCrie dentro da pasta mdulo. um arquivo chamado config.xml. Dentro dele fica toda a configurao bsica para o funcionamento do

O XML deve ser bem formatado portanto comearemos com a tag: 1