J'ai un type de message personnalisé appelé livres. La date de publication des livres se situe entre 1700 et 1900.
Je souhaite définir la date de publication à ces dates (pour pouvoir interroger les résultats par année), mais il me semble impossible de définir une date avant le 1er janvier 1970.
Est-il possible de faire cela en quelque sorte?
N'utilisez pas le champ post_date
pour quelque chose pour lequel il n'est pas fait. Utilisez plutôt un champ post-méta. Le post_date
est lié à post_date_gmt
, vous obtiendrez un effet secondaire étrange même si vous pouviez obtenir une date antérieure à cela.
Créez donc des champs de méta post et interrogez ceux par taxe . Ignorer le champ par défaut.
En réponse à votre commentaire: N'utilisez pas de taxonomie.
J'ai aussi lancé un plugin de gestion de livre une fois, malheureusement, il est toujours dans l'état de projet… mais j'ai quelques recommandations concernant les dates:
Utilisez deux types de publication: une pour l’opus, une pour les éditions réelles (le type opus
serait un parent pour plusieurs éditions). Ainsi, vous pouvez stocker la date de création dans l'opus, la date de publication (la langue, l'éditeur, le traducteur, etc.) dans l'édition.
Lire Rendre <time>
sûr pour les historiens . Les dates avant 1970 sont difficiles.
Les fonctions Fonctions date et heure de MySQL ne peuvent pas gérer tous les cas, vous obtenez des routines de tri personnalisées, en fonction de votre solution pour (2.).
Ce plugin utilise la ADOdb Date Library par John Lim de PHP Everywhere, ce qui est - je cite - "un charme pour le formatage de la date avec des dates antérieures à 1970".