El módulo permite edificar páginas compuestas por varias áreas o regiones, llamadas paneles, en las que podremos ubicar diferentes contenidos del lugar (nodos, vistas, bloques, menús, etc.). Esto nos dejará crear páginas o bien bloques compuestos por diferentes elementos.
Es el módulo idóneo para construir la página primordial del sitio o de las diferentes secciones que pueda tener.
El módulo integra plantillas con distintos diseños, de manera que podremos tener páginas con diferentes disposiciones de elementos de una manera sencilla.
Destacamos asimismo la posibilidad de integración de vistas en los paneles, lo que sin duda aporta el toque final a un módulo completísimo.
Introducción al módulo Panels
El módulo Panels permite construir páginas compuestas por "subregiones", que podrán mostrarse como una página del lugar o bien, en cualquier región del lugar como si de un bloque se tratase.
Un ejemplo de empleo del módulo Panels es la construcción de una página principal del sitio con diferentes secciones activas. En la Figura se muestra un caso de página estructurada en dos columnas con regiones variadas, tanto con contenidos estáticos como contenidos activos (vistas). Esta clase de contenidos compuestos de otros contenidos son los que construiremos con el módulo Panels.
A lo largo de esta primera una parte de esta unidad se desarrollará un ejercicio práctico con la meta de mostrar una página de bienvenida. Esta página va a ser diferente para los usuarios registrados en el lugar que para los que no, mostrando en este último caso un formulario para poderse registrar en el sitio:
En la próxima captura se puede ver los resultados. A la izquierda, la página de bienvenida para un usuario registrado y a la derecha para uno anónimo.
Con Panels podemos crear 3 tipos de paneles:
- Panel de página: Es el tipo de panel más completo. Actúa como una página, pero a la que le vamos a poder pasar argumentos para mostrar contenidos activos en función de estos. Veremos que una característica que aporta enormes posibilidades en la construcción de paneles de página es el uso de argumentos y la posibilidad de relacionarlos con elementos internos de Drupal Trademark (identificadores de los nodos, de los usuarios, etc.).
- Mini panel: Los mini paneles son paneles que se convierten en bloques. Estos bloques van a poder emplearse como bloques normales, en otras zonas, o aun en otros paneles más complejos.
- Panel de nodo: Es un género de contenido similar al panel de página mas más limitado. El resultado es un nodo compuesto por diferentes regiones, mas al que no podemos pasarle razonamientos. Los paneles de nodo se comportan como nodos y se mostrarán en los resultados de las buscas.
El módulo Panels está formado por varios módulos, y el género de paneles disponibles va a depender de los que estén activados:
- Panels: Es el núcleo de este paquete de módulos y se encarga de gestionar que el resto de módulos que trabajan con paneles puedan hacer su función. Este módulo no facilita ninguna herramienta de interfaz de usuario para poder crear los paneles, con lo que tendremos que activar además ciertos módulos adicionales.
- Mini Panels: Permite crear mini-paneles, que entonces pueden ser situados y configurados como bloques en las regiones de nuestro tema. Asimismo podrán usarse dentro de otros paneles.
- Panel nodes: Deja crear paneles en forma de nodos. Las funcionalidades se van a ver reducidas con respecto a las páginas de panel, pero se podrán aplicar todas las opciones y funcionalidades de cualquier nodo, como efectuar comentarios o permitir que se muestre en los resultados de las buscas. Para permitirnos esta función, el módulo agrega a nuestro lugar un nuevo género de contenido que nos deja crear paneles tal y como si de cualquier otro nodo se tratara.
- Panels In-Place Editor: Este módulo da herramientas para permitir al desarrollador del sitio editar algunas opciones de manera directa cuando se está visualizando el resultado final de un panel, sin acceder constantemente a la parte de administración.
El módulo Panels requiere el módulo (conocido como Ctools), que es un conjunto de librerías que pueden ser empleadas de cara al desarrollo de otros módulos. El módulo Chaos tool suite también está formado por otros módulos, de los que resaltamos los próximos, que serán necesarios para trabajar con Paneles:
- Chaos tools: Es el núcleo de Ctools y da las herramientas básicas que precisan muchos módulos, entre ellos el módulo Panels.
- Page Manager: Este módulo da las herramientas visuales a fin de que el desarrollador del sitio pueda construir y administrar paneles de página. En nuestro caso es indispensable.
- Views content panes: Deja que los paneles puedan enseñar vistas en su interior.
Paneles de página
El proceso de creación de un Panel de página es el más completo de todos, con lo que nos servirá para comprender el proceso general de creación de paneles y las posibilidades que ofrece el uso de estos en Drupal Trademark.
La creación de un mini panel o bien un panel de nodo (panel node) es prácticamente afín, incluso más fácil por tratarse de géneros de panel más simplificados, como vamos a ver en los próximos apartados.
Para crear o bien editar paneles debemos acceder a:
Administración->Estructura->Paneles
Desde la página de administración de paneles vamos a poder crear nuevos paneles y editar los existentes. Para empezar vamos a crear un nuevo panel de página, haciendo click en Create new... Panel de página.
Creación y configuración de un panel de página
Las opciones de configuración libres para el nuevo panel de página son:
- Título administrativo: El nombre que se mostrará en el listado de administración de páginas. Debemos usar nombres breves mas descriptivos, para facilitarnos el trabajo de ubicación de las páginas.
- Descripción administrativa: Es una breve descripción de la página, solo para el área de administración.
- Ruta: Dirección URL para acceder a la nueva página. Se pueden definir argumentos (opcionales o bien obligatorios), que van a ser pasados mediante la URL, de la próxima forma:
- mipanel/ por cien argumento: El símbolo por ciento sirve para apuntar razonamientos obligatorios, de forma que en la URL siempre y en toda circunstancia ha de estar presente el razonamiento. En caso de no aparecer el razonamiento, Drupal va a mostrar el fallo 404 de página no encontrada.. diseño de paginas wordpress /li>
- o mipanel/!argumento: El símbolo ! sirve para señalar argumentos opcionales. En el caso de no indicarse el razonamiento se muestra la configuración por defecto del panel. Por poner un ejemplo, podríamos utilizar mipanel/ por ciento username en un panel en el que quisiéramos enseñar información sobre el usuario (imagen de usuario, información de contacto, últimos comentarios publicados en el lugar, etc.). La forma de que el panel sepa a qué usuario hace referencia se detallará a través del razonamiento username. En este caso el argumento sería obligatorio, de forma que si no se detalla, el sistema va a devolver un fallo de página no encontrada. En cambio, si utilizamos mipanel/!username, si no se especifica ningún usuario en el argumento nombre de usuario, el panel sencillamente no lo tendrá en cuenta. Veremos que existen opciones para indicar al panel lo que debe hacer de forma predeterminada, si no se detalla un argumento de la URL.
- Hacer de ésta la página principal del sitio: Permite apuntar si queremos que esta página se transforme en la página de inicio del lugar. Esta configuración también la podemos realizar a través de la opción Página inicial predeterminada, en: Administración->Configuración->Información del sitio
- Utilizar esta página en sobreposición de administración: Hemos visto que el módulo Overlay permite cargar el área de administración en una capa sobrepuesta. Marcando esta característica la página se mostrará dentro la capa de configuración que introduce el módulo Overlay, siempre y cuando estemos haciendo uso de ella. Esta alternativa solamente debería marcarse cuando el panel sirva como herramienta a los administradores y esté ubicado dentro del área de herramientas de administración.
- Tipo de variante: Los modelos de variaciones disponibles son Panel, que nos permite crear un Panel de página, y HTTP response code, que se trata de un tipo de panel que siempre devuelve el encabezado HTTP que le señalemos (403, cuatrocientos cuatro o bien redirección 301).
- Características opcionales: Permite configurar diferentes conjuntos de opciones durante el proceso de creación de la página:
- Control de acceso: Configuración del control de acceso a la página (control por rol, permiso, etcétera).
- Elemento de menú visible: Nos permitirá asociar la página de panel con un link de menú.
- Reglas de selección: Deja definir un conjunto de reglas o bien condiciones para determinar si se debe mostrar o bien no la página. Por ejemplo, mediante esta alternativa podríamos seleccionar que la página sólo se cargue para un idioma determinado.
- Contextos. Está relacionada con los razonamientos, podremos apuntar "qué significan" los argumentos que hayamos detallado en la Ruta.
- mipanel/ por ciento argumento: El símbolo por cien sirve para señalar argumentos obligatorios, de forma que en la URL siempre y en toda circunstancia debe estar presente el razonamiento. En caso de no aparecer el razonamiento, Drupal mostrará el error 404 de página no encontrada..
- o mipanel/!argumento: El símbolo ! sirve para indicar razonamientos opcionales. En caso de no indicarse el argumento se muestra la configuración por defecto del panel. Por ejemplo, podríamos emplear mipanel/ por ciento username en un panel en el que quisiéramos mostrar información sobre el usuario (imagen de usuario, información de contacto, últimos comentarios publicados en el sitio, etcétera). La forma de que el panel sepa a qué usuario hace referencia se especificará a través del argumento nombre de usuario. En este ejemplo el argumento sería obligatorio, de forma que si no se especifica, el sistema va a devolver un error de página no encontrada. En cambio, si usamos mipanel/!username, si no se especifica ningún usuario en el razonamiento nombre de usuario, el panel simplemente no lo tendrá en cuenta. Vamos a ver que existen opciones para apuntar al panel lo que debe hacer de forma predeterminada, si no se detalla un razonamiento de la URL.
- Control de acceso: Configuración del control de acceso a la página (control por rol, permiso, etcétera).
- Elemento de menú visible: Nos dejará asociar la página de panel con un link de menú.
- Reglas de selección: Permite definir un conjunto de reglas o condiciones para determinar si se debe mostrar o no la página. Por ejemplo, mediante esta opción podríamos seleccionar que la página solo se cargue para un idioma determinado.
- Contextos. Está relacionada con los razonamientos, podremos indicar "qué es lo que significan" los razonamientos que hayamos especificado en la Senda.
Aunque no seleccionemos ninguna de estas opciones, más tarde podremos acceder a la configuración de cada una de ellas. Si marcamos alguna antes de seguir, la configuración de las opciones escogidas se mostrará en los próximos pasos de la creación de la página.
Definición de razonamientos (asignar contexto)
Haciendo click en Continuar guardamos los cambios y continuamos con el proceso de creación y configuración de la página. Si en la definición de la ruta hemos incluido argumentos de URL, el siguiente paso consistirá en configurar el uso de estos razonamientos.
Para asignar un contexto a cada argumento, haremos clic en Cambiar. Según el significado que queramos dar al razonamiento, seleccionaremos en valor conveniente. Ciertos significados que podemos elegir son:
- Nodo: ID. El argumento va a ser el identificador de un nodo (nid).
- Usuario: ID. El razonamiento va a ser el identificador de un usuario (uid).
- Usuario: nombre. El argumento será un nombre de usuario.
- Comentario: ID. El razonamiento va a ser el identificador de un comentario.
- Término de taxonomía: ID. El razonamiento señala un identificador de un término de taxonomía.
Todos los elementos de Drupal tienen un identificador único asociado, que se corresponde con el índice utilizado en la base de datos. Si un nodo tiene la URL node/54, su identificador, conocido internamente como nid, es el 54. Este identificador es el llamado ID del nodo.
Los usuarios también tienen un identificador numérico único, del mismo modo que los comentarios y los términos de taxonomía. El nombre de usuario, aunque no es numérico, es único y también constituye un identificador.
De esta manera, si en la senda del panel queremos apuntar un argumento que especifique un ID de nodo (usando rutas como mipanel/ por ciento nid, node/ por cien nid o bien node/ por cien nid/extra), elegiremos en la configuración del contexto Nodo: ID.
Si queremos un panel en el que se muestre información sobre un usuario, cuyo nombre se pasa como argumento en la URL (por servirnos de un ejemplo, mipanel/ por ciento username), indicaremos que este argumento es el nombre de usuario, con Usuario: nombre.
Una vez escogido, escribiremos un identificador para el contexto. Este valor se utiliza en el área de administración y no se muestra al usuario.
Diseño del panel
Tras la asignación de contextos a los razonamientos, vamos a llegar a la selección del Diseño del panel haciendo click en Terminar. Disponemos de diferentes plantillas, con diferente estructura de filas y columnas, en función de la distribución que precisemos para el panel.
El siguiente paso tras la elección del diseño permitirá escoger ciertas opciones para configurar de qué forma se mostrará el panel integrado en la página. Entre ellas destacan:
- Desactivar bloques/regiones de Drupal: Marcando esta opción en la página no se van a mostrar el resto de bloques ni regiones del tema. Es una alternativa útil, por servirnos de un ejemplo, para hacer paneles para la página principal del sitio.
- CSS ID: Podemos asignar un identificador que se aplicará al panel, para poder referirnos a él desde los archivos de estilo CSS y alterar su apariencia a conveniencia.
- Código CSS: Podemos redactar código CSS que se introducirá de manera directa en la página. Esta alternativa no está orientada a introducir grandes bloques de CSS, sino que sirve para probar de manera ágil ciertos cambios en el aspecto del panel. Luego podremos pasar este código CSS al fichero CSS del tema.
Agregar contenido al panel
El último paso para la creación del Panel de página consiste en escoger los contenidos que se van a mostrar en cada área del panel, según la plantilla que hayamos seleccionado.
Desde la página de gestión de contenidos del panel vamos a poder configurar el título de la página, que podrá componerse desde los patrones de sustitución disponibles (desplegando el apartado Sustituciones).
Cada una de las regiones que conforman el panel tiene un icono de herramientas en el rincón superior izquierda . La opción principal es Añadir contenido, que abre una ventana con los contenidos disponibles para ser añadidos.
Podremos agregar muchos contenidos diferentes, que podremos seleccionar de entre todos y cada uno de los generados en nuestro sitio. Estos contenidos pueden haber sido generados por nosotros o bien implementados por los módulos instalados. Las categorías presentadas asimismo pueden variar, en función de las entidades referenciadas en el contexto del panel.
La ventana de Agregar contenido se divide en las siguientes categorías:
- Actividad: Bloques relacionados con la actividad en el sitio: Temas activos, Comentarios recientes, Quién está conectado, etcétera Depende
- Bloques personalizados: Podemos seleccionar entre los bloques que hayamos creado en nuestro lugar.
- Controles: Elegiremos diferentes controles (widgets) como el formulario de búsqueda, el alternador de idioma o el comienzo de sesión.
- Elementos de página: Elementos relacionados con la página, como nombre del sitio, título de la página, logo del sitio, diseño web drupal oviedo de navegación primaria, etc.
- Formulario: Campos de formulario. Se muestran los campos relacionados con la entidad referida. Por servirnos de un ejemplo, si hemos definido como contexto el usuario (a través del nombre de usuario o bien identificador de usuario), los campos que se mostrarán serán los creados para la entidad usuario.
- Menús: Podemos agregar cualquiera de los menús creados en el lugar.
- Misceláneo: Otros contenidos variados.
- Usuario: Campos relacionados con la entidad usuario. Esta categoría solo va a estar libre cuando la entidad usuario esté referida en el contexto del panel.
- Users (tokens): Patrones de remplazo relacionados con el usuario. Esta categoría sólo va a estar disponible cuando la entidad usuario esté referida en el contexto del panel.
- Nodo: Contenido relacionado con nodos, como el título, el cuerpo o bien la fecha de creación. Aparecen acá todos y cada uno de los campos que tengamos definidos en nuestro lugar para las clases de contenido. Esta categoría sólo estará libre cuando la entidad nodo esté referida en el contexto del panel.
- Nodo (tokens): Patrones de reemplazo relacionados con los nodos. Esta categoría sólo estará disponible cuando la entidad nodo esté referida en el contexto del panel.
- Vistas: Permite elegir cualquiera de las vistas activas en el sitio. Una vez seleccionada la vista, especificaremos también la presentación de exactamente la misma que se incluirá en el contenido del panel. Para que esta categoría esté libre, debemos activar el módulo Views content panes. Además deberá haber cuando menos una vista creada y activada.
Además de estas categorías encontraremos estas otras dos opciones:
- Nodo existente: Deja incluir en el panel un nodo anteriormente creado. Si se han definido razonamientos, el nodo puede ser referenciado mediante ese argumento.
- Nuevo contenido personalizado: Permite incorporar un contenido directo, tal y como si estuviésemos creando un nodo.
En función de elemento que añadamos, el sistema nos va a poder solicitar información adicional para su configuración.
Una vez añadido el contenido y, volviendo a la presentación de áreas del panel, podremos seleccionar el Estilo de panel para la zona (Mudar).
Una vez incorporados contenidos a las regiones podemos acceder a la configuración individual de cada contenido haciendo click en su icono de herramientas , que se va a mostrar en el rincón superior derecha del elemento.
El menú desplegable que se muestra permite, para cada contenido:
- Desactivar este panel: Se refiere a desactivar ese contenido.
- Ajustes.
- Establecer propiedades CSS.
- Definir el estilo.
- Establecer criterios que dejan la visibilidad y acotar reglas de acceso: Permite definir el acceso al contenido en función del rol, permiso, senda, código PHP personalizado, etc.
- Bloquear contenido (Lock): Permite indicar si el contenido estará bloqueado (Immovable) o si por contra se podrá mover entre diferentes zonas de la página (No lock o Regiones).
- Configurar la caché del contenido: Activar o desactivar la caché del contenido.
- Eliminar el contenido: Suprime el contenido del panel. Esta acción no suprime el factor de contenido original, pero sí suprime los contenidos adaptados creados específicamente para este panel y añadidos mediante Nuevo contenido personalizado.
Tras añadir los contenidos a cada región vamos a haber finalizado el proceso de creación del panel, debiendo guardar los cambios efectuados.
Menú de configuración del panel
Cada panel tiene un menú de configuración desde el que podemos modificar cualquier parámetro o contenido.
En la barra superior encontraremos opciones generales distribuidas en pestañitas, que nos permitirán efectuar las próximas operaciones:
- Clonar: Podemos clonar este panel, pudiendo crear de esta manera uno con la misma configuración y contenidos en pocos pasos. Esta alternativa es útil cuando necesitamos crear paneles con poquísimas diferencias.
- Exportar: Produce el código de exportación de un panel. Este código puede ser añadido en la implementación de un módulo o importado en otro panel desde la pestaña Importar variante. Esto nos deja tanto hacer copias de seguridad de un panel, guardando el código generado en un archivo de texto, como importarlo entre paneles o aun entre distintos sitios elaborados con Drupal Trademark.
- Eliminar: Elimina el presupuesto diseño web leon . Una vez eliminado el panel no puede ser recuperado.
- Desactivar: Si desactivamos el panel, la página no va a estar alcanzable para los usuarios del sitio, pero todos los datos de configuración continuarán guardados, de forma que en cualquier instante podremos regresar a activarlo. Esta pestañita cambia a Activar si el panel está desactivado.
- Añadir variante: Una misma página puede contener diferentes variaciones o bien configuraciones de Panel, lo que permitirá contar con de varias "presentaciones" de la página. Para comprender este concepto podemos decir que las variaciones son en los paneles lo mismos que las presentaciones en las vistas. La selección de la variación que se va a mostrar al usuario cuando visite la página se determinará a través de las reglas de selección. Por poner un ejemplo, podemos tener una variación específica de la página para los usuarios con un determinado rol. Vamos a ver más adelante de qué manera configurar las reglas de selección de cada variación.
- Importar variante: Podemos importar una variante que haya sido previamente exportada con la pestaña Exportar. Desde esta alternativa podemos importar variantes de otros paneles o incluso desde otros sitios web Drupal.
El menú izquierdo se compone de los próximos grupos de opciones, ciertos de ellos ya vistos durante el proceso de creación del panel:
- Resumen: Se muestra un resumen de la configuración de la página. También encontraremos links de acceso rápido para editar ciertos factores del panel (ruta, acceso, entrada de menú, diseño, etc.)
- Opciones: Opciones globales del panel. Se divide en:
- Básico: Opciones básicas de la página (título administrativo, senda, etc.).
- Argumentos. Configuración de los argumentos que se pasan a la página a través de la URL. Podemos establecer el contexto de cada argumento, tal y como vimos en pasos precedentes.
- Acceso: Permite crear reglas de acceso a la página. Por ejemplo, podemos crear una regla para que sólo puedan ver el panel los usuarios con un rol o bien permiso determinado.
- Menú: Deja crear un enlace de menú a la página.
- Variantes: Agrupa las opciones de configuración concretas de cada variación del panel. Ten presente que al crear el panel hemos definido ya la primera variante. Las opciones libres para las variaciones son:
- Resumen: Muestra un resumen de la configuración de la variación.
- General: Opciones generales de esta variante.
- Reglas de selección: Permite crear reglas para indicar en qué momento debe mostrarse esta variante del panel. Al cargar la página se mostrará la primera variación que cumpla con los criterios establecidos.
- Contextos: Permite añadir contextos o elementos, en función de los razonamientos definidos. Un contexto puede ser un nodo, el formulario de edición de un tipo de contenido (crear o bien editar un nodo), un usuario, etcétera Al añadir un contexto, los elementos relacionados estarán disponibles para ser añadidos al contenido del panel, desde el apartado Contenido. Desde Relaciones podremos añadir vínculos a elementos relacionados con el contexto. Por poner un ejemplo, para un contexto que hace referencia al usuario, vamos a poder acceder a otros elementos como ficheros, nodos o comentarios del usuario agregando la relación correspondiente. Si lo comparamos con las vistas, los contextos en los paneles se corresponden con los razonamientos en las vistas y las relaciones de los paneles serían equivalentes a las relaciones de las vistas.
- Layout: Permite escoger el diseño o bien plantilla para esta variante del panel.
- Contenido: Permite administrar el contenido asociado a la variación.
- Vista previa: Muestra la vista previa de la página para esa variante. Caso de que la página requiera argumentos de URL, podremos introducirlos antes de producir la vista anterior.
- Básico: Opciones básicas de la página (título administrativo, ruta, etc.).
- Argumentos. Configuración de los argumentos que se pasan a la página por medio de la URL. Podemos establecer el contexto de cada argumento, tal y como vimos en pasos anteriores.
- Acceso: Deja crear reglas de acceso a la página. Por poner un ejemplo, podemos crear una regla a fin de que sólo puedan ver el panel los usuarios con un rol o bien permiso determinado.
- Menú: Permite crear un link de menú a la página.
- Resumen: Muestra un resumen de la configuración de la variación.
- General: Opciones generales de esta variación.
- Reglas de selección: Deja crear reglas para señalarse en qué momento debe mostrarse esta variación del panel. Al cargar la página se mostrará la primera variante que cumpla con los criterios establecidos.
- Contextos: Permite incorporar contextos o elementos, en función de los razonamientos definidos. Un contexto puede ser un nodo, el formulario de edición de un tipo de contenido (crear o editar un nodo), un usuario, etc. Al agregar un contexto, los elementos relacionados van a estar libres para ser añadidos al contenido del panel, desde el apartado Contenido. Desde Relaciones podremos añadir vínculos a elementos relacionados con el contexto. Por poner un ejemplo, para un contexto que hace referencia al usuario, vamos a poder acceder a otros elementos como archivos, nodos o bien comentarios del usuario añadiendo la relación correspondiente. Si lo equiparamos con las vistas, los contextos en los paneles se corresponden con los argumentos en las vistas y las relaciones de los paneles serían equivalentes a las relaciones de las vistas.
- Layout: Permite seleccionar el diseño o bien plantilla para esta variante del panel.
- Contenido: Permite gestionar el contenido asociado a la variación.
- Vista previa: Muestra la vista previa de la página para esa variante. Caso de que la página requiera razonamientos de URL, podremos introducirlos antes de generar la vista previa.