Magento 2 loại bỏ Ước tính chi phí vận chuyển và thuế thuế từ giỏ hàng


19

Tôi muốn thoát khỏi khối "Ước tính chi phí vận chuyển và thuế" trong giỏ hàng. Các devdocs nói Vô hiệu hóa một thành phần là cách để đi, vì vậy tôi đã thử như sau:

<body>
    <referenceBlock name="checkout.cart.shipping">
        <arguments>
            <argument name="jsLayout" xsi:type="array">
                <item name="components" xsi:type="array">
                    <item name="block-summary" xsi:type="array">

                        <!-- My custom part: -->
                        <item name="config" xsi:type="array">
                            <item name="componentDisabled" xsi:type="boolean">true</item>
                        </item>

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

Không có tác dụng. Cũng đã thử:

<referenceBlock name="checkout.cart.shipping" remove="true"/>

Bằng cách này, khối tổng của tôi hoàn toàn trống rỗng.

Có ai có đề nghị?

Câu trả lời:


56

Tôi nghĩ rằng bạn đã nhầm lẫn một số thẻ đóng / mở và số lượng mã này hoạt động:

<referenceBlock name="checkout.cart.shipping">
    <arguments>
        <argument name="jsLayout" xsi:type="array">
            <item name="components" xsi:type="array">
                <item name="block-summary" xsi:type="array">

                    <!-- My custom part: -->
                    <item name="config" xsi:type="array">
                        <item name="componentDisabled" xsi:type="boolean">true</item>
                    </item>

                </item>
            </item>
        </argument>
    </arguments>
</referenceBlock>

Để xóa tiêu đề, hãy ghi đè lên mẫu checkout/cart/shipping.phtmlvà nhận xét / xóa phần sau:

<div class="title" data-role="title">
    <strong id="block-shipping-heading" role="heading" aria-level="2">
        <?php /* @escapeNotVerified */ echo $block->getQuote()->isVirtual() ? __('Estimate Tax') : __('Estimate Shipping and Tax') ?>
    </strong>
</div>

Thật vậy, tôi đã làm rối tung các nút <argument> kép. Tiêu đề vẫn hiển thị mặc dù, nội dung của danh sách thả xuống hiện đang trống .. Có đề xuất nào để loại bỏ hoàn toàn không?
Timon de Groot

Tiêu đề được chỉ định trong mẫu vận chuyển giỏ hàng: /vendor/magento/module-checkout/view/frontend/temsheet/cart/shipping.phtml Bạn có thể di chuyển nó vào mẫu của riêng bạn và xóa văn bản từ đó.
Corefix

1
@TimondeGroot Bạn chỉ có thể xóa phần tiêu đề khỏi tệp mẫu mà không tạo tệp xml bố cục. Bằng cách này, bạn có thể duy trì tính toán vận chuyển trong khối tóm tắt, nhưng ẩn biểu mẫu "Ước tính chi phí vận chuyển và thuế".
Andrea

@Andrea Tôi biết, tôi đã thử cập nhật anwer này, nhưng nó đã bị từ chối ..
Timon de Groot

1
Điều buồn cười là nó không xóa HTML. Chỉ có một "display: none" được thêm vào. Giải pháp phù hợp thực sự là viết lại ước tính vận chuyển.html trong Magento_Checkout / js , và thậm chí tốt hơn, viết lại vận chuyển-ước tính.js , để xóa tất cả thời gian CPU không sử dụng hữu ích.
Pol Ravalitera

6

Tôi cũng cần phải thoát khỏi "Ước tính chi phí vận chuyển và thuế" vì mâu thuẫn với mô-đun thanh toán.

Nếu mục tiêu duy nhất của bạn là không hiển thị khối , tại sao không sử dụng CSS ? Điều này làm việc cho tôi:

.cart-container .cart-summary #block-shipping {
    display: none;
}

(Phiên bản: Magento 2.2.1)

Chỉnh sửa: Tôi đã thử nghiệm ở trên trên 2.3.3 và nó cũng loại bỏ tổng số phụ và tổng số xe. CSS dưới đây sẽ ẩn chỉ vận chuyển ước tính và thuế. Đối với phiên bản 2.3.3:

.checkout-cart-index # block-Shipping {display: none; }


Nơi nào để wite css này ??
Manish

Cách tốt nhất là sử dụng tệp CSS tùy chỉnh ghi đè mã css nhưng không yêu cầu bạn thay đổi mã gốc. Có rất nhiều hướng dẫn trên mạng về cách làm điều đó.
cửa hàng

2
Giải pháp tốt nhất và tối ưu sẽ là cách bố trí. Nếu bạn áp dụng màn hình: không có khối nào vẫn tải js (sử dụng tài nguyên)
Beto Castillo

3

Bạn chỉ có thể thêm các mục sau vào checkout_cart_index.xml (trong chủ đề tùy chỉnh của bạn, không phải cốt lõi)

<referenceBlock name="checkout.cart.shipping" display="false"/>

1
Điều này cũng loại bỏ các tổng số, do đó, không đủ chi tiết để phục vụ
Robert Egginton

1
Xin lưu ý rằng mã ở trên sẽ xóa tất cả các tổng do lỗi magento: github.com/magento/magento2/issues/19347
Scriptman
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.