EN LÍNEA
Actualmente hay 17 usuarios y 22 invitados en línea.

Usuarios en línea

  • buckstab
  • buckstab
  • buckstab
  • buckstab
  • buckstab
  • buckstab
  • buckstab
  • buckstab
  • buckstab
  • buckstab
USUARIO

Sitio elaborado con Drupal, un sistema de gestión de contenido de código abierto
Crear pages diferentes
Escrito por: rcechang | Categoría:

En algunas ocasiones necesitamos que algunas páginas tengan una estructura y diseño diferente al resto de páginas. Drupal nos permite hacerlo creando para ello, otros archivos page.tpl.php. Al hacerlo modificaremos toda la estructura completa como lo hace el archivo page.tpl.php. Si solo deseamos cambiar el área de contenido, lo que tenemos que hacer es usar achivos node.tpl.php diferentes.

 

PAGE EN EL FRONT-PAGE

Si queremos que la página de inicio tenga una estructura y diseño diferente, podemos crear un archivo llamado page-front.tpl.php con el diseño para la página de inicio, y este diseño será reconocido automáticamente cuando se encuentre en el front page.

 

PAGE PARA UN NODO EN PARTICULAR

Para ello hay que crear el page-node-1.tpl.php donde 1 es el id del nodo y colocar el nuevo layout en este archivo. Además hay que hacer una modificación en nuestro archivo template.php de nuestro tema. Si no tenemos un archivo template.php en nuestro tema, creamos uno. En la función preprocess, agregamos las siguientes líneas de código.

 

  function mitema_preprocess_page(&$vars){
    // Add per content type pages
    if(isset($vars['node'])){
      $vars['template_files'][] = 'page-node-'. $vars['node']->nid;
    }
  }

 

PAGE PARA UN TIPO DE NODO

Se crea un archivo page-tipo.tpl.php, donde tipo se reemplaza por el nombre del tipo de nodo. Por ejmplo si tenemos un tipo de nodo llamado noticia, el nombre de nuestro archivo sería page-noticia.tpl.php. Al igual que para un nodo particular necesitamos agregar unas líneas de código.

 

  function mitema_preprocess_page(&$vars){
    // Add per content type pages
    if(isset($vars['node'])){
      $vars['template_files'][] = 'page-'. str_replace('_', '-', $vars['node']->type);
    }
  }

 

Como vemos la diferencia, con un nodo particular es de solo una línea. Si necesitamos ambos, tanto cambiar el page de acuerdo al id del nodo, como al tipo de nodo, incluimos ambas líneas que son diferentes y el resto se mantiene igual.

 

DE ACUERDO AL PATH

Usar el path dentro del nombre del archivo page-user.tpl.php, pondrá este template acualquier ruta que tenga user/algo

 

SOLO PARA UN USUARIO

Se puede usar el archivo page-user-1.tpl.php, donde 1 es el id del usuario.

 

 



Título:
Enviado por mkaymer el Dom, 08/29/2010 - 00:13.

Título:
Mensaje:
Enviado por mkaymer el Vie, 08/27/2010 - 15:51.

Enviado por mkaymer el Jue, 08/26/2010 - 01:26.

Título:
Enviado por mkaymer el Mié, 08/25/2010 - 23:11.

Enviado por mkaymer el Mié, 08/25/2010 - 20:13.

Título:
Enviado por mkaymer el Mié, 08/25/2010 - 18:13.

Título:
Enviado por mkaymer el Mié, 08/25/2010 - 13:16.

Título:
Mensaje:
Enviado por mkaymer el Mar, 08/24/2010 - 16:40.

Enviado por mkaymer el Dom, 08/22/2010 - 19:03.

Título:
Enviado por mkaymer el Sáb, 08/21/2010 - 15:55.