Convertir formato de fecha de campo personalizado

14 mar 2011, 22:06:00
Vistas: 24.7K
Votos: 1

Estoy usando el plugin More Fields que me da la capacidad de crear una fecha con formato YYYY/mm/dd y quiero convertirla para que se muestre como: February 11, 2011

¿Es esto posible?

0
Todas las respuestas a la pregunta 3
6

¿Tienes problemas con la conversión exacta o la recuperación? La conversión es trivial y es PHP simple:

date('F j, Y', strtotime($date));

Para una forma más compleja y específica de WordPress con soporte de localización, consulta la función date_i18n().

14 mar 2011 22:53:30
Comentarios

Rarst, esto parece correcto pero estoy teniendo problemas para que funcione al 100%.
$date = meta('event_date'); echo date('F j, Y', strtotime($date)); retorna January 1 1970.... ¿alguna idea?

tjsherrill tjsherrill
16 mar 2011 00:35:16

@tjsherrill ehm, no creo que meta() sea una función nativa... ¿Estás seguro de que obtienes un valor de cadena válido en $date?

Rarst Rarst
16 mar 2011 00:40:29

Lo resolví, meta(); es una etiqueta de plantilla proporcionada por el plugin more-fields. Simplemente usé get_post_meta y funciona perfectamente. gracias

tjsherrill tjsherrill
18 mar 2011 17:28:27

Esto no funciona para mí. Mi campo personalizado es "date-time-last" $date = get_post_meta('date-time-last'); echo date('l jS F Y', strtotime($date));

Pete Pete
11 abr 2016 11:59:27

@Pete verifica los valores que estás obteniendo y eso, "no funciona" es un poco vago. :)

Rarst Rarst
11 abr 2016 12:29:46

Disculpa por lo vago, me di cuenta de eso después de mi 5ta edición así que no pude actualizarlo más... Seguía obteniendo "1 January 1970". En cualquier caso, encontré una solución que funciona... <?php $date = get_post_meta($post->ID, 'date-time-last', true); if($date != ''){echo date("l jS F Y", strtotime($date));} ?>

Pete Pete
11 abr 2016 12:50:15
Mostrar los 1 comentarios restantes
0

Esto funciona para mí (dentro del bucle)...

<?php $date = get_post_meta($post->ID, 'CUSTOM-FIELD-HERE', true); if($date != ''){echo date("l jS F Y", strtotime($date));} ?>
11 abr 2016 15:22:28
0
<?php
$date = '2000/10/28'; // Fecha en formato año/mes/día
$a = preg_split ( '/\//', $date ); // Dividir la fecha usando '/' como delimitador
echo date('F j, Y', mktime( 0, 0, 0, $a[1], $a[2], $a[0] ) ); // Mostrar fecha en formato "Mes día, Año"
14 mar 2011 22:38:47