Навіть без написання додаткового коду наш додаток вже готовий
використовувати теми оформлення.
Для використання теми, ми, в основному, повинні розробити її,
написавши змінені файли представлень теми.
Наприклад, для використання теми classic
,
яка використовує інший макет сторінки, ми створили б файл представлення макету
/wwwroot/blog/themes/classic/views/layouts/main.php
.
Ми також повинні змінити конфігурацію додатка для вказівки, що ми обрали тему classic
:
return array(
…
'theme'=>'classic',
…
);
Ми також можемо інтернаціоналізувати наш додаток, щоб його сторінки могли відображатися на різних мовах. В основному, це включає в себе два аспекти.
По-перше, ми можемо створити файли представлень на різних мовах. Наприклад,
для сторінки index
контролера PostController
, ми можемо створити файл
представлення /wwwroot/blog/protected/views/post/zh_cn/index.php
. Коли
додаток зконфігуровано на використання спрощеної китайської мови
(мовний код — zh_cn
), Yii буде автоматично використовувати новий файл
представлення замість оригінального.
По-друге, ми можемо створити переклад повідомлень, згенерованих кодом.
Переклад повідомлень має бути збережений у файлах директорії
/wwwroot/blog/protected/messages
. Також ми повинні змінити код, у якому ми
використовуємо текстові рядки, уклавши їх в виклик методу Yii::t()
.
За деталями про інтернаціоналізацію зверніться до розділу інтернаціоналізація (I18N) керівництва.
Хоча сам Yii досить швидкий, не обовʼязково, що додаток, написаний з використанням Yii, буде працювати також ефективно. Є кілька місць у додатку, де ми можемо поліпшити роботу. Наприклад, портлет хмари тегів може бути одним із вузьких місць у роботі, тому що він використовує складний запит до бази даних і логіку PHP.
Ми можемо використовувати складні
особливості при кешуванні, надані Yii,
для поліпшення роботи. Один із найбільш корисних компонентів в Yii — це
COutputCache, який кешує фрагмент представлення сторінки так, щоб
основний код, який генерує фрагмент, не виконувався при кожному запиті.
Наприклад, у файлі макету /wwwroot/blog/protected/views/layouts/column2.php
ми можемо укласти портлет хмари тегів у COutputCache:
if($this->beginCache('tagCloud', array('duration'=>3600))) { $this->widget('TagCloud', array( 'maxTags'=>Yii::app()->params['tagCloudCount'], )); $this->endCache(); }
У коді вище відображення хмари тегів буде отримуватися із кешу замість того, щоб генеруватися для кожного запиту. Кешований вміст залишиться валідним у кеші протягом 3600 секунд.
У нашого додатка є тільки дуже основні функціональні можливості. Щоб стати повноцінною системою керування блогом, необхідно більше особливостей, наприклад, портлет календаря, сповіщення по електронній пошті, категорії записів, портлет архівних записів і так далі. Ми залишимо можливість реалізувати ці особливості зацікавленим читачам.
Found a typo or you think this page needs improvement?
Edit it on github !
Signup or Login in order to comment.