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

Fatal error: новая позиция отображения модуля


Recommended Posts

Доброго времени суток ! 

 

Вывел новую позицию, подключил в хедере, все работало отлично, но вот после установки модуля импорт товаров уже второй раз ошибка появляется.

Как бороться ?   

 

Fatal error: Call to a member function getModule() on a non-object in C:\OpenServer\domains\bs.loc\catalog\controller\common\content_newpos.php on line 54

 

Сам контроллер: 

<?php
class ControllerCommonContentNewpos extends Controller {
    public function index() {
        $this->load->model('design/layout');
 
        if (isset($this->request->get['route'])) {
            $route = (string)$this->request->get['route'];
        } else {
            $route = 'common/home';
        }
 
        $layout_id = 0;
 
        if ($route == 'product/category' && isset($this->request->get['path'])) {
            $this->load->model('catalog/category');
 
            $path = explode('_', (string)$this->request->get['path']);
 
            $layout_id = $this->model_catalog_category->getCategoryLayoutId(end($path));
        }
 
        if ($route == 'product/product' && isset($this->request->get['product_id'])) {
            $this->load->model('catalog/product');
 
            $layout_id = $this->model_catalog_product->getProductLayoutId($this->request->get['product_id']);
        }
 
        if ($route == 'information/information' && isset($this->request->get['information_id'])) {
            $this->load->model('catalog/information');
 
            $layout_id = $this->model_catalog_information->getInformationLayoutId($this->request->get['information_id']);
        }
 
        if (!$layout_id) {
            $layout_id = $this->model_design_layout->getLayout($route);
        }
 
        if (!$layout_id) {
            $layout_id = $this->config->get('config_layout_id');
        }
 
        $data['modules'] = array();
 
        $modules = $this->model_design_layout->getLayoutModules($layout_id, 'content_newpos');
 
        foreach ($modules as $module) {
            $part = explode('.', $module['code']);
 
            if (isset($part[0]) && $this->config->get($part[0] . '_status')) {
                $data['modules'][] = $this->load->controller('module/' . $part[0]);
            }
 
            if (isset($part[1])) {
                $setting_info = $this->model_extension_module->getModule($part[1]);
 
                if ($setting_info && $setting_info['status']) {
                    $data['modules'][] = $this->load->controller('module/' . $part[0], $setting_info);
                }
            }
        }
 
        if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/common/content_newpos.tpl')) {
            return $this->load->view($this->config->get('config_template') . '/template/common/content_newpos.tpl', $data);
        } else {
            return $this->load->view('default/template/common/content_newpos.tpl', $data);
        }
    }
}
Надіслати
Поділитися на інших сайтах

после захода в админку данная трабла проходит, и в логах ничего нет 

 

Версия: опенкарт 2 

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

Кажется разобрался, магазин был на режиме обслуживания и того ошибка 

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

  • 9 months later...

Тоже создал новую позицию похожим образом, все работает.

НО, не подключаются скрипты и стили в модулях, которые размещены в этой позиции

не работают addStyle и addScript

 

что я упустил?

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

Тоже создал новую позицию похожим образом, все работает.

НО, не подключаются скрипты и стили в модулях, которые размещены в этой позиции

не работают addStyle и addScript

 

что я упустил?

уже разобрался

вызов позиции в хедере должен быть перед вызовом скриптов и стилей

Xo7kb0DoxOy2fyKqoeZqeMqPd7Zv7E.png

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

уже разобрался

вызов позиции в хедере должен быть перед вызовом скриптов и стилей

Xo7kb0DoxOy2fyKqoeZqeMqPd7Zv7E.png

Я за это время поумнел и набрался опыта, мой Вам совет, не добавляйте новые позиции это может плохо сказаться на производительности, панацея от этого всего JQuery и правильный подход к дизайну 

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

Я за это время поумнел и набрался опыта, мой Вам совет, не добавляйте новые позиции это может плохо сказаться на производительности, панацея от этого всего JQuery и правильный подход к дизайну 

Ну, одну можно )

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

Ну, одну можно )

мое дело предупредить, а там смотрите как Вам угодно, как говориться "кто как хочет так и др****т"  :-)

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

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

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

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

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

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

Вхід

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

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

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

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

Important Information

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