URL $ _GET无效

Mr.*_*. G 10 php wordpress .htaccess get

我有一个问题,我从来没有,我找不到原因.我将我的网站移动到另一个主机,现在它没有"读取"$ _GET变量.

我有这个网址:http://whatever.com/path?filtro = si &provincia = Santa + Fe&lococalad = Rossario如果我这样称呼:

$localidad = $_GET['localidad'];
$provincia = $_GET['provincia'];
$filtro = $_GET['filtro'];

echo $localidad;
echo "hola";
echo $provincia;
echo $filtro;
Run Code Online (Sandbox Code Playgroud)

除了"hola"之外什么都不打印,因此没有PHP错误.这是我的.htaccess:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

我在一个Wordpres网站上工作,也许它与永久链接有什么关系,我真的迷路了.非常感谢,感谢您的帮助.

编辑

我重新命名了我的.htacces所以它不会读它并且页面坏了,所以我去了wordpress中的永久链接设置并将它们设置为

 - Post Name    http://luminias.com/index.php/example-page/
Run Code Online (Sandbox Code Playgroud)

现在它工作了,但是,现在这是你的网址:

http://whatever.com/index.php/path/?filtro=si&provincia=Santa+Fe&localidad=Rosario

它打印所有$ _GET,但我需要"/index.php/"消失..

Mit*_*hah 2

add_rewrite_tag在 function.php 中为所有参数添加函数:

function custom_rewrite_tag() {
        add_rewrite_tag('%localidad%', '([^&]+)');
}
add_action('init', 'custom_rewrite_tag', 10, 0);
Run Code Online (Sandbox Code Playgroud)

您可以使用以下方式在模板中调用您的参数

$wp_query->query_vars['localidad']
Run Code Online (Sandbox Code Playgroud)

这是完整的文档

请注意,$_GET即使重写包含查询字符串变量,在重写的 URL 上使用也不起作用。您必须使用$wp_query.