我写了一个小部件,我想使用位于“themename”/模板部件/内容中的类别模板。php”。
<?php
// Category.php
while ( have_posts() ) : the_post();
get_template_part( \'content\', \'\' );
endwhile;
?>
在我的小部件中,我使用了$myposts=get\\u posts();我想在内容中使用这些数据。php模板。但我不知道传递这些数据的正确方式是什么。
我试过了,但没用。
<?php
// Widget.php
$myposts = get_posts($another_array);
foreach($myposts as $post) {
include(locate_template(\'template-parts/content.php\'));
}
?>
和我的模板文件。
Post: <?php the_title(); ?>
Comment Count: <?php echo get_comments_number(); ?>
Url: <?php echo get_permalink(); ?>
我也这样试过了。但仍然不起作用。
Post: <?php the_title($post->ID); ?>
Comment Count: <?php echo get_comments_number($post->ID); ?>
Url: <?php echo get_permalink($post->ID); ?>
最合适的回答,由SO网友:Pieter Goosen 整理而成
您需要设置postdata才能设置$post
全局,以便使模板标记可用于此操作
foreach ( $myposts as $post ) {
setup_postdata( $post );
get_template_part( \'content\' );
}
wp_reset_postdata();