Přejít k obsahu

Začínáme

Požadavky

  • PHP 8.2+
  • WordPress 6.4+
  • MySQL nebo MariaDB přes běžné databázové připojení WordPress
  • zapisovatelný wp-config.php při aktivaci pluginu

Instalace

Nainstalujte Rudel pomocí Composer a aktivujte jej jako běžný plugin WordPress.

Shell
composer require rudel/rudel
wp plugin activate rudel

Composer instaluje Rudel do vendor/rudel/rudel, pokud projekt nemapuje pluginy WordPress do wp-content/plugins (například pomocí composer/installers). Plugin musí být v adresáři pluginů, aby jej wp plugin activate rudel našel.

Co provede aktivace

Aktivace vytvoří tabulky Rudel, naplánuje hodinovou událost čištění a přidá jeden řádek bootstrapu do wp-config.php přímo nad řádek, který načítá wp-settings.php. Tento řádek umožňuje Rudel vybrat sandbox ještě před dokončením načítání WordPress. Rudel nejprve vytvoří záložní kopii s názvem wp-config.php.rudel-backup-{timestamp}.

Samostatný instalační příkaz neexistuje. Pokud do wp-config.php nelze zapisovat, aktivace se nezdaří. Deaktivace odstraní řádek i naplánovanou událost.

Zkontrolujte stav běhového prostředí:

Shell
wp rudel status

Bootstrap installed by měl zobrazovat yes.

Vytvoření sandboxu

Shell
wp rudel create --name=alpha --theme=twentytwentyfour

Rudel vypíše vygenerované ID sandboxu, například alpha-3be7. Naklonuje tabulky hostitele WordPress pod prefix tabulek určený pro sandbox, zkopíruje motiv do adresáře sandboxu a uloží záznam do databáze hostitele WordPress. Následující příklady používají alpha-3be7; použijte ID vypsané vaším příkazem.

Použití WP-CLI v sandboxu

Shell
RUDEL_ENVIRONMENT=alpha-3be7 wp option get blogname

Bez RUDEL_ENVIRONMENT komunikuje WP-CLI s hostitelem.

Směrování HTTP do sandboxu

Shell
curl -H 'X-Rudel-Environment: alpha-3be7' http://localhost:8000/

Pro relaci v prohlížeči nastavte cookie rudel_environment s ID sandboxu. Rudel cookie čte, ale nikdy ji nenastavuje ani nemaže. Smažte cookie, chcete-li se vrátit k hostiteli.

Sandbox běží na hostiteli URL. Bez hlavičky nebo cookie poskytuje stejný URL obsah hostitele.

Další kroky