Ich versuche, die Post-ID des aktuellen Posts / der aktuellen Seite in einer Widget-Klasse abzurufen, aber es funktioniert nicht. Ich weiß, dass es get_the_ID gibt () und einige andere Optionen, aber keine einzige funktioniert in einem Widget. Hier ist mein Code:
public function widget( $args, $instance ) { global $wp_query; $thePostID = $wp_query->post->ID; echo "Post ID is:" . $thePostID; }
Antwort
Hier können Sie get_queried_object()
verwenden, für das ein Wrapper ist $wp_query
und gibt die gesamten Post-Metadaten zurück.
Hier „ein Beispielcode:
$queried_object = get_queried_object(); if ( $queried_object ) { $post_id = $queried_object->ID; echo $post_id; }
Antwort
Versuchen Sie Folgendes:
<?php global $post; setup_postdata( $post ); echo "Post"s ID: " . get_the_ID(); ?>
Antwort
function widget($args, $instance) { global $post; echo $post->ID; }
Kommentare
- Können Sie den Code so erklären, wie er hilft? Das OP
- kann Ihnen erklären, was Sie wollen, dann kann ich Ihnen helfen.
Antwort
Um nur die ID
get zu erhalten _queried_object_id ()
Natürlich zu spät, kann aber anderen helfen, die das Gleiche suchen.