2017-01-03 6 views
1

Я хочу, чтобы изменить значение URL-адреса страницы Wordpress в соответствии с выбранным значением из раскрывающегося списка с помощью настраиваемого типа сообщений.Как изменить URL-адрес страницы из выпадающего меню Wordpress

Я хочу использовать несколько выпадающих списков, чтобы «Страна», затем «Состояние», затем «Город», затем «Город» изменит URL на выбранные значения.

Если я выбрать только страну, то URL будет выглядеть

http://example.com/india

Когда я выбираю состояния Индии в дополнение к этому, то URL будет выглядеть http://example.com/india/delhi.

Пожалуйста, ссылается на эту страницу, чтобы увидеть пример того, что я пытаюсь сделать: http://areapincode.in/

+0

Убрал грамматический определенный член, сделал описание проблемы кратким, удалил неправильный тег, добавил правильный тег, удалил шум («спасибо») и поставил вопрос легче найти другими, которые искали ту же проблему. – Shawn

ответ

1

Вы должны выполните поиск перезаписи URL в WordPress. Пожалуйста, обратитесь к следующей ссылке для более детальной информации,

WordPress URL Rewrite

Он работает как следующие,

  1. Добавить действие крюк для переписывания,

    add_action ('инициализации', 'rewrites_init', 1, 0);

    функция rewrites_init() {
    add_rewrite_rule ('([^ /] )/([^ /])/([^ /] )/([^ /])', «индекс. PHP?& страна = $ спички 1 & состояние = $ соответствует 2 & город = $ matches [3] & город = $ matches [4] ',' top '); }

  2. Набор перезаписи метки

    add_action ('инициализации', 'custom_rewrite_tag', 10, 0); Функция custom_rewrite_tag() { add_rewrite_tag ('% country%', '([^ &] +)'); add_rewrite_tag ('% state%', '([^ &] +)'); add_rewrite_tag ('% city%', '([^ &] +)'); add_rewrite_tag ('% city%', '([^ &] +)'); }

  3. Набор запроса вары

    add_filter ('query_vars', 'query_vars'); public function query_vars ($ query_vars) { $ query_vars [] = 'country'; $ query_vars [] = 'state'; $ query_vars [] = 'city'; $ query_vars [] = 'город'; return $ query_vars; }

  4. После этого вы можете получить значения по get_query_var get_query_var

Это не проверяется. Но с вашими небольшими усилиями это может быть полезно. Позвольте мне знать в комментариях ниже.

+0

привет @ dipak, не могли бы вы рассказать мне, каким образом я могу выполнить эту задачу, в пользовательском типе сообщений или что-то еще, потому что, если я создаю собственный тип сообщения, я могу создать страну как таксономию и указать как имя сообщения, тогда как Могу ли я выбрать город и город после штата? –

1

Попробуйте это:

<select id="city" name="city"> 
<option value="mumbai">mumbai</option> 
<option value="delhi">delhi</option> 
<option value="surat">surat</option> 
<option value="ahmedabad">ahmedabad</option> 
</select> 

вызова JQuery:

$('#city').change(function(){ 
    var city = $(this).val(); 
    window.location.href='your url'+city; 
}); 
Смежные вопросы