Además de instalar las extensiones de Magento manualmente a través de SSH, también puedes ampliar las capacidades utilizando el Commerce Marketplace de Adobe como repositorio para agregarlas. Por ejemplo, puedes adquirir un tema para cambiar la apariencia, un paquete de idioma o algún módulo para añadir diferentes pagos en línea utilizando Composer para instalar.
En este artículo explicamos los primeros los pasos que debes realizar para la instalación de un módulo del repositorio oficial mediante Composer y además te indicaremos diferentes acciones que puedes realizar para la administración de estas extensiones.
Obtención y configuración de llaves
Primero será necesario iniciar sesión o registrarte en Adobe Magento, así podrás obtener las llaves necesarias para Composer haciendo clic en Access Keys de tu perfil del Marketplace.
Desde esa ubicación podrás generar o obtener las llaves para la versión correspondiente de Magento.
Tienes más información en la documentación oficial sobre cómo obtener las llaves haciendo clic aquí.
Una vez obtenidas las llaves, accede al servidor por SSH y copia el fichero de ejemplo de autentificación para Composer:
# cp /var/www/html/magento2/auth.json.sample /var/www/html/magento2/auth.json
Luego, edita el fichero copiado de las credenciales:
# nano /var/www/html/magento2/auth.json
E introduce la llave pública y privada dentro de las comillas en cada apartado correspondiente:
"username": "<public-key>",
"password": "<private-key>"
También añade o comprueba la existencia del repositorio de Magento en el fichero de Composer:
# nano /var/www/html/magento2/composer.json
El fichero debe contener las siguientes líneas dentro, en caso negativo puedes añadirlas después del primer corchete:
"repositories": [
{
"type": "composer",
"url": "https://repo.magento.com/"
}
],
Tienes más información en la documentación oficial sobre Composer haciendo clic aquí.
Actualización de Composer
Antes de instalar la extensión, es posible que solicite la actualización de Composer, por lo tanto, ejecuta:
# composer update
Pero en el caso que hayas instalado Composer a través del repositrio apt o similar, no estará disponible la actualización y dará error. Por ello, obtén el instalador de Composer:
# php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
Antes de instalarlo comprueba la ruta de la actual instalación:
# which composer
Mostrará la ruta, por ejemplo /usr/bin/composer (por defecto en la imagen preinstalada). Para instalarlo en mismo directorio ejecuta el siguiente comando indicando la ruta del directorio binario:
# php composer-setup.php --install-dir=/usr/bin --filename=composer
Posteriormente, podrás actualizar Composer con normalidad:
# composer update
Instalación de un módulo
Una vez realizados todos los pasos previos, puedes adquirir el módulo deseado desde el Market, una vez completado el proceso en My Purchases deberá aparecer la extensión o extensiones disponibles:
Con ello, puedes comprobar el nombre en "Component name" e instalar módulo mediante Composer:
# composer require stripe/stripe-payments
Después requerirá registrar extensión en Magento actualizándolo:
# php bin/magento setup:upgrade
Aunque en caso que sea un entorno en producción será necesario posteriormente ejecutar:
# php bin/magento setup:di:compile && php bin/magento setup:static-content:deploy -f
Finalmente, es recomendable limpiar cache de Magento:
# php bin/magento cache:flush && php bin/magento cache:clean
Con esta última acción el módulo estará instalado y activo en Magento.
Información importante
Al utilizar o realizar cambios mediante Composer con otro usuario, se modificará la propiedad de ficheros y directorios, por lo tanto, será necesario verificar o modificar la propiedad en el directorio de Magento 2 para el usuario Web correspondiente.
A continuación te explicamos varias acciones que te pueden ser de utilidad en la administración de módulos.
Verificación de estado de módulos
Verificar el estado de los módulo instalados consultándolo en la base de datos de Magento:
# mysql -u root -e "SELECT * from magento.setup_module"
Consulta de estado de módulos utilizando el binario de Magento:
# bin/magento module:status
Consulta de estado de un único módulo utilizando el binario:
# bin/magento module:status nombre-modulo
Activar o desactivar un módulo
Activación de un módulo:
# bin/magento module:enable nombre-modulo --clear-static-content
Desactivación de un módulo:
# bin/magento module:disable nombre-modulo --clear-static-content
Actualización o instalación de versión especifica de un módulo
Actualización de un módulo:
# composer update vendedor/nombre-modulo
Instalación de un módulo especificando versión:
# composer require vendedor/nombre-modulo ^x.x.x
Actualización de Magento para registrar la instalación o actualización de un módulo:
# bin/magento setup:upgrade --keep-generated
Limpiar cache de Magento:
# bin/magento setup:static-content:deploy -f
# bin/magento cache:clean
Desinstalación de módulo:
Eliminación del módulo:
# composer remove stripe/stripe-payments
Registrar desinstalación del módulo en Magento:
# php bin/magento setup:upgrade
Reconfigurar Magento:
# php bin/magento setup:di:compile
Limpiar cache de Magento:
# php bin/magento setup:static-content:deploy -f
# php bin/magento cache:clean
Esperamos que este artículo te haya sido de ayuda, si tienes consultas sobre esta u otra cuestión relacionada con tus servidores en Clouding, no dudes en contactar a soporte@clouding.io. ¡Estamos para ayudarte!