Je suppose obtenir la première révision d'un message particulier et obtenir la date, non?
Comment faire ça?
Le post_date
et le post_date_gmt
servent de date de création du message. Pour les messages programmés, il s'agira de la date à laquelle le message sera publié.
Il n'existe pas de méthode native fiable pour déterminer la date à laquelle une publication programmée a été ajoutée. Pour les publications programmées, vous pouvez essayer les dates post_modified
ou post_modified_gmt
, car elles correspondent à la première publication de la publication. Vous devez vous rappeler que ceci n'est pas fiable car cette date changera quand un message est modifié
Une autre méthode (également peu fiable) consiste à utiliser des révisions. Si vous avez activé les révisions, lorsqu'une publication est planifiée ou publiée, une révision ultérieure est enregistrée. Cette révision, qui sera enregistrée après la publication programmée lorsque le bouton programmé est cliqué, conservera la date de publication actuelle à laquelle le bouton programmé a été cliqué. Vérifiez la photo ci-dessous
Si vous avez besoin d’un moyen fiable, vous devrez écrire votre propre fonction personnalisée pour enregistrer l’heure exacte lorsque vous cliquez sur le bouton Planifié pour planifier une publication.
J'avais besoin de la même information et j'ai tout compris par moi-même. Vous devez créer une requête personnalisée pour obtenir le premier _wp_old_date
de la table postmeta
comme suggéré par @dipak_pusti. Exécutez l'instruction suivante:
global $wpdb;
$post_id = 1234;
$meta_key = '_wp_old_date';
$post_create_date = $wpdb->get_var( $wpdb->prepare(
"
SELECT MIN($wpdb->postmeta.meta_value) as post_create_date
FROM $wpdb->postmeta
WHERE $wpdb->postmeta.post_id = %d
AND $wpdb->postmeta.meta_key = %s
",
$post_id,
$meta_key
) );
if(is_null($post_create_date)) {
$post_create_date = get_the_date('Y-m-d', $post_id);
}
echo "<p>Post create date is: {$post_create_date}</p>";
Remarque: Si le _wp_old_date
est NULL
(cela signifie que la date de publication n'a jamais été modifiée), vous pouvez utiliser la date à partir de get_the_date('Y-m-d', $post_id)
.
Lorsque j'étais coincé avec le même type de cas que le vôtre, j'ai trouvé une clé méta _wp_old_date
avec une méta-valeur représentant une date.
En recherchant cela, j'ai trouvé qu'une fonction est utilisée pour stocker l'ancienne valeur lorsqu'un post ou un objet est modifié.
https://wpseek.com/function/wp_check_for_changed_dates/
Je sais que c'est une réponse très tardive, mais que cela pourrait aider les autres à l'avenir. :)
Utilisez get_the_date();
pour obtenir la date définie dans la méta-boîte "Publier" dans le champ "Publiée le ..". Il s’agit généralement de la date à laquelle l’utilisateur a créé la publication, sauf s’il la modifie.