Вывод похожих новостей по кастомному полю?
Здравствуйте. Как можно сделать вывод похожий новостей по кастномному полю который указан к новости?
Например новость: site.ru/45-zagolovok-novosti
К этой новости прописано кастомное поле с содержанием: Президент
Нужно чтобы в этой новости выводились все новости с кастомным полем «Президент»
{custom xfields=»prezident»> — если так, то заходя в любую новость будут одни и те же похожие новости, а нужно чтобы они отображались по текущему кастомному полю
Dle тег custom, как настроить custom

CUSTOM — тег, встроенный в CMS DLE, позволяющий выводить заданные нами новости в заданных нами параметрах. Т.е. появляется возможность создавать гибкие выборки по разделам и не только (см. скриншоты ниже).
Параметров настройки тега CUSTOM более, чем достаточно в самых неожиданных направлениях:
- направление сортировки;
- выбор категории;
- выбор нескольких категорий;
- пропуск новостей в выборке;
- вывод отдельных записей;
- страницы на которых выводить;
- отдельный шаблон;
- вывод записей по автору;
- многое другое;
Стандартными способами в DLE на главной выводится по умолчанию 10 новостей, шаблон к которым хранится в файле shortstory.tpl . Тег умеет выводить выбранные нами по параметрам выше новости по отдельному шаблону. Например, страница на скриншотах ниже состоит из семи отдельных выборок тегом .
С главной убран вывод коротких новостей и вместо них при помощи 10 строк кода и тега выведены выборки по некоторым разделам сайта.
Дополнительно в блоке популярное выведены конкретные номера статей, а так же с применением шаблона файла shortstory.tpl выведены пять последних записей
Скриншоты страницы на теге
Может случиться так, что данный тег уже содержит одну из вариаций NOT-AVIABLE. В таком случае дублировать его не нужно и достаточно новое правило отделить вертикальной линией — “|“, как в примере ниже:
Блок популярных записей
На скриншотах находятся в самом верху в количестве трех штук. Выводятся заданные id записей по следующему шаблону:
Тег выведет статьи с id 169, 246, 202 и подставит для них шаблон custom2.tpl из папки шаблона. Шаблон еще проще:
Расширение функционала тега
Посетила меня такая мысль, что в теге очень не хватает возможности выводить новости из просматриваемой категории. Сейчас для реализации подобного приходится для каждой категории прописывать свой тег:
Я же решил это дело немного упростить. Все новости будут выводиться одним тегом с указанным category=»current» или category=»current_sub»
и
current — берет ID одной категории, непосредственно той, в которой находится пользователь.
current_sub — создает список категорий с учетом подкатегорий просматриваемой категории.
aviable необходим, т.к. во всех других случах переменная $category_id будет пустая и мы получим MySQL ошибку.
Установка:
Открыть файл engine/modules/functions.php
Выше нее вставить:
PS. В новых версиях DLE добавлен блок custom для комментариев. Он визуально такой же, за исключением подчеркнутого кода.
UPD: от 07.05.2020
Для DLE 13.x — 14.x сделал установку в виде плагина.
Хак — расширенный вывод related и custom новостей + картинка

Мне много раз встречались разнообразные хаки для расширенного вывода новостей, выводимых тегами и , но ни один из них не подходил для моих целей на 100%. Поэтому и было решено написать человеческий хак вывода похожих новостей и пользовательского вывода новостей. Основной загвоздкой была обработка картинок, по задумке должны были создаваться уменьшенные копии и складываться в папку на сервере, но моих знаний php никак не хватало на это. В итоге, после активного нагугливания, было найдено несколько вариантов и хаки были готовы. А что получилось — судить вам.
Итак первый представленный хак:
Advanced-Custom

Назначение: Вывод новостей с превьюшками и определенным количеством символов в названии и в кратком содержимом через custom
Возможности:
— Вывод обрезанного, до заданного количества символов, заголовка (при установке значения 0 заголовок не обрезается);
— Вывод обрезанного, до заданного количества символов, краткого содержания (при установке значения 0 краткое содержание не обрезается, сохраняется всё форматирование и т.д. в общем как обычно и выводится , при других значениях удаляется всё форматирование, картинки, переносы строки заменяются на пробелы.);
— Вывод уменьшенной, до заданного размера, копии изображения из краткого содержания. Изображение уменьшается и обрезается через crop до квадрата, и сохраняется в папке кеша сайта с префиксом, соответствующим размеру. Таким образом можно вывести одни и те же новости в разных местах с картинками разного размера, а при редактировании или удалении новостей, либо очистке кеша сервер не будет захламляться лишними файлами.
— Вывод, при необходимости, кликабельной превьюшки, увеличивающейся через HightSlide до оригинала.