page-content-type.tpl.php plantilla independiente para el tipo de contenido
Seguramente en más de una ocasión has creado plantillas específicas para tus nodos sobrescribiéndolas como node-content-type.tpl.php
.
A veces esto es suficiente, pero en otras ocasiones necesitas definir una plantilla específica para un tipo de contenido determinado. Lamentablemente, en Drupal 6 no se puede hacer esto directamente sin escribir algo de código adicional. Para que nuestras nuevas plantillas para tipos de contenido como page-content-type.tpl.php
funcionen, hay que agregar el siguiente código en el archivo template.php
:
function phptemplate_preprocess_page(&$vars) { if (isset($vars['node'])) { $vars['template_files'][] = 'page-' . str_replace('_', '-', $vars['node']->type); } }
Ahora puedes crear tu propia plantilla para un tipo de contenido, por ejemplo page-news.tpl.php
(donde news
es el nombre máquina del tipo de contenido de noticias).
También en Drupal es posible sobrescribir la plantilla de salida de términos de taxonomía añadiendo una función en template.php
:
function phptemplate_preprocess_node(&$vars) { if (arg(0) == 'taxonomy') { $suggestions = array( 'node-taxonomy' ); $vars['template_files'] = array_merge($vars['template_files'], $suggestions); } }
Después de esto, podrás sobrescribir la plantilla node-taxonomy.tpl.php
en la carpeta de tu tema actual.