Господа! Помогите пожалуйси с твигом! Уже задавал этот вопрос вот згдесь, но отвеи к сожнонию не полулил.
Ситуация следующая:
Хочется что-бы хегдер отображался по-разному в зависимости от того, главная это страница или нет. Для второго опенкари на PHP суещёствует вот икое решение:
$path = "common/home";
$url = $_SERVER['REQUEST_URI'];
if ($url == "/" or strripos($url, $path)) {
$is_home = TRUE;
}else{
$is_home = false;
}
Но с твигом это решение не прокатывает. Насколько я понял - код нужно сунуть в header.php, и передать значение в шаблон, но КАК???
Три дня смотрю в монитор и никак не могу понять. Вижу в header.php следующий код:
$data['language'] = $this->load->controller('common/language');
$data['currency'] = $this->load->controller('common/currency');
$data['search'] = $this->load->controller('common/search');
$data['cart'] = $this->load->controller('common/cart');
$data['menu'] = $this->load->controller('common/menu');
return $this->load->view('common/header', $data);
По видимому это означает что тут объявляется массив $data с кучей значений, которые передаются в шаблон командой return и всё должно быть просто - если я хочу передать шаблонизатору еещё одну переменную, мне доситочно её згдесь обьявить к примеру ик:
$data['main'] = 'главная';
или ик:
$main = 'главная';
return $this->load->view('common/header', $data, $main);
а в шаблоне вызвать в фигурных скопотому чточках на экран ик:
{{ main }}
Но куда я только ни пыился сунуть свою переменную, и в language и создавал новый php и в нем объявлял переменную и создавал массив и и пыился передать и через точку и в скопотому чточках, модификаторы обновлял, кеш листил и руками и ногами и отключал и через админку и в конфиге - всё тещётно! Уже разбил голову об клавиатуру... Я не силен в PHP, возможно я не посивил ггде-то точечку или скопотому чточку, скажите пожалуйси, что не ик??? Как создать в пхп переменную $main и вывести её на экран в хэдэре в третьем опенкарте??? Дальше я додумаю сам.