Usar MeteorGPL en un proyecto Bedrock
Bedrock ya instala WordPress, los plugins y los temas con Composer. Añade un repositorio y tus plugins y temas premium se unirán a ellos, versionados y fijados.
Sobre esta guía
- Dificultad
- Principiante
- Tiempo de realización
- 10 minutos
- Tiempo de lectura
- 4 min de lectura
Requisitos previos
- Un proyecto Bedrock (roots/bedrock) y Composer 2
- Una cuenta de MeteorGPL con acceso al repositorio y un token de Composer
- Las claves de licencia de tus plugins premium, de sus proveedores
En esta guía
Bedrock gestiona un sitio de WordPress completo con Composer: el propio WordPress es una dependencia, los plugins de WordPress.org proceden de un espejo de Composer del directorio de plugins, y composer/installers envía cada paquete a web/app/plugins o web/app/themes. Los plugins premium son el hueco habitual: se hace commit de ellos en el repositorio o se suben a mano. MeteorGPL cubre ese hueco con un repositorio más.
Paso 1 — Guarda tu token
Si aún no lo has hecho en esta máquina, crea un token en Configuración → Tokens de Composer y dáselo a Composer:
composer config --global http-basic.composer.meteorgpl.ddev.site token <your-token>
El nombre de usuario es literalmente la palabra token. Para un proyecto de equipo, usa un token de la organización (sigue funcionando cuando alguien se va); para servidores y CI, lee Tokens de Composer en CI.
Paso 2 — Añade el repositorio
El composer.json de Bedrock ya tiene una lista repositories. Añade MeteorGPL a ella:
"repositories": [
{
"type": "composer",
"url": "https://composer.meteorgpl.ddev.site"
}
]
Conserva las entradas que trae Bedrock; la nueva va junto a ellas.
Paso 3 — Comprueba las rutas de instalación (no hay nada que cambiar)
Bedrock requiere composer/installers y asigna los tipos de paquete de WordPress a sus propias carpetas:
"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 publica los plugins como wordpress-plugin y los temas como wordpress-theme, así que siguen estas reglas sin ninguna configuración adicional.
Paso 4 — Añade tus plugins y temas premium
composer require meteorgpl-plugin/elementor-pro:^3.21 meteorgpl-theme/rehub-theme:^19.0
El plugin acaba en web/app/plugins/elementor-pro/ y el tema en web/app/themes/rehub-theme/. Los nombres de paquete son siempre meteorgpl-plugin/<slug> para los plugins y meteorgpl-theme/<slug> para los temas, donde el slug es el nombre de la carpeta que distribuye el proveedor; la página de cada paquete muestra el comando exacto.
Haz commit de composer.json y composer.lock, no del código instalado. El archivo de bloqueo registra cada versión y la suma de comprobación de su zip, de modo que todos los entornos instalan los mismos archivos.
Paso 5 — Activa el plugin y añade tus claves de licencia
Activa el plugin en el administrador de WordPress o con WP-CLI:
wp plugin activate elementor-pro
Los paquetes no se modifican: las comprobaciones de licencia del proveedor están intactas, así que activa el plugin con la clave que compraste al proveedor. La bóveda de claves de licencia (Configuración → Claves de licencia) guarda tus claves cifradas y te avisa antes de que caduquen.
Paso 6 — Despliega
En el servidor, o en el pipeline que compila la versión que se despliega, Composer también necesita el token. O bien lo guardas una vez para el usuario de despliegue:
composer config --global http-basic.composer.meteorgpl.ddev.site token <deploy-token>
o bien lo pasas en la variable de entorno COMPOSER_AUTH, y después instalas exactamente lo que indica el archivo de bloqueo:
composer install --no-dev --prefer-dist --no-interaction
Usa un token distinto para cada servidor o pipeline, limitado a los paquetes que necesita el sitio: si uno se filtra, revocas ese y todo lo demás sigue funcionando.
Actualizar
composer update meteorgpl-plugin/elementor-pro
lleva el plugin a la versión más reciente que permite tu restricción y actualiza composer.lock. Prueba, haz commit y despliega. Todas las versiones publicadas siguen disponibles, así que una reversión es un composer require con el número de la versión anterior. Para enterarte de las nuevas versiones y los avisos de seguridad, lee Mantener los plugins al día y vigilar las vulnerabilidades.