2014-02-06 2 views
1

Я использую переменную GET, чтобы выбрать конкретный элемент для отображения на странице. Мой URL обычно выглядит следующим образом:Исправить сломанную переменную GET

/?type=xxxx 

Я тогда логин плагин (Wordpress), который добавляет ?redirect=ok к URL на представлении. К сожалению, это делает URL-адрес похожим: /?type=xxxx?redirect=ok, который разбивает предыдущую переменную.

Я пытаюсь как-то изменить этот URL. Я думал о нескольких методов:

  • .htaccess, чтобы найти и переписать ?redirect=ok к пустым или & редиректа = ок
  • PHP, чтобы лишить эту часть строки, а затем перенаправить

Ничего из этого, похоже, не сработало.

Любая помощь будет оценена по весу.

+0

Ну, почему вы не просто изменить плагин и рассчитывать параметры GET? Если есть уже некоторые плагины добавляет & redirect = ok, иначе плагин добавляет? Redirect = ok – Musterknabe

+0

Либо отредактируйте плагин, чтобы использовать 'add_query_arg()', который будет обрабатывать разбор URL-адреса для вас. Или отредактируйте ссылку, которую вы создаете, для использования 'add_query_arg()'. Подробнее здесь: http://codex.wordpress.org/Function_Reference/add_query_arg –

+0

Я думал об этом, но я не писал плагин, поэтому не знаю точно, где этот код. Однако я попросил разработчика помочь. – lcheney

ответ

0

Это mod_rewrite Исправить эту проблему.

Поместите этот код в файле DOCUMENT_ROOT/.htaccess, как первого правила:

RewriteEngine On 

RewriteCond %{THE_REQUEST} \s/+([^?]*\?type=.*?)\?(redirect=ok) [NC] 
RewriteRule^%1&%2 [R=301,L] 
+1

Все ответы были действительны и оценены, но этот был самым быстрым и легким для новичков, подобных мне. Спасибо! – lcheney

+0

Добро пожаловать, рад, что это сработало. – anubhava

Смежные вопросы