Композитор и WordPress cz. 1

  1. Что такое Composer и почему вы должны его использовать
  2. Установите Composer
  3. Структура конфигурационных файлов
  4. composer.json
  5. composer.lock
  6. / поставщика
  7. хранилище
  8. посылки

Composer - менеджер пакетов для проектов PHP. Его использование экономит время при поиске библиотек и гарантирует согласованность сред, что важно при работе с другими людьми. Побочным эффектом использования Composer является чистый репозиторий и общий порядок в коде. Если вы хотите знать, как начать работать с ним и как использовать его в своих проектах WordPress, то эта серия для вас.

последняя статья Я спросил в опросе, какая тема вас больше всего интересует. Результаты опроса меня немного удивили, но, подумав об этом, я пришел к выводу, что о Composer мало что говорится в контексте WordPress. По крайней мере, я не слышал много. Вот где может возникнуть интерес к предмету.

Вот где может возникнуть интерес к предмету

Результаты опроса, вопрос о котором эта статья должна быть

Как вы можете видеть, вторая тема в заказе - это Докер, который я с удовольствием напишу, потому что это моя новая любовь (не говорите моей жене).

Из-за размера темы я разделил эту статью на несколько частей. В этом вы узнаете, что такое Composer и с чем его есть.

Что такое Composer и почему вы должны его использовать

Как я уже упоминал во введении, Composer - менеджер пакетов для PHP. Более конкретно, менеджер зависимостей ( Dependency Manager for PHP ).

Его функция лучше всего описана на примере. Вы когда-нибудь использовали Font Awesome в своем проекте? Или Bootstrap? Как выглядел импорт этих библиотек для вашего проекта? Вы искали сайт проекта, скачали файлы, скопировали их в проект и отправили в хранилище в вашей комиссии?

Если так, что вы говорите, чтобы войти в консоль:

композитор требует twbs / bootstrap fortawesome / font-awesome

Да, эта команда только что загрузила в проект последнюю версию Bootstrap и Font Awesome. Мне даже не нужно было ничего делать заранее, чтобы иметь возможность загружать эти пакеты (за исключением, конечно, установки самого Composer).

Признайся, это выглядит хорошо.

Установите Composer

Если приведенная выше презентация убедила вас, не стесняйтесь и установите Composer на свой компьютер. Просто иди в страница проекта и вы выполните все шаги, необходимые для установки. Существует также установщик для Windows.

После установки вы можете вызвать команду где угодно:

композитор - версия

Чтобы увидеть, все ли работает правильно. Если это так, вы увидите информацию о версии Composer, которую вы в данный момент установили.

Структура конфигурационных файлов

Так что же конкретно произошло после выполнения команд установки Bootstrap и Font Awesome? Почему библиотеки отображаются в каталоге vendor , а корневыми файлами являются новые файлы composer.json и composer.lock ? Я хочу объяснить.

composer.json

Файл composer.json содержит всю информацию о проекте, то есть его имя, автора и библиотеку, от которой он зависит . Именно здесь менеджер зависимостей прошивается. Наш псевдопроект зависит от Bootstrap и Font Awesome.

Из-за того, что я бросил только команду для установки пакетов в консоль, файл содержит не более:

{"require": {"twbs / bootstrap": "^ 3.3", "fortawesome / font-awesome": "^ 4.7"}}

Так что наши зависимости такие-то и такие-то в такой-то версии. Обозначения версий - это целая масса и я мог бы также ввести каждого разработчика , то есть текущую версию разработчика.

Но если бы я сделал сначала:

композитор иници

Было бы возможно определить все параметры вашего пакета (проекта) в интерактивной форме.

composer.lock

Это файл, который закрывает текущую конфигурацию. Предположим, что версии пакетов в composer.json определены как стабильные . Сегодня стабильный может означать версию 1.0.0, а завтра 1.1.0.

Этот файл гарантирует, что наши коллеги устанавливают ту же версию, что и мы, независимо от того, когда они присоединяются к проекту.

В настоящее время используемые версии, конечно, могут быть обновлены с помощью команды:

обновление композитора

Что, конечно, также обновляет файл composer.lock .

/ поставщика

Это каталог по умолчанию, в который Composer устанавливает свои зависимости. Это самый популярный вариант, практически всегда используемый. Это не означает, однако, что этот путь не может быть изменен. Отсюда объект config, который имеет поле vendor-dir . Конечно, этот объект находится в файле composer.json .

Давайте предположим, что я хотел бы установить свои зависимости в каталоге deps . Мой файл конфигурации будет выглядеть так:

{"config": {"vendor-dir": "deps"}, "require": {"twbs / bootstrap": "^ 3.3", "fortawesome / font-awesome": "^ 4.7"}}

хранилище

Я слышу критику на расстоянии в отношении того факта, что, по моему мнению, хранилище более чистое с помощью Composer, и он установил все, как оно вылетает из хранилищ пакетов. Включая файлы лицензий, файлы readme и исходные файлы.

Помните, однако, что с помощью Composer вы не отправляете все это в хранилище! Все, что вам нужно отправить, это composer.json и composer.lock . Остальные ваши коллеги установят себя локально. И кроме того, Node.js генерирует еще больше "мусора" :)

посылки

Естественный вопрос, который может прийти вам в голову, - откуда взять пакеты. Самый простой ответ: отовсюду!

Серьезно, если только у GitHub есть свой репозиторий, вы можете его использовать. Для этого вам потребуется определить дополнительный объект репозиториев в файле composer.json , но вы можете это сделать.

Если автор удостоверился, что его пакет был прост в установке, то пакет будет доступен в Packagist в репозитории Composer. Там вы можете поместить в поисковик то, что ищете, и сразу же получите ответ, если есть простой в установке пакет.

Важная информация заключается в том, что Packagist не является полноценным хранилищем. Каждый проект должен иметь публичный репозиторий, будь то на GitHub или BitBucket или где-либо еще.

Если вы не хотите делиться своими пакетами со всем миром, вы также можете использовать его Частный Packagist Однако это платный вариант.

В этой статье обсуждаются только основные проблемы, связанные с Composer, но мне кажется, что он достаточно прочный, чтобы вы могли начать использовать его в своих плагинах или темах с сегодняшнего дня.

Во второй части я буду обсуждать тему управления пакетом WordPress и установки тем и плагинов.

Вы когда-нибудь использовали Font Awesome в своем проекте?
Или Bootstrap?
Как выглядел импорт этих библиотек для вашего проекта?
Вы искали сайт проекта, скачали файлы, скопировали их в проект и отправили в хранилище в вашей комиссии?

Новости

Социальные сети в России, зима 2015-2016 Цифры, тренды, прогнозы | Блог Brand Analуtics — все о бренд мониторинге и социальной аналитике
Представляем данные регулярного исследования активной аудитории социальных сетей в России, зима 2015-2016. В исследовании представлены данные по аудитории, возрасту, полу и региональному распределению

SMM маркетинг от А до Я
Развитие социальных сетей породило новую огромную бизнес отрасль — СММ маркетинг. Это когда мы приходим с нашим продуктом в какую-нибудь соцсеть, находим там нашу целевую аудиторию, и предлагаем ей наш

Полезно знать
20.02.2014 Что такое Pinterest. Визуальный PR и маркетинг Pinterest или ПИНТЕРЕСТ – социальная сеть, использующая вместо текстов картинки и изображения, которые можно добавлять в аккаунт,

Фейсбук Моя страница: ВХОД на свою страницу Facebook
Фейсбук (Facebook) Моя страница — это личная страница каждого зарегистрированного пользователя самой большой в мире социальной сети.  Фейсбук даёт возможность людям с разных уголков Земли общаться между

Анализ социальных сетей
АНАЛИЗ СОЦИАЛЬНЫХ СЕТЕЙ (social network analysis) - новое направление структурного подхода, основными целями которого являются исследование взаимодействий между социальными объектами и выявление условий

Социальные сети для продвижения бизнеса: какие выбрать?
  Привет, друзья! Социальные сети занимают львиную часть времени в нашей жизни. Ежедневный просмотр новостей, любимых групп и переписка с друзьями – это любимое дело большинства молодых людей. Вот и

ВРЕДНОЕ ВЛИЯНИЕ СОЦИАЛЬНЫХ СЕТЕЙ НА ЗДОРОВЬЕ ЧЕЛОВЕКА - VI Студенческий научный форум (15 февраля - 31 марта 2014 года)
ВРЕДНОЕ ВЛИЯНИЕ СОЦИАЛЬНЫХ СЕТЕЙ НА ЗДОРОВЬЕ ЧЕЛОВЕКА Гущина Н. В., Люлина Н.В. С распространением всемирной паутины рост социальных сетей по всему миру стал глобальным явлением. С каждым

Влияние социальных сетей на подростков. Пропаганда суицида в сетях
Почему мы любим интернет? Почему молодым людям, подросткам сказать «Привет» стало проще, познакомившись в интернете, чем просто подойти в реальности? Почему все «сидят» в социальных сетях? Социальные сети

Маркетинг в социальных сетях (SMM) для продвижения компании
Деятельность в социальных сетях, на блогах и форумах по повышению лояльности клиентов получила название SMM — от аббревиатуры английского звучания этого термина – Social Media Marketing. Аудитория

Фейсбук (Facebook) - что это за сеть: как пользоваться ФБ
Фейсбук — это самая популярная и большая социальная сеть в мире. Если Вам интересно узнать больше о Facebook, про то как пользоваться сетью и о некоторых «фишках» ФБ — этот материал именно для вас!