
Una de las cosas más importantes a la hora de crear un theme para Drupal o integrar una maquetación realizada a medida es la posibilidad de modificar los layouts de nuestra aplicación para que se adapten a nuestras necesidades. La creación de nuevas regiones y la modificación del los layouts disponibles nos ayudarán a realizar una integración más o menos rápida.
1 – En Drupal 5
El engine PHPTemplate para Drupal 5 por defecto proporciona 5 regiones, 'left' , 'right', 'content', 'header' y 'footer' y para poder añadir nuevas debemos usar el hook_regions proporcionado para este fin.
El siguiente código añadiría a nuestro theme dos nuevas regiones(miregion y miregion2) a parte de las ya descritas anteriormente.
functionmitheme_regions()
{
return array(
'left' => t('left sidebar'),
'right' => t('right sidebar'),
'content' => t('content'),
'header' => t('header'),
'footer' => t('footer'),
//*** INI:nuevas regiones ******//
'miregion' => t('Region nueva 1'),
'miregion2' => t('Region 2'),
//*** FIN:nuevas regiones ******//
}
-
En lugar de “mitheme”usaremos el nombre del theme que estemos usando. -
No usar espacios ni guiones en el nombre de las regiones, es recomendable usar “_” en su lugar.
A partir de este momento ya podremos empezar a usar las nuevas regiones en nuestro page.tpl.php utilizando las variables proporcionadas: $sidebar_left, $sidebar_right, $content, $header, $footer_message, $miregion y $miregion2.
<?php if ($sidebar_left): ?>
<div id="sidebar-left" class="sidebar">
<?php if ($miregion): ?>
<div class="block block-theme"><?php print $miregion ?></div>
<?php endif; ?>
<?php print $sidebar_left ?>
</div>
<?php endif; ?>
*** En el ejemplo, todo el contenido asignado a la región “miregion” sólo será visualizado si existe contenido en la region “sidebar_left” ***
Nota: en este documento aparecen la lista de variables proporcionadas por PHPTemplate en Drupal 5 para la creación de temas. http://www.terysoftware.com/sites/default/files/VariablesPHPTemplate.pdf
2 – En Drupal 6
En este caso la configuración de regiones se realizará en el archivo “.info” de nuestro theme.
; $Id: MYTHEME.info, v 1.0 2010/17/02 10:27:31
name = MY THEME
description = Descripción de mi nuevo tema
regions[content] = Content
regions[right] = Right sidebar
regions[header] = Header
regions[footer] = Footer
regions[top] = Top Region
regions[miregion] = Region Nueva
regions[miregion2] = Otra Region
...
...
…
En este momento podemos comenzar a usar las variables $left, $content, $right, $footer, $header, $top, $miregion, $miregion2 en nuestro page.tpl.php y distribuirlos a nuestro gusto: P.Ej
<!-- BEGIN REGION: HEADER -->
<div id="hd" class="hd">
<div class=”head">
<?php echo $header; ?>
</div>
<div id="tnav">
<?php echo $top; ?>
</div>
</div>
<!-- END REGION: HEADER -->
<!-- BEGIN: REGION -> BODY -->
<div id="bd" class="">
<?php print $left?>
<?php print $content?>
<?php print $right?>
</div><!-- #bd -->
<!-- END REGION: BODY -->
<!-- FOOTER -->
<div id="ft">
<?php if($miregion) echo $miregion; ?><?php if($miregion2) echo $miregion2; ?>
<?php if($footer) echo $footer; ?>
</div>
<!-- END FOOTER -->
Nota: En esta dirección encontraremos la lista de variables (a parte de las regiones) que podremos utilizar en nuestro layout page.tpl.php para la creación de temas → http://api.drupal.org/api/drupal/modules--system--page.tpl.php/6
Links de interés(inglés):
- http://drupal.org/node/190815 --> Uso de multitemplates
- http://drupal.org/files/issues/Core_templates_and_suggestions.pdf --> Chuleta para la creación de templates y layouts, y sobrescritura de los mismos.
- http://www.packtpub.com/article/dynamic-theming-in-drupal6-part1
- http://www.packtpub.com/article/dynamic-theming-in-drupal6-part2
Buscar
Acciones de grupo
- Debes registrarte o acceder con tus datos para poder publicar en este grupo.
Archivo
- July 2010 (1)
- Febrero 2010 (9)
- December 2009 (5)
- November 2009 (1)
- October 2009 (2)

Publicar nuevo comentario