默认情况下,wordpress在搜索页面中有自己的主查询,在您的情况下,您没有更改主查询,只创建一个自定义查询
paged是主查询首先使用的保留查询变量,当主查询的结果相同时,您将面临404错误。您有3个选择:
1. change paged variable
您可以将页面变量从paged重命名为page或wordpress默认不使用的其他名称
2. override 404 page
function override_404()
{
if ( is_search() && isset($_GET[\'s\'])) {
global $wp_query;
$wp_query->is_404 = false;
}
}
add_action(\'init\', \'override_404\');
3. override main query ( best )
function change_search_query() {
if ( is_search() && isset($_GET[\'s\'])) {
$args = array();
query_posts( $args );
}
}
add_action(\'init\', \'change_search_query\');