Функция на темата Yii2

Темата е директория с файлове за изгледи на контролера (изгледи) и шаблони (оформления). Всеки файл в директорията на темата „наслагва“ съответния файл на приложението в директорията @app/views. Едно приложение може да има много теми и всяка тема може да предостави напълно различна функционалност. Само една тема е активна по всяко време.

За да активирате тематизирането, можете да създадете директорияthemes в директорията на приложението (името е произволно), тя ще съдържа директориите с теми. И посочете тази директория в конфигурацията като viewPath на приложението.

viewPath - относителен път към директорията за изглед, разрешава се чрезbasePath - по подразбиране сочи към корена на приложението

Да предположим, че искаме да създадем тема, наречена "default" - нека създадем директория@app/themes/default, копираме директорията@app/view в нея - тази, която съдържа оформления и сайт (по подразбиране). Всички шаблони, които не се намират в@app/themes/default/views/. ще бъдат търсени в@app/views/. шаблони, които не трябва да бъдат тематични, могат да бъдат поставени там.

Примерна структура на директория:

След това в конфигурацията предписваме използването на темата. Темата е свойство на компонента view - класътyii\web\View, който между другото се създава имплицитно и не изисква изричен запис в конфигурацията, но за да използваме темата, ще я напишем изрично: