JohnCMS | Разработка следующей версии

Тема закрыта
44.17K
.
Кадило крутится, лавэха мутится
# cuHyc (09.01.2020 / 18:07)
а если мне в default нужно прописать условие для news/index

<?php if ($this->layout('news::news/index'): ?>

- не прокатывает, ругается на синтаксис
ну то есть у меня по сценарию кнопки доб
Переменную с кнопками сделай. Массив или строку, как больше нравится и передавай её в основной шаблон, дальше уже проверяй если переменная есть, то выводи, нет - не выводи. Сделать по аналогии с переменной $title можешь.
.
Бывший человек
# Simba (09.01.2020 / 18:11)
Переменную с кнопками сделай. Массив или строку, как больше нравится и передавай её в основной шаблон, дальше уже проверяй если переменная есть, то выводи, нет - не выводи. Сделать по аналогии с перем
товарисч, я немножечко не по теме, но как вот эту разметку
<div class="svf-link">
        <a href="/news/add/" title="Добавить новость"><i class="fad fa-pen"></i></a>
        <a href="/news/clean/" title="Очистить"><i class="fad fa-sync-alt"></i></a>
    </div>

запхать в переменную...?
к примеру я пишу так
<?php $this->layout('system::layout/default', [
    'title'      => _t('News'),
    'page_title' => _t('News'),
    'icons_adm' => 'ну как бы сюда разметку не получается воткнуть'
]) ?>
.
Кадило крутится, лавэха мутится
Добавлено: 09.01.2020 / 18:39
# cuHyc (09.01.2020 / 18:29)
товарисч, я немножечко не по теме, но как вот эту разметку

<div class="svf-link">
<a href="/news/add/" title="Добавить новость"><i class="fad fa-pen"></i></a>
<a href="/news/clea
Получится.

Добавлено: 09.01.2020 / 18:41
<?php $this->layout('system::layout/default', [
    'title'      => _t('News'),
    'page_title' => _t('News'),
    'icons_adm' => $this->fetch('news::buttons'),
]) ?>

Можно ещё так.
Создаешь доп файл buttons.phtml с кнопками и получишь нужный результат.
.
¯\_(ツ)_/¯
Simba, ответ на Ваше сообщение (09.01.2020 / 01:01): Круто получается))
.
Бывший человек
Simba, но чё то не воспринимается как разметка
Прикрепленные файлы:
.
╭∩╮ (`-`) ╭∩╮
Добавлено: 09.01.2020 / 19:19
# cuHyc (09.01.2020 / 18:07)
а если мне в default нужно прописать условие для news/index

<?php if ($this->layout('news::news/index'): ?>

- не прокатывает, ругается на синтаксис
ну то есть у меня по сценарию кнопки доб
У тебя сама логика неверна.
Данное условие ты прописываешь в шаблоне.
А вызвынный шаблон может быть ТОЛЬКО (!!!) с именем news::news/index и никак иначе.
Если ты один и тот же шаблон вызываешь из разных скриптов (что вполне возможно, чтоб избежать дублирования кода) и тебе важно В ШАБЛОНЕ знать, откуда он был вызван, используй доп. переменную, которую передаешь из скриптов в шаблон.

Добавлено: 09.01.2020 / 19:20
У шаблона не может быть несколько имен.
Это как в классах РНР, есть неймспейс и есть имя класса. Двоих не дано.

Добавлено: 09.01.2020 / 19:28
Простой пример:
Мне надо было в сайдбаре (менюхе) админки подсветить тот пункт, который в настоящий момент вызван. Конечно можно было бы воспользоваться данными из роутера, но поступил проще...
1) В шаблон может быть передана (к примеру) переменная $usr_menu, которая является массивом.
2) В раскрывающемся блоке сайдбара я проверяю, есть ли эта переменная, если есть, раскрываю блок.
3) В конкретном пункте меню, я проверяю, есть ли эта переменная с заданным ключем. Если есть, подсвечиваю пункт как активный.
4) Ну и в конкретном шаблоне модуля, я передаю в шаблон нужную переменную, чтоб подсветить нужный пункт менюхи..
.
Бывший человек
AlkatraZ, если честно - нихрена не понял но как бы сейчас уже вопрос в другом - почему в местно разметки - текст выводит - раз выводит значит путь верно прописан
.
╭∩╮ (`-`) ╭∩╮
# cuHyc (09.01.2020 / 19:29)
AlkatraZ, если честно - нихрена не понял но как бы сейчас уже вопрос в другом - почему в местно разметки - текст выводит - раз выводит значит путь верно прописан
А сразу и не поймешь.
Там надо некоторое время, чтоб перестроить собственное мышление на шаблоны, которые в свою очередь могут иметь как родителей (layout) так и потомков, в виде мелких (и не очень) инклюдов.
Постепенно разберешься.
Будут вопросы - спрашивай.
.
Кадило крутится, лавэха мутится
# cuHyc (09.01.2020 / 19:29)
AlkatraZ, если честно - нихрена не понял но как бы сейчас уже вопрос в другом - почему в местно разметки - текст выводит - раз выводит значит путь верно прописан
Потому что убери $this->e()
Это экранирование
.
Бывший человек
# AlkatraZ (09.01.2020 / 19:32)
Будут вопросы - спрашивай.
ну пока вот этот вопрос встал...
ну это как бы зависимость - если я захочу в модулях по разному выводить заголовки... в данном моменте у меня в новостях в блоке с заголовком - кнопки добавит\очистить
forum/index.php?act=show_post&id=551619
Всего: 1376
Кураторы: AlkatraZ