Доброго времени суток.
Не моя тема и давненько не занимался разработкой вообще. Появилась возможность познакомится с OpenCart, и я выбрал 3 версию движка. Собственно шаблонизатор twig, многие вещи интуитивно понятны, что-то похоже на то, как это есть в руководствах для версии 2, но документации как я понял мало. Или совсем плохо ищу. НЕ буду долго мусолить, перейду непосредственно к вопросам и ситуацией с которой столкнулся.
Натягиваю графику для магазина, дизайнер задумал так, что некоторые вещи есть на главной странице и они же есть на других страницах, но выглядят по-другому. Я посидел подумал и мне в голову пришли мысли по реализации несколькими способами способами. Опишу их...
Способ первый: вставляю код в файлы представления (home.twig, information.twig и т.д.) Но данный способ меня не устраивает тем, что там есть вещи, которые, возможно необходимо будет менять и лазить по всем файлам чтобы изменить ссылку на страницу, либо добавить пункт меню, что избыточно для любого нормально разработчика. Лучше чтоб это было одно место, либо два, потому как представления будет два.
Способ второй: вытекает из первого, создать модуль или два, которые потом выбрать вместо {{ content_top }} или другого. Конечно это неплохо, но что-то я не очень понимаю как разработать такие модули для версии 3. Способ годный, но все равно есть нюансы.
Способ третий: поскольку шаблонизатор twig это не совсем шаблонизатор, но и немного язык, то я бы создал условие. я бы его просто на php написал, но вот php в этом twig не пашет или я не понял как. Но наверняка можно написать условие на его шаблонизаторском языке. Но вопрос, смогу ли я получить глобальную переменную и в зависимости от ее наличия или отсутсвия выводить разный код представления? Если да, то подскажите как этот код должен выглядеть?
З.Ы. Приветсnвую ссылки на годную документацию по шаблонизатору Twig и OpenCart 3 на русском. И годные ссылки, если они не запрещены правилами форума, на жоступно написанную документацию.