将woocommerce可变购物车部分设为简码

时间:2018-09-07 10:44:34

标签: php wordpress woocommerce

我正在尝试移动购物车部分。我尝试使用内置优先级,但没有提供我需要的灵活性。

所以我从以下代码中提取了代码:

woocommerce/templates/single-product/add-to-cart/variation-add-to-cart-button.php

并且尝试将其转换为简码以放置在我的页面上的任何位置。(例如,页脚,小部件)有可能吗?

// Add Shortcode
function woo_sticky_shortcode() {

    global $product;
    ?>
    <div class="woocommerce-variation-add-to-cart variations_button">
        <?php do_action( 'woocommerce_before_add_to_cart_button' ); ?>

        <?php
        do_action( 'woocommerce_before_add_to_cart_quantity' );

        woocommerce_quantity_input( array(
            'min_value'   => apply_filters( 'woocommerce_quantity_input_min', $product->get_min_purchase_quantity(), $product ),
            'max_value'   => apply_filters( 'woocommerce_quantity_input_max', $product->get_max_purchase_quantity(), $product ),
            'input_value' => isset( $_POST['quantity'] ) ? wc_stock_amount( wp_unslash( $_POST['quantity'] ) ) : $product->get_min_purchase_quantity(), // WPCS: CSRF ok, input var ok.
        ) );

        do_action( 'woocommerce_after_add_to_cart_quantity' );
        ?>

        <button type="submit" class="single_add_to_cart_button button alt"><?php echo esc_html( $product->single_add_to_cart_text() ); ?></button>

        <?php do_action( 'woocommerce_after_add_to_cart_button' ); ?>

        <input type="hidden" name="add-to-cart" value="<?php echo absint( $product->get_id() ); ?>" />
        <input type="hidden" name="product_id" value="<?php echo absint( $product->get_id() ); ?>" />
        <input type="hidden" name="variation_id" class="variation_id" value="0" />
    </div>

}
add_shortcode( 'woo_sticky', 'woo_sticky_shortcode' );

0 个答案:

没有答案