Php Wordpress搜索忽略每页的帖子限制?
我想覆盖CMS中指定的post限制(设置为12)。我在参数中添加了“每页帖子”,这是我在Wordpress Codex中找到的,但它不起作用 此搜索代码来自CookingPress主题 问题:为什么参数“每页发布”=>24不起作用Php Wordpress搜索忽略每页的帖子限制?,php,wordpress,Php,Wordpress,我想覆盖CMS中指定的post限制(设置为12)。我在参数中添加了“每页帖子”,这是我在Wordpress Codex中找到的,但它不起作用 此搜索代码来自CookingPress主题 问题:为什么参数“每页发布”=>24不起作用 <?php if ($_GET['submit']) { $args = array( 'posts_per_page' => 24, 'tax_query' => array(
<?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);
}
?>
可能的解决方案
尝试将nopage
参数设置为false
:
$args = array(
'posts_per_page' => -1,
'nopaging' => false,
'post_type' => 'post'
);
参考文献
尝试wp_reset_query();在您的代码之前。@user868766尝试过它。对它没有影响。这看起来很有希望。这个网站现在不存在了,所以这个问题可能会被关闭。谢谢。@Clint作为OP,您可以决定如何处理这个问题。除非你想把它留给其他可能遇到类似情况的人。此外,如果这是正确的,您可以将其标记为正确答案:)