Изучение Yii Framework

Появилась необходимость в изучении Yii Framework, поэтому создам здесь статью с полезными ссылками.

  1. Официальный сайт
  2. Рускоязычное сообщество
  3. Проект на Github
  4. Хаб на хабре
  5. Полезный сайт с статьями о Yii
  6. Книга «Yii. Сборник рецептов»
  7. Интересный сайтец с циклом статей «Подсказки по Yii»

Интеграция WordPress и Yii

Сейчас занимаюсь разработкой собственного проекта на Yii Framework. На днях заморочился рутинной задачей управления пользователями, записями и т.д. Задачи важные для проекта, но нудные. Стал вопрос использования уже готовых решений из репозитория расширений Yii, но мне как-то в падлу было разбираться с ними. И вдруг пришла мысль в голову, а не интегрировать ли мне свой проект с замечательной CMS — WordPress??? Вот и решил разобратсья с этой темой. Благо информации по этой теме я нашел не мало, но вся забугорная. Решил описать процесс здесь, вдруг еще раз пригодится или кому нибудь будет полезна.

 

Что мы получим в результате:

  • Мы сможем использовать все прелести WordPress
  • На фронтенде будут доступны роуты из приложения Yii
  • В части администратора будут доступны все возможности Yii Framework за исключением роутов (они мне ну нужны в админке, т.к. функционал админки будет реализован в виде плагинов для WP, которые будут использовать функционал Yii Framework)

Continue reading «Интеграция WordPress и Yii»

Пути в Yii

Часто при работе с Yii нужно получить путь к файлу или папке. Ниже я приведу несколько примеров как это сделать.

Один из способов — это получить путь из алиаса. Алиас — это никнейм, который мы даем папкам в нашем проекте. В Yii есть 5 уже зарезервированных алиасов:

  1. system — путь к папке фреймворка
  2. zii — путь к папке Zii Library
  3. application — путь к базовой директории проекта
  4. webroot — путь к папке с входным файлом фреймворка
  5. ext — путь к директории содержащей все сторонние расширения

Мы можем получить путь к папке используя алиас с помощью функции Yii::getPathOfAlias( ‘webroot.images’ );

Также мы можем создать свой алиас с помощью функции Yii::setPathOfAlias( string $alias, string $path );

 

Часто возникает необходимость подключить модель или компонент в проекте для этого в Yii есть функция Yii::import(string $alias, boolean $forceInclude=false);

Используя алиасы включать те или иные классы. Например, если мы хотим подключить класс CController, мы можем сделать следующее: Yii::import( ‘system.web.CController’ );

 

Вот еще несколько функций, которые пригодятся при работе:

  • getBasePath — возвращает URL вашего сайта
  • setBasePath — устанавливает корневую директорию для всего проекта
  • getExtensionPath – возвращает путь стороннего расширения
  • setExtensionPath – задает директорию содержащую все сторонние расширения
  • setRuntimePath – задает каталог, который хранит все временные файлы
  • getRuntimePath – возвращает корневую директорию каталога, который хранит все временные файлы
  • getLocaleDataPath – возвращает путь к каталога содержащему данные языкового стандарта
  • setLocaleDataPath – задает каталог, который будет содержать файлы языкового стандарта