我建立了一个短代码,应该向我显示特定类别的最新帖子,这是代码
function latest_post($atts = '') {
$atts = shortcode_atts( array(
'cat' => '',
), $atts );
$args = array(
'posts_per_page' => 1,
'cat' => $atts['cat']
);
$content = "";
$posts = get_posts($args);
foreach($posts as $post):
$content = $content."<h2>". apply_filters( 'the_title', $post->post_title) ."</h2>";
$content = $content."<img src='".get_the_post_thumbnail_url(get_the_ID(),'full')."' />";
$content = $content."<p class='post-content-custom'>". apply_filters( 'the_content', $post->post_content ) ."</p>";
endforeach;
return $content;
}
add_shortcode('latest_post', 'latest_post');
现在的问题是,我需要在同一页面中两次或更多次调用此插件,但是如果最新的帖子已经用相同的短代码显示在页面上,我需要它向我显示下一篇文章。
例如,我需要:
[latest_post cat="cars"]
[latest_post cat="books"]``[latest_post cat="cars"]
现在我第二次致电[latest_post cat="cars"]
时,应该向我显示latest post - 1
,因为最新的帖子已经被第一个短代码调用了。