相同的帖子是否出现在相关帖子中?

时间:2013-07-13 作者:Mohit

这是代码

function dark_delight_get_related_posts(){
    $post = get_post();

    $args = array(
            \'posts_per_page\' => 4,
            \'ignore_sticky_posts\' => true,
            \'posts__not_in\' => array($post->ID),
            );

    $categories = get_the_category();
    if( !empty($categories) ){
        $category = array_shift( $categories );
        $args[\'tax_query\'] = array(
            array(
                \'taxonomy\' => \'category\',
                \'field\' => \'id\',
                \'terms\' => $category->term_id,
                ),
            );
    }

    return new WP_Query( $args );
}
我打开了“你好,世界!”它也会出现在相关的帖子中。

1 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

啊哈,我想这是个拼写错误。

没有调用任何参数posts__not_in. 它叫post__not_in.

因此,您应该将代码更改为:

function dark_delight_get_related_posts(){
    $post = get_post();

    $args = array(
            \'posts_per_page\' => 4,
            \'ignore_sticky_posts\' => true,
            \'post__not_in\' => array($post->ID), // post and not posts
            );

    $categories = get_the_category();
    if( !empty($categories) ){
        $category = array_shift( $categories );
        $args[\'tax_query\'] = array(
            array(
                \'taxonomy\' => \'category\',
                \'field\' => \'id\',
                \'terms\' => $category->term_id,
                ),
            );
    }

    return new WP_Query( $args );
}

结束

相关推荐

Custom query to show posts

我正在尝试根据评级(使用wp postrating插件)和评论数对帖子进行排序。我已经使用wpdb实现了这一点,但我有点希望使其更容易,并将其用于wp\\U查询。似乎我找不到任何方法来实现这一点,因为我不知道在$args中按两个项目排序的任何方法。我的wpdb代码如下所示。。。$wpdb->get_results(\"SELECT wp_postmeta.meta_value, id, post_title, comment_count FROM wp_posts INNER JOIN wp