модуль баннеры

Быстрый переход:
Аватар

asamakin

Member
#1   16 ноября 2014 00:01

Приветствую!

Все сделал по мануалу,категории,клиееты,баннер загрузил. В header  вставляю тэг виджета и ничего не происходит :(

  Помогите пожалуйста!

Алексей

Алексей

Administrator
#2   16 ноября 2014 19:19

Кеш не включен? Может страница закеширована?
Анти баннер на компьютере?

Быстрота и надежность... Ну и красота тоже, конечно

Витальев Вмиалий

Витальев Вмиалий

Member
#3   19 сентября 2016 23:38

Здравствуйте.

Возьметесь доработать этот модуль? Хорошо было бы,что бы любой пользователь мог со своего аккуанта сам ставить баннер и оплачивать с баланса.А так же просматривать статистику по нему.

Алексей

Алексей

Administrator
#4   20 сентября 2016 11:26

Добрый день!

Да, это возможно. Но не прямо сейчас. Сейчас я работаю над другим проектом. И не обязательно на каждой странице, где упоминается этот модуль, задавать один и тот же вопрос.

Быстрота и надежность... Ну и красота тоже, конечно

Витальев Вмиалий

Витальев Вмиалий

Member
#5   21 сентября 2016 13:58

Понял,приношу свои извинения.Давайте я тогда скину Вам свои контакты (почту например) и когда Вы освободитесь,то обсудим стоимость работы.

Аватар

thi

Member
#6   10 апреля 2017 12:17

Добрый день.

Спасибо за модуль. Заявлены интересные возможности. Но ума моего не хватило его настроить.

Что означают при прописывании категорий баннеров такие поля? Что в них писать?

Путь:  (обязательно)
Код:  (обязательно)
Заголовок:  (обязательно)
Описание:
Иконка (URL):

 

Алексей

Алексей

Administrator
#7   10 апреля 2017 18:05

API категорий един для всех модулей. Эти поля означают тоже самое, что и для любых других категорий:

код - уникальный цифровой или цифро-буквенный код категории. Slug или как его еще называют alias.

путь используется для построения дерева категорий. Уровни вложенности разделяются точками. При создании вложенных категорий, родительские категории уже должны существовать.

Заголовок - название категории.

Описание и иконка - соотвественно описание и иконка для категории. Они необязательные и на вывод особо никак не влияют, но Вы можете использовать их в своих шаблонах.

Быстрота и надежность... Ну и красота тоже, конечно

Аватар

thi

Member
#8   11 апреля 2017 09:46

Правильно ли я понял, что при создании категории в указанных полях не нужна привязка к папкам сайта? Т.е. можно заполнить примерно так:

Путь: global
Код: gl1
Заголовок: левый под календарем
Описание: Под календарем в левом столбце на каждой странице
Иконка (URL): 

 

Я правильно понял?

 

И если правильно понял, то почему при установке в tpl файл кода

<?=brs_controller_Widget::banner('gl1', 2)?>

созданный баннер не отображается, а при просмотре кода сформированной страницы виден вставленный код, а не код баннера? Кэш чищен, банерорезка отключена.

Что я делаю не так?

Отредактировано: thi (11.04.2017 10:53, 10 месяцев назад)
Алексей

Алексей

Administrator
#9   15 апреля 2017 10:50

Встроенный шаблонизатор Cotonti не позволяет так просто использовать PHP-код в TPL-файлах. По этому нужно использовать Call-back функцию banner_widget() которая является оберткой для вызова brs_controller_Widget::banner().

В TPL-файл нужно вставить код:

{PHP|banner_widget('gl1', 2)}

 

В шаблонизаторе View вполне можно использовать и

<?=brs_controller_Widget::banner('gl1', 2)?>

Будет работать.

Быстрота и надежность... Ну и красота тоже, конечно

Аватар

katalog2003

Member
#10   15 июня 2017 01:03

Здравствуйте вставляю в tpl но ни чего не происходит

                   
        <div id="header" class="row">
            <div class="span4">
                <div class="logo"><a href="{PHP|cot_url('index')}" title="{PHP.cfg.maintitle} {PHP.cfg.separator} {PHP.cfg.subtitle}"><img src="themes/{PHP.theme}/img/logo.png"/></a></div>
            </div>
            <div class="span5">
                    
            </div>
{PHP|banner_widget('gl1', 2)}
            <div class="span3 textright paddingtop10">
                <!-- BEGIN: I18N_LANG -->
                    <!-- BEGIN: I18N_LANG_ROW -->
                    <a href="{I18N_LANG_ROW_URL}" class="{I18N_LANG_ROW_CLASS}"><img src="images/flags/{I18N_LANG_ROW_FLAG}.png"/></a> &nbsp;
                    <!-- END: I18N_LANG_ROW -->
                <!-- END: I18N_LANG -->
            </div>

Может что ни так

Добавлено 12 минут спустя:

Разобрался спасибо все ок не понял  ('gl1', 2)))))
Отредактировано: katalog2003 (15.06.2017 01:15, 8 месяцев назад)
Липницки Андрей

Липницки Андрей

Member
#11   17 января 2018 06:09

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

Что то наподобии
<!-- IF {PHP.item.item_city|banner_widget('$this',1)} != '' -->
{PHP.item.item_city|banner_widget('$this',1)}
<!-- ELSE -->
Такого банера еще не создано - тут предложение купить
<!-- ENDIF -->

В любом городе есть его числовой код от 1 до 1000 к примеру. В админке если в городе код 110 и в нем есть уже реклама то создан код для банера 110 и 

{PHP.item.item_city|banner_widget('$this',1)} работает и его выводит

А если еще нет такого банера то выводим что можно бы его и купить. Но проверить не понял как на уже созданность.

Алексей

Алексей

Administrator
#12   18 января 2018 09:52

Как вариант - попробуйте в php файле темы реализовать функцию с нужным функционалом и вывести его в шаблоне.

Быстрота и надежность... Ну и красота тоже, конечно

Липницки Андрей

Липницки Андрей

Member
#13   18 января 2018 17:41

Alex спасибо, пробую разбираться.
Расскажите про функционал связанный с banner_queries подробнее.
Может для примера укажите как делать 1-2-3 запроса (как составлять, сам синтаксис), что можно с этим делать. Cпасибо!

Алексей

Алексей

Administrator
#14   25 января 2018 23:04

Пример можно посмотреть в виджете: modules/brs/controller/Widget.php

Подробнее про выборку можно почитать тут. Раздел "Условия для выборки".

В самом постейшем случае можно использовать код для выборки массива объектов:

brs_model_Banner::findByCondition([['SQL', 'условие, соотвествующее SQL - синтаксису WHERE']], $count, $offset, ['title', 'asc']);

Для выборки одного объекта использовать метод fetchOne(), для получения количества - метод count().

Как вариант в Вашем случае, если баннеров не много, то можно выводить баннер, если он есть, а если нет то на его месте показывать баннер "Разместите здесь вашу рекламу", который добавляется как и обычный баннер. Как только баннер заказали - этот просто отключаете.

Быстрота и надежность... Ну и красота тоже, конечно