我需要调整条件来说明我是否从帖子中拉出类别,以便只拉出第一个类别

时间:2016-06-05 作者:Darren Bachan

我有一个条件,以拉职位的基础上,类别,所以当在我的单身。php用户可以看到基于类别的相关帖子,但这里的问题是,如果有人发布了一篇包含多个类别的帖子,就会开始在视觉上破坏网站。

我如何调整我的代码,使其表示只拉第一个类别。或者,即使它读两个类别,只显示两篇帖子。

现在它只拉了两个类别,但一旦添加了第二个类别,它也会添加这两个类别。

代码如下:

<?php
    if ( is_single()) {
        $categories = get_the_category();
        if ($categories) {
        foreach ($categories as $category) {
            $cat = $category->cat_ID;
            $args=array(
            \'cat\' => $cat,
            \'order\' => \'DESC\',
            \'post__not_in\' => array($post->ID),
            \'posts_per_page\'=>2,
            \'caller_get_posts\'=>1
        );
            $my_query = null;
            $my_query = new WP_Query($args);
                if( $my_query->have_posts() ) {

        while ($my_query->have_posts()) : $my_query->the_post(); 
    ?>

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

当前,您正在循环使用检索到的类别数组get_the_category() 对于每个类别,您检索两篇帖子。相反,我知道你只想从一个类别中抽取两个帖子。

为此,您必须删除foreach 循环和替代定义$category 仅作为数组中的第一个类别,如下所示:$category = $categories[0];