drupal workshop ist 2014
TRANSCRIPT
Drupal @ISTHackerSchool
WORKSHOP13 de Maio de 2014
Drupal Portugal
sobre os facilitadores
Ricardo Amaro
Senior Cloud Systems Eng. @ Acquia
Drupal.org Infrastructure Team
Direcção da Drupal Portugal
https://linkedin.com/in/ricardoamaro
Luís Algarvio
Drupal & Debian Consultant @ Agap2
Direcção da Drupal Portugal
https://linkedin.com/in/lpalgarvio
obsessão 1#
obsessão 2#
quem participa hoje?
alunos
professores
programadores designers
curiosos
O que é o drupal?
1,979 Templates em Drupal.org
26,424 Módulos contribuídos
desenvolvimento de sites com foco na gestão de conteúdos código livre para uso, modificação e partilha (GPL)
761,244 pessoas em...
228 ...paises, falando...
181 linguas. comunidade de programadores e utilizadores voluntários
com alguma coordenação da Drupal Association
drupal.org
drupal-pt.org
● Documentation● Download & Extend● Modules ● Themes● Community● Forums & Issues● Groups● Support● Marketplace
Comunidade Drupal Portugaldevelopers, themers, contractors, consultants
Canal IRC #drupal-pt
meetups periódicos
lisboa, porto, braga, aveiro...
estimular o eco-sistema drupal
http://drupal-pt.orghttp://groups.drupal.org/portugal
Próximo evento:
http://lisboa2014.drupal-pt.org/
Drupal Day no ISCTE21 de Junho
some website
examples
source: drupal.org & buytaert.net/tag/drupal-sites
the white house
france 24
die welt
ebayclassifiedsgroup
fedex
cnn
nbc
prince of wales
new york observer
the economist
linux journal
washington university st. louis
warnerbros records
http://www.atlasdasaude.pt
http://www.ionline.pt
http://www.agendalx.pt
Responsive Design readycross compatible with any mobile browser:
-Android-Iphone/Ipad-Symbian-Windows mobile...
#drupalnoções base
from nodes to entities/fields
O principal bloco de trabalho do Drupal.
É o conteúdo no site. Pode ser um blog, um artigo, uma página, um questionário, etc.....
Uma instalação base cria o tipo de conteúdo article e page.
opções de publicação
PublishedCria um switch on/off para os nós Promote to front pageAdiciona o nó à página frontal
Sticky at top of listsTorna o nó o primeiro da listagem
content type
http://drupal.org/node/21947
O Tipo de Conteúdo é a template para os nós.
Modificar um tipo de conteúdo afecta todos os nós criados com aquela template.
Muitos módulos são criados para interagir com tipos de conteúdo.
organizar e visualizar conteúdos
conteúdos podem ser agrupados:
- encaminhados para a página frontal
- taxonomia (categorias)
e com Fields + Views + Panels
como funcionam os nós?
URI típico http://drupal.org/node/19828
o 19828 é um identificador único
usando este identificador o Drupal carrega toda a informação relativa a este conteúdo
comentários incluídos
na prática, é uma query complexa na base de dados
manipulação de URLs(seo compliance)
funcionalidade base via módulo core path
permite customizar os URLs
passo seguinte: criar padrões automáticos de URLs (semânticos) via pathauto
módulos core: obrigatórios ou não ao instalar o drupal vêem uma série de módulos ditos do core
convém conhecê-los para evitar a duplicação de funcionalidades e código
estes módulos estão vetados em termos de qualidade pela equipa do core
para outros módulos da comunidade:http://drupal.org/project/modules
onde colocar os módulos e temas?
instalação unisite
/home/username/public_html/sites/all/
{modules,themes}
instalação multisite
/home/username/public_html/sites/site1.com/{modules,themes}
pesquisar módulos
http://drupal.org/project/modules
Como encontrar o que preciso?
Como estão organizados?
Que estatísticas de módulos estão disponiveis?
Como são as estatísticas geradas?
Quais são os módulos mais usados? http://drupalmodules.com
gerir utilizadores: permissões
módulo core opcional profile que permite criar um perfil de utilizador
o utilizador é uma entity diversa do nó (conteúdo)
permissões definem o que é possível de fazer para cada utilizador (ACL) ou grupo de utilizadores (roles)
visualização, criação, edição, etc
#drupalWorkshop
plano de trabalho
1. preparar o ambiente 2. download e instalação 3. mudar o look & feel 4. flexibilizar layouts com blocos5. criar e manipular conteúdo6. criar tipos de contúdo customizados 7. gerir utilizadores8. usar roles/permissões9. traduzir o interface
10. linha de comandos com drush 11. localizar e instalar módulos contrib12. cinco módulos obrigatórios 13. fazer backup e mover o site 14. actualizar e manter o site15. listar dados do site com views
1. preparar o ambiente
Linux Debian/Ubuntu
Este script irá instalar um Drupal7 em /var/www,
juntamente com o drush e uma bd “drupal”.
curl -s http://www.ricardoamaro.com/d7install.bash | sh
2. download e instalar
http://drupal
Database: drupal,
database user: drupal,
password: d7pass
your mail,
your details
Easy way: Dev Desktop
● Acquia Drupal● Apache web server● MySQL ● PHP● phpMyAdmin● Dev Desktop
Control Panel
● XMail Server
http://www.acquia.com/downloads
But today... Acquia Cloud free
http://acquia.com/freehttps://insight.acquia.com/site-list
➔ enable “Live development”
goto: /admin/modules
➔ enable “Update Manager”➔ Upload a theme
3. mudar o look & feel
4 - flexibilizar layouts com blocos
5. criar e manipular conteúdo
6. criar tipos de conteúdos customizados
7. gerir utilizadores
8. usar roles/permissões
9. traduzir o interface
10. linha de comandos com drush $ sudo apt-get install drushou$ git clone https://github.com/drush-ops/drush.git$ sudo ln -s drush/drush /usr/local/bin/drush
$ cd /var/www/drupal$ drush status Drupal version : 7.27 Site URI : http://default Database driver : mysql Database hostname : localhost Database username : mysite Database name : mysite Database : Connected Drupal bootstrap : Successful Drupal user : Anónimo Default theme : mytheme Administration theme : seven PHP configuration : /etc/php5/cli/php.ini Drush version : 4.5 Drush configuration : Drush alias files : Drupal root : /home/mysite/public_html Site path : sites/default File directory path : sites/default/files
$ drush -h
11. locating and installing contrib modules / themes
http://drupal.org/project/moduleshttp://drupal.org/project/usage
http://drupal.org/project/themes
$ drush dl views
$ drush en views
12. cinco módulos obrigatórios(not in D7 core)
1.views 2.ctools3.ds (display suite)4.rules5.backup_migrate
https://drupal.org/project/usage
13. fazer backup e mover o site
$ drush | grep archive
archive-dump (ard, Backup your code, files, and database into a single file.
archive-backup, arb)
archive-restore (arr) Expand a site archive into a Drupal web site.
$ drush ard
myserver:~/drush-backups/archive-dump# ls
20120402144836
14. actualizar e manter o site
$ drush | grep update
self-update Update drush to the latest version, if available.
(selfupdate)
updatedb (updb) Apply any database updates required (as with running
update.php).
field-update Return URL for field editing web page.
pm-refresh (rf) Refresh update status information.
pm-update (up) Update Drupal core and contrib projects and apply any
pm-updatecode (upc) Update Drupal core and contrib projects to latest
jquery-plugin-update Updates jQuery plugins
$ drush pm-update
goto: drupal.org/project/views
➔ upload “Views”➔ enable “Views”
15. listar dados do site com views
questões?
Se tiveres questões mais tarde junta-te ao canal do IRC #drupal-pt
obrigado!
http://lisboa2014.drupal-pt.org/
torna-te membro da nossa comunidade
http://groups.drupal.org/portugal