
Несколько лет назад использовал модуль seasons от LisER. Но всё меньше стараюсь использовать различного рода хаков, и если есть возможность это сделать стандартными средствами DLE - то лучше этим и воспользоваться. Использовал одно время тег custom, но сортировка в нем неправильная, если >10 сезонов (на скрине - симпсоны).
В полной новости в месте вывода прописываем:
Код:
{custom xfields="[xfvalue_id_kinopoisk]" template="serial_all_links" limit="35" order="title" sort="asc" cache="yes"}
Шаблон serial_all_links.tpl оформляете по своему усмотрению. Всё бы ничего, но в данном способе есть один минус, его видно на скрине:

Как видно, если сезонов больше 10, то сортировка будет идти 1 10 11... 2 3 4 и т.д...
Несколько лет висел данный код с неправильной сортировкой, да и перелинковка чисто для ПС, но потом решил подправить и сделать это тегом custom к сожалению не получилось.
Здесь на помощь пришёл модуль DLE-BlockPro от ПафНутиЙ. Стоит заметить, что раньше он был платный, сейчас его может скачать любой желающий.
На официальной странице модуля есть достаточное количество примеров работы с модулем, чтобы разобраться в нём без особых навыков программирования.
В итоге тег custom для перелинковки я заменил на:
Код:
{include file="engine/modules/base/blockpro.php?template=blockpro/serial_all_links&limit=35&xfSearch=id_kinopoisk|[xfvalue_kpid]&sort=xf|nurseason&order=old"}
xf|nurseason - это доп поле nurseason, в котором указан сезон, который выводится в открытой новости.
blockpro/serial_all_links - шаблон serial_all_links.tpl в папке blockpro шаблона.
xfSearch=id_kinopoisk - это доп поле ID кинопоиска, для выборки новостей с одинаковым значением.
У меня в итоге содержимое шаблона blockpro/serial_all_links.tpl получилось таким:
Код:
{var $newsCount = $list|count}
{if $newsCount > 1} {foreach $list as $el} <a href="{$el.url}" class="seriallink button">{$el.xfields.season}</a> {/foreach}
{/if}
В результате за несколько лет я наконец таки настроил нормальную сортировку перелинковки сериалов, если у сериала больше 10 сезонов (просто не хотел покупать отдельный модуль, потому что через кастом, хоть и криво, но перелинковка для ПС выводилась в каждом сезоне).
Источник
Последнее редактирование:
