Nano Hash - криптовалюты, майнинг, программирование

Как отфильтровать результаты поиска по типу сообщения во внешнем интерфейсе?

Обновление: я мог бы объяснить вопрос немного лучше, поэтому я переписал его здесь Как я могу разделить результаты поиска на вкладки типов сообщений во внешнем интерфейсе?

У меня есть сайт Wordpress, и у меня есть 4 типа сообщений. Когда я выполняю поиск, в результатах отображаются все 4 типа сообщений.

Я бы хотел, чтобы пользователь мог фильтровать эти результаты по типу сообщения.

Например, допустим, у меня есть 4 типа сообщений.

Могу ли я иметь над результатами набор переключателей, чтобы помочь фильтровать

  • Все результаты (по умолчанию)
  • Фильтровать по типу сообщения 1
  • Фильтровать по типу сообщения 2
  • Фильтровать по типу сообщения 3
  • Фильтровать по типу сообщения 4

Таким образом, пользователь может легко найти именно тот контент, который он ищет, вместо того, чтобы постоянно давать контент из ВСЕХ ТИПОВ ПОСТОВ, вот и все!

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

Спасибо за любую помощь!



Ответы:


1

Если вы хотите фильтровать результаты на лету, вам нужно либо изучить решение AJAX (если вы имеете дело с потенциальными тысячами результатов), либо использовать Javascript/jQuery для переключения видимости результатов в зависимости от их типа сообщения. . Простым решением было бы что-то вроде этого с использованием jQuery.

В вашем шаблоне search.php:

<form action="" method="POST">
    <input class="radioToggle" type="radio" name="post_type" value="type1" />Filter 1<br/>
    <input class="radioToggle" type="radio" name="post_type" value="type2" />Filter 2<br/>
    <input class="radioToggle" type="radio" name="post_type" value="type3" />Filter 3<br/>
</form>
<div class="result type1">
    result of type 1....
</div>
<div class="result type2">
    result of type 2....
</div>
<div class="result type2">
    result of type 2....
</div>
<div class="result type3">
    result of type 3....
</div>
<div class="result type3">
    result of type 3....
</div>
<div class="result type3">
    result of type 3....
</div>
<script type="text/javascript">
    jQuery(document).ready(function($))
    {
        $(".radioToggle").click(function()
        {
            $(".result."+$(this).attr("value")).css("display", "block");
            $(".result:not(."+$(this).attr("value")+")").css("display", "none");
        });
    });
</script>

Это не проверено, и лично я бы вообще не стал делать это на лету. Лично я считаю, что результаты поиска следует предварительно фильтровать с помощью PHP, а не с помощью Javascript. Но тем не менее, если это необходимо для вашего пользовательского интерфейса, это должно помочь вам начать работу.

Помните, что для того, чтобы использовать этот метод, jQuery должен быть установлен или поставлен в очередь вашей темой.

11.07.2012
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..