1. Проверка правильности передачи данных
Убедитесь, что вы правильно передаете массив $data в метод load->view. Например, ваш контроллер должен выглядеть примерно так:
class ControllerProductManufacturer extends Controller {
public function index() {
$this->load->language('product/manufacturer');
$this->document->setTitle($this->language->get('heading_title'));
$data['current_url'] = 'manufacturer';
// Другие данные и логика
$this->response->setOutput($this->load->view('product/manufacturer', $data));
}
}
2. Проверка правильного пути к шаблону
Убедитесь, что вы используете правильный путь к шаблону в методе load->view. Например, если ваш шаблон находится в catalog/view/theme/default/template/product/manufacturer.twig, то путь должен быть product/manufacturer.
3. Проверка шаблона Twig
Убедитесь, что вы правильно используете переменную в шаблоне Twig. Например:
<p class="url-test">{{ current_url | json_encode(constant('JSON_PRETTY_PRINT')) }}</p>
4. Очистка кэша
После внесения изменений в контроллер и шаблон, убедитесь, что вы очистили кэш OpenCart. Перейдите в Система -> Очистка кэша и очистите кэш модификаторов и кэш тем.
5. Отладка
Для отладки вы можете добавить временный вывод переменной в контроллере перед передачей данных в шаблон:
class ControllerProductManufacturer extends Controller {
public function index() {
$this->load->language('product/manufacturer');
$this->document->setTitle($this->language->get('heading_title'));
$data['current_url'] = 'manufacturer';
// Вывод значения переменной для отладки
var_dump($data['current_url']); // Должно вывести 'manufacturer'
exit;
$this->response->setOutput($this->load->view('product/manufacturer', $data));
}
}
Если переменная выводится правильно, но все еще не отображается в шаблоне, проблема может быть в шаблоне или в кэше.
6. Проверка других модификаторов и расширений
Убедитесь, что никакие модификаторы (OCMod или VQMod) или расширения не перезаписывают или не изменяют данные, передаваемые в шаблон.