1. VIII EVIDOSOL/V CILTEC-online
Encontro Virtual de Documentação em Software Livre e
Congresso Internacional de Linguagem e Tecnologia online.
V. 1, N. 1, junho de 2011.
JOOMLA! PARA INICIANTES
Djonatan Buss (UFPel)
Jerônimo Median Madruga (UFPel)
RESUMO: A disseminação da internet no mundo ocasionou uma explosão na procura de ferramentas para
criação de conteúdo online. No primeiro momento, grande parte dessas ferramentas necessitavam de uma
grande quantidade de conhecimento técnico (como saber HTML, CSS e PHP), além de consumirem muito
tempo e mão de obra na implementação das mesmas. Com a evolução das tecnologias, surgiram os sistemas
de gerenciamento de conteúdo (CMS), sistemas desenvolvidos especificamente para simplificar as atividades
relacionados a criação e manutenção de websites. Entre as principais ferramentas criadas para esta finalidade,
uma das alternativas mais utilizadas mundialmente é o Joomla!, um CMS de código aberto facilmente
extensível e que atende grande parte das necessidades dos usuários. Essa palestra visa explicar esta evolução
tecnológica, explicando o que é um CMS, e por fim abordar o Joomla!, citando suas características,
requisitos e detalhes sobre a sua mais nova versão lançada este ano.
ABSTRACT: The dissemination of internet in a global scale triggered an raising interest in tools specialized
in creating online content. In the first moment, most of these tools needed a great amount of technical
knowledge (like knowing HTML, CSS and PHP), besides that, they also required a lot of time and work
force to implement them. With the evolution of technology, the content management systems (CMS) were
created. Those systems were specifically developed to simplify the activities related to the creation and
maintenance of websites. Among the most known software created to do this, one of the most worldwide
used alternatives is Joomla!, a open source CMS that is easily extensible and satisfies most of the user
necessities. This talk aims to go trough this technological evolution, explaining what is a CMS, and talking
about Joomla!, listing its characteristics, requisites and details about it's newly released version.
Introdução
Um dos marcos dos anos 90 foi a expansão do acesso a internet. A redução dos custos
ligados as tecnologias ligadas a área das telecomunicações em conjunto com as medidas fiscais
incentivando produtos informatizados acabaram por alavancar a criação de conteúdos voltados para
web. Porém, as primeiras ferramentas voltadas para criação destes conteúdos eram relativamente
complexas e consumiam muito tempo entre o aprendizado e a manutenção das mesmas. Também
haviam problemas ligados a restrições das plataformas de desenvolvimento mais avançadas, que
acabavam restringindo a forma correta de exibição de conteúdo para apenas alguns poucos
navegadores na época, por falta de respeito aos padrões da W3C (World Wide Web Consortium),
órgão responsável pela criação de padrões e protocolos que garantam interoperabilidade em
http://gkosmos.com/evidosol/
2. VIII EVIDOSOL/V CILTEC-online
Encontro Virtual de Documentação em Software Livre e
Congresso Internacional de Linguagem e Tecnologia online.
V. 1, N. 1, junho de 2011.
aplicações voltadas para a web. Com todos estes empecilhos, a criação de sites profissionais ficava
restrita a programadores com bom conhecimento de HTML (HyperText Markup Language), CSS
(Cascading Style Sheets) e alguma linguagem de programação, como PHP (PHP: Hypertext
Preprocessor) ou Perl (Practical Extraction and Report Language).
Esse panorama começa a ser alterado com a criação e evolução dos sistema de
gerenciamento de conteúdo (CMS). Os CMS's surgiram para facilitar as tarefas ligadas a
administração de sites, agregando ferramentas voltadas para gerenciar aspectos visuais, de
conteúdo, de programação, ferramentas de terceiros e de acessibilidade, de forma única e dinâmica.
A ideia é a criação de uma plataforma que facilite a execução de tarefas triviais como a gerência de
usuários e inserção de conteúdo, deixando que o maior esforço fique para a parte de customização
do ambiente. Com o surgimento dessas ferramentas, muitas das complexidades inerentes da criação
de um site foram abstraídas, possibilitando que usuários leigos pudessem mostrar suas ideias sem
grandes complicações. Ao mesmo tempo, programadores profissionais podem concentrar seu tempo
desenvolvendo novas funcionalidades para os sistemas.
Joomla!
Entre as diversas ofertas de CMS's hoje em dia, o Joomla se destaca pela grande quantidade
de extensões (ferramentas desenvolvidas por terceiros que podem ser integradas facilmente ao
sistema) e por um ótimo sistema de organização de conteúdo. O Joomla é um software livre cujo
nome é uma palavra adaptada foneticamente da palavra "Jumla” na língua Swahili para o Inglês.
Jumla significa “tudo junto" ou “como um todo". O Joomla! foi criado por um grupo de
desenvolvedores dissidentes de outro projeto de CMS de código livre, o Mambo. Insatisfeitos com a
falta de oportunidade de contribuição da comunidade, em 2005 eles decidiram criar um novo
projeto que fosse mais transparente e aberto a contribuições, e assim criaram a entidade sem fins
lucrativos "Open Source Matters", que até hoje é responsável por gerenciar o desenvolvimento do
Joomla.
Com o apoio de uma grande comunidade de desenvolvedores, facilidade de uso,
disponibilidade de diversos recursos e ótimo design, o Joomla se tornou uma das referências para
CMS's, assim como o WordPress e o Drupal. Em comparação a estes dois sistemas, o Joomla acaba
http://gkosmos.com/evidosol/
2
3. VIII EVIDOSOL/V CILTEC-online
Encontro Virtual de Documentação em Software Livre e
Congresso Internacional de Linguagem e Tecnologia online.
V. 1, N. 1, junho de 2011.
sendo uma ferramenta mais genérica, facilmente adaptada para uso desde portais a hotsites (sites
utilizados em campanhas publicitárias), enquanto o WordPress é uma plataforma mais focada na
criação de blogs e o Drupal se destaca como uma plataforma altamente customizável, mas que
requer um maior conhecimento técnico para o bom funcionamento da mesma.
O sistema do Joomla é composto fundamentalmente de uma base de dados MySQL
(utilizada para armazenamento de configurações), templates (nome dado para o modelo do visual da
página) utilizando CSS (facilitando assim o desenvolvimento da parte visual) e da linguagem PHP
(para gerenciar os aspectos ligados a programação), sendo constituído assim somente de
componentes livres.
A licença do Joomla é a GPL (General Public License), o que permite que o software seja
copiado, modificado e distribuído. Com isso, a base do Joomla é aberta e livre para quem tiver
interesse, enquanto extensões e templates desenvolvidos por terceiros podem escolher qualquer
forma de distribuição, seja ela paga ou gratuita, mas desde que seja distribuída de acordo com as
regras da licença GPL versão 2 ou superior.
Com todas estas características, o Joomla se tornou um dos exemplos mais bem sucedidos
de software livre. São mais de 1 milhão de pessoas contribuindo com código (seja para a base do
Joomla ou extensões) e se estima mais de quarenta milhões de sites utilizando a ferramenta
mundialmente. Podemos destacar que não somente usuários comuns utilizam Joomla, mas órgãos
como o MEC, universidades como Harvard e diversos jornais também o utilizam, mostrando a
maturidade da plataforma.
Conhecendo o interior do Joomla!
A última versão do Joomla é a 1.6, porém, devido a ter sido lançada este ano, grande parte
dos sites e extensões ainda são direcionados para a versão 1.5. A versão de testes atual é a 1.7.
A versão 1.5 foi lançada em 22 de janeiro de 2008, e atualmente já está na subversão 1.5.23.
Está versão é a mais popular atualmente, conta com milhares de extensões de terceiros
desenvolvidas ao longo dos últimos dois anos. Apesar de não estar ser o foco dos desenvolvedores
do projeto no momento, ela receberá atualizações de segurança no mínimo até Abril de 2012,
garantindo tempo para o planejamento da migração de sites que ainda utilizam está versão.
http://gkosmos.com/evidosol/
3
4. VIII EVIDOSOL/V CILTEC-online
Encontro Virtual de Documentação em Software Livre e
Congresso Internacional de Linguagem e Tecnologia online.
V. 1, N. 1, junho de 2011.
A versão 1.6 foi lançada em 10 de Janeiro de 2011, tendo como grandes destaques o
aperfeiçoamento do sistema de controle de acesso, implementação de uma solução para categorias
aninhadas e a padronização da forma como são desenvolvidas extensões, utilizando um framework
MVC (Model-view-controller). O suporte a está versão deverá acabar em janeiro de 2012, pois a
transição para a versão 1.7 está sendo planejada para acontecer da maneira mais simples possível,
visto que a versão 1.7 terá alteração mínima na estrutura do Joomla.
A versão 1.7 já está no estágio Alpha, o que a classifica como imprópria para o uso em
produção (sites expostos a internet), logo, só deverá ser utilizada em ambientes de desenvolvimento
para iniciar os testes. A versão 1.7 marcará a separação da plataforma Joomla do CMS Joomla,
possibilitando assim agregar componentes e formar novos produtos de forma mais simples, e sem
necessitar utilizar todas as ferramentas que o CMS Joomla prove. É previsto que em 10 de Julho a
versão 1.7 esteja disponível para o público.
O Joomla é composto de duas partes distintas. Primeiro temos o frontend, que é a visão do
site para que está visitando o mesmo. O frontend pode estar acessível a qualquer um, ou também
pode ser restringido seu acesso a usuários devidamente cadastrados no sistema. Posteriormente,
temos o backend, que é a parte administrativa do Joomla. O acesso ao backend deve ser
obrigatoriamente restrito a pessoas habilitadas para administrar o ambiente, caso contrário podem
ocorrer invasões no sistema. De acordo com as configurações informadas no backend, podemos
alterar o visual e os plugins disponíveis no frontend, customizando as funcionalidades e o visual do
site final.
O pacote base do Joomla já prove diversas funcionalidades. Entre elas podemos destacar a
gerencia do conteúdo, que é conhecido como artigos. Artigos são armazenados no banco de dados
do sistema, e podem ser organizados através do uso de categorias e seções, o que possibilita uma
hierarquia de até três níveis de informação (Seções, categorias e artigos). Outra funcionalidade
interessante é a dos menus, que permitem gerenciar facilmente o acesso as diversas partes e
ferramentas em um site, ou até mesmo a sites e objetos externos.
Também é importante citar o uso das extensões, que se dividem em componentes, módulos,
plugins, templates e idiomas. Com isso, diversas funcionalidades não gerenciadas pela base do
Joomla podem ser adicionadas, como por exemplo integração com redes sociais e tradução do
frontend e backend para outros idiomas.
http://gkosmos.com/evidosol/
4
5. VIII EVIDOSOL/V CILTEC-online
Encontro Virtual de Documentação em Software Livre e
Congresso Internacional de Linguagem e Tecnologia online.
V. 1, N. 1, junho de 2011.
Instalação do Joomla!
Para a utilização do Joomla, independente da versão, é necessário um servidor web (como o
Apache), com suporte a linguagem de programação PHP e ao banco de dados MySQL. É
importante ressaltar que devem ser verificada quais as versões destes programas, pois podem
ocorrem problemas decorridos da utilização de versões não suportadas pelo Joomla. Para maiores
informações, consulte as notas de lançamento da versão que está sendo utilizada. Não existem
requisitos específicos sobre sistema operacional, ou seja, desde que os programas citados
anteriormente estejam devidamente instalados e configurados, Joomla deverá rodar tanto no
Windows, Linux ou *BSD.
A instalação consiste em extrair o pacote com os arquivos do Joomla, que devem ser obtidos
na seção de download do site oficial do projeto. Os arquivos devem ser extraídos para um local
acessível via rede, para então executar o script de instalação do Joomla através de um navegador
web. Durante a instalação ele irá verificar se os pré-requisitos são atendidos, além de pedir
informações referentes a customização do ambiente (e-mail do administrador, usuário do banco de
dados, acesso via FTP (File Transfer Protocol), nome do site, entre outros). A instalação também
permite que seja instalado conteúdo de exemplo no site recém criado, que pode ser utilizado para se
acostumar as funcionalidades do sistema.
Conclusões
Contando com uma comunidade forte, uma base madura e diversas extensões que adicionam
as funcionalidades mais variadas, Joomla acaba sendo uma ótima alternativa entre os CMS atuais.
Isso acaba sendo uma realidade tanto para quem é leigo, quanto para aqueles com mais experiência
em desenvolvimento, pois a diversidade de opções acabam propiciando que cada pessoa invista seu
tempo de acordo com seu conhecimento. A garantia que o código será sempre aberto ajuda a
assegurar a possibilidade de dar manutenção ao projeto, e o foco na interoperabilidade prove acesso
para as mais diversas pessoas em plataformas diferentes.
http://gkosmos.com/evidosol/
5
6. VIII EVIDOSOL/V CILTEC-online
Encontro Virtual de Documentação em Software Livre e
Congresso Internacional de Linguagem e Tecnologia online.
V. 1, N. 1, junho de 2011.
Para maiores informações sobre Joomla, visite as referências e visualize as apresentações que serão
fornecidas em conjunto com este material.
REFERÊNCIAS
Site oficial do Joomla!: http://www.joomla.org
Informações gerais sobre o projeto Joomla!: http://www.joomla.org/about-joomla/the-project.html
Diretório de extensões do Joomla!: http://extensions.joomla.org
Tutoriais de Joomla!: http://www.joomlatutorials.com
Documentação oficial do projeto Joomla!: http://docs.joomla.org
Twitter do projeto: http://twitter.com/joomla
Galeria de sites que utilizam Jooma!: http://community.joomla.org/showcase
Fórum oficial: http://forum.joomla.org
Informações sobre a base do Joomla!: http://www.joomla.org/core-features.html
http://gkosmos.com/evidosol/
6