web-dev-qa-db-fra.com

Comment obtenir l'ID de publication de la page actuelle/publication dans un widget?

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;

}
5
Faizan Ali

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;
}
6
Ram Ratan Maurya

Essaye ça:

<?php
global $post;
setup_postdata( $post );
echo "Post's ID: " . get_the_ID();
?>
0
Prasad Nevase
 function widget($args, $instance) {
         global $post;
         echo $post->ID;

 }
0
Nanhe Kumar