功能描述
獲取全局變量 $wp_query 對(duì)象使用的 WP_Query 類(lèi)中的公開(kāi)查詢(xún)參數(shù)。
使用說(shuō)明
get_query_var( $var );
參數(shù)
| 參數(shù) | 數(shù)據(jù)類(lèi)型 | 是否必需 | 描述 | 默認(rèn)值 |
|---|---|---|---|---|
| $var | 字符串 | 是 | 需要獲取的查詢(xún)變量的名稱(chēng) | 無(wú) |
返回值
(mixed)
返回參數(shù)值,如果參數(shù)沒(méi)有設(shè)置,返回空
使用示例
獲取當(dāng)前分頁(yè)數(shù)
<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; ?>
<h1>Currently Browsing Page <?php echo $paged; ?></h1>
想要獲取靜態(tài)首頁(yè) (或頁(yè)面模板) 的分頁(yè)數(shù),我們必須使用 ‘page’ 查詢(xún)參數(shù):
<?php $paged = (get_query_var('page')) ? get_query_var('page') : 1; ?>
<h1>正在瀏覽首頁(yè)中的第 <?php echo $paged; ?> 頁(yè)</h1>
注意:查詢(xún)參數(shù) ‘page’ 同時(shí)也是使用<!–nextpage–>快捷標(biāo)簽分頁(yè)的單篇文章或頁(yè)面的分頁(yè)查詢(xún)參數(shù)。
注意
get_query_var() 只取回 WP_Query 可識(shí)別的公共查詢(xún)參數(shù),也就是說(shuō)如果你添加了自定義查詢(xún)參數(shù),直接通過(guò) get_query_var() 函數(shù)是獲取不了的。要想獲取自定義查詢(xún)參數(shù)的值,我們需要通過(guò)使用「query_var」 Filter 添加自定義查詢(xún)參數(shù)。
自定義查詢(xún)參數(shù)
為了使 get_query_var() 對(duì)添加了自定義查詢(xún)參數(shù)的URLs起作用, (如: “http://mysite.com/some_page/?my_var=foo” – 使用 add_query_arg() 函數(shù)添加的)我們需要把這些自定義查詢(xún)參數(shù)添加到 WP_Query 的公共查詢(xún)參數(shù)中, 實(shí)現(xiàn)方式是:實(shí)例化 WP_Query 類(lèi)時(shí),通過(guò)「query_vars」Filter 添加自定義查詢(xún)參數(shù)到 $query_vars 中,如下:
function add_query_vars_filter( $vars ){
$vars[] = "my_var";
return $vars;
}
add_filter( 'query_vars', 'add_query_vars_filter' );
