Об начало: часть данных потеряна

Здесь части данных для потерянных в файловой системе / engine / controller.php.

    if (file_exists(DIR_TEMPLATE . $this->template)) {
        extract($this->data);
          /* Here found header.tpl, media.tpl(my module), 
           column_left.tpl(this show my module), column_right.tpl,
           language.tpl,  footer.tpl */
        ob_start();

           /* Here found header.tpl, language.tpl, footer.tpl */
        require(DIR_TEMPLATE . $this->template);

        $this->output = ob_get_contents();
        ob_end_clean();
              }

Почему это может быть? Я использую фреймворк Opencart, в который можно добавлять новые модули. Сделанный модуль можно найти в контроллере /common/column_left.php

Приложение через 3 часа: Я предполагаю, что это связано со структурой Opencart Development. Я импортировал через эту проблему поднимается на странице, которая отличается от структуры макета OpenCart. Opencart макет главной страницы такой

Файл product / category = category.php в каталоге контроллера / продукта.

У меня вот такой вот макет:

line / page / path = в файле controller / line / page.php, этот метод называется "путь".

Является ли одна из более подробных сведений о структуре OpenCart проблемой с этим? А если из-за чего редактирование приносит, проблема игнорируется? Исходный код OpenCart легко модифицировать плату vqMod с блоком, когда я знаю, что нужно изменить.

1 ответ

Я не понимаю вопроса, но, глядя на ваш код, вы, вероятно, хотите добиться этого:

    if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/account/account.tpl')) {
        $this->template = $this->config->get('config_template') . '/template/account/account.tpl';
    } else {
        $this->template = 'default/template/account/account.tpl';
    }

    $this->children = array(
        'common/column_left',
        'common/column_right',
        'common/content_top',
        'common/content_bottom',
        'common/footer',
        'common/header'     
    );

    $this->response->setOutput($this->render());

Первый if-else проверяет пользовательский шаблон, если он есть, или загружает шаблон по умолчанию в противном случае. $this->children часть включает суб-шаблоны. Последняя строка делает все остальное - заполняет шаблон данными и выводит результат. Если вы разрабатываете что-то новое в OpenCart, всегда лучше заглянуть в уже существующие файлы, чтобы не только узнать, как все это работает, но и следовать тем же стандартам кодирования.

Другие вопросы по тегам