Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Сделать отдельный шаблон для всех комментариев lastcomments?

Сделать отдельный шаблон для всех комментариев lastcomments?


     20.07.2021    datalife engine 14.3, последние комментарии    Общие вопросы, Шаблоны (TPL)    157

вопрос
Добрый день.

Есть страница /index.php?do=lastcomments (последние комментарии)
Она подхватывает комментарии с comments.tpl. По итогу - простая страница со списком комментариев.
Хочется оформить эту страницу, из за того что она просто подхватывает комментарии, страница выглядит ужасной.
Чисто список комментариев не более. Можно как-то её оформить отдельным tpl файлом?

Попытался поискать покопается в php файле: show.short, lastcomments.php. Но успехом не увенчалось.
Буду очень рад если поможете!
Сделать отдельный шаблон для всех комментариев lastcomments?

Ответа пока нет


12 комментариев

lutskboy
Эксперт

lutskboy - 20 июля 2021 16:04 -

в
engine\modules\lastcomments.php

есть строка
$comments->build_comments('comments.tpl', 'lastcomments' );

меняем на свой шаблон и все. лучше сделать через плагины

Sokolovsii_dle
Юзер

Sokolovsii_dle - 20 июля 2021 18:17 -

Уже делал. Не выходит. comments.tpl отвечает за комментарий.
Если его меняю на своё, то есть обертка + верстка (comments.tpl) Он дублирует все это дело как комментарии.

*Мне нужно всего лишь оформить страницу, чтобы список был красивый. А так, чисто простой список комментариев

TeraMoune
Эксперт

TeraMoune - 20 июля 2021 18:36 -

Sokolovsii_dle,
Ну так пользуйтесь тегами aviable и not-aviable, изолируйте {content} от раздела lastcomments. В блоке aviable=lastcomments подключите отдельный шаблон через include file в котором будет сам тег {content} и другая вёрстка.

Sokolovsii_dle
Юзер

Sokolovsii_dle - 21 июля 2021 01:04 -

Эх. Если бы было все так легко. Дело в том, что DLE формирует - Один комментарий от commentes.tpl. Если у меня 5 комментариев всего, то он формирует 5 раз код, который в commentes.tpl. Вот вам и список выход. Тут и проблема. Если я, {content} изолирую от lastcomments, и сделаю по отдельности. То есть, {content} изолирую, и подтягиваю свой код + {content} = оборачиваю {content} в свой HTML, и тут формируется страница, которую он как раз формирует как один комментарий. Вместо красивой формы со всеми комментариями. Я получаю 5 блоков, в каждом по 1 комментарию. Такая вот история выходит.

Может что-то упустил.. Работаю с DLE 2 года, видел разные проблемы, но чтобы подобное.. Меня вводит в ступор, как только не выкручивался. Устал уже думать как решить эту вроде простую, но в тоже время - сложную задачу.

redissx
Юзер

redissx - 20 июля 2021 20:08 -

TeraMoune, все делается еще проще прямо в comments.tpl с помощью aviable=lastcomments и not-aviable

TeraMoune
Эксперт

TeraMoune - 20 июля 2021 23:38 -

Речь не о разметке шаблона comments.tpl, а о разметке за пределами группы комментариев. То, что находится по обе стороны тега {content}.

Sokolovsii_dle
Юзер

Sokolovsii_dle - 21 июля 2021 01:38 -

Спасибо что ответили. Да вот, проблема все же не такая простая.

Пытался в commentas.tpl:

изолировать commentas.tpl (его контент)
и сделать свой код с контентом. То есть - [available=lastcomments ] HTML {content} /HTML [/available] (обернул) и вышло тоже самое, что выше написал.

Может конечно я что-то упуская, это не исключено.

TeraMoune
Эксперт

TeraMoune - 21 июля 2021 05:29 -

Sokolovsii_dle,
Покажите полностью весь код используемый (размещённый в теге code, не весь шаблон, а лишь то что прописываете)

Sokolovsii_dle
Юзер

Sokolovsii_dle - 21 июля 2021 13:39 -

Хотел весь код прикрепить. Да сайт ругается, много символов.

[not-available=lastcomments] 
код comments.tpl
[/not-available]

[available=lastcomments]
<div class="page-sys">
  <section class="section">
    <div class="wrp-min block-list">
      <div class="block b-comments">
        <div class="b-head">
          <h1 class="section-title"><i class="s-purple c-icon">
            <svg width="24" height="24"><use xlink:href="#i__coms"></use>
          </svg</i>Комментарии</h1>
          <a class="btn btn-telegram" href="#" target="_blank" rel="nofollow noopener">
            <i class="c-icon s-telegram"><svg width="18" height="18"><use xlink:href="#i__telegram"> 
   </use></svg></i><span>Телега</span>
          </a>
        </div>
        <div class="b-cont">
          <form method="post" name="dlemasscomments" id="dlemasscomments">
            <div id="dle-comments-list">
              <div id="comment"></div>
              {content} // p.s тут код не тег (comments.tpl)
            </div>
          </form>
        </div>
      </div>
    </div>
  </section>
</div>
[/available]

TeraMoune
Эксперт

TeraMoune - 21 июля 2021 22:02 -

Хотел весь код прикрепить. Да сайт ругается, много символов.

Так я же и не просил весь код

Нужно что-то вроде этого.

main.tpl

//Подключение файла lastcomments.tpl
[available=lastcomments] 
{include file="lastcomments.tpl"}
[/available]

//Основная разметка обворачивающая {content}
[not-available=lastcomments]
<--HTML_MAIN-->
     {content}
<--HTML_MAIN-->
[/not-available]


lastcomments.tpl

//Разметка обворачивающая тег {content} для раздела lastcomments
<--HTML_lastcomments-->
     {content}
<--HTML_lastcomments-->


Или можно проще, добавить через те же available и not-available, класс родительскому блоку и стилизовать через него комментарии.

Sokolovsii_dle
Юзер

Sokolovsii_dle - 23 июля 2021 04:55 -

Сделал таким образом:
main.tpl:
<!-- Основа контент -->
[not-available=lastcomments]
{content}
[/not-available]
<!-- Все комментарии -->
[available=lastcomments]
<--HTML-верстка-->
{content}
<--HTML-верстка-->
[/available]
<!-- / все комментарии -->
lastcomments.tpl не подключал, не было в этом необходимости.

Cпасибо за подачу идеи.

p.s Был бы очень рад. Если чуть подробней расскажите про - "Или можно проще, добавить через те же available и not-available, класс родительскому блоку и стилизовать через него комментарии.". Хотел ещё 2 страницы отдельные стилизовать, но если делать как я сделал тут. Думаю будет слишком сильный хаус в main.tpl

Спасибо, что нашли время на мой вопрос. С Уважением!

TeraMoune
Эксперт

TeraMoune - 23 июля 2021 09:12 -


//Родительский блок, с двумя классами, на главной только class1, а в разделе будет class1 class2
<div class="class1[available=lastcomments] class2[/available]">

</div>

Думаю будет слишком сильный хаус в main.tpl

Да если много всего то лучше по отдельным файлам раскидать

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх