簡體   English   中英

Wordpress搜索忽略每頁限制的帖子?

[英]Wordpress search ignoring posts per page limit?

我想覆蓋CMS中指定的帖子限制(設置為12)。 我將'posts_per_page'添加到參數中,我在Wordpress Codex中找到它並且它不起作用。

此搜索代碼來自CookingPress主題。

問題 :為什么參數'posts_per_page'=> 24不起作用?

<?php 
if ($_GET['submit']) {

    $args = array(
            'posts_per_page' => 24,
            'tax_query' => array(
                    'relation' => 'AND'
            )
            ,'post_type' => 'post'
    );

    $cat = mysql_real_escape_string($_GET['cat']);
    $categories = array();
    if($cat) {
        $categories = array (
                'taxonomy' => 'category',
                'field' => 'term_id',
                'terms' => array( $cat )
        );
        array_push($args['tax_query'],$categories);
    }

    $level = mysql_real_escape_string($_GET['level']);
    $levels = array();
    if($level) {
        $levels = array (
                'taxonomy' => 'level',
                'field' => 'slug',
                'terms' => array( $level )
        );
        array_push($args['tax_query'],$levels);
    }

    $serving = mysql_real_escape_string($_GET['serving']);
    if($serving) {
        $servings = array (
                'taxonomy' => 'serving',
                'field' => 'slug',
                'terms' => array( $serving )
        );
        array_push($args['tax_query'],$servings);
    }

    $time = mysql_real_escape_string($_GET['timeneeded']);
    if($time) {
        $times = array (
                'taxonomy' => 'timeneeded',
                'field' => 'slug',
                'terms' => array( $time )
        );
        array_push($args['tax_query'],$times);
    }


    $allergen = $_GET['allergens'];
    if($allergen) {
        $allergens = array (
                'taxonomy' => 'allergen',
                'field' => 'slug',
                'terms' => $allergen
        );
        array_push($args['tax_query'],$allergens);
    }

    $tags = $_GET['include_ing'];

    if($_GET['relation']=='all') {
        if($tags) {
            foreach ($tags as $t) {
                $tagsquery = array (
                        'taxonomy' => 'post_tag',
                        'field' => 'slug',
                        'terms' => mysql_real_escape_string($t)
                );
                array_push($args['tax_query'],$tagsquery);
            }
        }
    } else {
        if($tags) {
            $tagsquery = array (
                    'taxonomy' => 'post_tag',
                    'field' => 'slug',
                    'terms' => $tags
            );

            array_push($args['tax_query'],$tagsquery);
        }
   }

    $extags = $_GET['exclude_ing'];
    if($extags) {
            $extagsquery = array (
                    'taxonomy' => 'post_tag',
                    'field' => 'slug',
                    'terms' => $extags,
                    'operator' => 'NOT IN'
            );
            array_push($args['tax_query'],$extagsquery);
        }

    if(!$wp_query) global $wp_query;
    $args = array_merge( $args , $wp_query->query );
    query_posts( $args);

}
?>

可能解決方案

嘗試將nopaging參數設置為false

$args = array(
  'posts_per_page' => -1,
  'nopaging' => false,
  'post_type' => 'post'
);

參考

法典:分頁參數

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM