J'essaie beaucoup d'obtenir l'ID de publication de la publication/page en cours dans une classe de widget, mais cela ne fonctionne pas. Je sais qu'il existe get_the_ID () et quelques autres options, mais aucune ne fonctionne dans un widget. Voici mon code:
public function widget( $args, $instance ) {
global $wp_query;
$thePostID = $wp_query->post->ID;
echo 'Post ID is:' . $thePostID;
}
Vous pouvez utiliser get_queried_object()
here, qui encapsule $wp_query
et renvoie les métadonnées complètes de la publication.
Voici un exemple de code:
$queried_object = get_queried_object();
if ( $queried_object ) {
$post_id = $queried_object->ID;
echo $post_id;
}
Essaye ça:
<?php
global $post;
setup_postdata( $post );
echo "Post's ID: " . get_the_ID();
?>
function widget($args, $instance) {
global $post;
echo $post->ID;
}