Utiliser MeteorGPL dans un projet Bedrock
Bedrock installe déjà WordPress, les extensions et les thèmes avec Composer. Ajoutez un dépôt, et vos extensions et thèmes premium les rejoignent, versionnés et verrouillés.
À propos de ce guide
- Difficulté
- Débutant
- Temps nécessaire
- 10 minutes
- Temps de lecture
- 3 min de lecture
Prérequis
- Un projet Bedrock (roots/bedrock) et Composer 2
- Un compte MeteorGPL avec accès au dépôt et un jeton Composer
- Les clés de licence de vos extensions premium, fournies par leurs éditeurs
Dans ce guide
Bedrock gère tout un site WordPress avec Composer : WordPress lui-même est une dépendance, les extensions de WordPress.org proviennent d’un miroir Composer du répertoire des extensions, et composer/installers envoie chaque paquet vers web/app/plugins ou web/app/themes. Les extensions premium sont le point faible habituel : elles sont versionnées dans le dépôt du projet ou téléversées à la main. MeteorGPL comble cette lacune avec un dépôt de plus.
Étape 1 — Enregistrer votre jeton
Si vous ne l’avez pas encore fait sur cette machine, créez un jeton dans Paramètres → Jetons Composer et transmettez-le à Composer :
composer config --global http-basic.composer.meteorgpl.ddev.site token <your-token>
Le nom d’utilisateur est littéralement le mot token. Pour un projet d’équipe, utilisez un jeton d’organisation (il continue de fonctionner lorsque des personnes partent) ; pour les serveurs et la CI, lisez Jetons Composer en CI.
Étape 2 — Ajouter le dépôt
Le composer.json de Bedrock contient déjà une liste repositories. Ajoutez-y MeteorGPL :
"repositories": [
{
"type": "composer",
"url": "https://composer.meteorgpl.ddev.site"
}
]
Conservez les entrées fournies avec Bedrock ; la nouvelle vient se placer à côté d’elles.
Étape 3 — Vérifier les chemins d’installation (rien à changer)
Bedrock requiert composer/installers et associe les types de paquets WordPress à ses propres dossiers :
"extra": {
"installer-paths": {
"web/app/mu-plugins/{$name}/": ["type:wordpress-muplugin"],
"web/app/plugins/{$name}/": ["type:wordpress-plugin"],
"web/app/themes/{$name}/": ["type:wordpress-theme"]
},
"wordpress-install-dir": "web/wp"
}
MeteorGPL publie les extensions avec le type wordpress-plugin et les thèmes avec le type wordpress-theme, de sorte qu’ils suivent ces règles sans configuration supplémentaire.
Étape 4 — Ajouter vos extensions et thèmes premium
composer require meteorgpl-plugin/elementor-pro:^3.21 meteorgpl-theme/rehub-theme:^19.0
L’extension arrive dans web/app/plugins/elementor-pro/, le thème dans web/app/themes/rehub-theme/. Les noms de paquets sont toujours meteorgpl-plugin/<slug> pour les extensions et meteorgpl-theme/<slug> pour les thèmes, où le slug est le nom du dossier que livre l’éditeur ; la page de chaque paquet affiche la commande exacte.
Versionnez composer.json et composer.lock, pas le code installé. Le fichier lock enregistre chaque version et la somme de contrôle de son zip, de sorte que chaque environnement installe les mêmes fichiers.
Étape 5 — Activer l’extension et ajouter vos clés de licence
Activez l’extension dans l’administration WordPress, ou avec WP-CLI :
wp plugin activate elementor-pro
Les paquets ne sont pas modifiés : les vérifications de licence de l’éditeur sont intactes, activez donc l’extension avec la clé achetée auprès de l’éditeur. Le coffre de clés de licence (Paramètres → Clés de licence) conserve vos clés chiffrées et vous prévient avant leur expiration.
Étape 6 — Déployer
Sur le serveur, ou dans le pipeline qui construit la version à déployer, Composer a lui aussi besoin du jeton. Enregistrez-le une fois pour l’utilisateur de déploiement :
composer config --global http-basic.composer.meteorgpl.ddev.site token <deploy-token>
ou transmettez-le dans la variable d’environnement COMPOSER_AUTH, puis installez exactement ce qu’indique le fichier lock :
composer install --no-dev --prefer-dist --no-interaction
Utilisez un jeton distinct pour chaque serveur ou pipeline, limité aux paquets dont le site a besoin : si l’un d’eux fuit, vous révoquez celui-là et rien d’autre ne cesse de fonctionner.
Mettre à jour
composer update meteorgpl-plugin/elementor-pro
fait passer l’extension à la version la plus récente que permet votre contrainte et met à jour composer.lock. Testez, versionnez, déployez. Chaque version publiée reste disponible, donc un retour arrière consiste à lancer composer require avec le numéro de la version précédente. Pour être informé des nouvelles versions et des avis de sécurité, lisez Maintenir les extensions à jour et surveiller les vulnérabilités.