Перейти к содержанию
addnews

[Решено] Вывод модуля на всех страницах

Рекомендуемые сообщения

Через модуль "рекомендуемые" вывел товар в в левой колонке. Как сделать чтобы на всех страницах сайта этот товар выводился в левой колонке? Какую схему поставить ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

схема category и home

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В моем модуле http://opencartforum...ndown-informer/ я даю инструкцию, как создать схему, при выборе которой, отображение модуля будет на каждой странице =DD

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В моем модуле http://opencartforum...ndown-informer/ я даю инструкцию, как создать схему, при выборе которой, отображение модуля будет на каждой странице =DD

качать модуль что бы получить инструкцию?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

схема category и home

Там еще 8 схем помимо продукт и категории. То есть, чтобы вывести на всех страницах сайта, приходится добавлять этот модуль для каждой схемы. А у меня в левой колонке 5 разных модулей. Категории, баннер, рекомендуемые и т.д. Некоторые из них раз в месяц изменяются. А каждый раз делать для 10 схем, это очень проблематично и приводит к путанице. Я думал что тема дефолт выводит на все страницы, но как оказалось, я заблуждался. Кто подскажет решение ?
  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

качать модуль что бы получить инструкцию?

=D у каждого свои технологии продаж)

По мне счетчик - очень грамотное решение. Поставив три дня назад счетчик на buynoni.ru мы продали за два дня в четыре раза больше, чем в предыдущую неделю. Это же основа маркетинга (предложение должно быть конкретно и ограничено по времени)... А бонусом к прекрасному модулю есть инструкция, как сделать универсальную схему =D

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вывод модулей идет в 4х файлах top, left, right, bottom

на примере top и вывода модуля modulename

foreach ($extensions as $extension) {

$modules = $this->config->get($extension['code'] . '_module');

if ($modules) {

foreach ($modules as $module) {

if ($module['layout_id'] == ($layout_id || $extension['code'] == 'modulename') && $module['position'] == 'content_top' && $module['status']) {

$module_data[] = array(

'code' => $extension['code'],

'setting' => $module,

'sort_order' => $module['sort_order']

);

}

}

}

}

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вывод модулей идет в 4х файлах top, left, right, bottom

на примере top и вывода модуля modulename

foreach ($extensions as $extension) {

$modules = $this->config->get($extension['code'] . '_module');

if ($modules) {

foreach ($modules as $module) {

if ($module['layout_id'] == ($layout_id || $extension['code'] == 'modulename') && $module['position'] == 'content_top' && $module['status']) {

$module_data[] = array(

'code' => $extension['code'],

'setting' => $module,

'sort_order' => $module['sort_order']

);

}

}

}

}

Это не создает новый лайаут. и придется каждый модуль прописывать.. =)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

создать новый layout и дописать его id

if (($module['layout_id'] == $layout_id || $module['layout_id'] == 16) && $module['position'] == 'column_left' && $module['status']) {

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проще пареной репы. С единственной оговоркой. позиция фиксировання будет.

Открываем вот это catalog\controller\common\column_left.php,

Перед строкой

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') {

Добавляем что то вроде этого

$this->children = array(
'module/cart'
);

где вместо cart - пишем имя нашего модуля.

После этого открываем тпл правой колонки

catalog\view\theme\default\template\common\column_left.tpl

И выводим в нем наш модуль либо снизу либо сверху списка модулей.

переменной вида $название файла с контроллером модуля

Вот как то так например

<?php if ($modules) { ?>
<div id="column-left">
<?php echo $cart; ?>
 <?php foreach ($modules as $module) { ?>
 <?php echo $module; ?>
 <?php } ?>
</div>
<?php } ?>

И наслаждаемся.

Во

  • +1 3

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пытаюсь поставить таким образом модуль "приветствие".

Пишет Notice: Undefined index: description in /home/e/ectetikru/shop_e/public_html/catalog/controller/module/welcome.php on line 8

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проще пареной репы. С единственной оговоркой. позиция фиксировання будет.

Открываем вот это catalog\controller\common\column_left.php,

Перед строкой

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') {
Добавляем что то вроде этого

$this->children = array(
'module/cart'
);
где вместо cart - пишем имя нашего модуля.

После этого открываем тпл правой колонки

catalog\view\theme\default\template\common\column_left.tpl

И выводим в нем наш модуль либо снизу либо сверху списка модулей.

переменной вида $название файла с контроллером модуля

Вот как то так например

<?php if ($modules) { ?>
<div id="column-left">
<?php echo $cart; ?>
  <?php foreach ($modules as $module) { ?>
  <?php echo $module; ?>
  <?php } ?>
</div>
<?php } ?>
И наслаждаемся.

Во

 

 

А если у меня в модуле HTML в админке прописано несколько подмодулей (так когда на него нажимаешь, можно несколько свободно кодируемых модулей создавать и каждому присваивать страницу на которой ему выводиться).

 

Так вот, если нужно вывести лишь 1 подмодуль из 3х на всех страницах сайта, а остальные 2 на определенных, то как быть? Можно ли дублировать HTML модуль, уникально его обозвать и встроить в него лишь 1 подмодуль?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пытаюсь поставить таким образом модуль "приветствие".

Пишет Notice: Undefined index: description in /home/e/ectetikru/shop_e/public_html/catalog/controller/module/welcome.php on line 8

Подобная проблема - при выводе другого модуля. Судя по всему данный способ не работает на новых версиях Опенкарта.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.