
Índice de contenidos sobre la instalación, configuración y uso del CMS Drupal 8. No pretende ser un tutorial paso a paso de cómo aprender Drupal, es sólo un guión que utilizo en mis clases para enseñar Drupal, de ahí que falten bastantes enlaces aún. Está dividido en dos secciones:
- Básico: contenidos mínimos que considero necesarios conocer de Drupal.
- Avanzado: contenidos para diseñar un sitio Drupal con mayor funcionalidad.
Drupal básico
Introducción
Instalación del servidor web y de la base de datos
- Instalar servidor web local con Xampp:
- Utilizar PHP 7.2.
- (Pendiente) Asignar permisos correctos directorios XAMPP.
- Configurar PHP (php.ini):
- max_execution_time=600
- max_input_time=600
- memory_limit=2G
- post_max_size=64M
- upload_max_filesize=64M
- mysql.connect_timeout=600
- FileInfo
- OPcode Caching PHP
- Configurar MySQL (my.ini):
- max_allowed_packet=64M (en la sección [mysqld])
- innodb_flush_log_at_trx_commit=2
- (Pendiente) Crear usuarios y contraseñas MySQL y PHPMyAdmin.
- Creación de la base de datos MySQL:
- Cotejamiento utf8mb4_general_ci.
-
Crear un VirtualHost o Alias en Apache (httpd.conf) que apunte a la carpeta public del proyecto y visitar el proyecto desde un navegador web.
Ejemplo de VirtualHost:
#Se puede utilizar la barra "/" tanto para rutas en Windows como en Linux <VirtualHost *:80> ServerName drupal.local DocumentRoot "/ruta/drupal/web/" <Directory "/ruta/drupal/web/"> Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted </Directory> ErrorLog "logs/drupal.local-error.log" CustomLog "logs/drupal.local-access.log" common </VirtualHost>
-
Recuerda que tendremos que introducir el dominio en nuestro fichero hosts del sistema operativo:
- Windows: C:\Windows\System32\drivers\etc\hosts
- Linux: /etc/hosts
-
127.0.0.1 drupal.local
Instalación del núcleo con Composer
- Instalar y actualizar Composer (Windows):
- Crear fichero CMD con lectura de parámetros para ejecutar Composer (composer.cmd):
- /ruta/php.exe /ruta/composer.phar %1 %2 %3 %4 %5 %6
- Incluir el directorio de Composer en la variable de entorno PATH del usuario.
- Actualizar Composer:
- composer selfupdate
- Instalar y actualizar Composer (Linux):
- Crear alias para ejecutar Composer:
- alias composer = '/ruta/php7.2-cli /ruta/composer.phar'
- Actualizar Composer:
- composer selfupdate
- Instalar Git
- Crear proyecto Drupal con Composer:
- composer create-project drupal/recommended-project nombre-del-proyecto
- (Pendiente) Asignar permisos de escritura para el usuario Apache en:
- Carpeta proyecto de Composer.
- Carpeta Sites de Drupal.
- Iniciar la instalación de Drupal
- Visitar el sitio e iniciar sesión
Configuración básica
- Conocer la estructura de carpetas y archivos del núcleo
- Crear carpetas del sitio, con permisos de escritura para "others":
- sites_public
- sites_private
- sites_tmp
- Configuración del sitio web: settings.php
- database
- file_public_path
- file_private_path
- file_temp_path
- trusted_host_patterns
- Configuración -> Multimedia -> Sistema de archivos:
- Ruta pública, privada, temporal y traducciones.
- Configuración -> Desarrollo -> Rendimiento
- Configuración -> Sistema -> Configuraciones básicas del sitio
- Configuración -> Regional e idioma -> Opciones regionales
- Configuración -> Regional e idioma -> Fecha y hora: nuevo formato y nuevo tipo de fecha
- Configuración -> Regional e idioma -> Idiomas
- Configuración -> Regional e idioma -> Traducción de la interfaz de usuario
- Ampliar
Informes
- Informes -> Informe de estado
- Informes -> Mensajes recientes de registro
Exportación y restauración del sitio
- Exportación
- Configuración -> Desarrollo -> Modo de mantenimiento: Activar
- Exportar base de datos dentro de la carpeta del proyecto Composer
- Copiar carpeta del proyecto Composer
- Configuración -> Desarrollo -> Modo de mantenimiento: Desactivar
- Restauración
- Copiar carpeta del proyecto Composer
- Permisos en carpeta web Composer
- Restaurar base de datos
- Configuración de settings.php (base de datos)
- Configuración de .htaccess (en carpeta web y en alias)
- Configuración -> Desarrollo -> Rendimiento: vaciar cachés
- Configuración -> Desarrollo -> Modo de mantenimiento: Desactivar
Actualización del núcleo y módulos contribuidos con Composer
- Informes -> Actualizaciones disponibles
- Informes -> Actualizaciones de traducción disponible
- Configuración -> Desarrollo -> Modo de mantenimiento: Activar
- Para que no actualice .htaccess y robots.txt:
-
"extra": { "drupal-scaffold": { "excludes": [ ".htaccess", "robots.txt" ] } }
-
- Comprobar actualizaciones disponibles sin actualizar:
- composer update --dry-run
- Actualizar núcleo:
- composer update --with-dependencies
- Actualizar base de datos:
- http://localhost/update.php
- Configuración -> Desarrollo -> Modo de mantenimiento: Desactivar
Añadir y eliminar módulos contribuidos con Composer
- Añadir módulos:
- composer require drupal/<module>
- Ampliar: Activar dicho módulo
- Eliminar módulos:
- Ampliar: Desactivar dicho módulo
- composer remove drupal/<module>
- Los módulos los instala Composer en la ruta:
- <proyecto>/web/modules/contrib
- Actualizar un módulo de una versión menor a otra superior, por ejemplo de v1.3 a v2.0:
- composer require drupal/<module>
Admin Toolbar
- [Contrib] Admin Toolbar: Mejor usabilidad de la barra de herramientas
- No necesita configuración.
Copias de seguridad
- [Contrib] Backup and Migrate: Copias de seguridad y restauración
- Configuración -> Desarrollo -> Backup and Migrate.
- Configurar fuentes y destinos.
- Realizar copia manual.
- Realizar copia programada.
Entidades, formularios y visualización
- Entidades (Entities)
- Campos (Fields)
- Tipos de entidades (Bundles)
- Modos de formulario (Form display mode)
- Modos de visualización (View display mode)
- Constructor del diseño (Layout builder)
- [Contrib] Token: Listado de tokens ampliado con interfaz gráfica
Usuarios
- Configuración -> Usuarios -> Configuración de la cuenta
- Configurar opciones cuenta y contenido correos electrónicos.
- Configurar campos, formulario y presentación.
- Usuarios
- Usuarios -> Roles
- Usuarios -> Permisos
Formato y Editores de textos
- Configuración -> Autoría del contenido -> Formato y Editores de textos
- [Contrib] IMCE: Administrador de archivos en el editor de textos
- Configuración -> Autoría del contenido -> Formato y Editores de textos: Arrastrar el nuevo botón Imagen a la barra de herramientas.
- Configuración -> Multimedia -> IMCE File Manager: Configurar los perfiles de usuario.
Imágenes
- Configuración -> Multimedia -> Juego de herramientas de imágenes
- Configuración -> Multimedia -> Estilos de imagen
Taxonomías
- Estructura -> Taxonomía
- Vocabularios: Edición, campos, formulario y presentación.
- Términos
Contenidos
- Estructura -> Tipos de contenido
- Edición, campos, formulario y presentación.
- Contenido
Alias
- Configuración -> Búsqueda y metadatos -> Alias de URL
- [Contrib] Pathauto: Patrones de alias automáticos
- Configuración -> Búsqueda y metadatos -> Alias de URL
- [Contrib] Redirect: Redirección automática de URLs
- Configuración -> Búsqueda y metadatos -> URL redirect
Temas
- Instalar:
- Descomprimir tema en la ruta: <proyecto>/web/themes/contrib.
- Apariencia:
- Habilitar tema como predeterminado.
- Configurar tema.
Bloques
- Estructura -> Diseño de bloques
Menús
- Estructura -> Menús
- Añadir menú.
- Añadir enlaces a un menú.
- Estructura -> Diseño de bloques
- Añadir el bloque del menú a una región del tema.
Vistas
- Estructura -> Vistas (Pestaña Configuración)
- Opciones de configuración generales.
- Actualizar la vista previa automáticamente.
- Mostrar la consulta SQL.
- Estructura -> Vistas (Pestaña Lista)
- Tipo de presentación: General, página, bloque, etc.
- Vista de entidades / Vista de campos: Renderiza una entidad o lista una serie de campos de la entidad.
- Formato: Diseño de los datos a mostrar.
- Campos: Configuración de los campos a mostrar en la vista de campos.
- Criterios de filtrado: Filtrado de los datos a mostrar. Puede exponerse el filtrado al usuario.
- Criterios de ordenación: Orden de los datos a mostrar.
- Opciones de página / Bloque / etc: Configuración del tipo de presentación.
- Paginador.
- Filtros contextuales: Filtrado de los datos a mostrar en función del contexto (usuario logueado, etc.).
- Relaciones: Relación de la entidad con otras relaciones (como JOIN de SQL) (tutorial).
- Formulario expuesto: Configuración del formulario de filtrado expuesto.
- Usar Ajax: Utilizar Ajax para recargar los datos si se utiliza el formulario de filtrado expuesto.
Formularios web
- Estructura -> Formularios de contacto
- [Contrib] Webform: Creación de formularios avanzados
Cron
Sistema de correo electrónico
- [Contrib] Mail System: Interfaz gráfica para la administración del sistema de correos electrónicos
- Configuración -> Sistema -> Mail System.
- [Contrib] Swift Mailer: Envío mejorado de emails con soporte HTML
- Configuración -> Sistema -> Swift Mailer.
- [Contrib] Mail Safety: Depurador de correos electrónicos de salida
- Configuración -> Desarrollo -> Mail Safety: Ver los correos electrónicos salientes.
- Configuración -> Desarrollo -> Mail Safety -> Configuración: parar los correos salientes y enviarlos al panel.
- MailHog: Servidor SMTP de pruebas local
Drupal avanzado
Caché
Drupal 8: Guía de referencia escrito por Rafa Morales está protegido por una licencia Creative Commons Atribución-NoComercial-CompartirIgual 4.0 Internacional