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.

victor

Hola!. Me llamo Víctor Reyes y soy Ingeniero Agrónomo de formación y programador web de profesión (desde el año 2006). Por otra parte me gusta, entre otras aficiones, el senderismo, jugar al futbol y al FIFA en la PS3. Te animo a participar en mi web www.biolucas.com

This Post Has 4 Comments

  1. Gustavo

    Muy bueno tu aporte, ahora si me dices como agregar más imágenes (por defecto en el tema viene tres) sería genial.

    1. victor
      victor

      Muchas gracias a ti Gustavo.

      Un saludo, Víctor

  2. Esteban

    Gracias por su aporte!!! Me fue útil

    1. victor
      victor

      Gracias a ti Esteban por participar en el blog.

      Un saludo, Víctor

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


*

CommentLuv badge