Перейти к содержимому

Начало работы

Требования

  • PHP 8.2+
  • WordPress 6.4+
  • MySQL или MariaDB через обычное подключение к базе данных WordPress
  • доступный для записи каталог wp-config.php при активации плагина

Установка

Установите Rudel с помощью Composer и активируйте его как обычный плагин WordPress.

Командная оболочка
composer require rudel/rudel
wp plugin activate rudel

Composer устанавливает Rudel в vendor/rudel/rudel, если только проект не размещает плагины WordPress в wp-content/plugins (например, с помощью composer/installers). Чтобы wp plugin activate rudel обнаружил плагин, тот должен находиться в каталоге плагинов.

Что делает активация

При активации создаются таблицы Rudel, планируется ежечасная очистка и добавляется строка загрузчика в wp-config.php непосредственно над строкой, загружающей wp-settings.php. Благодаря этой строке Rudel может выбрать песочницу до завершения загрузки WordPress. Сначала Rudel создает резервную копию с именем wp-config.php.rudel-backup-{timestamp}.

Отдельной команды установки нет. Если запись в wp-config.php запрещена, активация завершится ошибкой. Деактивация удаляет строку и запланированное событие.

Проверьте состояние среды выполнения:

Командная оболочка
wp rudel status

Bootstrap installed должно отображать yes.

Создание песочницы

Командная оболочка
wp rudel create --name=alpha --theme=twentytwentyfour

Rudel выводит созданный идентификатор песочницы, например alpha-3be7. Команда клонирует таблицы хоста WordPress в таблицы с отдельным префиксом песочницы, копирует тему в каталог песочницы и сохраняет запись в базе данных хоста WordPress. В примерах ниже используется alpha-3be7; укажите идентификатор, выведенный вашей командой.

Использование WP-CLI в песочнице

Командная оболочка
RUDEL_ENVIRONMENT=alpha-3be7 wp option get blogname

Без RUDEL_ENVIRONMENT команда WP-CLI обращается к хосту.

Направление HTTP в песочницу

Командная оболочка
curl -H 'X-Rudel-Environment: alpha-3be7' http://localhost:8000/

Для сеанса браузера задайте файл cookie rudel_environment с идентификатором песочницы. Rudel считывает файл cookie, но никогда не устанавливает и не удаляет его. Удалите файл cookie, чтобы вернуться к хосту.

Песочница работает на хосте URL. Без заголовка или файла cookie тот же URL обслуживает хост.

Следующие шаги