Подтвердить что ты не робот

URL $_GET не будет работать

У меня проблема, которой у меня никогда не было, и я не могу найти причину. Я переместил мой сайт на другой хост, и теперь он не "читает" переменные $_GET.

У меня есть этот url: http://whatever.com/path?filtro=si&provincia=Santa+Fe&localidad=Rosario И если я назову это:

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

echo $localidad;
echo "hola";
echo $provincia;
echo $filtro;

Ничего не печатает, кроме "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>

Я работаю над сайтом Wordpres, возможно, он имеет какое-то отношение к Permalinks или чему-то, Im действительно потерян. Большое вам спасибо, я ценю вашу помощь.

ИЗМЕНИТЬ

Я переименовал свои .htacces, чтобы он не читал его, и страница сломалась, поэтому я перешел к настройкам постоянной ссылки в wordpress и установил их в

 - Post Name    http://luminias.com/index.php/example-page/

И теперь IT WORKS, но теперь это URL:

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

И он печатает все $_GET, но мне нужно, чтобы "/index.php/" ушел..

4b9b3361

Ответ 1

Добавьте add_rewrite_tag функцию в ваш function.php для всех параметров:

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

И вы можете вызвать свой параметр в шаблоне, используя

$wp_query->query_vars['localidad']

Вот полная документация

Обратите внимание, что использование $_GET на перезаписанном URL-адресе не будет работать, даже если rewrite включает переменные запроса. Вы должны использовать $wp_query.