composer и разработка сайтов на wordpress
TRANSCRIPT
Управление зависимостями на практике
Анна Ладошкина, [email protected]веб-разработчик и эксперт @foralien bureauи Теплицы социальных технологий
Composer и разработка сайтов на WordPress
WordPress Meetup Санкт-Петербург, 10 августа 2015
@foralien bureauТолько практический опыт
leyka.te-st.ruСистема онлайн-фандрайзинга
itv.te-st.ruПоиск волонтеров для решения ИТ-задач
Собственная разработка сайтов для НКО
совместно с
Теплицей социальных технологий
100 консультаций в год для НКО по удобству сайтов
консультации
https://getcomposer.org/
Позволяет• объявить зависимости для проекта • установить и обновлять зависимости • использовать собственные библиотеки
как зависимости
Менеджер зависимостей для PHP
Требуется PHP 5.3.2+
Установка (глобально)
urs/local/bin - указана в PATH переменной
Любая папка с файлами превращается в библиотеку, если добавить composer.json
Где взять библиотеки?
• в открытых репозиториях для Composer https://packagist.org/
• на GitHubhttps://github.com/
• создать самому
Структура composer.json
«Обычный» сайт на WordPress
• Файлы ядра • wp-config.php • Плагины • Темы • Переводы • uploads
Что должно быть под контролем версий?
Примеры использования Composer с WordPresshttps://roots.io/ http://composer.rarst.net
Что потребуется?Учитывая, что- Composer запускается в корне
проекта - При обновлении затирает все в
папке vendor
Определить- Что является зависимостями и какого типа - Откуда брать код зависимостей - Куда его размещать для разных случаев
Зафиксировать все в composer.json
Packagisthttps://packagist.org/
WordPress как библиотека
WP - это зависимостьРазделить файлы ядра и wp-content- Установить WordPress в подпапку corehttps://codex.wordpress.org/Giving_WordPress_Its_Own_Directory
- Переместить папку wp-contenthttps://codex.wordpress.org/Editing_wp-config.php#Moving_wp-content_folder
composer.json
WordPress Packagisthttp://wpackagist.org
Плагин как библиотека
composer.json
WordPress language packs http://languages.koodimonni.fi/
Языковой пакет как библиотека
composer.json
Собственная библиотекаРепозиторий артефактов
Библиотека == .zip файл со специальным именем foralien-myplugin-1.0.0.zip
- код плагина - composer.json
composer.json
composer install
Будем на связи!
https://www.facebook.com/anna.ladoshkina