Como poner fechas en español en WordPress

03-01-2010

Wordpress Shawg de Peregrino Will Reign. Vía flickr.

WordPress tiene una función muy útil para imprimir la fecha en que se escribió un post: the_time(). Esta función sigue las reglas de date() en php.

El problema es que si queremos que apareza el nombre del mes o del día, por ejemplo miércoles, 4 de agosto y usamos the_time("l, j de F") lo que obtendremos será el nombre en inglés de los días y el mes: Wednesday, 4 de August. Seguro lo has visto en muchos sitios.

La solución ideal sería tener acceso al servidor para cambiar su configuración a español y ya, pero lo más probable es que no tengamos estos privilegios o que no sea tan fácil hacer el cambio.

Otra solución, más a la mano, es escribir nuestra propia función para cambiar los nombres de los días y meses. WordPress tiene otra función que te dice la fecha del post pero no la imprime: get_the_time().

Así podemos crear nuestra propia función:
function la_fecha($la_date) {
$dias = array("domingo", "lunes", "martes", "miércoles", "jueves", "viernes", "sábado");
$meses = array("", "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio",
"agosto", "septiembre", "octubre", "noviembre", "diciembre");
$elementos = explode("-", $la_date);
$dia = $dia[$elementos[0]];
$mes = $meses[$elementos[2]];
$fecha = $dia. ", ".$elementos[1]." de ".$mes." de ".$elementos[3];
return $fecha;
}

Ponemos esto en el archivo functions.php y para usarla en nuestro tema lo hacemos de esta manera: la_fecha(get_the_time("w-j-n-Y")).

Por supuesto, la función sirve no nada más para get_the_time() sino cualquier otra función que nos dé una fecha. Y de ahora en adelante podrás tener fechas en español en vez de pocho.

Roberto Baca

Escribo cosas de vez en cuando