Добрый день.
Возможно ли в поисковом фильтре добавить сортировку по городам? (При добавлении задания на сайт пользователь вводит свой город, соответственно в поисковом фильтре появляется дополнительная выпадающая вкладка.)
Скриншот что б было понятнее о чём речь.
Вопрос собственно в том как это сделать?) Или такое только за доп плату? Если так напишите сколько такая работа может стоить?
набросал такой код:
add_filter('fng_search_fields', 'add_search_field_task_city', 10); function add_search_field_task_city($fields){ $fields[] = array( 'slug' => 'gorod_54', 'type' => 'select', 'values' => array( 'Москва', 'Санкт-Петербург', 'Саратов' ) ); return $fields; } add_action( 'pre_get_posts', 'search_task_by_city', 10); function search_task_by_city($query) { if ( ! is_admin() && $query->is_main_query() ) { if(!$query->is_post_type_archive('task')) return; if(isset($_GET['gorod_54']) && $_GET['gorod_54']){ $query->set('meta_query', array( array( 'key' => 'gorod_54', 'value' => $_GET['gorod_54'] ) )); } } }
не проверял, не уверен, что будет работать, но взять за основу под эту задачу можно
вполне возможно, потому что выборку перекрывает основная выборка заданий.
Можно сделать только внеся изменения в код дополнения, откройте файл /freelance-nextgen/functions-actions.php
перед строкой 181:
if($meta_query) $query->set('meta_query', $meta_query);
добавьте
if(isset($_GET['gorod_54'])){ $meta_query[] = array( array( 'key' => 'gorod_54', 'value' => $_GET['gorod_54'] ) ); }
Код вставил -
Но происходит следующее. Выбираю город, нажимаю найти задание, страница перезагружается выбранный город слетает возвращаясь на начальное значение. При этом пишет что ни чего не найдено.
Mk71 сказал(а)
выбранный город слетает
приведите массив регистрации поля к виду
$fields[] = array( 'slug' => 'gorod_54', 'type' => 'select', 'default' => isset($_GET['gorod_54'])? $_GET['gorod_54']: '', 'values' => array( 'Москва', 'Санкт-Петербург', 'Саратов' ) );
Mk71 сказал(а)
пишет что ни чего не найдено
видимо реально ничего не находится
Всё сделал, выбранный город остаётся, но всё равно пишет что не найдено ничего.
Но задание с выбранным городом есть.
- Ваш код
- Задание
- Задание в админке
- Фильтр, выбираем город, категорию и жмём найти задание
- Ничего не найдено.
Тема не закрыта я вижу, давно была видимо результата не достиг . Есть еще тема по этому поводу, выше
С участием еще одного дополнения за которое нужно оплачивать вип и тут вопрос. Любая Биржа подразумевает в своем создании такие функции от начала, равно как и оповещение пользователей. Однако в бирже этого нет и предлагается все стороннее. Несложно поставить вип плагин и за него оплачивать ежемесячно, но, все же считаю что такой функционал должен быть в самом дополнении биржи от начала, жду обновлений ребят. Прошу добавить, а пока я возьму снова вип.
И то не факт так как это просто отдельные поля и не имеют отношений, как я понял, к поиску по городам в бирже так-как выводиться где-то там в отдельных полях - прошу доработать плагин и добавить к нему поиск фильтрации по городам, что являеться основным функционалом любого плагина или дополнения к бирже. Или выпустить дополнение конкретно связанное с поиском по городам Спасибо