Jeg prøver hardt å få innleggs-ID-en til gjeldende innlegg / side i en widget-klasse, men fungerer ikke, jeg vet at det er get_the_ID () og noen andre alternativer, men ikke en eneste fungerer inne i en widget. Her er koden min:
public function widget( $args, $instance ) { global $wp_query; $thePostID = $wp_query->post->ID; echo "Post ID is:" . $thePostID; }
Svar
Du kan bruke get_queried_object()
her, som er en innpakning for $wp_query
og returnerer hele innleggsmetadataene.
Her «er en eksempelkode:
$queried_object = get_queried_object(); if ( $queried_object ) { $post_id = $queried_object->ID; echo $post_id; }
Svar
Prøv dette:
<?php global $post; setup_postdata( $post ); echo "Post"s ID: " . get_the_ID(); ?>
Svar
function widget($args, $instance) { global $post; echo $post->ID; }
Kommentarer
- Kan du forklare koden som hvordan den hjelper OP
- kan du forklare hva du vil, så kan jeg hjelpe deg.
Svar
For å bare få ID
få _queried_object_id ()
Selvfølgelig, for sent, men kan hjelpe andre som er ute etter det samme.