Je souhaite déplacer le bouton de commande du paiement vers la barre latérale de la page de paiement.
N'importe qui peut me faire une suggestion?
Edit : Est-ce même possible (avec la réponse / approche fournie) ?
D'après mes recherches, chaque méthode de paiement a son propre modèle .html, y compris un propre bouton. Ce bouton n'est pas chargé à partir d'un modèle knockout.js. Par exemple, une partie du mode de paiement "gratuit":
<div class="checkout-agreements-block">
<!-- ko foreach: $parent.getRegion('before-place-order') -->
<!-- ko template: getTemplate() --><!-- /ko -->
<!--/ko-->
</div>
<div class="actions-toolbar">
<div class="primary">
<button class="action primary checkout"
type="submit"
data-bind="
click: placeOrder,
attr: {title: $t('Place Order')},
css: {disabled: !isPlaceOrderActionAllowed()}
">
<span data-bind="i18n: 'Place Order'"></span>
</button>
</div>
</div>
Alors que la méthode de paiement par "chèque / mandat" ressemble à ceci (seules les différences sont enable: (getCode() == isChecked())
mais bon, il y a toujours des différences et il n'y a pas de "1 bouton de commande général tout-puissant"):
<div class="checkout-agreements-block">
<!-- ko foreach: $parent.getRegion('before-place-order') -->
<!-- ko template: getTemplate() --><!-- /ko -->
<!--/ko-->
</div>
<div class="actions-toolbar">
<div class="primary">
<button class="action primary checkout"
type="submit"
data-bind="
click: placeOrder,
attr: {title: $t('Place Order')},
css: {disabled: !isPlaceOrderActionAllowed()},
enable: (getCode() == isChecked())
"
disabled>
<span data-bind="i18n: 'Place Order'"></span>
</button>
</div>
</div>
La réponse fournie ne déplace que les agrégats, ce qui se traduit par quelque chose comme ceci:
la source
Réponses:
J'avais la même exigence de changer le bouton de commande en bas du bloc récapitulatif. Puisqu'un bouton de commande est affecté à chaque mode de paiement. J'ai créé un bouton de commande personnalisé à côté du bloc récapitulatif de la commande. En cliquant sur le bouton, j'ai déclenché le bouton de commande du mode de paiement sélectionné.
Étape 1:
Créez un
checkout_index_index.xml
fichier dansÉtape 2:
Créer un fichier
summary.html
dans le cheminÉtape 3:
Créer un fichier
summary.js
dans le cheminÉtape 4:
Pour masquer le bouton de commande par défaut, utilisez le fichier CSS comme suit
Ci-joint la capture d'écran!
la source
Toutes ces réponses ne sont pas complètes car il manque le fichier registration.php pour le module d'enregistrement
C'est la meilleure réponse que j'ai trouvée.
https://github.com/davidroberto/magento2-place_order_sidebar
Voici le module complet qu'il vous suffit de placer sous App / code et d'exécuter la configuration de php bin / magento: commande de mise à niveau
J'espère que cette aide !!!
la source
au début, vous devez créer checkout_index_index.xml dans votre thème, puis vous devez désactiver l'élément avant de passer la commande sur la ligne 314:
avec:
Ensuite, vous devez rajouter cet élément à la fin de votre commande, après le bouton de commande, comme ceci:
Copiez ensuite dans votre modèle par défaut (html) après avoir passé la commande:
la source