Palestra Joomla Day Brasil 2015 - Soluções simples para necessidades complexas
1.
2. Quem é esse cara?
● Johnny Salazar Reidel
● Gaúcho, morador do Rio Grande do Sul
● Desenvolvedor Joomla desde 2006
● Presidente da No Boss Tecnologia
3. O que é Joomla?
● Sistema para gestão de conteúdo (Content
Management System - CMS) de código aberto
● Utilizado para desenvolver sites, intranets e
poderosas aplicações online
5. ● Possui codificações seguras
● É escalonável
● É robusto
● Possui mais de 500 mil contribuintes
ativos
6. Recursos para leigos
● Mais de 8 mil extensões gratuitas ou a baixo custo entre
templates, módulos, componentes e plugins
● Atualizações fáceis
● Versionamento de conteúdos
● Sistema de ajuda integrado
● Responsivo com Bootstrap
● Multilíngue
7. Recursos para desenvolvedores
● Extensa ACL com gerenciamento de usuários
em diferentes grupos de acesso
● Excelente base para desenvolvimento com
bibliotecas prontas e bem estruturadas
● Integração com aplicações externas
11. Pequenos sites
● Possui mais conteúdos do que recursos
● Os recursos normalmente utilizados são:
– Gerenciador de conteúdo
– Banners
– Galeria de imagens e vídeos
– Formulário de contato
– Busca
12.
13. Blogs
● Acervo de conteúdos separados por categorias
● Os recursos normalmente utilizados são:
– Gerenciador de conteúdo
– Busca
– Compartilhamento e comentários
14.
15. Hotsites
● Utilizado para uma ação de comunicação e
marketing pontual
● Os recursos normalmente utilizados são:
– Gerenciador de conteúdo
– Design com maior apelo visual
20. ● Autenticador com funções adicionais
– Gera logs de acesso
– Permite o uso por aplicações externas
● Gerenciador de formulários
– Controla todos os formulários do portal
● Campos adicionais em artigos
– Adiciona campos extras na edição de artigos
● Gerenciador de crons
– Controla as execuções de crons no servidor
21. ● Redes sociais
– Exibe informações moderadas do Facebook, Instagram e Twitter
● Matrículas em cursos
– Realiza matrículas salvando dados em uma aplicação externa
● Moodle
– Cria comunidades dentro do Moodle
● Vagas de estágio e emprego
– Permite que empresas divulguem suas vagas para alunos se candidatarem
23. Dados Portal Unisinos *
● Utiliza Joomla desde 2005
● Mais de 8 mil páginas
● Mais de 2,5 milhões de visualizações de páginas/mês
● Mais de 600 mil acessos/mês
● Mais de 32 extensões próprias desenvolvidas
(*) Dados obtidos em maio de 2014
Fonte: http://pt.slideshare.net/johnnymgo/palestra-fisl-2014-case-portal-unisinos-com-joomla-3
24. Sistemas específicos
● Quando não for necessário o gerenciamento
de conteúdo, pode-se utilizar somente a
camada Framework do Joomla
25. Exemplo de sistema específico
● Sistema de inscrição para bolsas de estudos
– Principais recursos necessários:
● Pacotes de autenticação via LDAP
● Pacote de formulário para desenvolvimento em XML
● Pacote de banco de dados para consultas MYSQL
● Pacote do router para manter as URL's amigáveis
● Pacote datetime para manipulação de datas
26.
27.
28.
29. Integrações
● É possível utilizar extensões prontas ou desenvolver
suas próprias extensões
● Há dois modelos principais para integração do Joomla
com aplicações externas:
1) Webservice
2) Conexões ODBC
30. Modelo Webservice
● O Webservice recebe uma requisição HTTP
para retornar dados em linguagens universais
WEBSERVICE
BASE DE DADOS
CLIENTE X
CLIENTE Y
REQUISIÇÃO HTTP
XML, JSON, HTML
31. Modelo conexões ODBC
● A aplicação Joomla se conecta diretamente
com a base de dados da aplicação externa
através de um drive ODBC instalado no
servidor
Server Web c/
APP Joomla
Server banco
APP externa
HTTP
42. Caso 1: rede de ensino
● Cenário: o cliente é uma rede de ensino que possui
sites que deseja reformular tornando eles mais
atrativos, responsivos e com conteúdos organizados.
● Cliente quer saber: Wordpress ou Joomla? Para o
cenário exposto, ambos atendem perfeitamente.
43. No entanto, é preciso avaliar as
necessidades técnicas futuras
45. Algumas das funcionalidades desejadas para o futuro:
– Integração com redes sociais
– Área de aniversariantes
– Área de classificados
– Área para conhecer e buscar colegas
– Área de interação entre pais, alunos e professores
– Área de serviços online para alunos
– Integrações com sistema de gestão via Webservice
46. Caso 2: associação
● Cenário: o cliente possui um portal que foi desenvolvido
em Wordpress por outro fornecedor que não está
conseguindo fazer as novas funcionalidades desejadas.
● Por que o outro fornecedor não consegue? O principal
motivo é porque as novas funcionalidades são
complexas ao ponto de exigirem uma arquitetura de
framework robusta.
47. Algumas das novas funcionalidades desejadas:
– Intranet com diferentes perfis de acesso
– Sistema de pagamentos
– Gerenciamento de cursos, turmas e alunos
– Geração online de folder para divulgação de curso
– Emissão de relatórios
50. 1)Instale o composer no seu ambiente de
desenvolvimento (http://tableless.com.br/composer-para-iniciantes/)
2)Escolha e baixe os pacotes do framework que
deseja utilizar (https://packagist.org/packages/joomla/)
3)Configure e execute o composer
4)Utilize as bibliotecas instaladas