Tengo un tipo de mensaje personalizado llamado libros. La fecha de publicación de los libros es de entre 1700 y 1900.
Quiero establecer la fecha de publicación en estas fechas (para poder consultar los resultados ordenados por año) pero parece que no puedo tener una fecha establecida antes del 1 de enero de 1970.
¿Es posible de alguna manera hacer eso?
custom-post-types
date
passatgt
fuente
fuente
post_date
en la base de datos se establece correctamente en cualquier fecha que intenté. Sin embargo,post_date_gmt
está configurado incorrectamente como el 1 de enero de 1970, el comienzo del mundo . Así que no intentes cooptar ese campo. Haz lo que toscho te sugiere.Respuestas:
No use el
post_date
campo para nada para lo que no esté hecho. Utilice un metacampo de publicación en su lugar. Elpost_date
está obligado apost_date_gmt
, se llega extraño efecto secundario, incluso se puede conseguir una fecha anterior a ese.Por lo tanto, cree metacampos posteriores y consulte aquellos por consulta fiscal . Ignora el campo predeterminado.
En respuesta a su comentario: No use una taxonomía.
También comencé un plugin de administrador de libros una vez, desafortunadamente todavía está en estado de borrador ... pero tengo algunas recomendaciones con respecto a las fechas:
Utilice dos tipos de publicaciones: una para el opus, otra para las ediciones reales (el
opus
tipo sería padre para varias ediciones). Por lo tanto, puede almacenar la fecha de creación en el opus, la fecha de publicación (el idioma, el editor, el traductor, etc.) en la edición.Leer Hacer
<time>
seguro para los historiadores . Las fechas anteriores a 1970 son difíciles.Las funciones de fecha y hora de MySQL no pueden manejar todos los casos, usted termina con algunas rutinas personalizadas para ordenar, dependiendo de su solución para (2.).
fuente
Este complemento utiliza la Biblioteca de fechas ADOdb de John Lim de PHP Everywhere, que es, cito, "haciendo que el formato de fecha con fechas anteriores a 1970 sea un encanto".
fuente