get query var 获取WordPress查询变量

功能描述

获取全局变量 $wp_query 对象使用的 WP_Query 类中的公开查询参数。

使用说明

<?php get_query_var( $var ) ?>

参数

$var
(string) (必要) 需要获取的查询变量的名称
Default: 无

返回值

(mixed)
返回参数值,如果参数没有设置,返回空

使用示例

获取当前分页数

<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; ?>
<h1>Currently Browsing Page <?php echo $paged; ?></h1>

想要获取静态首页 (或页面模板) 的分页数,我们必须使用 ‘page’ 查询参数:

<?php $paged = (get_query_var('page')) ? get_query_var('page') : 1; ?>
<h1>正在浏览首页中的第 <?php echo $paged; ?> 页</h1>

注意:查询参数 ‘page’ 同时也是使用<!–nextpage–>快捷标签分页的单篇文章或页面的分页查询参数。

注意

get_query_var() 只取回 WP_Query 可识别的公共查询参数,也就是说如果你添加了自定义查询参数,直接通过 get_query_var() 函数是获取不了的。要想获取自定义查询参数的值,我们需要通过使用「query_var」 Filter 添加自定义查询参数。

自定义查询参数

为了使 get_query_var() 对添加了自定义查询参数的URLs起作用, (如: “http://mysite.com/some_page/?my_var=foo” – 使用 add_query_arg() 函数添加的)我们需要把这些自定义查询参数添加到 WP_Query 的公共查询参数中, 实现方式是:实例化 WP_Query 类时,通过「query_vars」Filter 添加自定义查询参数到 $query_vars 中,如下:

function add_query_vars_filter( $vars ){
    $vars[] = "my_var";
    return $vars;
}
add_filter( 'query_vars', 'add_query_vars_filter' );
支付确认
需要支付
¥0
二维码刷新中