14
Dic 2008

Modificar el texto “(more…)” de Wordpress

Por i/o

Si alguna vez usaron un theme de Wordpress en inglés para un sitio en español, les habrá tocado batallar con la traducción del texto “(more..)” en los posts; pues no se ajustaba desde el mismo código, al estándar de traducción automática de Wordpress.

Había una técnica efectiva mas “poco elegante” para hacerlo editando directamente en /wp-includes/template-post.php. Desde la versión 2.7, el código en template-post ya considera el uso de la función gettext para la traducción automática, así que si el sitio tiene configurado el idioma español, mostrará un “(más..)”.


Para personalizar ese texto, sin tener que editar los archivos del core de Wordpress, desde nuestro theme se puede agregar el texto que nos convenga (esto está disponible desde la versión anterior pero no todos los themes lo contemplan) a través de la función the_content(). Por ejemplo:

Generalmente los archivos index.php, archive.php y single.php de un theme son en los que se incluye la función para mostrar el contenido del post; la ubicamos:

<?php the_content(); ?>

Y entre los paréntesis –entre comillas– agregamos el texto que necesitamos:

<?php the_content('Lee más'); ?>

Es todo.

Además, si el theme lo estamos diseñando nosotros, podemos agregar otras etiquetas y la función de gettext, si queremos que soporte traducción automática; por ejemplo:

<?php the_content('<p class="more">' . __('Read more') . '</p>'); ?>

De manera predeterminada Wordpress usa la clase more-link para modificar la presentación de este texto a través de la hoja de estilo, si no se especifica ninguna.

. . .
  • Digg
  • del.icio.us
  • BarraPunto
  • Identi.ca
  • Meneame
  • Slashdot
  • Technorati

2 Comentarios en “Modificar el texto “(more…)” de Wordpress”

  1. taco dice:

    Muchas gracias!

    Me ha venido perfecto para aplicarlo a mi blog.

    Un saludo!

  2. Andrés! dice:

    Gracias! la info está genial! Abrazos!

Escribe un comentario

*
To prove you're a person (not a spam script), type the security word shown in the picture.
Anti-spam image

Anti-Spam Protection by WP-SpamFree