Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#126 2014-05-26 11:10:19

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: Как сделать блоки используя Twig ?

Neo, уточни вопрос, лучше с примерами.

Не в сети

#127 2014-06-12 13:23:09

Neo
Участник
Откуда SPB, Russia
Зарегистрирован: 2010-01-04
Сообщений: 463
Рейтинг :   

Re: Как сделать блоки используя Twig ?

{% if isHandler('news:main') %}
   только на главной
{% endif %}

Каким условием нужно добавить такой вывод на главной, чтобы не выводить на постраничках главной?

Не в сети

#128 2014-06-13 21:09:45

Neo
Участник
Откуда SPB, Russia
Зарегистрирован: 2010-01-04
Сообщений: 463
Рейтинг :   

Re: Как сделать блоки используя Twig ?

Ау, ребят, ну очень надо...

Не в сети

#129 2014-06-17 20:09:03

Neo
Участник
Откуда SPB, Russia
Зарегистрирован: 2010-01-04
Сообщений: 463
Рейтинг :   

Re: Как сделать блоки используя Twig ?

Есть тут кто живой?

Не в сети

#130 2014-06-18 15:20:24

easmik
VIP забанил этого пользователя.
Зарегистрирован: 2011-02-01
Сообщений: 1,031
Рейтинг :   37 

Re: Как сделать блоки используя Twig ?

Neo, тоже озадачивался такой возможностью, но вариантов исполнения не нашел

Не в сети

#131 2014-06-18 15:25:50

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Как сделать блоки используя Twig ?

в поиске есть

Не в сети

#132 2014-06-18 20:31:15

Neo
Участник
Откуда SPB, Russia
Зарегистрирован: 2010-01-04
Сообщений: 463
Рейтинг :   

Re: Как сделать блоки используя Twig ?

infinity237 пишет:

в поиске есть

Так напиши здесь -) Возможно не только мне и easmik полезно будет. Задача-то нужная: на первой множество плагинов вешается как правило, и получается, что всё это хозяйство дико дублируется в постраничках. Результат: такое дублирование отпугивает Яндекс (проверил).
Я пробовал несколько вариантов из темы, но не проходили почему-то. Уже думаю не выводить из-за этого новости на главной. SoS!

Изменено Neo (2014-06-18 20:39:17)

Не в сети

#133 2014-06-18 20:56:39

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Как сделать блоки используя Twig ?

дак мне это не нужно.
а если вы не умеете пользоваться поиском, то это ваши проблемы.

Не в сети

#134 2014-06-19 00:02:29

Neo
Участник
Откуда SPB, Russia
Зарегистрирован: 2010-01-04
Сообщений: 463
Рейтинг :   

Re: Как сделать блоки используя Twig ?

Что ж, и за такую подсказку спасибо. Ну, наши проблемы рано или поздно поправимы. smile
А вот твои, infinity237, увы, нет. В общем-то, другого ответа от тебя и не ожидал, спросил так, на всякий случай, а вдруг хамить не будешь, осознаешь...

Не в сети

#135 2014-06-19 11:23:17

Neo
Участник
Откуда SPB, Russia
Зарегистрирован: 2010-01-04
Сообщений: 463
Рейтинг :   

Re: Как сделать блоки используя Twig ?

easmik пишет:

Neo, тоже озадачивался такой возможностью, но вариантов исполнения не нашел

Вот, подобрал, работает:

{% if isHandler('news:main') and (handler.params.page < 2) %}
   только на главной без её постраничек
{% endif %}

Изменено Neo (2014-06-19 11:23:59)

Не в сети

#136 2015-08-09 14:04:13

slor
Участник
Зарегистрирован: 2015-06-25
Сообщений: 37
Рейтинг :   
Сайт

Re: Как сделать блоки используя Twig ?

Как сделать чтобы определённый блок показывался только незалогиненым посетителям ?

Не в сети

#137 2015-08-09 14:48:23

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Как сделать блоки используя Twig ?

slor пишет:

Как сделать чтобы определённый блок показывался только незалогиненым посетителям ?

На старом шаблонизаторе:

[is-logged][/is-logged] - содержимое блока выводится в случае, если страница показывается залогиненному посетителю
[isnt-logged][/isnt-logged] - содержимое блока выводится в случае, если страница показывается незалогиненному посетителю

На twige:

{% if  (global.flags.isLogged) %}здесь блок для зареганных{% endif %}
{% if  not (global.flags.isLogged) %}здесь блок для незареганных{% endif %}

Не в сети

#138 2015-08-14 12:08:20

phoboss
Участник
Зарегистрирован: 2011-06-01
Сообщений: 43
Рейтинг :   

Re: Как сделать блоки используя Twig ?

infinity237 пишет:
slor пишет:

Как сделать чтобы определённый блок показывался только незалогиненым посетителям ?

На старом шаблонизаторе:

[is-logged][/is-logged] - содержимое блока выводится в случае, если страница показывается залогиненному посетителю
[isnt-logged][/isnt-logged] - содержимое блока выводится в случае, если страница показывается незалогиненному посетителю

На twige:

{% if  (global.flags.isLogged) %}здесь блок для зареганных{% endif %}
{% if  not (global.flags.isLogged) %}здесь блок для незареганных{% endif %}

Будет ли работать для групп пользователей? Например:

{% if  (global.flags.isAdmin) %}здесь блок для админа{% endif %}

Изменено phoboss (2015-08-14 12:08:36)

Не в сети

#139 2015-08-14 13:24:59

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Как сделать блоки используя Twig ?

Сам же можешь посмотреть доступные флаги:

{{ debugValue(global.flags) }}

По теме, давно уже обсуждалось: http://ngcms.ru/forum/viewtopic.php?id=3663

Не в сети

#140 2015-12-21 22:57:35

SFproG
Участник
Откуда Тюмень
Зарегистрирован: 2010-08-01
Сообщений: 132
Рейтинг :   
Сайт

Re: Как сделать блоки используя Twig ?

Подскажите, как правильно вывести дочерние категории плюс список новостей под каждой. Что-то, типа, этого:

{% for entry in getCategoryTree(':1') %}
        {% if(entry.level == '1') %}
        {{ entry.cat }}<br />
        {{ entry.news }}<br /> <!--Здесь что-то правильное нужно написать-->
        {% endif %}
{% endfor %}

Не в сети

#141 2015-12-22 01:14:59

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Как сделать блоки используя Twig ?

Где вывести то? В каком шаблоне и на какой странице?

Не в сети

#142 2015-12-22 08:04:02

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: Как сделать блоки используя Twig ?

Ему нужен функционал типа как в плагине sitemap,я так понял,то есть при заходе в категорию выводились подкатегории и оглавление новостей этих подкатегорий

Не в сети

#143 2015-12-22 11:17:42

SFproG
Участник
Откуда Тюмень
Зарегистрирован: 2010-08-01
Сообщений: 132
Рейтинг :   
Сайт

Re: Как сделать блоки используя Twig ?

infinity237 пишет:

Где вывести то? В каком шаблоне и на какой странице?

Везде, где угодно. Например, в news.table


irbees2008 пишет:

Ему нужен функционал типа как в плагине sitemap,я так понял,то есть при заходе в категорию выводились подкатегории и оглавление новостей этих подкатегорий

Да, при заходе в категорию я должен видеть список подкатегорий и их новостей (заголовок, краткое содержание и др.)

Типа, как здесь мне нужно: http://sitodel.esy.es/produktsiya-i-uslugi/11-stoiki/17-stoiki

Не в сети

#144 2015-12-22 12:19:19

Zemlemer
Участник
Откуда Украина
Зарегистрирован: 2012-07-27
Сообщений: 271
Рейтинг :   25 
Сайт

Re: Как сделать блоки используя Twig ?

1. вывод новостей - делать через xnews. Вот код, который выберет новости из текущей категории:

{{ callPlugin('xnews.show', {'categories' : category.id}) }}

2. в параметре categories нужно передать список подкатегорий текущей категории. Проблема в том, что такой список в шаблоне news.table.tpl  не формируется smile

Возможно, есть решение на Twig-е, но импортировать переменную entries из news.categories.tpl в news.table.tpl у меня не получилось.
Так что, думаю, надо плагин писать.

Не в сети

#145 2015-12-22 16:33:50

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Как сделать блоки используя Twig ?

Если на 2 уровнях:

{% if (not isHandler('news:main')) and (category.level == 0) %}
    {% for entry in getCategoryTree(category.id) %}
         {% if (entry.level == (category.level+1)) %}
            <h3><a href="{{ entry.link }}">{{ entry.cat }} {{ entry.id }}</a></h3>
            {{ callPlugin('xnews.show', {'categories' : entry.id}) }}
         {% endif %}
    {% endfor %}
{% else %}
    {% for entry in data %}
    {{ entry }}
    {% else %}
    <div class="ng-message">
        {{ lang['msgi_no_news'] }}
    </div>
    {% endfor %}
    {{ pagination }}
{% endif %}

Не в сети

#146 2015-12-23 08:22:45

SFproG
Участник
Откуда Тюмень
Зарегистрирован: 2010-08-01
Сообщений: 132
Рейтинг :   
Сайт

Re: Как сделать блоки используя Twig ?

Спасибо всем! Получилось то что нужно. Вставил в news.table.tpl:

    {% for entry in getCategoryTree(':1') %}
         {% if (entry.level == '2') %}
         
            {{ entry.cat }}<br />
            {{ callPlugin('xnews.show', {'categories' : entry.id, 'template' : 'public1'}) }}<br />
            
         {% endif %}
    {% endfor %}

Не в сети

#147 2015-12-24 10:25:44

SFproG
Участник
Откуда Тюмень
Зарегистрирован: 2010-08-01
Сообщений: 132
Рейтинг :   
Сайт

Re: Как сделать блоки используя Twig ?

Проблему заметил одну, используя способ выше. xnews выводит только 10 новостей, хотя в настройках указано намного больше.
Это глюк плагина?


=========

Нашел проблему. В файле xnews.php строка 188:

 $showCount	= ($params['count'] > 0) ? intval($params['count']) : 10;

Число 10 заменил на нужное.
Видимо, вместо числа переменная должна стоять.

Изменено SFproG (2015-12-24 10:32:23)

Не в сети

#148 2015-12-24 12:22:47

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Как сделать блоки используя Twig ?

Нет там никакого бага.
'count': '3' - должно работать.

Не в сети

#149 2015-12-24 15:47:34

Zemlemer
Участник
Откуда Украина
Зарегистрирован: 2012-07-27
Сообщений: 271
Рейтинг :   25 
Сайт

Re: Как сделать блоки используя Twig ?

SFproG пишет:
 $showCount	= ($params['count'] > 0) ? intval($params['count']) : 10;

если не указано count, по умолчанию вывести 10 новостей.

Вот пример передачи нескольких параметров в xnews:

{{ callPlugin('xnews.show', { 'categoryMode' : 0, 'categories' : '2', 'template' : 'discounts', 'count' : '3', 'order' : 'last'}) }}

Изменено Zemlemer (2015-12-24 15:47:51)

Не в сети

#150 2015-12-24 17:40:55

SFproG
Участник
Откуда Тюмень
Зарегистрирован: 2010-08-01
Сообщений: 132
Рейтинг :   
Сайт

Re: Как сделать блоки используя Twig ?

Zemlemer, понятно все. Просто в админке плагина установка кол-ва новостей не работает у меня. Выставил 100, например, все равно 10 штук отображает.

Не в сети

Подвал раздела

Работает на FluxBB