WordPress简码重复调用两次时的帖子

时间:2018-07-02 16:19:53

标签: php wordpress loops

我建立了一个短代码,应该向我显示特定类别的最新帖子,这是代码

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,因为最新的帖子已经被第一个短代码调用了。

0 个答案:

没有答案