$ _GET总是返回null

问题描述:

我有一个Wordpress站点使用简码在我们的服务器上调用一个.php文件。目标是使用隐藏字段将查询参数返回到Wordpress表单。

这是问题:$ _GET ['param']似乎不适用于任何关键'参数'。例如,我在我的简码的功能如下代码:

ChromePhp::log('Test Output'); 
ChromePhp::log($_GET['test']); 
ChromePhP::log($_SERVER['QUERY_STRING']); 

我已经安装了PHP的日志记录插件,这样我就可以看到从Chrome的JavaScript控制台输出的PHP。当我去到URL mysite.com/properpage?test=testparam 输出是:

Test Output 
null 
null 

我不知道,如果是相关的,但是当我去的网址与正确的查询参数(? test = testparam)时,url会重置自身并清除查询参数。

我觉得我错过了一些简单的东西。或者Wordpress可能会阻止查询参数某处为这个页面,所以它清除网址?

正如评论所说的史蒂夫,我添加了以下到functions.php文件在我的简码的功能是:

add_action('init','wpse46108_register_param'); 
function wpse46108_register_param() { 
    global $wp; 
    $wp->add_query_var('test'); 
} 

ChromePhp::log(get_query_var('test')); 

还有当我添加空输出查询参数?测试=测试。

+0

您的Wordpress是否设置为使用永久链接/友好URL?如果是这样的话,可能参数没有被传递... 尝试使用下面描述的方法:http://wordpress.stackexchange.com/questions/46108/wordpress-and-get-params – steve

+0

我们使用永久链接..日期和名称格式。看起来像这个解决方案可能在正确的轨道上,但它仍然没有解决它。我更新了这个问题来描述我所做的。 – cyk

使用get_query_var()函数来获取查询字符串变量