Est-ce que quelqu'un sait s'il est possible de déplacer l'étape d'enregistrement du client vers la caisse comme dans la caisse d'origine de Magento 1? Vous cherchez une extension qui fera cela pour moi ou des conseils sur la façon dont je pourrais y parvenir.
8
Réponses:
Je procéderais en créant une étape de paiement qui détecte le temps que vous êtes connecté et affiche ensuite le formulaire en conséquence.
Chargez le formulaire d'inscription dans cette étape via ajax et modifiez l' événement après l' enregistrement en détectant si l'inscription a été redirigée vers la caisse au lieu du tableau de bord.
Je suis allé jusqu'à ajouter une étape de travail qui montre quand il n'est pas connecté pour l'enregistrement et rediriger le succès de l'enregistrement vers la caisse en désactivant l'étape précédente pour une expérience utilisateur fluide.
Offrir une option de connexion si l'utilisateur a un compte mais ne s'est pas connecté à ce stade serait encore amélioré ici.
C'est du code complet si vous voulez vérifier tout cela était beaucoup à inclure dans la réponse:
Créez un formulaire d'inscription dans le contrôleur:
Comme les étapes de vérification ont besoin
php
d'être exécutées pour obtenir l'url et la clé du formulaire, etc., un contrôleur sera nécessaire pour que nous puissions charger ce formulaire de registre via ajax dans l'étape.Ce qui suit rend les blocs d'enregistrement dans le contrôleur afin que nous puissions ensuite appeler ajax dans la caisse.
Assurez-vous d'ajouter routes.xml dans le dossier etc / frontend du module.
Créez une étape de paiement:
Comme c'est la première étape, assurez-vous d'ajouter les mixins comme je l'ai fait dans le module, car les devdocs sont incorrects, ce qui conduit à chaque étape:
Cela échouait si le bloc n'avait pas été chargé avant l'appel ajax mais a fini par utiliser quelque chose comme ça pour obtenir notre formulaire d'inscription du contrôleur et le cracher sur l'étape:
Il y a beaucoup plus d'étapes ici, suivez simplement les devdocs en vous assurant de faire le mixin mais utilisez ci-dessous pour le mixin car l'exemple devdocs ne fonctionne pas:
Les principales différences étaient que les étapes de paiement et d'expédition utilisent isVisible et Visible et devdocs n'utilise que visible dans l'exemple, donc isVisible devait être ajouté pour corriger. A également dû faire des ajustements pour si l'étape était désactivée.
Modifier la redirection d'inscription:
Exemple approximatif mais a également dû remplacer le register.phtml pour ajouter la variable de validation de paiement pour déterminer la différence entre les 2 formulaires. Il y avait beaucoup d'étapes que je n'ai pas montrées mais vérifiez le module que j'ai créé pour un exemple complet.
la source