wp-cli/package-command
Adds WP-CLI’s package management commands. List installed packages, browse available ones, and install or uninstall community-maintained WP-CLI extensions. Uses Composer under the hood to manage dependencies and autoloading.
~/.wp-cli/packages/ directory structure, and WP-CLI’s dependency resolution). Laravel’s ecosystem (e.g., Artisan, Composer autoloading, Laravel Mix) does not natively integrate with WP-CLI’s package system.composer integration or tools like Laravel Envoyer or Laravel Forge may suffice without WP-CLI dependency.wp-cli/server-command) in a Laravel project.wp package install vs. composer require).~/.wp-cli/packages/, which is external to Laravel’s vendor/. This could lead to path management complexity if packages need to interact with Laravel’s autoloader.composer.json.~/.wp-cli/packages/ permissions)?wp-cli/server-command) in a Laravel + WordPress hybrid project.composer require instead).composer global require wp-cli/wp-cli
or via system package manager (e.g., apt-get install wp-cli).wp package install wp-cli/package-command
wp package install <package> for WP-CLI-specific tools.composer require).vendor/ directory to Laravel’s composer.json autoload:
"autoload": {
"psr-4": {
"App\\": "app/",
"Vendor\\WPCLI\\Package\\": "vendor/wp-cli/package-command/src/"
}
}
composer dump-autoload.wp-cli/package-command may need WP-CLI ≥ 2.0).WP_CLI_PACKAGES_DIR; ensure it doesn’t clash with Laravel’s storage paths.vendor/ or autoload_psr4.php.wp-cli/server-command) and test its functionality in Laravel.deploy.php in Envoyer).wp package install wp-cli/server-command --no-interaction
composer dump-autoload
wp package update, not composer update.deploy.php).~/.wp-cli/packages/ are global, not project-scoped, which could cause version conflicts in shared environments.| Failure Scenario | Impact | Mitigation |
|---|---|---|
| WP-CLI not installed | Package commands fail. | Enforce WP-CLI as a dev dependency (composer require --dev wp-cli/wp-cli). |
| Composer dependency conflicts | WP-CLI package breaks Laravel autoloading. | Test in isolation; use --ignore-platform-reqs if needed. |
Permission issues (~/.wp-cli/) |
Package installation fails due to permissions. | Set correct permissions (chmod -R 755 ~/.wp-cli). |
| Outdated WP-CLI version | Package requires newer WP-CLI. | Pin WP-CLI version in composer.json. |
| Package autoloading conflicts | WP-CLI package namespace clashes with Laravel. | Use unique namespaces or alias packages in composer.json. |
| CI/CD pipeline breaks | WP-CLI package installation fails in CI. | Cache ~/.wp-cli/ or use --no-interaction. |
How can I help you explore Laravel packages today?