Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Решено] Разное оформление для модуля


kate1987

Recommended Posts

Здравствуйте. Использую Opencart 1.5.4 Для фильтрации есть модуль - Автоматический фильтр товаров 1.1.0, в котором можно создавать разные группы фильтров. Фильтр на странице категории я опубликовываю 2 раза, в левой и в правой колонке. В левой колонке - опции, в правой - атрибуты. Так вот, как сделать разное оформление для фильтра которой в левой колонке и для фильтра который в правой. Возможно с выбором разных tpl ? Может кто знает?

Надіслати
Поділитися на інших сайтах


По идее делаю проверку на позицию в tpl модуля

<?php <?php if($this->config->get('filter_'.$module.'_position')=='right'){ ?>
Одно оформление
<?php }else{  ?>
Другое оформление
<?php } ?>

, предварительно добавив в контроллере модуля

$this->data['module'] = $setting;

Но оно в любом случае пишет Другое оформление (

Надіслати
Поділитися на інших сайтах


В итоге получилось так) В контроллере

$this->data['setting'] = $setting;

В tpl файле

  <?php if (($setting['position'] == 'content_top') || ($setting['position'] == 'content_bottom')) { ?>
Одно оформление
<?php } else {  ?>
Другое оформление
<?php } ?>

Под разные версии по разному. Это решение для Opencart 1,5,4 подходит для любых Модулей. Для позиций 'content_bottom' и 'content_top' Спасибо всем за участие)

  • +1 1
Надіслати
Поділитися на інших сайтах


Для правой позиции так

 <?php if (($setting['position'] == 'column_right')) { ?>
Одно Оформление
<?php } else {  ?>
Другое
<?php } ?>

Аналогично для левой

Как то слишком сложно.

Шаблон модуля содержит разные наборы данных для каждого типа сайтбара или только оформление?

Если только оформление, то в контроллере нужно определение класса вида

if (($setting['position'] == 'column_right')) {
$this->data['sitebar_css'] = "column_right";
}

ну а в шаблоне в div внешнего контейнера добавляется класс

<div... class="<?php echo $sitebar_css; ?>">

и в соответствии с классом описывается стиль.

Надіслати
Поділитися на інших сайтах

Как то слишком сложно.

Шаблон модуля содержит разные наборы данных для каждого типа сайтбара или только оформление?

Предпологалось разное размещение содержимого блока фильтр. Доделаю пришлю скрин. Так будет виднее

Надіслати
Поділитися на інших сайтах


  • 3 years later...

Приветствую всех. Столкнулся с такой же задачей на Opencart 2.1, долго искал решение

1. В .tpl модуля прописываем условие:
 

<?php if ($module['position'] == 'content_bottom' || $module['position'] == 'content_top') { ?>
//add your code Here
<?php } ?>


2.В контроллере модуля .php пишем:
 

$data['module'] = $setting;


3.В контроллере позиции где предполагается выводить модуль catalog/controller/common/{content_bottom, content_top}

ищем строчку

$setting_info = $this->model_extension_module->getModule($part[1]);

добавляем после неё

$setting_info['position'] = basename(__FILE__, '.php');

Источник тут: http://stackoverflow.com/questions/27589492/check-module-position-in-opencart-2-0

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.