获取术语-但仅显示4条帖子

时间:2012-09-06 作者:ad2003

我使用此代码加载带有自定义分类术语slug的相关帖子:

<?php
global $post;
$terms = get_the_terms( $post->ID , \'topics\', \'string\');
$do_not_duplicate[] = $post->ID;

if(!empty($terms)){
    foreach ($terms as $term) {
        query_posts( array(
        \'topics\' => $term->slug,
        \'showposts\' => 4,
        \'caller_get_posts\' => 1,
        \'post__not_in\' => $do_not_duplicate ) );
        if(have_posts()){
            while ( have_posts() ) : the_post(); $do_not_duplicate[] = $post->ID; ?>
但我总是得到4个以上的帖子。我如何才能真正将此查询设置为仅4篇帖子?

谢谢

公元

2 个回复
最合适的回答,由SO网友:zigzag 整理而成

您需要指定要检索的帖子数。”“showposts”是页面上显示的数量,不推荐使用(请改用“posts\\u per\\u page”)

\'showposts\' => 4,
\'numberposts\' => 4,

SO网友:ad2003

谢谢

这项工作:

<?php
global $post;
$terms = get_the_terms( $post->ID , \'topics\', \'string\');
$do_not_duplicate[] = $post->ID;

if(!empty($terms)){
    foreach ($terms as $term) {
        query_posts( array(
        \'topics\' => $term->slug,
        \'numberposts\' => 4,
        \'posts_per_page\' => 4,
        \'caller_get_posts\' => 1,
        \'post__not_in\' => $do_not_duplicate ) );
        if(have_posts()){
            while ( have_posts() ) : the_post(); $do_not_duplicate[] = $post->ID; ?>

结束

相关推荐

特定用户的wp_count_post、wp_count_Terms和wp_count_Comments?

有没有办法实现这些功能wp_count_posts, wp_count_terms 和wp_count_comments 仅为特定用户返回结果,可能使用用户的ID?我正在为自定义帖子类型制作一个自定义的“即时”仪表板小部件,我需要它只显示当前用户的数据,而不是整个站点的数据。提前谢谢。EDIT: 为了回应@kaiser在下面的评论,我做了以下操作,但什么都没有发生-结果与过滤器关闭时的结果相同(不应该是这样-检查此用户是否有不同数量的已发布employee 职位类型)。我的函数中的代码似乎根本没有被调用,