WordPress Packagist: что такое, как использовать

Статьи 21.08.2022 (обновлено)

WordPress Packagist является зеркальным отражением каталогов плагинов и тем WordPress в качестве репозитория Composer.

Главная страница WordPress Packagist
Главная страница WordPress Packagist

Зачем использовать Composer?

«Composer — это инструмент для управления зависимостями в PHP. Он позволяет вам объявить зависимые библиотеки, необходимые вашему проекту, и он установит их в ваш проект за вас.»

— getcomposer.org
  • Избегание фиксации плагинов и тем в системе контроля исходного кода.
  • Избегание необходимости использовать подмодули git.
  • Управление библиотеками проектов WordPress и не-WordPress с помощью одних и тех же инструментов.
  • В перспективе может использоваться для управления зависимостями между плагинами.

Как работает репозиторий?

  • Каждый час сканирует репозиторий WordPress Subversion на наличие плагинов и тем. Выполните поиск и нажмите , чтобы сделать доступными все новые версии.
  • Находит tags для каждого обновленного пакета и сопоставляет их с версиями.
  • Для плагинов добавляет trunk в качестве dev-версии.
  • Пересобирает JSON-файлы пакета composer.

Как использовать?

  1. Добавьте репозиторий в ваш composer.json
  2. Добавьте нужные плагины и темы в соответствии с вашими требованиями, используя wpackagist-plugin или wpackagist-theme в качестве имени поставщика.
  3. Выполните $ composer.phar update
  4. Пакеты устанавливаются в wp-content/plugins/ или wp-content/themes/ (если иное не указано в installer-paths).

Пример

{
    "name": "acme/brilliant-wordpress-site",
    "description": "My brilliant WordPress site",
    "repositories":[
        {
            "type":"composer",
            "url":"https://wpackagist.org",
            "only": [
                "wpackagist-plugin/*",
                "wpackagist-theme/*"
            ]
        }
    ],
    "require": {
        "aws/aws-sdk-php":"*",
        "wpackagist-plugin/akismet":"dev-trunk",
        "wpackagist-plugin/wordpress-seo":">=7.0.2",
        "wpackagist-theme/hueman":"*"
    },
    "autoload": {
        "psr-0": {
            "Acme": "src/"
        }
    },
    "extra": {
        "installer-paths": {
            "wp-content/mu-plugins/{$name}/": [
                "wpackagist-plugin/akismet"
            ],
            "wp-content/plugins/{$name}/": [
                "type:wordpress-plugin"
            ]
        }
    }
}

Выше пример файла composer.json, который добавляет репозиторий Wpackagist и включает последнюю версию Akismet (установленную как обязательный плагин), как минимум версию 3.9 Captcha и последнюю тему Hueman вместе с Amazon Web Services SDK из основного репозитория Packagist.

Старый префикс поставщика wpackagist теперь удален в пользу wpackagist-plugin.

Известные проблемы

  • Требуется Composer 1.0.0-alpha7 или более новая версия.
  • Строки версий, которые Composer не может разобрать, игнорируются. Все плагины имеют как минимум trunk-сборку.
  • Темы не имеют версии trunk. Рекомендуется использовать "*" в качестве требуемой версии.
  • Даже если пакеты присутствуют в SVN, они не будут доступны, если они не опубликованы на wordpress.org. Попробуйте поискать ваш плагин, прежде чем сообщать об ошибке.
  • Вы также можете проверить наличие открытых проблем.

Ядро WordPress

Смотрите fancyguy/webroot-installer или johnpbloch/wordpress для установки самого WordPress с помощью Composer.

Внести свой вклад или получите поддержку

Посетите страницу Packagist на GitHub.

Сергей Ермилов
Опубликовано 21.08.2022
Категория: Статьи
Теги:

Добавить комментарий

Ваш адрес email не будет опубликован.