

Как поставить якорь для комментария в DLE 11
Новые теги появившиеся в DataLife Engine 11 наконец-то позволили добавить худо-бедно поддержку якорей для перехода к конкретным комментариям внутри публикации.
Для самых нетерпеливых пример кода:
в шаблоне comments.tpl для заголовка комментария пишем:
[aviable=lastcomments] {* отображает свое содержимое только при просмотре страницы /index.php?do=lastcomments *}
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<h3 style="margin-bottom: 0.4em;"><a href="{news-link}-id-{id}">{news-title}</a></h3>
</div>
[/aviable]
в ком же шаблоне в начале блока с комментариев добавляем
<a href="#comment-id-{id}" title="постоянная ссылка на комментарий"><span class="badge">#{id}</span></a>
Ну а теперь немного теории:
Онлайн-документация по шаблонам DLE на официальном сайте разработчиков выдает достаточно скудный набор поддерживаемых тегов. Полезных для создания якоря только два.
Идентификационный номер комментария
Выводит URL новости, которой принадлежит данный комментарий, при просмотре последних комментариев. При выводе комментариев в новости тег вырезается. Данный тег будет полезен при использовании пользовательского вывода комментариев и при показе последних комментариев.
А вот альтернативная база документации по DLE, проект dle-doc.ru указывает еще на один крайне полезный, но не описанный в официальной документации тег
Идентификационный номер комментария в БД
Именно этот тег позволяет реализовать ссылку на якорь к конкретному комментарию внутри полной новости.

<a href="#comment-id-{id}">#{id}</a>
пример #comment-id-114
Всем хорош данный метод, но и он увы не совершенен :(
Подобным образом не работают переходы к комментариям если они располагаются на второй и последующих страницах

пример #comment-id-260
Так-же он не сработает, если у вас включена динамическая загрузка комментариев.
Но даже такое решение - лучше, чем ничего.
0 Комментарии