带分页的WordPress类别和分类循环

时间:2015-09-02 作者:user1682743

我有两个属于同一个帖子类型(posts)的分类法。

冒险-属于分类法Adventure-属于假日类型分类法

我想运行两个查询:

$args = array(
            \'post_type\' => \'post\',
            \'tax_query\' => array(
            \'relation\' => \'OR\',
                array(
                    \'taxonomy\' => \'holiday-types\',
                    \'field\'    => \'slug\',
                    \'terms\'    => \'adventure\',
                ),
                array(
                    \'taxonomy\' => \'category\',
                    \'field\'    => \'slug\',
                    \'terms\' => \'adventure\',
                ),  
            ),

        );
        $the_query = new WP_Query( $args );
尽管条款相同,但它们有不同的相关职位。

此查询仅返回具有假日类型分类法的帖子,而不返回类别分类法的帖子。如果我用假日类型注释掉数组,那么分类类别将显示相关的帖子。

我需要它们一起显示以及分页。

\'paged\' => get_query_var(\'paged\')
我已经读到我需要将其添加到第一个数组中,但我想我无法测试它,除非我首先让循环正常工作。

你知道我哪里做错了吗?


正常。我现在已经知道了一些事情,但分页不起作用。当点击其他页面(如2、3、4)时,它将进入404页面。我错过了什么?

global $query_string;
$myquery = wp_parse_args($query_string);
$myquery = array(
    \'paged\' => $paged,
    \'numberposts\'=>-1,
    \'tax_query\' => array(
        \'relation\' => \'OR\',
        array(
            \'taxonomy\' => \'category\',
            \'terms\' => array(\'adventure\'),
            \'field\' => \'slug\',

        ),
        array(
            \'taxonomy\' => \'holiday-types\',
            \'terms\' => array(\'adventure\'),
            \'field\' => \'slug\',
        ),        
    ),
 );
query_posts($myquery);

while ( have_posts() ) : the_post();
    echo \'<li>\';
    the_title();
    echo \'</li>\';
endwhile;

// Reset Query
wp_pagenavi();
wp_reset_query();   

1 个回复
SO网友:terminator

不使用\'numberposts\'=>-1 因为numberposts被删除了,而且-1在一个页面上显示所有帖子。

而是使用posts_per_page 并根据您想要的帖子数量设置其值。

$paged= (get_query_var(\'paged\' )) ? get_query_var(\'paged\'):1; 
global $query_string;
$myquery = wp_parse_args($query_string);
$myquery = array(
    \'paged\' => $paged,
    \'posts_per_page\'=>10,
    \'tax_query\' => array(
        \'relation\' => \'OR\',
        array(
            \'taxonomy\' => \'category\',
            \'terms\' => array(\'adventure\'),
            \'field\' => \'slug\',

        ),
        array(
            \'taxonomy\' => \'holiday-types\',
            \'terms\' => array(\'adventure\'),
            \'field\' => \'slug\',
        ),        
    ),
 );
query_posts($myquery);

while ( have_posts() ) : the_post();
    echo \'<li>\';
    the_title();
    echo \'</li>\';
endwhile;

// Reset Query
wp_pagenavi();
wp_reset_query(); 

相关推荐

Wordpress pagination URL

如何在Wordpress中获得类似的分页URL在两个URL 你可以看到\'Faculty\' 我想这在默认的Wordpress中是无法实现的。Listing page: https://engineering.jhu.edu/faculty/?current_page=18#item_listDetail page:https://engineering.jhu.edu/faculty/xingde-li/