Magento 2 – Changer l'ordre des champs lors du paiement

un problème, que nous avons encore et encore avec les boutiques en ligne allemandes, quand nous avons mis en place Magento, est, entre autres, le mauvais ordre des champs d'adresse dans la zone de paiement.

Bien sûr, vous pouvez également modifier les champs dans le même ordre villeCode postal laisser, cependant, cela y conduit toujours, que les clients remplissent les champs dans l'ordre qu'ils connaissent puis lors de la création (automatique) problèmes d'étiquette d'expédition.

Donc, comme toujours, échangeons les champs dans l'ordre souhaité. En Magento 1 était-ce très facile à faire, car il suffisait de trouver le bon PHTML et de mettre les champs dans le bon ordre. dans Magento 2 nous pouvons le faire un peu différemment, en créant le fichier checkout_index_index.xml et en le plaçant dans le dossier app/design/frontend/[Thème]/[désignation]/Magento_Checkout/layout/ablegen.

Ce fichier contient alors le contenu suivant:

<?xml version="1.0"?>

<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
      <referenceBlock name="checkout.root">
          <arguments>
              <argument name="jsLayout" xsi:type="array">
                  <item name="components" xsi:type="array">
                      <item name="checkout" xsi:type="array">
                          <item name="children" xsi:type="array">
                              <item name="steps" xsi:type="array">
                                  <item name="children" xsi:type="array">
                                      <item name="shipping-step" xsi:type="array">
                                          <item name="children" xsi:type="array">
                                              <item name="shippingAddress" xsi:type="array">
                                                  <item name="children" xsi:type="array">
                                                      <!-- The name of the form the field belongs to -->
                                                      <item name="shipping-address-fieldset" xsi:type="array">
                                                          <item name="children" xsi:type="array">
                                                              <item name="city" xsi:type="array">
                                                                  <item name="sortOrder" xsi:type="string">600</item>
                                                              </item>
                                                              <item name="region_id" xsi:type="array">
                                                                  <item name="sortOrder" xsi:type="string">800</item>
                                                              </item>
                                                              <item name="street" xsi:type="array">
                                                                  <item name="sortOrder" xsi:type="string">4</item>
                                                              </item>
                                                              <item name="postcode" xsi:type="array">
                                                                  <item name="sortOrder" xsi:type="string">500</item>
                                                              </item>
                                                              <item name="country_id" xsi:type="array">
                                                                  <item name="sortOrder" xsi:type="string">700</item>
                                                              </item>
                                                              <item name="lastname" xsi:type="array">
                                                                  <item name="sortOrder" xsi:type="string">2</item>
                                                              </item>
                                                              <item name="firstname" xsi:type="array">
                                                                  <item name="sortOrder" xsi:type="string">1</item>
                                                              </item>
                                                              <item name="company" xsi:type="array">
                                                                  <item name="sortOrder" xsi:type="string">3</item>
                                                              </item>
                                                              <item name="telephone" xsi:type="array">
                                                                  <item name="sortOrder" xsi:type="string">900</item>
                                                              </item>
                                                          </item>
                                                      </item>
                                                  </item>
                                              </item>
                                          </item>
                                      </item>
                                  </item>
                              </item>
                          </item>
                      </item>
                  </item>
              </argument>
          </arguments>
      </referenceBlock>
    </body>
</page>

Une fois le fichier créé et téléchargé, il est préférable d'exécuter la commande SSH suivante:

php bin/magento cache:clean

Les champs sont alors dans le bon ordre.

Une chose est frappante: “rue” n'est pas reconnu correctement. Si vous attribuez la commande normalement à partir de 1-8 devient l'adresse- / ligne de rue(n) toujours à la fin, apparaissent après tous les autres champs d'adresse. Mais vous affectez tous les champs, qui devrait apparaître derrière la route un chiffre plus grand / même 100 et les champs, qui devrait apparaître devant la route un nombre plus petit / même 50, la commande est correcte. Vous pouvez également découper votre propre entrée pour la rue en haut du xml.

Verwendet in Magento CE 2.4.2

Publié par Covos

Depuis 2009 Je travaille intensément avec Magento. J'ai commencé avec la création et l'exploitation des magasins B2C. Cela a été prolongé par mon travail dans le secteur de la logistique. Il en est résulté premiers systèmes de B2E spécialisés. Aujourd'hui, je travaille jour par jour avec B2C passionnant, B2B- et les projets B2E et rapports dans ce blog sur les défis et donner des conseils d'initiés.

Laisser un commentaire

Votre adresse email ne sera pas publié. les champs requis sont indiqués *