Что нового

Бесплатно Хак для скрытия всего блока, содержащего cusom в случае пустой выборки (1 Viewer)

MrDeath

MrDeath

Местный
Проверенные
Регистрация
7 Июл 2021
Сообщения
186
Реакции
757
В DLE из коробки есть отличная реализация вывода новостей по заданным параметрам - custom. Думаю многие сталкивались с проблемой. Расскажу на примере стандартного шаблона. У нас есть такой блок
HTML:
    <div class="block top_block">
        <h4 class="title"><b>Популярное</b></h4>
        <ol class="topnews">
            {custom limit="3" category="10"}
        </ol>
    </div>
Ситуация следующая, выборка custom не дала никаких результатов, на сайте у нас остается в коде страницы такое
HTML:
    <div class="block top_block">
        <h4 class="title"><b>Популярное</b></h4>
        <ol class="topnews">

        </ol>
    </div>
Обычные пользователи видят надпись "Популярное", а ниже пустота.
Данный хак решает проблему, с его помощью можно оформлять начало и конец блока, содержащего custom при помощи параметров block_start и block_end в самом теге.
В block_start='...' мы помещаем часть блока до тега {custom}, в block_end='...' оставшуюся часть блока. Покажу вам на примере.
У меня был такой блок в шаблоне:
HTML:
    <div class="block top_block">
        <h4 class="title"><b>Популярное</b></h4>
        <ol class="topnews">
            {custom limit="3" category="10"}
        </ol>
    </div>
Заменил его на следующее
HTML:
{custom limit="3" category="1" block_start='<div class="block top_block"><h4 class="title"><b>Популярное</b></h4><ol class="topnews">' block_end='</ol></div>'}
 
Я думаю, лучше было бы сделать отдельные теги [custom] {custom ...} [/custom] с функцией вывода между ними информации, если он не пустой, по аналогии тегов, например - [related-news] {related-news} [/related-news].
 
Я думаю, лучше было бы сделать отдельные теги [custom] {custom ...} [/custom] с функцией вывода между ними информации, если он не пустой, по аналогии тегов, например - [related-news] {related-news} [/related-news].
Дело в том что в отличие от похожих новостей кастум используется больше одного раза. Не всё так просто. Вариантов несколько, я использую у себя этот уже давненько.
 
Ну и говно решение
 
У меня что-то этот способ не работает
 
Вот так выглядит на сайте , а код такой
Код:
{custom sequels="[xfvalue_sequels2]" template="sequels" limit="99" cache="yes"block_start='<div class="headerf">    <h2> Сиквелы и приквелы [catlist=4]к фильму[/catlist][catlist=2]к сериалу[/catlist][catlist=6]к мультфильму[/catlist] «{title}» </h2></div>
         <div class="scroll sliderfilm" >
            <div class="slider">
                <div class="related">' block_end='</div></div></div>'}
2023 03 14 10 09 32
 
попробуй так...
Код:
{custom sequels="[xfvalue_sequels2]" template="sequels" limit="99" cache="yes" block_start='<div class="headerf"><h2> Сиквелы и приквелы [catlist=4]к фильму[/catlist][catlist=2]к сериалу[/catlist][catlist=6]к мультфильму[/catlist] «{title}» </h2></div><div class="scroll sliderfilm"><div class="slider"><div class="related">' block_end='</div></div></div>'}
да, чет меня смущает это sequels="[xfvalue_sequels2]", вроде неизвестный тег для стандартного custom
 
попробуй так...
Код:
{custom sequels="[xfvalue_sequels2]" template="sequels" limit="99" cache="yes" block_start='<div class="headerf"><h2> Сиквелы и приквелы [catlist=4]к фильму[/catlist][catlist=2]к сериалу[/catlist][catlist=6]к мультфильму[/catlist] «{title}» </h2></div><div class="scroll sliderfilm"><div class="slider"><div class="related">' block_end='</div></div></div>'}
да, чет меня смущает это sequels="[xfvalue_sequels2]", вроде неизвестный тег для стандартного custom
Так, кстати работает пробелы походу мешали.
 
Спасибо, не знал про такое решение :)
 

Пользователи, просматривающие данную тему

Верх