在wordpress中获取查询字符串参数值

时间:2012-07-11 22:03:17

标签: wordpress query-string

我正在制作一个wordpress插件。我在锚点中使用了add_query_string(),以便根据用户点击的链接加载内容。现在我需要知道在当前URI中获取参数值的最佳方法。

这可能是一个非常基本和愚蠢的问题,但我是编程的新手,所以如果我误解了一些术语,我很抱歉。

这是代码:

        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 个答案:

答案 0 :(得分:13)

我认为你要求get_query_var()功能。 在您的情况下,您应该使用get_query_var('adminoption')。 希望它有所帮助

答案 1 :(得分:12)

get_query_var('adminoption')仅适用于标准或已注册的变量。因此,对于非标准的Wordpress变量,您需要先在functions.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');

意识到问题已经过去了,但希望它可以帮助任何人。

答案 2 :(得分:9)

在David Carrus的评论中提出隐藏的答案:

  

无论如何,你可以试试旧的PHP $ _GET ['adminoption']。

答案 3 :(得分:7)

要从查询字符串中获取变量,您可以使用PHP的$_GET['key']方法。

根据您的操作,您还可以使用get_query_var('key')this function works with parameters accepted by the WP_Query class (cat, author, etc)

如果您想使用具有此功能的自定义查询变量,您需要使用query_vars过滤器来修改支持的查询变量列表,您可以在上面链接的文档中阅读如何执行此操作。