Да по такой же логике делаю. Уже не один раз цепочку проверил всю. Перенес всё в файл cart.php - не вижу ошибку в коде. PHP: $data['blabla'] = '87654321test'; в файле header.php PHP: $cartnew = $this->load->controller('common/cart');$data['blabla'] = $cartnew['blabla']; и далее вывожу в шаблоне header.twig Код: {{ blabla }}
в $cartnew будет результат работы контроллера cart Код: return $this->load->view('common/cart', $data);
не так вы записываете в переменную результат работы контроллера cart. а контроллер, возвращает html корзины
Количество в корзине. У меня есть в cart.php строчки Код: $data['count'] = $this->cart->countProducts(); это в лучшем случае, или это Код: $data['blabla'] = '87654321test';
ну так и пропишете в heder.php Код: $data['count'] = $this->cart->countProducts(); и в шаблоне header.twig Код: {{ count }}
т.е. чтобы вернуть работу корзины надо так сделать? В контроллере корзины: PHP: .....return $data; и уже в файле header.php PHP: $cartnew = $this->load->controller('common/cart');$data['blabla'] = $cartnew['blabla'];
хочу разобраться, получить не html корзины, а её работу, чтобы можно было оперировать её переменными в header.php
есть библиотека для работы с корзиной system/library/cart работать с этой библиотекой, можно в любом контроллере
Это всё полезно спасибо, ну хорошо пусть будет не корзина, а модуль, например HTML-блок. Как загрузить его в header.php?
извините я вас не понимаю. можете более подробно объяснить для чего вам все это нужно как я понимаю, с html модулем нужно нечто подобное?
для начала я хотел разобраться если мне надо вытягивать переменные то как, чтобы не копировать один и тот же код в разных контроллерах. А теперь дошёл до задачи, есть html модуль он в массив записывает блоки. Автоматом можно выводить их на главной. Чтобы выводились с разной разметкой используем условие. А вот как сделать им общую обертку? Можно перейти в соседнюю ветку посмотреть и снова уперся, что надо обращаться к контроллеру. Вот такая вот задача
Не приписывайте соседнюю тему Про загрузку контроллера все тут уже достаточно написано. А вам нужно просто почитать документацию на форуме и понять как работает опенкарт, как размещаются модули и в каких случаях требуется лезть в код и трогать контроллеры.