这是我第一次玩wordpress。我选择的主题有一个很好的静态外观,但看起来在动态模式下消失了。我按照一些网络教程添加了我自己的功能,该功能可以获取一个类别中的帖子并在该位置打印。我认为它工作正常,直到我发现它弄乱了数据。这是我的第一个功能:
$args = array( 'posts_per_page' => 6, 'offset'=> 0, 'category' => 6,'orderby'=>'id','order'=>'desc' );
$posts = get_posts($args);
if(!empty($posts)){//yes we have posts
//loop results now
foreach($posts as $story) {
setup_postdata( $story );
the_ID();
echo '<br/>'.the_title();
echo '<br/>'.the_excerpt();
}//end loop
}//
问题是the_ID和the_title()alaways在第一条记录之后占用,而exceprt显示两条记录的正确值。
我在posts变量上打印了数组,它为我拥有的两个记录保存了两个不同的ID和标题。但是当我打印时,只有第一个正在显示。
有人在博客中建议正确的方法是:
$title = apply_filters('the_title', $story->title);
$content = apply_filters('the_content', $story->content);
但标题和内容变量为空/空白。
知道我做错了吗?我是wordpress的新手,很抱歉。
答案 0 :(得分:0)
解决了......避免使用get_posts()函数并使用WP_query()代替。