如果$post
对象在您给定的上下文中可用(例如,可能是单个post显示),您只需将其全球化,然后获取ID:
global $post;
$id = $post->ID;
echo do_shortcode( \'[wp_value id=\' . $id . \']\' );
否则,您需要将ID放入循环内部的变量中:
if ( have_posts() ) : while ( have_posts() ) : the_post();
// We\'re in the loop;
// Store the post ID
$id = get_the_ID();
// Other Loop markup goes here, as normal
endwhile; endif;
// Elsewhere in the template:
echo do_shortcode( \'[wp_value id=\' . $id . \']\' );