Оформление на шаблон - Първи стъпки - Документация

Основният шаблон на сайта се намира по подразбиране във файла /themes/business/views/layouts/main.php. Този файл дефинира мета тагове, горен и долен колонтитул, стилове и скриптове, използвани за целия сайт.

Ако искате да промените името на темата на сайта, трябва да го направите в конфигурационния файл /protected/config/project.php

За параметъра на темата можете да посочите различно име, което съответства на името на вашата тема.

Бъдете внимателни, когато променяте името на темата в конфигурационния файл, системата ще очаква наличието на папка със същото име в папката /themes.

Включително css файлове

За да включите css файл, командата $this->registerCssFile('/themes/business/css/content.css'); . Единственият параметър на тази команда е пътят до включения css файл. Това предполага, че css файлът ще се намира в папката с активи на съответния модул. Например, таблицата със стилове за новини ще бъде на абсолютния път /themes/business/views/news/assets/news.css.

Включително js файлове

За да включите js файл, използвайте командата $this->registerScriptFile('/themes/business/js/js.js', CClientScript::POS_HEAD); . В допълнение към първия параметър, указващ пътя до файла, се използва вторият параметър, указващ къде ще бъде свързан java скриптът на страницата. Най-често срещаните опции за този параметър са CClientScript::POS_HEAD - свързване на java скрипт в заглавката на страницата и CClientScript::POS_END - свързване в долния колонтитул на страницата.

Ако е необходимо да се изпълни кодът на Java скрипт директно в тялото на страницата, без да се включва js файлът, командата $this->registerScript('alert(1);', CClientScript::POS_READY); . При това последнотопараметърът CClientScript::POS_READY означава, че посоченият код ще бъде изпълнен веднага след зареждане на DOM дървото на страницата, т.е. на събитието document.ready().

Определяне къде да се показват джаджи

Предполага се, че в шаблона на сайта местата за показване на джаджи могат да бъдат предварително дефинирани от дизайнера на оформление. Това е необходимо в случаите, когато в бъдещия живот на сайта се предполага включване / изключване или размяна на джаджи. Например, поставете приспособлението за най-новите новини над приспособлението за банер в лявата колона.

Системата за управление на ygin има графичен интерфейс за редактиране на набори и джаджи, който позволява на администратора на сайта да променя реда и местата на показване на джаджи, да ги включва и изключва без помощта на програмисти.

За да определите мястото, където приспособленията ще се показват по-късно, използвайте командата $this->widget('BlockWidget', array("place" => SiteModule::PLACE_BOTTOM)); . Параметърът place определя идентификатора на място. В системата са предварително подготвени следните идентификатори на места, които в повечето случаи са достатъчни за разбиране на мястото: PLACE_TOP, PLACE_BOTTOM, PLACE_FOOTER, PLACE_CONTENT, PLACE_CONTENT_TOP, PLACE_RIGHT, PLACE_LEFT. Ако е необходимо, този списък с идентификатори на места за уиджети може да бъде разширен или променен.

Комплектите джаджи могат да бъдат предварително дефинирани за различни групи страници на сайта в системата за управление на ygin. Всеки набор от джаджи съхранява информация за това кои джаджи ще бъдат показани на кои места и в какъв ред. По този начин дизайнерът на оформление подготвя места за показване на джаджи в шаблона на страницата, а администраторът на сайта посочва, че този или онзи набор от джаджи ще се използва за тази страница на сайта, използвайки системата за управление ygin. Още механизъм за настройка иДефинициите на набора от притурки се обсъждат в раздела за документация Конфигуриране на набор от приспособления за администратора.

Показване на заглавие и съдържание на страница

В най-простия случай страницата на сайта е статична и нейното съдържание се определя в системата за управление на ygin чрез обекта Menu. Заглавието на страницата се показва с командата echo $this->caption; , а изходното съдържание е echo $content; .

Директно показване на джаджи

Има случаи, когато се изисква да се "кодира" място за показване на джаджа и да не се оставя администраторът на сайта да го управлява чрез системата за контрол на ygin. В такива случаи показването на изпълнимия модул се извършва чрез командата $this->widget('WidgetName', array()); .

Примерен файл с шаблон за маркиране

За повече подробности относно процеса на типично оформление на сайта вижте статията "BEM оформление".