Yritän kovasti saada nykyisen viestin / sivun postitunnuksen widget-luokan sisälle, mutta ei toimi, tiedän, että siellä on get_the_ID () ja jotkut muut vaihtoehdot, mutta yksikään ei toimi widgetin sisällä. Tässä on koodini:
public function widget( $args, $instance ) { global $wp_query; $thePostID = $wp_query->post->ID; echo "Post ID is:" . $thePostID; }
Vastaa
Voit käyttää get_queried_object()
täällä, joka on kääre $wp_query
ja palauttaa koko viestin metatiedot.
Tässä ”esimerkkikoodi:
$queried_object = get_queried_object(); if ( $queried_object ) { $post_id = $queried_object->ID; echo $post_id; }
Vastaa
Kokeile tätä:
<?php global $post; setup_postdata( $post ); echo "Post"s ID: " . get_the_ID(); ?>
Vastaa
function widget($args, $instance) { global $post; echo $post->ID; }
Kommentit
- Voitteko selittää koodin kuinka se auttaa OP
- pystytkö selittämään mitä haluat, niin voin auttaa sinua.
Vastaa
Saadaksesi vain ID
get _queried_object_id ()
Tietysti liian myöhäistä, mutta voi auttaa muita, jotka etsivät samaa.