自定义插件,按类别获取相关帖子

时间:2015-05-29 作者:esteemed.squire

我正在学习如何为Wordpress创建自定义插件,我正在尝试按类别获取相关帖子。

问题是,我将返回所有帖子,无论其类别是否相同。

我已经对$CategoriesID[]进行了var\\u转储,它正在为每个帖子提取正确的类别。

我猜WP\\u查询有问题?

有人能指出代码中缺少了什么吗?

function Add_related_posts($content) {

// If it\'s not a singular post, return the content
if (!is_singular(\'post\')) {
    return $content;
}

// Get post categories
$categories = get_the_terms(get_the_ID(), \'category\');
$categoriesIds = [];

foreach ($categories as $category) {
    $categoriesIds[] = $category->term_id;
}

$loop = new WP_Query(array(
    \'category_in\'    => $categoriesIds,
    \'posts_per_page\' => 4,
    \'post_not_in\'    => array(get_the_ID()),
    \'orderby\'        => \'rand\'
));

// If there are posts
if ($loop->have_posts()) {
    $content .= \'RELATED POSTS:<br><ul>\';
    while ($loop->have_posts()) {
        $loop->the_post();
        $content .= \'<li><a href="\'.get_permalink() .\'">\' . get_the_title() . \'</a></li>\';
    }
}
$content .= \'</ul>\';

// Restore data
wp_reset_query();

return $content;
}

1 个回复
SO网友:esteemed.squire

它需要如下所示:\'category__in\' => $categoriesIds, 用2个下划线代替1个下划线。

结束

相关推荐

Display Count of posts

我正在尝试创建一个计数器,该计数器将显示一个类别页面的页码,后跟页面计数,其中每页有一篇文章。例如,如果一个类别中有10个职位:1/10, 2/10, 等等。我能够使用@PieterGoosen提供的代码显示页码(How to use global post counter in the loop?) 但我很难弄清楚如何显示页数。