Magento 2 - Sipariş Ver Düğmesi ile İnceleme ve Ödemeler Bölümünden Sonra Ekstra Ödeme Adımı Nasıl Eklenir


12

"İnceleme ve ödemeler" bölümünden sonra ek bir ödeme adımı eklemeye çalışıyorum. Koşul, ödemeyi bölmek ve ayrı bir adım olarak gözden geçirmektir. Ödeme yöntemi seçildikten sonra, tüm sipariş bilgilerinin "sipariş ver" düğmesiyle gösterilmesi gereken Son adım "inceleme" ye gitmelidir.

şimdiye kadar aşağıdaki adımları izleyerek ödeme adımından sonra özel bir adım ekledim. http://devdocs.magento.com/guides/v2.0/howdoi/checkout/checkout_new_step.html

Ancak buradaki sorun "Sipariş Ver" Düğmesinin Ödeme Adımı ile bağlanmış olması, yer siparişi düğmesini Son Adım'a taşımam gerekiyor.

Herhangi bir Yardım En Takdir !!


Ödeme yapıldıktan sonra son olarak bir adım eklemeyi başardınız mı?
Ravi Bhalodia

@rameshpushparaj Bunu yaptınız mı?
Arshad Hussain

Burada da aynı sorun var mı?
Diego Queiroz

Buna bir alternatif, başarı adımına bir sipariş özeti eklemektir. Yer siparişi düğmesi ödeme adımına bağlanır, çünkü müşteri ödeme yapar ve siparişi bitirmezse sorun olur, bu durumda ödeme herhangi bir siparişe ait olmaz.
Sanne

Yanıtlar:


0

Aşağıda bir adım ekledim. lütfen adımı takip et

1. checkout_index_index.xml dosyanızı mizanpaj klasöründe oluşturun

Uygulamanın / kod / SatıcıAdı / PlaceOrder / görünüm / kullanıcı arayüzü / düzen

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="checkout" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <head>
        <css src="VendorName_PlaceOrder::css/place_order_button.css"/>
    </head>
    <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="sidebar" xsi:type="array">
                                    <item name="children" xsi:type="array">
                                        <item name="newstep" xsi:type="array">
                                            <item name="component" xsi:type="string">VendorName_PlaceOrder/js/view/newstep</item>
                                            <item name="config" xsi:type="array">
                                                <item name="template" xsi:type="string">VendorName_PlaceOrder/newstep</item>
                                            </item>
                                        </item>
                                    </item>
                                </item>
                            </item>
                        </item>
                    </item>
                </argument>
            </arguments>
        </referenceBlock>
    </body>
</page>

2. şablonda newstep.html dosyası oluşturun

Uygulamanın / kod / SatıcıAdı / PlaceOrder / görünüm / kullanıcı arayüzü / web / şablon

<div class="opc-block-newstep" data-bind="blockLoader: isLoading">
    <span data-bind="i18n: 'Order newstep'" class="title"></span>
    <!-- ko foreach: elems() -->
        <!-- ko template: getTemplate() --><!-- /ko -->
    <!-- /ko -->
</div>
<!-- ko if: (isVisible()) -->
<div class="actions-toolbar-trigger" id="place-order-trigger-wrapper">
    <button type="button" class="button action primary" id="place-order-trigger" value="Place Order" >
        <span>Place Order</span>
    </button>
</div>
<!-- /ko -->
  1. Yolda newstep.js dosyası oluşturun

Uygulama / kod / SatıcıAdı / PlaceOrder / görünüşüdür / ön / ağ / js / görünüşüdür

define(
    [
        'jquery',
        'ko',
        'Magento_Checkout/js/view/newstep',
        'Magento_Checkout/js/model/step-navigator',
    ],
    function(
        $,
        ko,
        Component,
        stepNavigator
    ) {
        'use strict';

        return Component.extend({

            isVisible: function () {
                return stepNavigator.isProcessed('shipping');
            },
            initialize: function () {
                $(function() {
                    $('body').on("click", '#place-order-trigger', function () {
                        $(".payment-method._active").find('.action.primary.checkout').trigger( 'click' );
                    });
                });
                var self = this;
                this._super();
            }

        });
    }
);

4. checkout_index_index.xml dosyasında şart ve koşul ekle onay kutusu için:

<?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="sidebar" xsi:type="array">
                                        <item name="children" xsi:type="array">

                                            <item name="newstep" xsi:type="array">
                                                <item name="children" xsi:type="array">

                                                    <item name="agreements" xsi:type="array">
                                                        <item name="component" xsi:type="string">Magento_CheckoutAgreements/js/view/checkout-agreements</item>
                                                        <item name="sortOrder" xsi:type="string">100</item>
                                                        <item name="displayArea" xsi:type="string">before-place-order</item>
                                                        <item name="dataScope" xsi:type="string">checkoutAgreements</item>
                                                        <item name="provider" xsi:type="string">checkoutProvider</item>
                                                    </item>

                                                    <item name="agreements-validator" xsi:type="array">
                                                        <item name="component" xsi:type="string">Magento_CheckoutAgreements/js/view/agreement-validation</item>
                                                    </item>

                                                </item>
                                            </item>
                                        </item>
                                    </item>
                                </item>
                            </item>
                        </item>
                    </argument>
                </arguments>
            </referenceBlock>
        </body>
    </page>

Bu cevapta place_order_button.css dosyası eksik
Vignesh Bala

Bu çözüm sorununuzu çözdü mü? aslında, aynı görevi yapmak zorundayım
Akash Agrawal
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.