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

Вывод нескольких модулей рекомендуемые на одной странице


Recommended Posts

Добрый день! Столкнулся со следующим: нужно вывести несколько модулей "рекомендуемые" на главной странице, при выводе происходит следующее: самый верхний модуль отображается корректно ,все последующие выводятся  некорректно в частности,  - не подгружают carousel, т.е. просто выводятся во всю страницу.

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


нужно добавить счет модуля

после function index() {

static $module = 0;

 

в конце перед return добавить $data['module'] = $module++;

 

в выводе модуля на сайт к id модуля добавить переменную {{ module }} или <?= $module ?> в зависимости от версии Опенкарта

и внизу в скрипт карусели так же добавить к имени

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


57 minutes ago, AUSS said:

нужно добавить счет модуля

после function index() {

static $module = 0;

 

в конце перед return добавить $data['module'] = $module++;

 

в выводе модуля на сайт к id модуля добавить переменную {{ module }} или <?= $module ?> в зависимости от версии Опенкарта

и внизу в скрипт карусели так же добавить к имени

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

 

версия opencart 2.1. как добавить переменную не знаю (

 

еще один нюанс, -может дело в шаблоне , использую fastfood

 

 

<?php
class ControllerModuleCarousel extends Controller {
    public function index($setting) {
        static $module = 0;

        $this->load->model('design/banner');
        $this->load->model('tool/image');

        $this->document->addStyle('catalog/view/javascript/jquery/owl-carousel/owl.carousel.css');
        $this->document->addScript('catalog/view/javascript/jquery/owl-carousel/owl.carousel.min.js');

        $data['banners'] = array();

        $results = $this->model_design_banner->getBanner($setting['banner_id']);

        foreach ($results as $result) {
            if (is_file(DIR_IMAGE . $result['image'])) {
                $data['banners'][] = array(
                    'title' => $result['title'],
                    'link'  => $result['link'],
                    'image' => $this->model_tool_image->resize($result['image'], $setting['width'], $setting['height'])
                );
            }
        }

        $data['module'] = $module++;

        if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/carousel.tpl')) {
            return $this->load->view($this->config->get('config_template') . '/template/module/carousel.tpl', $data);
        } else {
            return $this->load->view('default/template/module/carousel.tpl', $data);
        }
    }
}

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


2 часа назад, retrim сказал:

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

 

версия opencart 2.1. как добавить переменную не знаю (

 

еще один нюанс, -может дело в шаблоне , использую fastfood

 

 

<?php
class ControllerModuleCarousel extends Controller {
    public function index($setting) {
        static $module = 0;

        $this->load->model('design/banner');
        $this->load->model('tool/image');

        $this->document->addStyle('catalog/view/javascript/jquery/owl-carousel/owl.carousel.css');
        $this->document->addScript('catalog/view/javascript/jquery/owl-carousel/owl.carousel.min.js');

        $data['banners'] = array();

        $results = $this->model_design_banner->getBanner($setting['banner_id']);

        foreach ($results as $result) {
            if (is_file(DIR_IMAGE . $result['image'])) {
                $data['banners'][] = array(
                    'title' => $result['title'],
                    'link'  => $result['link'],
                    'image' => $this->model_tool_image->resize($result['image'], $setting['width'], $setting['height'])
                );
            }
        }

        $data['module'] = $module++;

        if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/carousel.tpl')) {
            return $this->load->view($this->config->get('config_template') . '/template/module/carousel.tpl', $data);
        } else {
            return $this->load->view('default/template/module/carousel.tpl', $data);
        }
    }
}


 

function index() {

static $module = 0;

Змінено користувачем AUSS
Надіслати
Поділитися на інших сайтах


52 minutes ago, AUSS said:

Перестали все работать ,просто статично выводит включая "производители" 

<div class="box-product product_featured" id="featured<b>Notice</b>: Undefined variable: module in <b>C:\Openserver\OSPanel\domains\opencart4\catalog\view\theme\fastfood\template\module\featured.tpl</b> on line <b>4</b>">
       <div class="product product_70_fm">
                <div class="image">

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


6 минут назад, retrim сказал:

Перестали все работать ,просто статично выводит включая "производители" 

<div class="box-product product_featured" id="featured<b>Notice</b>: Undefined variable: module in <b>C:\Openserver\OSPanel\domains\opencart4\catalog\view\theme\fastfood\template\module\featured.tpl</b> on line <b>4</b>">
       <div class="product product_70_fm">
                <div class="image">

 

ret.zip

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


26 minutes ago, AUSS said:

Модули рекомендуемые работают )!!! Проблема с производители, осталась

 

<div id="carousel">
  <div class="carousel" id="item-carousel0">
        <div><img src="http://opencart4:8080/image/cache/catalog/demo/manufacturer/nfl-130x100.png" alt="NFL" title="NFL"></div>
        <div><img src="http://opencart4:8080/image/cache/catalog/demo/manufacturer/redbull-130x100.png" alt="RedBull" title="RedBull"></div>
        <div><img src="http://opencart4:8080/image/cache/catalog/demo/manufacturer/sony-130x100.png" alt="Sony" title="Sony"></div>
        <div><img src="http://opencart4:8080/image/cache/catalog/demo/manufacturer/cocacola-130x100.png" alt="Coca Cola" title="Coca Cola">

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


3 minutes ago, AUSS said:

ну посмотрите по аналогии что делалось в первом и чем отличается во втором - сделайте чтоб было так же

Ок. Большое спасибо за Вашу отзывчивость и потраченное время, здоровья и хорошего дня!

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


Добрый день! Одна проблема осталась с этими модулями "рекомендуемые" , это их высота , берется максимальная высота одного модуля и присваивается всем остальным модулям. ешил сделать так , что если у товара нет "опции" , то выводить другой класс . ( потому что по другому не знаю как сделать. Вписал такой код

     

        <?php if (empty ($option['type'])) { ?>
         <div class="option_no_class" style="height: auto;>
        </div>        
        <?php } ?>    

 

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

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


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

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

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

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

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

Вхід

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

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

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

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

Important Information

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