Получение значения параметра querystring в wordpress
Я делаю плагин wordpress. Я использовал add_query_string () внутри якорей, чтобы загрузить контент на основе ссылки, которую пользователь щелкнул. Теперь мне нужно знать, лучший способ получить значение параметра в текущем Ури.
Это, вероятно, довольно простой и глупый вопрос, но я новичок в программировании, поэтому мне жаль, если я неправильно понимаю некоторые термины.
этот код:
if ( current_user_can('manage_options') ) {
echo (
'<div>
<ul>
<li><a href="'.add_query_arg( 'adminoption', 1 ).'">option 1</a></li>
<li><a href="'.add_query_arg( 'adminoption', 2 ).'">option 2</a></li>
</ul>
</div>'
);
// if adminoption == 1 load content A
// if adminoption == 2 load content B
}
4 ответов
get_query_var ('adminoption') работает только со стандартными или зарегистрированными vars. Поэтому для нестандартных Wordpress vars вам нужно будет сначала зарегистрировать его в своих функциях.файл php:
function rj_add_query_vars_filter( $vars ){
$vars[] = "adminoption";
return $vars;
}
add_filter( 'query_vars', 'rj_add_query_vars_filter' );
get_query_var('adminoption');
поймите, что вопрос старый, но надеюсь, что это поможет кому-нибудь.
повышение скрытого ответа в комментариях Дэвида Карруса:
в любом случае вы можете попробовать со старым php $_GET['adminoption'].
чтобы получить vars из строки запроса, вы можете использовать PHP $_GET['key']
метод.
в зависимости от того, что вы делаете, вы можете также использовать get_query_var('key')
, эта функция работает с параметрами, принятыми классом WP_Query (cat, author и т. д.).
Если вы хотите использовать пользовательский запрос vars с этой функцией, вам нужно использовать query_vars фильтр чтобы изменить список поддерживаемых запросов vars, вы можете прочитать, как это сделать в связанной документации выше.