0 Пользователей и 1 Гость просматривают эту тему.
  • 3 Ответов
  • 195 Просмотров
*

slepoy

  • Давно я тут
  • 746
  • 23 / 0
  • Тотальная шизофазия
Здравствуйте. В результатах "Умного поиска" элементы отображаются в странном порядке (предположительно, по алфавиту).
Из коробки нет возможности сделать сортировку "По дате" (новые сначала).

Рекомендуют открыть файл .../components/com_finder/models/search.php и поработать с getResultsData.

Можете что-нибудь подсказать?
Спасибо.

Фрагменты из файла ниже:

Код
// Get the row data.
$items = $this->getResultsData();

Может быть здесь в AS ordering?
Код
protected function getResultsData()
{
// Get the store id.
$store = $this->getStoreId('getResultsData', false);

// Use the cached data if possible.
if ($this->retrieve($store))
{
return $this->retrieve($store);
}

// Get the result ordering and direction.
$ordering = $this->getState('list.ordering', 'l.start_date');
$direction = $this->getState('list.direction', 'DESC');

// Get the base query and add the ordering information.
$base = $this->getListQuery();
$base->select($this->_db->escape($ordering). ' AS ordering');
$base->order($this->_db->escape($ordering). ' ' . $this->_db->escape($direction));

/*
* If there are no optional or required search terms in the query, we
* can get the results in one relatively simple database query.
*/
if (empty($this->includedTerms))
{
// Get the results from the database.
$this->_db->setQuery($base, (int) $this->getState('list.start'), (int) $this->getState('list.limit'));
$return = $this->_db->loadObjectList('link_id');

// Get a new store id because this data is page specific.
$store = $this->getStoreId('getResultsData', true);

// Push the results into cache.
$this->store($store, $return);

// Return the results.
return $this->retrieve($store);
}

Код
// Create a storage key for this set.
$setId = $this->getStoreId('getResultsData:' . serialize(array_values($ids)). ':' . $start . ':' . $limit);

Код
// Create a storage key for this set.
$setId = $this->getStoreId('getResultsData:required:' . serialize(array_values($required)). ':' . $start . ':' . $limit);
Помог? Поставь(те) плюс в репутацию.
*

sivers

  • Завсегдатай
  • 1609
  • 223 / 0
элементы отображаются в странном порядке (предположительно, по алфавиту)
Примечательная там вот эта строка:
Код
$order = $input->getWord('filter_order', $params->get('sort_order', 'relevance'));
Т.е., для получения поля сортировки он читает переданный в запросе параметр filter_order, а если его нет, то пытается взять из настроек (компонента или пункта меню?) параметр sort_order.
На связи в телеге @sivers
*

slepoy

  • Давно я тут
  • 746
  • 23 / 0
  • Тотальная шизофазия
На официальном форуме ответили
Цитировать
Smart Search doesn't use plugin ordering for such purpose. Only regular Search does.
https://forum.joomla.org/viewtopic.php?f=728&t=982634

И не говорят, баг это или недоработка. 🤷‍♂️
Помог? Поставь(те) плюс в репутацию.
*

voland

  • Легенда
  • 11009
  • 585 / 112
  • Эта строка съедает место на вашем мониторе
Ну да, на то и умный поиск что сортирует по релевантности
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Ошибка Дата публикации и Дата Создания

Автор phvsfpgs

Ответов: 32
Просмотров: 289
Последний ответ 03.04.2021, 17:31:18
от IToro82
Какие есть бесплатные плагины для создания теста?

Автор NoName

Ответов: 2
Просмотров: 164
Последний ответ 01.04.2021, 19:34:37
от dimon68
Метки или поиск в Joomla что лучше?

Автор kiev

Ответов: 3
Просмотров: 115
Последний ответ 09.02.2021, 23:41:58
от kiev
Какой компонент или плагин лучше для создания базы организации или фирм?

Автор Ruslandir

Ответов: 10
Просмотров: 155
Последний ответ 11.01.2021, 17:41:50
от AlexB
Умный поиск не ищет контент по фрагменту слова

Автор slepoy

Ответов: 9
Просмотров: 987
Последний ответ 30.12.2020, 00:10:54
от slepoy