Si estamos utilizando el theme Danland en Drupal 6 o 7 puede que necesitemos que el slideshow de la página inicial cambie según estemos en un idioma u otro. Esto puede ser por muchos motivos, por ejemplo, queremos insertar en la imagen con un texto y necesitamos que se muestre este texto de forma correcta en cada idioma.
Para esto tenemos que ir a la ruta donde hemos instalado el theme Danland en Drupal, es decir:
sites/all/themes/danland
Si vamos a la carpeta images y dentro de slideshows: es decir: /images/slideshows nos encontramos por defecto 3 imagenes: noon.jpg, sea.jpg y snow.jpg. Imaginemos que estas imágenes son para el idioma español y para el idioma inglés ponemos en esta carpeta 3 imágenes más: noon_en.jpg, sea_en.jpg y snow_en.jpg.
Ahora en la raíz de Danland editamos el archivo: page.tpl.php. En la línea 82 en Drupal 7 nos encontramos lo siguiente:
<div class="slideshow"> <img src="<?php print $base_path . $directory; ?>/images/slideshows/sea.jpg" width="950" height="355" alt="slideshow 1"/> <img src="<?php print $base_path . $directory; ?>/images/slideshows/noon.jpg" width="950" height="355" alt="slideshow 2"/> <img src="<?php print $base_path . $directory; ?>/images/slideshows/snow.jpg" width="950" height="355" alt="slideshow 3"/> </div>
Vemos que con este código se muestran siempre las imágenes sea.jpg, noon.jpg y snow.jpg. Si queremos que sólo para el idioma español se muestren estas y para el idioma inglés se muestren: noon_en.jpg, sea_en.jpg y snow_en.jpg tenemos que añadir el siguiente código PHP:
<div class="slideshow"> <?php global $language; if($language->language == "es"){ //Suponiendo que esta en español //Pongo las imagenes que quiero que salgan en español ?> <img src="<?php print $base_path . $directory; ?>/images/slideshows/sea.jpg" width="950" height="355" alt="slideshow 1"/> <img src="<?php print $base_path . $directory; ?>/images/slideshows/noon.jpg" width="950" height="355" alt="slideshow 2"/> <img src="<?php print $base_path . $directory; ?>/images/slideshows/snow.jpg" width="950" height="355" alt="slideshow 3"/> <?php } else{ ?> <!-- Pongo las imagenes que quiero que salgan en el otro idioma, en este caso el único que tenemos es el inglés --> <img src="<?php print $base_path . $directory; ?>/images/slideshows/sea_en.jpg" width="950" height="355" alt="slideshow 1"/> <img src="<?php print $base_path . $directory; ?>/images/slideshows/noon_en.jpg" width="950" height="355" alt="slideshow 2"/> <img src="<?php print $base_path . $directory; ?>/images/slideshows/snow_en.jpg" width="950" height="355" alt="slideshow 3"/> <?php } ?> </div>
Con esto ya se vería un slideshow diferente en cada idioma.
Muy bueno tu aporte, ahora si me dices como agregar más imágenes (por defecto en el tema viene tres) sería genial.
Muchas gracias a ti Gustavo.
Un saludo, Víctor
Gracias por su aporte!!! Me fue útil
Gracias a ti Esteban por participar en el blog.
Un saludo, Víctor