Drupal 8: Guía de referencia

Rafa Morales 11 Octubre 2019
8min
0
Drupal 8: Guía de referencia

Í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):
  • Configurar MySQL (my.ini):
  • (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
  • 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:
  • 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

 

Copias de seguridad

 

Entidades, formularios y visualización

 

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

 

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

 

Cron

 

Sistema de correo electrónico

 

Drupal avanzado

Caché