我正在尝试显示特定类别的最后5篇文章,这些文章将链接到一个函数,以便我可以在Wordpress页面中插入短代码。我的代码如下,它做了我需要的一切(虽然我也想添加特色图片),但它不显示特定类别的帖子。
我尝试了很多方法,但都找不到有效的修复方法。
function Last5posts()
{
$args = array( "showposts" => 5, "category" => 3 );
query_posts($args);
$content = "";
if( have_posts() ) :
while( have_posts() ) :
the_post();
$link = get_permalink();
$title = get_the_title();
$date = get_the_date();
$content .= "<div class=\'latest-posts\'>";
$content .= "<h3><a href=\'$link\' target=\'_top\'>$title / $date</a </h3>\\n";
$content .= "<p class=\'excerpt\'>" . get_the_excerpt() . "</p>";
$content .= "</div>";
endwhile;
wp_reset_query();
endif;
return $content;
}
add_shortcode(\'Last5Posts\', \'Last5posts\' );
我尝试用下面的代码替换第3行和第4行,但它在第31行抛出了一个错误“语法错误,意外的“}”。
$catquery = new WP_Query( \'cat=3&posts_per_page=10\' );
while($catquery->have_posts()) : $catquery->the_post();
任何帮助都将不胜感激。
最合适的回答,由SO网友:Nathan Powell 整理而成
下面是运行此操作的正确方法。我正在使用\'category_name\'
在最近的主题代码中,因为它更容易阅读和记忆。它使用类别slug。在这里,我正在检索“未分类”中的最后5篇帖子。
function Last5posts() {
$args = array( \'posts_per_page\' => 5, \'category_name\' => \'uncategorized\');
$last_5_posts_query = new WP_Query( $args );
while($last_5_posts_query->have_posts()) :
$last_5_posts_query->the_post();
$link = get_permalink();
$title = get_the_title();
$date = get_the_date();
$content .= \'<div class="latest-posts">\';
$content .= \'<h3><a href=\'.$link.\' target="_top">\'.$title.\' / \'.$date. \'</a></h3>\';
$content .= \'<p class="excerpt">\' .get_the_excerpt(). \'</p>\';
$content .= \'</div>\';
endwhile;
return $content;
}
add_shortcode(\'Last5Posts\', \'Last5posts\' );