如何在一个div中加载WooCommerce和cart-collaterals

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (42)

我正在尝试将WooCommerce .cross-sellsdiv 加载到.cart-collaterals-cross-sell已经包含的自定义div 中.cart-collaterals elements,以便我可以在一行中更好地设置它们。目前.cross-sells由cross-sells.php加载并且我试图将它的代码实现到cart.php中,这样我在一个文件中有两个函数,并且我可以将它们放在同一个div中。问题是当我复制cart.php中的代码时,交叉销售不会加载

这是cart.php的原始代码,其中已包含了 .cart-collaterals

<div class="cart-collaterals-cross-sell">
<div class="cart-collaterals">

    <h2><?php _e( 'Cart totals', 'woocommerce' ); ?></h2>

    <?php if ( ! is_ajax() && wc_coupons_enabled() ) { ?>
        <div class="nm-coupon-wrap">
            <div class="nm-coupon-inner">
                <a href="#" id="nm-coupon-btn"><?php esc_html_e( 'Gutschein', 'nm-framework' ); ?></a>

                <div class="nm-coupon">
                    <input type="text" id="nm-coupon-code" class="input-text" name="nm_coupon_code" value="" placeholder="<?php esc_attr_e( 'Coupon code', 'woocommerce' ); ?>" />

                    <input type="submit" id="nm-apply-coupon-btn" class="button border" name="nm_apply_coupon" value="<?php esc_attr_e( 'Apply coupon', 'woocommerce' ); ?>" />

                    <?php do_action( 'woocommerce_cart_coupon' ); ?>
                </div>
            </div>
        </div>
    <?php } ?>

    <?php 
        /**
         * Cart collaterals hook.
         *
         * @hooked woocommerce_cross_sell_display
         * @hooked woocommerce_cart_totals - 10
         */
        do_action( 'woocommerce_cart_collaterals' );
    ?>

</div>
</div>

这就是我尝试它的方式。我究竟做错了什么?

<div class="cart-collaterals-cross-sell">
<div class="cart-collaterals">

    <h2><?php _e( 'Cart totals', 'woocommerce' ); ?></h2>

    <?php if ( ! is_ajax() && wc_coupons_enabled() ) { ?>
        <div class="nm-coupon-wrap">
            <div class="nm-coupon-inner">
                <a href="#" id="nm-coupon-btn"><?php esc_html_e( 'Gutschein', 'nm-framework' ); ?></a>

                <div class="nm-coupon">
                    <input type="text" id="nm-coupon-code" class="input-text" name="nm_coupon_code" value="" placeholder="<?php esc_attr_e( 'Coupon code', 'woocommerce' ); ?>" />

                    <input type="submit" id="nm-apply-coupon-btn" class="button border" name="nm_apply_coupon" value="<?php esc_attr_e( 'Apply coupon', 'woocommerce' ); ?>" />

                    <?php do_action( 'woocommerce_cart_coupon' ); ?>
                </div>
            </div>
        </div>
    <?php } ?>

    <?php 
        /**
         * Cart collaterals hook.
         *
         * @hooked woocommerce_cross_sell_display
         * @hooked woocommerce_cart_totals - 10
         */
        do_action( 'woocommerce_cart_collaterals' );
    ?>

</div>
    <div class="cross-sells">

        <h2><?php _e( 'You may be interested in&hellip;', 'woocommerce' ) ?></h2>

        <?php woocommerce_product_loop_start(); ?>

            <?php foreach ( $cross_sells as $cross_sell ) : ?>

                <?php
                    $post_object = get_post( $cross_sell->get_id() );

                    setup_postdata( $GLOBALS['post'] =& $post_object );

                    wc_get_template_part( 'content', 'product' ); ?>

            <?php endforeach; ?>

        <?php woocommerce_product_loop_end(); ?>

    </div>
</div>
提问于
用户回答回答于

您可以使用以下两个功能

  1. 对于cart-collaterals==> woocommerce_cart_totals();
  2. 对于交叉销售=======> woocommerce_cross_sell_display();

尝试使用我在这里提供的以下代码:

<div class="cart-collaterals-cross-sell">
<div class="cart-collaterals">

    <h2><?php _e( 'Cart totals', 'woocommerce' ); ?></h2>

    <?php if ( ! is_ajax() && wc_coupons_enabled() ) { ?>
        <div class="nm-coupon-wrap">
            <div class="nm-coupon-inner">
                <a href="#" id="nm-coupon-btn"><?php esc_html_e( 'Gutschein', 'nm-framework' ); ?></a>

                <div class="nm-coupon">
                    <input type="text" id="nm-coupon-code" class="input-text" name="nm_coupon_code" value="" placeholder="<?php esc_attr_e( 'Coupon code', 'woocommerce' ); ?>" />

                    <input type="submit" id="nm-apply-coupon-btn" class="button border" name="nm_apply_coupon" value="<?php esc_attr_e( 'Apply coupon', 'woocommerce' ); ?>" />

                    <?php do_action( 'woocommerce_cart_coupon' ); ?>
                </div>
            </div>
        </div>
    <?php } ?>

    <?php 
        /**
         * Cart collaterals hook.
         *
         * @hooked woocommerce_cross_sell_display
         * @hooked woocommerce_cart_totals - 10
         */
        //do_action( 'woocommerce_cart_collaterals' );
        woocommerce_cart_totals();
    ?>

</div>
    <div class="cross-sells">

        <?php woocommerce_cross_sell_display(); ?>

    </div>
</div>

扫码关注云+社区

领取腾讯云代金券