Custom + категория + доп.поле = подборки

Custom + категория + доп.поле = подборки

Этот метод позволит реализовать на сайте - подборки. Суть работы его проста. Жмем добавить новости и в доп.поле указываем список id новостей, например: 256,938,12,2019, и т.д. Задаем название новости или подборки и добавляем на сайт. При открытии новости на сайте, будет выведен список новостей указанных в доп.поле (256,938,12,2019, и т.д.).


А теперь по порядку:
1. Создаем категорию Подборки, в которую будет добавлять подборки. Прописываем в настройках категории свои шаблоны для краткой и полной новости.
2. Создаем доп.поле Подборка, в котором будет список id новостей входящих в подборку.
3. В шаблоне полной новости для категории Подборки прописываем код:
{custom cache="yes" id="[xfvalue_ПОДБОРКА]"}

где ПОДБОРКА - название созданного доп.поля Подборка. Также можно прописать для {custom свой шаблон параметром template="тут_название_шаблона".

Плюсы этого метода:
  • Не нужно редактировать движок и заливать на сайт сторонние файлы модуля.
  • Пользуетесь стандартными средствами DLE, с которыми привыкли работать.

Минусы:
  • Список id новостей нужно прописать вручную. Но это решаемо небольшим хаком, который ниже.
  • Сортировку новостей в подборке не получится выставить именно так, как хотите.

Установка хака, упрощающего создание подборки:
1. Открыть engine/ajax/find_relates.php найти:
if ( $mode ) $d_link = "";

Добавить ниже:
$d_link = "<a title=\"Добавить в подборку\" onclick=\"var _self = $('#xf_ПОДБОРКА'), flag = _self.val().split(',').filter(function(item){return item=={$related['id']}}).length ? true : false; if(_self.val()=='') {_self.val('{$related['id']}')} else if( flag === false ) {_self.val(_self.val() + ',{$related['id']}')}; return false\" href=\"#\"><i class=\"fa fa-play position-left\"></i></a>{$d_link}";

Вместо слова ПОДБОРКА ввести свое название доп.поля.

Готово!

После этого при поиске похожих новостей в добавлении/редактировании новости будет выводится еще одна кнопка, перед ссылкой. При клике на нее id новости добавится в доп.поле Подборка с проверкой на дубль.
 
Версия DLE: 13.1
Автор: iCooLER
Информация
Посетители, находящиеся в группе Гость, не могут оставлять комментарии к данной публикации.

Комментариев 3

Oxigen 3 ноября 2019 06:54
--------------------
Всё, что вы напишите, будет использовано против вас при показе контекстной рекламы :)
bymerpro 2 ноября 2019 22:01
Вроде как пагинация в fullstory не работает в теге custom, поэтому у хака есть еще один минус.
Pavelex 1 ноября 2019 19:37
Воу, так это даже не модуль? Это просто способ, оказывается все так просто flushed