CUSTOM — тег, встроенный в CMS DLE, позволяющий выводить заданные нами новости в заданных нами параметрах. Т.е. появляется возможность создавать гибкие выборки по разделам и не только (см. скриншоты ниже).
Параметров настройки тега CUSTOM более, чем достаточно в самых неожиданных направлениях:
- направление сортировки;
- выбор категории;
- выбор нескольких категорий;
- пропуск новостей в выборке;
- вывод отдельных записей;
- страницы на которых выводить;
- отдельный шаблон;
- вывод записей по автору;
- многое другое;
Стандартными способами в DLE на главной выводится по умолчанию 10 новостей, шаблон к которым хранится в файле shortstory.tpl . Тег {CUSTOM} умеет выводить выбранные нами по параметрам выше новости по отдельному шаблону. Например, страница на скриншотах ниже состоит из семи отдельных выборок тегом {custom}.
С главной убран вывод коротких новостей и вместо них при помощи 10 строк кода и тега {custom} выведены выборки по некоторым разделам сайта.
Дополнительно в блоке популярное выведены конкретные номера статей, а так же с применением шаблона файла shortstory.tpl выведены пять последних записей
Скриншоты страницы на теге {custom}
Официальная документация по DLE и {custom}: http://dle-news.ru/.
Тег использует шаблоны по такому же принципу, как и короткие новости. Разберем структуру страницы со скриншотов выше.
Для удобства и упрощения понимания функционала тега {custom} рекомендую сверстать будущую страницу в обычном HTML файле и далее заняться ее пошаговым внедрением в DLE по инструкции ниже.
Переделываем главную страницу DLE
В первую очередь необходимо убрать на главной вывод данных по умолчанию (записи shortstory.tpl).
Скрываем content
Открыть файл {THEME}/main.tpl, найти в районе открытия BODY тег {content}. Обернуть его в следующий контейнер:
[not-aviable=main]{content}[/not-aviable]
Может случиться так, что данный тег уже содержит одну из вариаций NOT-AVIABLE. В таком случае дублировать его не нужно и достаточно новое правило отделить вертикальной линией — “|“, как в примере ниже:
[not-aviable=main|sitemap|members]{content}[/not-aviable]
Блок популярных записей
На скриншотах находятся в самом верху в количестве трех штук. Выводятся заданные id записей по следующему шаблону:
[aviable=main]
<div id="custom_title">Самые популярные</div>
{custom id="169,246,202" template="custom2"}
[/aviable]
Тег выведет статьи с id 169, 246, 202 и подставит для них шаблон custom2.tpl из папки шаблона. Шаблон еще проще:
<div id="custom2">
{short-story}<p>Читать подробнее [full-link]{title}[/full-link]</p>
</div>
Несложно догадаться, что в шаблоне нет ничего нового или необычного. Синтаксис аналогичен файлам shortstory.tpl, т.е. можно вывести автора, категорию, количество просмотров, комментариев и другое (см. пример выборки на шаблоне shortstory.tpl ниже).
Выборки по категориям
[aviable=main]
<div id="custom_title2">
<a href="/design/">Создание сайтов - последние 5 записей</a></div>
{custom category="3,26,9,14,8,11" limit="5" template="custom"}
[/aviable]
Выводит 5 (limit=”5″) новостей из выбранных категорий используя шаблон custom.tpl. Остальные параметры сортировки берутся из глобальных настроек. Таких блоков в шаблоне пять — т.е. код выше дублируется пять раз и заменяются лишь номера категорий. Разметка для custom.tpl следующая:
<div id ="custom1">
[full-link]<img src="{image-1}" title="{title}" /><br/>{title} [/full-link]
</div>
Вывод shortstory.tpl
[aviable=main]<div id="custom_title">Свежие записи сайта</div>
{custom category="1-20, 21-100" order="date" limit="5" template="shortstory"}
[/aviable]
Номера категорий задаются в интервале через знак тире. Возможны несколько интервалов, разделенных запятой. Код шаблона — файл shortstory.tpl.
Haha, shouldn't you be charging for that kind of kneewodgl?!
Спасибо огромное ! Долго искал эту информацию в интернете, нашел только на вашем сайте рабочую инструкцию.
Незачто! Сам долго разбирался, вот и написал статью!
Подскажите! а как быть если при выводе новостей кастомом, нужно чтобы не выводились посты, для которых снята галочка – "Не выводить на главной" ??
Скорей всего что никак. Еще раз просмотрел документацию по этому тегу и не нашел упоминаний вашей проблемы!
Добрый день,artemmian! Можете помочь с настройкой сайта на dle 10.1? за вознаграждение
Ответил на почте
Спасибо вам огромное, сделал получилось
У меня есть код новости из ВК,как мне его вставить в новость сайта,что бы показывался не сам код этой новости,а полноценная новость?
Например:
Не так
А хочу вот так
через доп. поле пробовали?
Привет!
А ка бы мне вставить {custom} между первым и вторым постами?
А ка бы мне вставить {custom} между первым и вторым постами?
как вариант, можно первый пост вывести отдельним кастомом, а короткие новости так же на кастоме, но минус первый пост)