我有代码:
class some{
public function run(){
add_filter(\'query_vars\', array( $this, \'addPar\'));
$this->some_body();
}
public function addPar($vars){
$vars[] = "my_par";
return $vars;
}
public function some_body(){
if(isset( get_query_var(\'my_par\')) {
$value = get_query_var(\'my_par\');
echo $value;
}
echo \'<li><a href="\'.esc_url(add_query_arg(array(\'my_par\' => \'4\'))).\'">></a></li>\';
}
}
以及
get_query_var()
不工作。
SOLUTION
在后端,此功能可能无法工作。我使用
$_GET
.
最合适的回答,由SO网友:MikeNGarrett 整理而成
some_body
需要在上作为操作运行pre_get_posts
.
这是一个example of the entire process of adding new query vars.
特别注意myplugin_pre_get_posts
:
function myplugin_pre_get_posts( $query ) {
...
$city = get_query_var( \'city\' );
...
}
add_action( \'pre_get_posts\', \'myplugin_pre_get_posts\', 1 );