Как вывести все похожие новости custom dle
Перейти к содержимому

Как вывести все похожие новости custom dle

  • автор:

 

Вывод похожих новостей по кастомному полю?

Здравствуйте. Как можно сделать вывод похожий новостей по кастномному полю который указан к новости?

Например новость: site.ru/45-zagolovok-novosti

К этой новости прописано кастомное поле с содержанием: Президент

Нужно чтобы в этой новости выводились все новости с кастомным полем «Президент»

{custom xfields=»prezident»> — если так, то заходя в любую новость будут одни и те же похожие новости, а нужно чтобы они отображались по текущему кастомному полю

Dle тег custom, как настроить custom

CUSTOM — тег, встроенный в CMS DLE, позволяющий выводить заданные нами новости в заданных нами параметрах. Т.е. появляется возможность создавать гибкие выборки по разделам и не только (см. скриншоты ниже).

Параметров настройки тега CUSTOM более, чем достаточно в самых неожиданных направлениях:

  • направление сортировки;
  • выбор категории;
  • выбор нескольких категорий;
  • пропуск новостей в выборке;
  • вывод отдельных записей;
  • страницы на которых выводить;
  • отдельный шаблон;
  • вывод записей по автору;
  • многое другое;

Стандартными способами в DLE на главной выводится по умолчанию 10 новостей, шаблон к которым хранится в файле shortstory.tpl . Тег умеет выводить выбранные нами по параметрам выше новости по отдельному шаблону. Например, страница на скриншотах ниже состоит из семи отдельных выборок тегом .

С главной убран вывод коротких новостей и вместо них при помощи 10 строк кода и тега выведены выборки по некоторым разделам сайта.

Дополнительно в блоке популярное выведены конкретные номера статей, а так же с применением шаблона файла shortstory.tpl выведены пять последних записей

Скриншоты страницы на теге
DLE — <CUSTOM>вывод записей по заданным id» width=»275″ height=»325″ /><br />
<img decoding= 

Может случиться так, что данный тег уже содержит одну из вариаций 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 новостей + картинка

Хак - расширенный вывод related и custom новостей + картинка

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

Итак первый представленный хак:

Advanced-Custom

Хак - расширенный вывод related и custom новостей + картинка

Назначение: Вывод новостей с превьюшками и определенным количеством символов в названии и в кратком содержимом через custom

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

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *