Fechas en castellano con Wordpress

Estos días, como que me reventó el cerebro tener que aprenderme todas las cosas que hace Wordpress y quiero decir que, sin amigos como los que tengo, no estaría todavía escribiendo en este weblog.

Hace poquito tiempo, un usuario me dejó un comentario que despertó curiosidad:

No sería mejor que diga “Sábado, 20 de Agosto, 2005″? Es una pequeña sugerencia que realizo. Para cambiarlo solo es necesario cambiar el contenido del date().

Holy shit que bien que me siento estos días. Esta positividad la voy plasmando en las cosas que estoy trabajando y gracias a ello estoy aprendiendome todo el tema Wordpress con su base de documentacion, accesible para cualquiera que tenga internet, Wordpress Codex sería como la biblia de Wordpress, la Wikipedia del este CMS, está todo ahí. Sabido esto, manos a la obra.

No encontré la forma para escribir una fecha 20 de Agosto del 2005. Así que he recurrido a un amigo, en este caso Nicolás que me apuntó un dato interesante para lograr fechas más extensibles de lo que por defecto puedes aprender en el Codex:

<?php comment_date('d \d\e F, Y') ?>

El primer caracter d imprime el día, en esta caso me devuelve los días en dos dígitos. Todavía estoy averiguando la forma de que me quede una fecha tipo 4 de agosto y no 04 de agosto como lo tengo ahora. Por alguna razón peachepereana, esta línea permite tener una fecha digerible en idioma castellano. Al parecer, los caracteres con las \\ se imprimen como si de texto o párrafos se tratara. O sea, que puedes hacer fechas más complejas que la que trae por defecto. En mi caso, puse entre el código d una porcioncita de código \d\e que cuando es procesada por PHP termina siendo la palabra “de″ en la página. Puedes poner lo que quieras: \d\e\ \l\o\s seguidos de un espacio y otro código sin \ para que active más funciones del Wordpress. Poco intuitivo al principio si no tienes conocimiento de PHP mínimos, pero con estos tips la cosa cambia.

Si me ha servido a mí y me ha sacado de un apuro grande imagino que a muchos de los que usan Wordpress y no tenían ni puñetera idea como yo les servirá toneladas.

Dicho y hecho, corta, pega y reutiliza ;).

Actualización

Ya me han dejado en los comentarios más pistas sobre el tema de la fecha. Lo mejor para nuestro caso es usar la función j en vez de d para que no nos devuelva el día con dos dígitos sino con uno. El ejemplo final chachi quedaría así:

<?php comment_date('j \d\e F, Y') ?>

Bon profit

39 Respuestas a la entrada “Fechas en castellano con Wordpress”

Creo que si lo pones de modo que:

También te servirá. Al menos yo lo uso así ;)
Nota para los que no vean la diferencia: “\de” en lugar de “\d\e”.
;)
Saludetes y felicidades por el nuevo labado de cara. Muy acertado.

Para arreglar los de 04 a 2004, dirigete a http://www.php.net , mira informacion sobre la funcion date(), te saldran todas las letras, por lo que se remplaza cada una.

los \ seguido por una letra, es un escape y el interpretador no toma en cuenta esas letras (no las remplaza).

¡Gracias! las cosas que uno va asimilando estos días no tiene precio. Me pondré con ello.

Mirando la documentación no lo podía tener más fácil. Había que utilizar la letra j en vez de la d.

Por cierto! la url del Codex de Wordpress la has equivocado! es .org ;)

Ya la arreglé, gracias. Si uso \de no me devuelve los resultados que quiero, lo mismo si uso \del \los. Volviendo a la forma antigua \d\e y \d\e\l no creó ningún problema.

Ups! pues lo siento tio, no sé… a mi me funciona, en serio :S

Qué misterio :P xD

P.D.: me fijé en el formateo que tienen tus categorías y subcategorías. Llevo tiempo queriendo dejarlo así (mostrando la jerarquía con padding a la izquierda, por ejemplo), pero todavía no lo consigo si no es tocando fuera de la plantilla. ¿Algún consejo? ¿Cómo lo hiciste tú?

Ah! se me olvidaba, veo que al final implementaste las metáforas visuales para los comentarios. Estarás satisfecho, no? Ahora cada vez que uno ponga algo por el estilo en su blog, los colegas en seguida saltarán: “aaah! como en mini-d!, copiooon! copiooon!”

xD Será como volver al patio del recreo ;) :P

no no, para mensajes en algún lenguaje tendrías que usar strftime en lugar de date

Ej:

strftime(”%A %d de %B, %Y”);

daría como resultado algo como: Domingo 21 de agosto, 2005

(siempre y cuando tengas ese locale en el servidor, para establecerlo en este caso al español basta que antes pongas: setlocale(LC_ALL,”es_ES”);

Jorge.

Mas información: http://www.php.net/manual/es/function.strftime.php

Realmente el códex es una maravilla; si antes de ponerte a diseñar le echas un ojo por encima a todas las funciones se te empiezan a ocurrir un montón de posibilidades a las que puedes aplicar un diseño que quede útil, usable y que maneje bien el flujo de atención.

A algunos les encanta complicarse, basate solamente en la documentacion del ejemplo en http://www.php.net. No pares bola a lo demas.

Hola Diego, me alegro que te sirva el comentario que hice acá sobre las fechas.

Saludos desde Argentina.

PD: Estoy esperando el release de tu theme para wordpress, ya que me gustó mucho, y quiero implementarlo en mi blog (previo cambio minimo de colores).

Escrito por viktor
Agosto 22nd, 2005 at 4:46 am

He visto unas páginas que dicen al puro estilo mac…

hoy a las 12…
ayer a las 12…

y despues si viene la formateada cómo dices.

saludos

Escrito por Klaus
Agosto 22nd, 2005 at 6:52 am

Hola Diego, es un off-topic pero me gustaría hacer una preguntilla ahora que lo veo. Observo que en este post escribes:

si no tienes conocimiento de PHP mínimos, pero con estos

Me gustaría saber si la definición de PHP (tag ) la escribes cada vez (para este u otros acrónimos) o si existe alguna manera de incluirla automáticamente, ya que puede ser pesado escribir un texto bien (semántico) que tenga muchos acrónimos.

Saludos,
K.

Escrito por piezas
Agosto 22nd, 2005 at 8:20 am

Las barras invertidas son para escapar letras iguales a las que dan formato a la fecha. Osea, que no son necesarias antes de las letras que no aparezcan en esta lista: es2.php.net/manual/es/function.date.php (tabla 1).

Sobre la traducción de nombres, también se puede arreglar, en caso de que el servidor no tenga instalados todos los “locale” necesarios, con un par de arrays asociativos (inglés => castellano) y las sustituciones con preg_replace al imprimir la fecha. Aunque existe un módulo para traducir wordpress al castellano que ya lo hace.

Bueno el ejemplo del locale no estaría mal, no tendrías que editar PHP alguno, sólo tirar el locale correspondiente. Sería más cómodo. Le daré una ojeada, de momento uso el Locale es_ES del proyecto pero no me traduce correctamente las fechas.

Es “de” 2005, no “del” 2005. Hoy bien puesto, que yo sepa, sería Domingo 21 de Agosto de 2005.

Un saludo

Buenísimo el apunte! Gracias!

Genial el apunte, llevo unos días montando el nuevo blog en wordpress y esto me viene de perlas

Deberías comentar como haces para que los comentarios aparezcan en esa forma de bocadillos justo debajo de los gravatares. Queda perfecto

Un saludo!

Hola klaus, me parece ke e slo ke buscas, hay un plugin para Wordpress ke te permite crear y administrar los acrónimos ke desees http://www.100px.com/100wordpress/categoria/plugins/

Recomiendo a todos los que quieran utilizar un formato de fecha que cumpla con los requerimientos regionales, que utilicen la funcion de php string strftime (string formato).

A mi parecer a php le falta tener opciones de conversion de formato local a timestamp y viceversa. Todavia esta muy verde en ese punto, sobretodo cuando se formatea con %x o %X.

Pero el resto de maravilla. Pruebenlo.
Saludos

Sobre el post anterior de strftime, queria agregar que si necesitan cambiar el tipo de localidad, pueden hacerlo con la funcion setlocale, por ejemplo de esta manera:

setlocale(LC_ALL, 'es');

setlocale(LC_ALL, 'es_CA');

(este ultimo habria que probarlo porque depende del sistema operativo que tenga incluido ese formato local)

Saludetes.

Generalmente leo en tu blog a traves de Bloglines, pero hoy me he pasado para darte mis impresiones sobre el nuevo diseño. Todo es bastante minimalista, lo cual esta muy bien. Sin embargo puede que tanto color blanco sea peor para la lectura. No se, no soy demasiado experto en estas cosas, pero de todas formas ahi queda mi opinión.

Saludos

Blanco se lee mejor, elimina cualquier tipo de barrera de accesibilidad. Hay no uno sino una centena de estudios que lo avalan. Este diseño de minid.net es, en teoría y práctica, el que mejor aceptación tuvo y el que mejores resultados de visitas, navegación, comodida y ahorro de ancho de banda pudo generar.

Me uno a K en la reprimenda. Se dice “17 de Marzo DE 2005″ en lugar de “17 de Marzo DEL 2005″.

Una pregunta un poco tonta,la verdad no tengo idea de donde pegarlo alguien me da una mano je je je no agarron una con esto del PHP

Primero tienes que comprobar que tienes instalado PHP en tu servidor. Esto para empezar es fácil, primero por la extensión de tus archivos. Si tus archivos son .php entonces puedes ponerle lo que quieras. Si son .html debe cambiarlo por .PHP.

Aunque está claro, si no tienes ni puñetera idea, mejor que toque alguien con un poco más de mano.

Listo, la fecha de los comentarios debería salir correctamente. Un problema de configuración de WP. Gracias por avisar.

En efecto, el diseño de la web con el blanco de fondo facilita la lectura y resulta más accesible… creo que es un acierto.

Escrito por cAzAdOr
Agosto 23rd, 2005 at 4:33 pm

Bueno, yo solo quiero hacer un apunte gramatical, y es que en las fechas, para expresarse correctamente en castellano, delante del año no se pone “del” sino que solamente se pone “de”. Un ejemplo: “Hoy es 23 de Agosto de 2005″, y no como se piensa la mayoría de la gente, que sigue diciendo “del 2005″, porque el año es una fecha, y no un número, por tanto se trata como un solo objeto, por decirlo así, y se le pone solamente “de”.
Bueno, sólo eso, si le sirve alguién de ayuda estupendo, sino, pues nada.
Salu2.

Hoy es 23 de agosto de 2005.
No es 23 de agosto del 2005.

De, no del.

Listo, solucionado el tema gramatical. Las fechas han quedado con “de” y no con “del”.

Gracias por el apunte.

Ha quedado perfecto con vuestra ayuda. Era algo que me tenía mosqueado desde hace tiempo y que quería solucionar ;)

Gracias de nuevo.

Escrito por Rosa Costa
Septiembre 3rd, 2005 at 1:01 am

Quisiera saber si en las fechas, los dias de la semana y los meses del a;o se escriben con minuscula o mayuscula. Toda mi vida lo he escrito con minuscula pero he visto varios escritos en que aparece en mayuscula.

Oigame usted, ¿cómo se cambia el “idioma” en que se muestra la fecha? Quicir, que en lugar de September me ponga Septiembre. No consigo cambiarlo de ninguna de las maneras.

super util! mil gracias!

Sobre las fechas en español para WP

(escuchando “sorrows[in blue]” de Billy Corgan)

Ahora que he cambiado de template , una de las metas era cambiar la fecha (pues la que viene está en inglés) . . . Después de que Omar me pasará el tip, tuve que ver co…

Rayos!
Algo esta mal, desde las opciones generales del Wordpress puedo establecer cómo quiero que se vea la fecha mi opción es:
j \de F \de Y
Debajo dice Muestra: 31 de Octubre de 2005, genial.
Sin embargo, en los post me sigue mostrando Octubre 31th, 2005.

Alguna ayuda?

LLk

Para los que quieren cambiar a castellano las fechas en WP, chequense un post que tengo en mi blog:

http://www.sonorama.net/?p=51

Saludos… :)

Escrito por Bucio
Agosto 18th, 2006 at 2:24 am

pos nu le entiedno me ayudas ? xD