Существуют ли плагины для множественной фильтрации/критериев в WordPress?

31 янв. 2011 г., 20:20:25
Просмотры: 22.4K
Голосов: -1

Я ищу плагин WordPress, который может создать множественные критерии поиска из тегов или категорий, подобно боковой панели фильтров на сайте http://www.olx.com/dvd-cat-238 Когда выбран один из критериев фильтрации, отображаемый контент должен соответствовать этому выбору.

Если выбрано несколько критериев, отображаемый контент должен одновременно соответствовать всем выбранным фильтрам.

С уважением

0
Все ответы на вопрос 4
1

Чтобы никто другой не потратил столько же времени, сколько потратил я, код такого вида:

isset($_POST['cat']

нужно изменить на:

isset($_GET['cat']

потому что форма использует метод 'get'.

Также, 'category_and' следует заменить на 'category_in', если нужно проверить несколько категорий.

8 нояб. 2012 г. 05:15:22
Комментарии

К сожалению, эти названия аргументов указаны неверно - оба должны содержать двойное подчеркивание, например category__and и category__in. Также вы не сделали четкого различия в том, как эти два аргумента для категорий отличаются по функционалу. Исправьте/обновите эти моменты в вашем ответе, и я с радостью поставлю вам +1. ;)

t31os t31os
3 февр. 2014 г. 22:02:56
1

Я когда-то начал писать что-то подобное, но так и не закончил, каждый раз дорабатывая под конкретного клиента, которому нужна эта функциональность.

Так что пользуйтесь и изменяйте как вам угодно.

<?php
/*
Plugin Name: BaInternet Search Filters
Plugin URI: http://www.bainternet.info
Description: фильтрация поиска по меткам и категориям
Version: 0.0.1
Author: bainternet בניית אתרים
Author URI: http://www.bainternet.info
*/
/*
* Очень ранняя бета-версия, так что будьте осторожны.
*
* Использование: добавьте шорткод [search_with_filter] в 
*        запись/страницу или виджет, либо вызовите его из шаблона
*        страницы следующим образом: echo do_shortcode('search_with_filter');
*
*
*/

function ba_SearchFilter($query) {
    if (!$query->is_search) {
        return $query;
    }
    if (isset($_POST['cat'])){
        $query->set('category__and', $_POST['cat']);
    }
    if (isset($_POST['tags'])){
        $query->set('tag__and', $_POST['tags']);
    }
    return $query;
}
//добавляем фильтры к поиску
add_filter('pre_get_posts','ba_SearchFilter');

function ba_search_with_filters(){
    $out = '<form role="search" method="get" id="searchform" action="'. home_url( '/' ).'">
    <div><label class="screen-reader-text" for="s">Искать:</label>
        <input type="text" value="" name="s" id="s" /><br />';
            $categories=  get_categories(); 
            foreach ($categories as $category) {
                $option = '';
                $option .= '<input type="checkbox" name="cat[]" id="cat[]" value="'.$category->term_id.'"> ';
                $option .= $category->cat_name .'<br />';
                $out.= $option;
            }
            $tags=  get_categories(); 
            foreach ($tags as $tag) {
                $option = '';
                $option .= '<input type="checkbox" name="tags[]" id="tags[]" value="'.$tag->term_id.'"> ';
                $option .= $tag->cat_name .'<br />';
                $out.= $option;
            }
    $out .='<input type="submit" id="searchsubmit" value="Поиск" />
        </div>
        </form>';
    return $out;
}

add_shortcode('search_with_filter','ba_search_with_filters');

?>
31 янв. 2011 г. 22:16:25
Комментарии

отличный плагин, но небольшой вопрос. Что мне нужно изменить, чтобы поиск выполнялся по тегу + категории, а не искал и по тегам, и по категориям

User User
14 мар. 2012 г. 22:41:42
0

Посмотрите плагин scribu под названием Query Multiple Taxonomies.

Помимо того, что он позволяет выполнять запросы в разных таксономиях в более ранних версиях WordPress, он включает в себя виджет drilldown, аналогичный тому, на который вы указали. Если вы правильно определите свои таксономии, этот плагин можно использовать для создания очень удобного интерфейса для пользователей, просматривающих ваш сайт.

1 февр. 2011 г. 01:39:26
3

Привет, знаю, что опоздал на вечеринку, но я разработал именно такой плагин для этой цели:

WordPress Search & Filter - Плагины WordPress

Вы используете шорткод для генерации интерфейса, который работает с категориями, таксономиями, типами записей и датами публикаций :)

Надеюсь, он вам пригодится!

3 февр. 2014 г. 19:52:24
Комментарии

Если человек, который поставил минус, не захочет раскрыться, эту информацию невозможно получить. Ваш ответ станет бесполезным, если указанная вами ссылка перестанет работать или вернет 404 ошибку, и по сути он не отвечает на вопрос. Попробуйте предложить решение в своем ответе, а не просто ссылаться на него в другом месте.

Tom J Nowell Tom J Nowell
4 февр. 2014 г. 18:41:10

Автор вопроса просит плагин: "Меня интересует плагин для WordPress, который может создавать несколько критериев поиска из меток или категорий", а я ссылаюсь на плагин, размещенный на сайте wordpress.org (маловероятно, что он перестанет работать). Честно говоря, я не могу придумать лучшего ответа - просто считаю несправедливым снимать репутацию, когда был дан совершенно хороший ответ, и кто-то потратил время и усилия на его подготовку.

rmorse rmorse
4 февр. 2014 г. 20:31:43

Ах, я не заметил запрос о плагине. Рекомендации плагинов не соответствуют тематике этого сайта, и мы советуем не публиковать ссылки в качестве ответов, так как они ненадежны.

Tom J Nowell Tom J Nowell
4 февр. 2014 г. 21:50:44