奇怪的问题,可能有一个简单的答案,无论出于何种原因暗指我。
在我的WooCommerce商店,我正在尝试销售名片。我想以200或400的价格出售它们。
我知道如何设置步长值并限制最小值和最大值。问题是我希望在计算价格时将200和400分别视为1和2的单位 - 所以,比如200是29美元,400是39美元的折扣。自然会发生的是200/400卡分别乘以29美元/ 39美元。
我似乎无法使用任何可用的插件来解决这个问题。如果我将步长值设置为200,我需要将产品定价设置为0.195美元(39/200美元)才能获得正确的总数,但我不希望用户看到“每(个人)卡”的定价大车。
感谢任何帮助。
答案 0 :(得分:0)
我可能会做的是创建一个扩展简单产品类的新产品类型。我根本不打算进入代码,但看起来我已经回答了几个可能对你有用的问题。这不是一个完整的复制粘贴解决方案,因为这是一个相当大的工作,但这应该让你开始。
creating a custom product type
虽然我可能会延长WC_Product_Simple
而不是WC_Product
,因为基本上这与具有以下警告的简单产品相同:
添加1个元字段以定义“批次”大小。
Define product meta fields for custom product type only
然后为该类型创建您自己的添加到购物车模板,该模板使用“批次”大小来操纵添加到数量输入(最小和步骤)。
add_action( 'woocommerce_your_type_add_to_cart', array( $this, 'add_to_cart_template' ) );
function custom_type_add_to_cart_template() {
global $product;
// Load the add to cart template
wc_get_template(
'single-product/add-to-cart/your-type.php',
array(), // you can pass global variables here, ex: your product's "lot" size would be a good idea
'',
YOUR_PLUGIN_PATH . '/templates/'
);
}
最后,将购物车中的总价格调整为$price * $quantity / $lot_size
。