Перейти к публикации

Убрать из общего поиска по сайту одну категорию


Рекомендованные сообщения

Собственно, сабж...

Нужно убрать одну не нужную мне категою из общего поиска по сайту. Как мне посказали, это возможно сделать путём изменения запроса к базе данных, прописав свои значения. Меня интересует, как это сделать? Прошу помощи. Буду признателен.

Версия движка: 8.2

Сайт: stokmedia.ru

Ссылка на сообщение
Поделиться на других сайтах

Впринципе, могу заплатить... Только цену вопроса сразу озвучте в личку. Хотя, можно и здесь)))

Ссылка на сообщение
Поделиться на других сайтах

эх, довел бы кто-нить до ума этот поиск...

Акела, прием!

Ну если есть детально описанная задача, что доводить до ума, то можно попробовать.

Ссылка на сообщение
Поделиться на других сайтах

Открываем /engine/modules/search.php

Находим:

$sql_request = "$sql_find ORDER BY $order_by LIMIT $search_start,$config_search_numbers";
Заменяем на:
$sql_request = "$sql_find AND category != 'ИД' ORDER BY $order_by LIMIT $search_start,$config_search_numbers";

Где ИД - это ID той категории, которую нужно убрать из поиска.

Ссылка на сообщение
Поделиться на других сайтах

эх, довел бы кто-нить до ума этот поиск...

Акела, прием!

Ну если есть детально описанная задача, что доводить до ума, то можно попробовать.

Сразу предупрежу, что я не програмист, поэтому возможны неточности в описании задачи. Да и ТЗ писал прямо сразу, не готовясь))

---------------------------

АВТОЗАПОЛНЕНИЕ

Необходимо, чтобы во время набора текста в поле поиска, показывался список подсказок, взятых из заголовков "новостей". По опыту знаю, что без таких подсказок люди вводят слишком длинный поисковой запрос, либо содержащий ошибки и опечатки.

---------------------------

РЕЛЕВАНТНОСТЬ ВЫДАЧИ

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

Что можно сделать? я не кодер, но точно знаю, что одно из улучшений будет сделать так чтобы сначала показывались результаты, найденные в ЗАГОЛОВКАХ, а потом уже в теле новости.

---------------------------

БАЗА ДАННЫХ

Помимо традиционных "новостей" ДЛЕ некоторые админы (вроде меня) создают свои модули, которые работают со своими таблицами в БД. Например, у меня вакансии, объявления, и еще кое-что - это свои таблицы.

Хотелось бы, чтобы такие таблицы можно было удобно подключать к поиску. Чтобы можно было указать в каких таблицах производить поиск, и какие поля показывать.

Можно к "своим" таблицам со стороны разработчика предъявлять некоторые требования, чтобы соответствовали, чтобы были подключаемы к системе.

Можно сделать этакие поисковые группы. Например группа "Компании" будет включать определенные категории новостей. Группа "Новости" - другие категории. Группа "Вакансии" - будет таблица из БД моего собственного модуля. Человек будет включая и выключая галочки, выбирать, в каких группах искать.

---------------------------

ИНТЕРФЕЙС

Определенно нужно улучшить поисковой интерфейс. Нужно каким-то образом сделать так, чтобы админ мог настраивать галочки, чтобы пользователь сам выбирал, где (в каких "поисковых группах") хочет искать. Существующий расширенный поиск каждый день становится менее нужным, потому что не гибкий.

---------------------------

ДОПУСТИМ

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

- найденное в заголовках новостей

- найденное в тексте новостей

- найденное в заголовках компаний

- найденное в тексте компаний

- найденное в заголовках вакансий

- найденное в тексте вакансий

в выдачу будут включаться дополнительные модули, если их настроит админ, и если чел поставит соответствующую галку.

В ЗАКЛЮЧЕНИИ ОТМЕЧУ, ЧТО ПОИСК - ЭТО НА МОЙ ВЗГЛЯД САМЫЙ ВАЖНЫЙ ЭЛЕМЕНТ НА САЙТЕ. У поиска самые мощные возможности удержать человека на сайте. Нужно просто эти возможности реализовать.

Изменено пользователем sergey78
Ссылка на сообщение
Поделиться на других сайтах

Сразу предупрежу, что я не програмист, поэтому возможны неточности в описании задачи. Да и ТЗ писал прямо сразу, не готовясь))

---------------------------

АВТОЗАПОЛНЕНИЕ

Необходимо, чтобы во время набора текста в поле поиска, показывался список подсказок, взятых из заголовков "новостей". По опыту знаю, что без таких подсказок люди вводят слишком длинный поисковой запрос, либо содержащий ошибки и опечатки.

---------------------------

РЕЛЕВАНТНОСТЬ ВЫДАЧИ

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

Что можно сделать? я не кодер, но точно знаю, что одно из улучшений будет сделать так чтобы сначала показывались результаты, найденные в ЗАГОЛОВКАХ, а потом уже в теле новости.

---------------------------

БАЗА ДАННЫХ

Помимо традиционных "новостей" ДЛЕ некоторые админы (вроде меня) создают свои модули, которые работают со своими таблицами в БД. Например, у меня вакансии, объявления, и еще кое-что - это свои таблицы.

Хотелось бы, чтобы такие таблицы можно было удобно подключать к поиску. Чтобы можно было указать в каких таблицах производить поиск, и какие поля показывать.

Можно к "своим" таблицам со стороны разработчика предъявлять некоторые требования, чтобы соответствовали, чтобы были подключаемы к системе.

Можно сделать этакие поисковые группы. Например группа "Компании" будет включать определенные категории новостей. Группа "Новости" - другие категории. Группа "Вакансии" - будет таблица из БД моего собственного модуля. Человек будет включая и выключая галочки, выбирать, в каких группах искать.

---------------------------

ИНТЕРФЕЙС

Определенно нужно улучшить поисковой интерфейс. Нужно каким-то образом сделать так, чтобы админ мог настраивать галочки, чтобы пользователь сам выбирал, где (в каких "поисковых группах") хочет искать. Существующий расширенный поиск каждый день становится менее нужным, потому что не гибкий.

---------------------------

ДОПУСТИМ

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

- найденное в заголовках новостей

- найденное в тексте новостей

- найденное в заголовках компаний

- найденное в тексте компаний

- найденное в заголовках вакансий

- найденное в тексте вакансий

в выдачу будут включаться дополнительные модули, если их настроит админ, и если чел поставит соответствующую галку.

В ЗАКЛЮЧЕНИИ ОТМЕЧУ, ЧТО ПОИСК - ЭТО НА МОЙ ВЗГЛЯД САМЫЙ ВАЖНЫЙ ЭЛЕМЕНТ НА САЙТЕ. У поиска самые мощные возможности удержать человека на сайте. Нужно просто эти возможности реализовать.

АВТОЗАПОЛНЕНИЕ

Я думал над этим и в принципе сделать не трудно. Как промежуточный вариант я пока сделал небольшой модуль "Быстрый поиск" (см. на сайте infanata.org слева вверху) - работает на АЯКС, позволяет оперативно искать НЕ выходя с текущей страницы.

РЕЛЕВАНТНОСТЬ ВЫДАЧИ

Без изменений в структуре базы или введения более сложных запросов я решения пока не вижу.

БАЗА ДАННЫХ

Пока универсального решения нет, надо формализовать задачу.

ИНТЕРФЕЙС

Я предлагал Владимиру ввести редактирование шаблона поиска в админке, но это предложение не было им поддержано.

З.Ы. У меня есть также микро-модуль "Поиск по тэгам" , также на АЯКС. Возможно, эти два АЯКС-модуля послужат основой нового универсального модуля поиска, я еще пока не знаю.

Ссылка на сообщение
Поделиться на других сайтах

Открываем /engine/modules/search.php

Находим:

$sql_request = "$sql_find ORDER BY $order_by LIMIT $search_start,$config_search_numbers";

Заменяем на:

$sql_request = "$sql_find AND category != 'ИД' ORDER BY $order_by LIMIT $search_start,$config_search_numbers";

Где ИД - это ID той категории, которую нужно убрать из поиска.

Работает! Правильно ли я понимаю, что бы исключить несколько категорий из поиска, нужно вбить их ID через запятую?

... Ещё один баг обнаружил))) Например, пишем в поиске слово музыка, нам модуль сообщает: По Вашему запросу найдено 76 ответов (Результаты запроса 1 - 19)

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

Т.е. получается, что найдено 76, а посмотреть можно только первые 19 результатов... С чем может быть связано?

Можно ли убрать категорию только из общего поиска, а в расширенном оставить?

Так или иначе, СПАСИБО!

Изменено пользователем vancer
Ссылка на сообщение
Поделиться на других сайтах

Akela,

большое спасибо, что ответили. надеюсь, разработчик уделит внимание поиску.

Владимир,

пожалуйста, скажите, стоит ли нам ждать чего-нить из вышеописанного? просто были случаи, когда я заказывал дорогостоящий модуль (больше стоимости движка), а потом выяснялось, что в нем нет необходимости, и хотелось бы знать ваши планы - будете ли усовершенствовать поиск или нет...

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

Ссылка на сообщение
Поделиться на других сайтах

Зачем усовершенствовать поиск. Вот решение.

создаём фаил robots.txt

в него прописываем

User-agent: *

Disallow:/category

Где собственно категорию заменить на свою.

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

Ссылка на сообщение
Поделиться на других сайтах

Мысль интересная... Но в моём случае идея была в другом.

Хотя, как вариант, можно запретить индексацию Гуглом, а Яшей оставить. Тогда новости с открытого раздела будут доступны с Яндекса (в принципе этого достаточно), а с сайта их уже станет не найти))) Отлично. Надо подумать на этим вариантом. Спс.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...