Installation de l’extension Adobe Commerce B2B
L’extension Adobe Commerce B2B, magento/extension-b2b
est disponible pour toutes les versions prises en charge d’Adobe Commerce. Il est installé après l’installation d’Adobe Commerce.
Conditions
- Adobe Commerce, toutes les versions prises en charge
- PHP 8.1 et 8.2
- Composer
Plateformes prises en charge
- Adobe Commerce sur l’infrastructure cloud (ECE)
- Adobe Commerce sur site (EE)
Etapes d'installation
Conditions préalables
-
Accédez à repo.magento.com pour télécharger l’extension. Pour la génération des clés et l’obtention des droits nécessaires, voir Obtention de vos clés d’authentification.
Enregistrez les clés d’authentification pour l’installation en les définissant globalement dans votre répertoire COMPOSER_HOME. Ou enregistrez-les dans un fichier auth.json dans le répertoire racine de l’application Adobe Commerce.
-
Version prise en charge de l’extension B2B - Déterminez la version la plus récente de l’extension B2B prise en charge sur la version déployée d’Adobe Commerce.
-
Consultez les notes de mise à jour pour obtenir les informations les plus récentes sur la compatibilité des versions, les mises à jour ou les modifications susceptibles d’affecter les exigences d’installation ou de mise à niveau.
Installez l’extension B2B (magento/b2b-extension
) à l’aide du compositeur. L’extension est un métapaquage de compositeur qui inclut la collection de modules qui activent les fonctionnalités B2B pour une instance Adobe Commerce. Pour obtenir la liste des modules inclus, voir Packages B2B.
note tip |
---|
TIP |
Lors de l’installation d’Adobe Commerce B2B sur l’infrastructure cloud, Adobe vous recommande de déployer votre application Adobe Commerce dans un environnement d’intégration ou d’évaluation avant de commencer. |
Adobe recommande de travailler dans une branche de développement lors de l’ajout de l’extension B2B à votre projet. Si vous ne disposez pas d’une branche, voir Création d’une branche pour le développement. Lors de l’installation de l’extension B2B, le nom de l’extension Magento_B2b
est automatiquement inséré dans le fichier app/etc/config.php
. Il n’est pas nécessaire de modifier directement le fichier.
Pour installer l’extension B2B :
-
Sur votre poste de travail local, modifiez le répertoire de votre projet.
-
Créez ou extrayez une branche de développement.
-
Ajoutez l’extension B2B à la section
require
du fichiercomposer.json
.code language-bash composer require magento/extension-b2b --no-update
-
Mettez à jour les dépendances du projet.
code language-bash composer update
-
Ajout, validation et modification du code push.
code language-bash git add -A
code language-bash git commit -m "Install the B2B extension."
code language-bash git push origin <branch-name>
note note NOTE La publication de mises à jour dans l’environnement cloud lance le processus de déploiement cloud de Commerce pour appliquer les modifications. Vérifiez l’état du déploiement à partir du log de déploiement. Si vous rencontrez des erreurs de déploiement, reportez-vous à la section Récupération de l’échec du composant. -
Une fois la création et le déploiement terminés, utilisez SSH pour vous connecter à l’environnement distant et vérifier que l’extension B2B est installée et activée.
code language-bash bin/magento module:status Magento_B2b
Un nom d’extension utilise le format :
<VendorName>_<ComponentName>
.Exemple de réponse :
code language-none Magento_B2b : Module is enabled
-
Dans le répertoire racine de l’application Adobe Commerce, mettez à jour
composer.json
pour ajouter les dépendances de l’extension B2B :code language-bash composer require magento/extension-b2b:<version>
Si une erreur se produit, par exemple :
code language-none [InvalidArgumentException] Could not find a matching version of package magento/extension-b2b.
Vérifiez l’orthographe du module, votre contrainte de version et que le module est disponible et correspond à votre exigence de stabilité minimale (stable).
-
Si vous y êtes invité, saisissez vos clés d'authentification.
Votre clé publique est votre nom d’utilisateur ; votre clé privée est votre mot de passe. Si vous avez stocké vos clés publique et privée dans
auth.json
, vous n’êtes pas invité à vous authentifier. -
Exécutez les commandes suivantes une fois que le compositeur a terminé la mise à jour des modules :
code language-bash bin/magento setup:upgrade
code language-bash bin/magento setup:di:compile
code language-bash bin/magento setup:static-content:deploy -f
code language-bash bin/magento cache:clean
note note NOTE En mode de production, vous pouvez recevoir un message à Please rerun Magento compile command
. Renseignez les commandes pour terminer l'installation. Adobe Commerce ne vous invite pas à exécuter la commande compile en mode Développeur.
Une fois l’installation terminée, configurez et démarrez les consommateurs de messages.
Consommateurs de messages
L’extension Adobe Commerce B2B utilise MySQL pour la gestion de la file d’attente des messages. Le tableau suivant répertorie les consommateurs de messages qui prennent en charge les fonctionnalités B2B. Après avoir installé l’extension, démarrez le message des consommateurs pour les fonctionnalités B2B requises pour votre vitrine Commerce.
sharedCatalogUpdatePrice
sharedCatalogUpdateCategoryPermissions
negotiableQuotePriceUpdate
purchaseorder.toorder
purchaseorder.transactional.email
purchaseorder.validation
quoteItemCleaner
inventoryQtyCounter
async.operations.all
Configuration des consommateurs de messages
Empêchez d’éventuels problèmes ou retards de traitement en ajoutant les paramètres suivants lorsque vous démarrez les consommateurs de messages pour les fonctionnalités B2B.
-
--max-messages <value>
: spécifie le nombre maximal de messages que chaque consommateur doit traiter avant de s’arrêter (par défaut = 10 000). Bien qu’Adobe ne le recommande pas, vous pouvez utiliser 0 pour empêcher le consommateur de s’arrêter. La bonne pratique pour une application PHP est de redémarrer des processus de longue durée afin d’éviter toute fuite de mémoire. -
--batch-size <value>
— Permet de limiter les ressources système consommées par les consommateurs (processeur, mémoire). L’utilisation de lots plus petits réduit l’utilisation des ressources et ralentit donc le traitement. Si spécifié, les messages d’une file d’attente sont consommés par lots de<value>
chacun. Cette option s’applique uniquement au consommateur par lots. Si--batch-size
n’est pas défini, le consommateur de lots reçoit tous les messages disponibles dans une file d’attente.
Pour plus d’informations sur les options de configuration supplémentaires, voir Specific-configuration.
Démarrez le message aux consommateurs
Pour activer des opérations asynchrones pour les fonctionnalités B2B, vous devez démarrer plusieurs consommateurs de messages.
-
Répertorier les consommateurs de messages disponibles :
code language-bash bin/magento queue:consumers:list
La commande renvoie les consommateurs de messages disponibles, y compris tous les consommateurs de messages B2B.
-
Démarrez chaque consommateur séparément :
code language-bash bin/magento queue:consumers:start [--max-messages=<value>] [--batch-size=<value>] <consumer_name>
Par exemple :
code language-bash bin/magento queue:consumers:start quoteItemCleaner
&
à la commande, revenez à une invite et continuez à exécuter les commandes. Par exemple : bin/magento queue:consumers:start sharedCatalogUpdatePrice &
.Pour plus d’informations, voir Gestion des files d’attente de messages dans le Guide de configuration.
Ajout des consommateurs de messages à cron
Vous pouvez automatiser la planification de l’exécution pour les consommateurs de messages SharedCatalogUpdateCategoryPermissions
et SharedCatalogUpdatePrice
en ajoutant la planification au fichier de configuration cron /app/code/Magento/MessageQueue/etc/crontab.xml.
* * * * * ps ax | grep [s]haredCatalogUpdateCategoryPermissions >>/dev/null 2>&1 || nohup php /var/www/html/magento2/bin/magento queue:consumers:start sharedCatalogUpdateCategoryPermissions &
* * * * * ps ax | grep [s]haredCatalogUpdatePrice >>/dev/null 2>&1 || nohup php /var/www/html/magento2/bin/magento queue:consumers:start sharedCatalogUpdatePrice &
Vous pouvez également configurer des plannings pour les consommateurs de messages à partir des paramètres de configuration de magasin dans l’administrateur.
Activation des fonctionnalités B2B dans l’administration
Après avoir installé l’extension Adobe Commerce B2B et démarré les consommateurs de messages, vous devez également activer les fonctionnalités B2B dans l’Admin.