Magento
Guia Definitivo
Adam McCombs Robert Banh
Novatec
capítulo 1
Introdução ao Magento
O que é o Magento? O Magento é uma plataforma completa de comércio eletrônico em código aberto, dirigida a designers de websites, desenvolvedores e proprietários de negócios que estejam buscando uma solução perfeita para websites de e-commerce. Sua arquitetura em código aberto capacita o usuário a manter controle total sobre a estrutura e a funcionalidade do website. A Varien, empresa responsável pela criação do Magento, estabeleceu um novo patamar para aplicativos de código aberto. Um dos aspectos mais impressionantes do Magento é a utilização do Zend Framework. Isso permite a separação em Model-View-Controller (MVC), o que distingue suas operações centrais de sua funcionalidade e aparência. O Magento oferece um ambiente estável para e-commerce, conferindo-lhe flexibilidade para personalizar o website inteiramente de acordo com suas necessidades comerciais.
O que é software de código aberto? O Software de Código Aberto (Open Source Software [OSS]) representa uma abordagem única ao desenvolvimento e à distribuição de software. Softwares de Código Aberto devem não apenas oferecer acesso ao código-fonte, mas também ser distribuídos como software livre. Isso dá aos usuários o direito de utilizar, modificar e redistribuir o software, seja em formato modificado ou não. Em 1983, Richard Matthew Stallman lançou o Projeto GNU, para criar um sistema operacional gratuito, do tipo Unix. Esse projeto levou à criação de softwares livres como o gcc, o GNU C Compiler, entre outros softwares livres instrumentais que originaram o Linux. O Projeto GNU também é responsável pela GPL, ou GNU General Public License (Licença Pública Geral), preparando o terreno para a criação de outras licenças gratuitas de softwares. À medida que mais pessoas começaram a compreender que se poderia ganhar dinheiro com o software livre, essa abordagem deu uma guinada comercial, em 1998, com 21
22
Magento Guia Definitivo
a fundação da Open Source Initiative (OSI), por Eric S. Raymond e Bruce Perens. A OSI é responsável por criar a Definição do Código Aberto (Open Source Definition [OSD]) e revisar licenças para determinar se estas se enquadram à OSD. A lista de conformidade com a OSD inclui mais de 60 licenças, incluindo GPLv2 e GPLv3. Linux é provavelmente o software mais famoso desenvolvido sob a ideologia de software livre/código aberto. Originalmente escrito em 1991 por Linus Torvalds, é hoje um software amplamente distribuído, sendo utilizado em cinco dos dez ambientes globais de hospedagem e tipo servidor. Muito do seu sucesso pode ser atribuído à sua abordagem de código aberto. Para mais informações sobre código aberto, visite: http://www.opensource.org.
Versões e licença do Magento Há, atualmente, duas versões do Magento: a Magento Community Edition e a Magento Enterprise Edition. A Magento Community Edition é licenciada sob a Open Software License (OSL) v3.0. Por sua vez, a Magento Enterprise Edition emcontra-se disponível sob a licença comercial e demanda o pagamento de uma taxa anual. Ambas as edições compartilham o mesmo framework subjacente. A Enterprise Edition também inclui vários atributos adicionais que não estão incluídos na Community Edition, como vale-presentes, créditos de consumidores nas lojas e criptografia avançada de dados. Detalhes completos sobre o licenciamento do Magento podem ser encontrados em http://www.magentocommerce.com/license.
A história por trás do Magento A Varien começou a desenvolver o Magento em janeiro de 2007. Sua intenção era estabelecer uma plataforma para e-commerce diferente de qualquer outra que existisse no mercado. Originalmente, planejou a construção dessa plataforma baseando-se em uma variação do osCommerce, mas depois preferiu criar seu próprio sistema utilizando o Zend Framework. Durante seu período beta de seis meses, conseguiu mais de 225 mil downloads para o Magento. O primeiro release público do software, a versão 1.0, foi lançada em 31 de março de 2008. Pouco depois, o Magento 1.1 foi lançado. Essa versão corrigia muitos bugs encontrados na versão 1.0, mas também incluía uma interface de administração de usuário mais informativa. O Magento 1.2 foi lançado em 29 de dezembro de 2008. Essa versão oferecia várias bibliotecas atualizadas do Zend Framework e uma nova função: produtos para download.
Capítulo 1 ■ Introdução ao Magento
23
A atual versão do Magento, a 1.3, foi lançada em 30 de março de 2009. Essa versão aumentou a velocidade do programa tanto na perspectiva pública quanto na administrativa. O Magento Enterprise Edition versão 1.3 foi lançado em 15 de abril de 2009. Essa versão requer um acordo de prestação de serviços com a Varien e custa 8.900 dólares por ano, incluindo suporte técnico, o qual não está disponível na Community Edition.
Zend: uma mão na roda para o Magento O Zend Framework, a plataforma sobre a qual o Magento é construído, é um framework de código aberto, orientado a objetos, que utiliza PHP 5. Foi lançado em 2005 sob a licença New BSD License, aprovada pela OSI. O Zend Framework, muitas vezes chamado de ZF, foi criado para ser uma plataforma leve e flexível, que segue as melhores práticas de programação, já tendo sido adotado por várias grandes corporações, incluindo a IBM, a Adobe e a Oracle. O Zend Framework fornece ao Magento uma arquitetura e um framework em código aberto. Na verdade, é o instrumento que torna possível um aplicativo como o Magento. Utilizar o Zend Framework possibilitou à Varien desenvolver o Magento em um intervalo de tempo relativamente curto.
Quem deve utilizar o Magento? O Magento tem dois tipos de público-alvo: desenvolvedores de websites e homens de negócio que procuram expandir o mercado de comércio eletrônico. Independentemente de seu nível de conhecimento, o Magento foi projetado para ser muito acessível. Foi preparado para ser imediatamente utilizável, exigindo pouca customização. É muito fácil atualizar seu website adicionando novos produtos e administrando pedidos. Ainda que o Magento possua uma flexibilidade que permita sua aplicação em situações avançadas de comércio eletrônico, operações básicas do site poderão ser executadas com muito pouco treinamento. O Magento pode ser personalizado tendo-se compreensão básica de HTML, CSS e XML. Ainda que se recomende ter entendimento inicial de PHP e MySQL, isso não é obrigatório para realizar operações básicas da loja ou para a própria utilização. O PHP for Absolute Beginners é um ótimo ponto de partida para qualquer um que deseja começar a aprender mais sobre PHP. Desenvolvedores que buscam aplicar o Magento em websites de e-commerce mais customizados devem ter conhecimento avançado de PHP e boa noção do Zend Framework.
24
Magento Guia Definitivo
Por que o Magento? Além de ter uma arquitetura e um framework sólidos, há muitas razões que justificam escolher o Magento como uma ótima solução para sua loja virtual. • Um dos atributos mais incríveis do Magento é o fato de que nele você pode projetar e desenvolver múltiplos websites, que serão armazenados e compartilharão de uma única interface de administração. Esse atributo extremamente flexível permite que você modifique e controle vários websites. Todo o estoque e preços de seus produtos podem ser controlados a partir de uma única locação central. Já não há mais necessidade de se conectar em múltiplos locais para administrar múltiplos websites. O Magento oferece a capacidade de controlar todos eles. • O Magento oferece suporte a mais de 60 idiomas, múltiplas moedas e taxas de impostos. Isso lhe confere a habilidade de expandir seu negócio facilmente no mercado global. • A navegação por camadas permite aos usuários opções de navegação customizadas quando estiverem examinando produtos por categorias. Você poderá separar os produtos por preço, tamanho, cor e outros atributos customizáveis. • O Magento tem webservices embutidos. Essa flexibilidade permite que aplicativos externos acessem os dados do Magento sem ter de realizar alterações no código-fonte (core). Atualmente os protocolos SOAP e XML-RPC se encontram disponíveis com o produto. • O Magento tem, desde o início, o recurso de otimização para mecanismos de busca (Search Engine Optimization [SEO]). Possui o recurso de reescrita de URL amigável que facilita a indexação de sua loja e produtos para os mercanismos de busca. • Não apenas o Magento oferece taxas de transporte e quotas em tempo real, mas também seus usuários podem entregar um pedido em múltiplos endereços de entrega. Isso torna a compra de presentes especialmente fácil. • O Magento tem várias funções para emissão de relatórios, que permitem fácil visualização dos relatórios de vendas, produtos mais vendidos e informações dos consumidores. Permite também exportar dados no formato CSV, mesmo que no formato para integração com o Excel e outros programas de bancos de dados. • O Magento projetou sua estrutura de arquivos em três seções principais: núcleo (core), funcionalidade e design. Isso permite fácil atualização de imagens e estilos CSS, sem afetar a funcionalidade do site. A funcionalidade da loja também pode ser customizada sem afetar o core do Magento. Como resultado, você pode modificar o programa sem ter de se preocupar com atualizações feitas em versões futuras.
Capítulo 1 ■ Introdução ao Magento
25
• O Magento tem enorme apoio da comunidade. Além de um fórum público e monitoramento de bugs (bug-tracking), também tem seu próprio repositório público de extensões chamado Magento Connect. Essas extensões podem ser encontradas em http://www.magentocommerce.com/magento-connect. O Magento Connect oferece tanto extensões gratuitas quanto comerciais para incrementar as funcionalidades de seu website. • Uma vez que o Magento está liberado sob licença de tipo OSL, a Magento Community Edition encontra-se disponível sem qualquer custo adicional. Assim, permite que desenvolvedores e proprietários de websites de e-commerce possam diminuir seus custos com softwares.
Para além deste guia Este guia é apenas um ponto de partida para utilizar uma plataforma como o Magento. Recomendamos a criação de um ambiente de testes para que você possa brincar um pouco e se acostume com o software. Pode parecer muito complicado a princípio, mas utilizá-lo em um ambiente como esse é uma ótima maneira de aprender sobre suas características e sua flexibilidade. Outro ótimo recurso é o website principal do Magento: http://www.magentocommerce. com. Além de uma enorme comunidade no fórum, que recebe o suporte dos funcionários da Varien, há também uma Wiki Knowledge Base (base de conhecimento) sempre crescente, tutoriais com fotos e outras documentações técnicas.