Your SlideShare is downloading. ×
Introdução ao Drupal 7
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Introdução ao Drupal 7

4,533
views

Published on

Palestra de introdução ao Drupal (versão 7) apresentada no IV Encontro PHP-PB, dentro do FLISOL - Patos/PB, em 28 de abril de 2012.

Palestra de introdução ao Drupal (versão 7) apresentada no IV Encontro PHP-PB, dentro do FLISOL - Patos/PB, em 28 de abril de 2012.


1 Comment
3 Likes
Statistics
Notes
No Downloads
Views
Total Views
4,533
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
143
Comments
1
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Introdução aoFLISOL 2012 – Festival Latinoamericano de Instalação de Software Livre IV PHP-PB – Encontro do Grupo de Usuários PHP da Paraíba Gedvan P. Dias – gedvan@gmail.com
  • 2. Sobre mim ● Mestrado em Informática pela UFPB ● Professor no IFPB e na Faculdade IDEZ ● Trabalho com desenvolvimento web e PHP há mais de 8 anos ● Trabalho com Drupal há quase 3 anosIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 3. O que é o Drupal?Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 4. CMS Content Management System Para usuários comuns, é uma ferramenta livre para publicar e organizar conteúdo na webIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 5. CMF Content Management Framework Para desenvolvedores, provê uma sólida base para estender e implementar soluções de gerenciamento de conteúdo em PHPIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 6. Breve Histórico ● Iniciado em 1999 por Dries Buytaert (Bélgica) ● 2001: v2.0 e v3.0 ● 2002: v4.0 ● 2005: v4.6 ● 2007: v5.0 ● 2008: v6.0 ● 2011: v7.0Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 7. Por que Drupal?Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 8. Principais CaracterísticasIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 9. Riqueza de funcionalidades Centenas de módulos para as mais diversas necessidadesIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 10. Robustez Arquitetura sólida e código amplamente testadoIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 11. Modularidade O sistema de hooks permite uma integração transparente (seamless integration) entre os módulosIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 12. Flexibilidade Alta capacidade de customização e um sistema de temas totalmente flexívelIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 13. Software Livre Licença GNU/GPLIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 14. Algumas DesvantagensIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 15. Curva de aprendizado No começo, o aprendizado pode ser um pouco lento, comparado a outras ferramentasIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 16. Temas prontos Não há uma grande quantidade de temas prontos e gratuitos disponíveisIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 17. Documentação em português A maior parte da documentação é em inglês (problema?)Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 18. Comunidade brasileira A base de usuários e desenvolvedores Drupal no Brasil ainda é pequena, comparado a outros CMSsIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 19. O que pode ser feito com o Drupal?Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 20. Bastante coisa... ● Blogs ● Comunidades ● Sites pessoais ● Intranets ● Sites corporativos ● WIKIs ● Galerias de fotos ● Sites internacionais ● Galerias de vídeos ● Portais de notícias ● Fóruns ● Hotsites ● E-commerce ● Redes sociais ● E-learning ● …Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 21. Vejamos alguns exemplos...Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 22. Acabou a brincadeira
  • 23. ArquiteturaIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 24. Principais módulos do core ● System ● Block ● Node ● Taxonomy ● Fields ● Comment ● Text, Number, List, File, ● Menu Image, Options ● Database logging ● User ● Locale ● ThemeIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 25. Outros módulos do core ● Search ● Poll (enquetes) ● Blog ● RDF ● Book ● Statistics ● Forum ● Testing ● Path ● Update manager ● Contact ● Trigger ● Help ● …Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 26. Node System ConteúdoIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 27. Node System ● Os conteúdos no Drupal são chamado de nodes ● Página, artigo, notícia, evento, post de blog, tópico de fórum, galeria de fotos, etc. ● Cada um dos itens acima é um tipo de conteúdo diferente (node type)Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 28. Propriedades Comuns ● Todos os nodes têm um conjunto de características e campos básicos ● Título, corpo, workflow, versionamento, comentários, configurações de menu e endereçoIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 29. Tipos de Conteúdo ● Na instalação padrão, temos os tipos de conteúdo Artigo e Página ● Módulos podem disponibilizar outros tipos de conteúdo ● Ex: O módulo Fórum cria o tipo de conteúdo Tópico de Fórum, que possuem as propriedades comuns + propriedades específicasIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 30. Tipos de ConteúdoIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 31. Fields System CamposIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 32. Fields ● Antigo CCK (Content Construction Kit) ● Permite criar novos tipos de conteúdos ● Permite adicionar campos de diversos tipos aos conteúdos ● Textos, imagens, checkboxes, radiogroups, listas, arquivos, referências a nodes, etc.Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 33. Exemplo ● Portal de veículos ● Tipo de conteúdo: Veículo ● Campos adicionais: ● Fabricante (texto) ● Ano (número) ● Valor (monetário) ● Imagens (3) (arquivos) ● Opcionais (checkboxes)Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 34. TaxonomiaIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 35. Taxonomia ● O módulo taxonomy permite a categorização do conteúdo (em vocabulários e termos) ● Vocabulários são grupos de categorias (termos) ● Um vocabulário pode ser usado por vários tipos de conteúdoIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 36. Taxonomia ● Suporta: ● Profundidade ilimitada para sub-categorias ● Múltiplas categorias ● T (vocabulário aberto) ags ● Termos relacionadosIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 37. Exemplo Termos: ● Brasil Vocabulário: ● Mundo Categorias de ● Política notícias ● Esportes – Futebol – Vôlei – BasqueteIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 38. Exemplo Termos: ● Ação Vocabulário: ● Comédia Gêneros de filmes ● Romance ● Drama ● Suspense ● Documentário ● …Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 39. UsuáriosIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 40. Gerenciamento de usuários Cadastro, login, logout, auto-registro, “esqueci a senha”, …Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 41. Permissões ● Papéis (roles) ● Funções/papéis/grupos de usuários ● Roles padrão: visitante, usuário registrado, administrador ● Número ilimitado de novas roles ● Sistema de permissões ● Controle refinado de cada permissão para cada roleIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 42. Theme System TemasIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 43. Temas ● Sistema altamente flexível para criação de temas ● Um tema pode definir, entre outras coisas: ● Arquivos CSS e Javascript a serem utilizados ● Regiões disponíveis para os blocos ● Arquivos de template utilizados ● Funções para programação da lógicaIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 44. Temas derivados ● Criação de um tema baseado em outro existente ● Pode-se manter os arquivos do tema base, adicionando ou sobrescrevendo apenas os arquivos necessários ● Herda-se também todas as outras características, como configurações e funçõesIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 45. Template engines ● Por padrão, utiliza-se o PHPTemplate ● Utiliza o próprio PHP como linguagem ● Mas pode-se utilizar outras engines (incomum)Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 46. Arquivos de template ● Os arquivos de template usam a extensão .tpl.php ● Pode-se sobrescrever a marcação padrão de vários elementos ● Ex: Páginas (page.tpl.php), nodes (node.tpl.php), blocos (block.tpl.php), comentários (comment.tpl.php), …Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 47. Template suggestions ● Templates para elementos mais específicos: ● node--type.tpl.php (ex: node--article.tpl.php) – Template para tipos específicos de nodes ● node--id.tpl.php (ex: node--5.tpl.php) – Template para um node específico ● page--front.tpl.php – Template para a página inicial ● Vários outros...Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 48. Template.php ● No arquivo template.php podem ser criadas funções para a lógica do tema ● Evitando código spaghetti nos templates ● Também podem ser criadas funções de pré- processamento de nodes, páginas, blocos, etc. function <theme>_preprocess_page($vars) { … }Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 49. Ainda... ● Formulários e variáveis de configuração ● Esquemas de cores ● Temas diferentes ou o mesmo tema para o front end e o back endIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 50. BlocosIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 51. Blocos ● “Pedaços” de aplicações ● Últimas notícias ● Lista de categorias ● Lista de usuários ● Menus ● Muitas outras opções ● Permite o posicionamento de blocos em regiões do sites ● As regiões são definidas pelos temasIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 52. Outros Módulos do Core ● Locale ● Suporte a qualquer idioma através de UTF-8 ● Gettext com interface web para tradução ● Importação e exportação ● Search, Contact, Watchdog, Forum, Blog, Poll, Comment, Statistics, Trigger, Path, etc.Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 53. Módulos ContribuídosIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 54. Views ● Método altamente flexível para exibir listas e tabelas de conteúdo no site ● Consiste em uma ferramenta para auxiliar na construção e execução de queries e exibição dos resultados ● Permite exibir os conteúdos em blocos, páginas e feeds, entre outrosIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 55. Pathauto ● Permite a geração de URLs de acordo com padrões pré-configurados ● Permite criar URLs dos tipos: ● meusite.com/noticias/2010/06/50/comeca-o-ensol ● meusite.com/artigos/software-livre/ensol-e-a-liberdade- no-extremoIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 56. Drupal Commerce ● Sistema completo de e-commerce integrado ao Drupal ● Carrinho de compras, atributos de produtos, estoque, envio, endereços, promoções, sistemas de pagamento, etc.Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 57. Muitos, muitos outros módulos Panels, Display Suite, WYSIWYG, Webform, Lightbox2, Date, Devel, Fivestar, CAPTCHA, XML Sitemap, Simplenews, Rules, Organic Groups, Location, Advertisement, …Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 58. Profiles Distribuições do Drupal, com módulos e configurações pré-instalados, para atender necessidades específicasIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 59. OpenAtrium Sistema de “intranet” para gerenciamento de projetos, com suporte a case tracker, blog, calendário, wiki, grupos, etc.Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 60. Martplug Sistema de e-commerce pré-configurado, com suporte a catálogo de produtos, importação, produtos digitais, integração com redes sociais, slideshow, etc.Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 61. Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 62. Pressflow Distribuição do Drupal com foco em desempenho, escalabilidade e disponibilidade. Ideal para sites de alto tráfego.Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 63. Outros Drupal Commons, OpenPublish, OpenChurch, OpenPublic, … drupaldistrowatch.comIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 64. Demonstração Sistema de anúncio de veículosIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 65. Concluindo... Por que usar o Drupal?Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 66. Tempo Segurança Flexibilidade ColaboraçãoIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 67. Links e Referências ● www.drupal.org ● Site oficial ● www.drupalmodules.com ● Busca, avaliação e resenhas de módulos ● www.drupalsites.net ● Diretório de sites feitos com DrupalIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 68. Comunidade brasileira ● www.drupal-br.org ● Comunidade brasileira de Drupal ● groups.google.com/group/drupal-br ● Lista de discussão no Google GroupsIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 69. Dúvidas?Introdução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB
  • 70. Obrigado! @gedvan Avalie esta palestra: http://abda.la/flisol/pubilcIntrodução ao Drupal 7 – Gedvan Dias FLISOL 2012 – IV PHP-PB

×