1. Sábados Libres Altamar – Drupal de 0 a 100 – 25 Abril 2015
Drupal
De 0 a 100
Alberto Permuy Leal
@apermuy
De 0 a 100
Sábados Libres en Altamar
Vigo – 25 Abril 2015
Galpon.org
2. Vostede é libre de:
Copiar, distribuir e comunicar públicamente a obra
Crear obras derivadas
Baixo as siguintes condicións:
Recoñecemento - Debe recoñecer os créditos da obra especificada pola autor ou
licenciador.
Compartir baixo a mesma licenza - Se altera ou transforma esta obra, ou xenera unha
obra derivada, so pode distribuir a obra xenerada baixo unha licencia idéntica a esta.
Esta está baseada na orixinal http://www.slideshare.net/apermuy/curso-38799179 de Alberto Permuy Leal, e está
dispoñible baixo Recoñecemento-CompartirIgual 3.0 http://creativecommons.org/licenses/by-sa/3.0/deed.es_ES
3. Sábados Libres Altamar – Drupal de 0 a 100 – 25 Abril 2015
Autobombo
www.codery.es
+
Dende 2003 apoiando
Software e Cultura Libre
dende Mugardos
8. Sábados Libres Altamar – Drupal de 0 a 100 – 25 Abril 2015
Pila de tecnoloxía
Linguaxe: : PHP
Capa abstración de base de datos
SBGD : MySQL, PostgreSQL, SQLite
Servidor web : Apache, Nginx, IIS...
Sistema operativo : GNU/Linux, OSX, Solaris, BSD, Windows
9. Sábados Libres Altamar – Drupal de 0 a 100 – 25 Abril 2015
Módulos en Drupal
●
A arquitectura de Drupal é modular
●
Cada funcionalidade está incluida nun módulo
●
Para engadir funcións a un sitio web Drupal activamos ou
desactivamos módulos
●
Os módulos poden engadir comportamentos(p.e: envio emails)
●
A estructura que permite invocar estos comportamento son os
hooks
10. Sábados Libres Altamar – Drupal de 0 a 100 – 25 Abril 2015
hooks
●
Eventos internos de Drupal, tamén chamados “retrochamadas”
●
Permiten unirse ao resto do que sucede en Drupal
●
Exemplo:
●
Inicio de sesión en Drupal desencadenda
hook_user_login
●
Neste momento invocaranse tódalas funcións que
cumplan a convención : nome_modulo + nome_hook
●
locale_user_login() => configuración rexional
●
galpon_user_login() => comportamento 'custom' para o
módulo GALPON
11. Sábados Libres Altamar – Drupal de 0 a 100 – 25 Abril 2015
Temas en Drupal
●
En Drupal a capa de temas é a encargada de crear HTML que
recibirá o navegador.
●
O motor de plantillas empregado por Drupal 7 é PHPTemplate
●
En Drupal 8 o motor de plantillas é Twig
●
Plantillas : separan o contido e o marcado HTML
●
É moi sinxelo mudar o aspecto dun sitio Drupal
●
CSS : identificar as clases e sobreescribilas
●
https://www.drupal.org/project/css_injector
●
Opción axeitada: usar arquivos de plantillas
12. Sábados Libres Altamar – Drupal de 0 a 100 – 25 Abril 2015
Nodos en Drupal
●
En Drupal os tipos de contido parten dun único tipo: nodo
●
Páxinas, blogs ou recetas comparten estrutura base
●
Este enfoque ten unha ventaxa: entidades extensibles
●
Os programadores/as de módulos poden engadir novas
funcionalidades sen depender do tipo de contido de nodo.
●
Tódolos nodos comparten un conxunto básico de propiedades :
●
nid: identificador único do nodo
●
uid: identificador único do usuario “creador” do nodo
●
created : data en formato unixtime de alta do nodo.
●
A interfaz administrativa dispón dunha pantalla de edición
destas propiedades.
https://www.drupal.org/documentation/modules/node
13. Sábados Libres Altamar – Drupal de 0 a 100 – 25 Abril 2015
Campos en Drupal
●
En Drupal o contido está formado por campos individuais
●
Un título dun nodo é un campo.
●
Podemos crear e usar tantos campos como se necesiten para
personalizar un tipo de nodo
●
checkbox
●
date
●
text
●
textarea
●
referencias a outros tipos de contido ou
clasificacións(Taxonomía)
●
Por suposto, temos á nosa disposición en Drupal.org moitos
módulos que engaden novos tipos de campos
●
O API de Drupal permite extender os campos dun xeito sinxelo
e sen apenas escribir código
https://www.drupal.org/project/field_nif
https://www.drupal.org/project/email
14. Sábados Libres Altamar – Drupal de 0 a 100 – 25 Abril 2015
Bloques en Drupal
●
Un bloque é a información que pode habilitar ou deshabilitar en
calquera ubicación dunha plantilla de un sitio web construido
con Drupal.
●
Exemplo: Bloque que mostrar o número de usuarios activos
●
Os bloque son configurables, tanto na posición, contido,
permisos...
●
A configuración e alta de novos bloques realízase dende a capa
administrativa de Drupal
●
O API de Drupal permite extender e crear bloques dun xeito
sinxelo e sen apenas escribir código
https://www.drupal.org/documentation/modules/block
15. ●
includes : Contén as bibliotecas de funcións comúns usadas en Drupal
●
misc: Almacena Javascript, iconas e imáxenes dunha instalación estándar de Drupal
●
modules: Contén os módulos básicos, cada un nun directorio propio. NON MODIFICAR
NIN ALTERAR: NUNCA!
●
profiles: Contén os distintos perfiles de instalación dun sitio
●
scripts: Contén secuencias de comandos para comprobar a sintaxis, limpar código...
●
sites: Contén as nosas modificacións propias de Drupal: módulos, temas e librerías.
●
sites/default/files: Instalación base de Drupal predeterminada.
●
themes: Contén os motores de plantillas e os temas predeterminados de Drupal. Os
temas adicionais descargarémolos en sites/all/themes
●
cron.php: Arquivo que se usa para executar tarefas periódicas como por exemplo
rutinas de mantemento de bases de datos.
●
index.php: Punto principal de entrada de solicitudes.
●
install.php: Punto principal de entrada do instalador de Drupal
●
update.php: Actualiza os esquema de base de datos tras unha actualización.
●
robots.txt: implementación predeterminada do estándar de exclusión de robots.
●
xmlrcp.php: recibe solicitude XML-RPC. Non é necesario se non se habilita os servizo.
Sábados Libres Altamar – Drupal de 0 a 100 – 25 Abril 2015
Sistema de arquivos en Drupal
17. Sábados Libres Altamar – Drupal de 0 a 100 – 25 Abril 2015
Servidor obradoiro SLAD
●
Nome DNS: slad.galpon.org
●
Drupales para argallar : http://slad.galpon.org/obradorio/$1
●
$1 => Número usuario
●
Nome usuario: admin
●
Contrasinal: admin
●
Acceso vía SSH/SFTP
●
HostName: slad.galpon.org
●
Porto: 22 (TCP)
●
Usuario: galpon
●
Contrasinal: ****
●
Directorio de traballo: /home/galpon/www/obradoiro/$1
18. Sábados Libres Altamar – Drupal de 0 a 100 – 25 Abril 2015
Interface administrativa
●
Xestión de contido
●
Xestión de usuarios
●
Xestión de módulos
●
Xestión de apariencia (temas)
●
Configuración do sitio