DevCraft Документации
Инструкции

Composer — управление зависимостями

Как установить PHP-библиотеки для модулей DevCraft через Composer.

Composer — программа, которая скачивает и обновляет PHP-библиотеки (зависимости) для сайта. У модулей DevCraft они лежат в папке devcraft/ в корне сайта.

Обычно зависимости ставятся сами (скриптом установки или через интерфейс DevCraft Admin). Эта страница нужна, если требуется сделать это вручную или разобраться с ошибкой про версию PHP.

Что должно быть на сервере

  1. В терминале команда php -v должна показывать PHP 8.3 или новее.
  2. Нужны обычные расширения PHP (в том числе связанные с работой сайта). См. также PHP intl.
  3. Установлен Composer:

Установка зависимостей

Перейдите в каталог devcraft в корне сайта и выполните:

cd devcraft
composer install --no-dev

Composer прочитает composer.json / composer.lock и создаст папку vendor/. Без неё DevCraft Admin и модули на его базе не заработают.

После добавления новых PHP-классов модуля иногда достаточно обновить автозагрузку:

composer dump-autoload

Подробнее об установке админки: Установка DevCraft Admin.

Если версии PHP на сервере разные

Бывает, что панель хостинга и сайт используют разный PHP. Тогда Composer может взять «не ту» версию и остановиться с ошибкой вроде: в composer.json нужен PHP ^8.3, а в терминале — 8.1.

Что можно сделать:

  1. Скачать готовый архив зависимостей composer_data.zip (если он актуален для вашей версии) и залить в корень сайта с сохранением структуры папок.
  2. Либо запустить Composer с игнорированием проверки платформы (только если понимаете риски):
composer install --no-dev --ignore-platform-req=php

Важно

Дальнейшие команды Composer в такой ситуации тоже выполняйте с флагом --ignore-platform-req=php.

См. также

On this page