gpt4 book ai didi

wordpress - 使用 WooCommerce 中的变体复选框以允许多项选择

转载 作者:行者123 更新时间:2023-12-01 00:36:31 24 4
gpt4 key购买 nike

我已经使用 WooCommerce 一段时间了,但是这个问题给我带来了问题。我正在为其创建站点的客户提供培训类(class)和演示文稿,并且此特定产品(或演示文稿)允许将几种不同的选项添加到购物车中,每个选项都有自己的价格。

因此,基本价格为零。然后有 8 种不同的演示文稿,用户可以通过其现有网站上的复选框进行选择 - 我以某种方式需要在他们的新网站上使用 WooCommerce 复制它,但我只能使用下拉菜单进行变体,据我所知它只允许一种选择。我可以看到这种工作的唯一可行方法是,如果我添加 8 个不同的下拉列表,每个下拉列表中包含所有 8 个演示文稿,然后客户选择他们想要的许多不同的演示文稿。不过这有点麻烦,并且可能会导致用户错误(例如,两次选择相同的演示文稿)。

我附上了一张我希望在 WooCommerce 中看起来像的屏幕截图,有什么办法可以实现吗?如果这是唯一的方法,我不介意使用插件。

enter image description here

最佳答案

你可以这样做:

1) 编辑你的 content-single-product.php:

2) 通过 $product = wc_get_product( $productId ) 获取产品

3) 检查是否 $product->product_type == "variable"

4) 获取当前产品的所有变体并将其列出到复选框中:

$variations = $product->get_available_variations();

foreach ( $variations as $variation ) {

$variationId = $variation['variation_id'];

echo '<input type="checkbox" name="variations[]" value="' . $variationId . '" />

}

echo '<input type="checkbox" name="product_id" value="' . $product->ID . '" />

5) 之后,您可以处理 $_POST 并以编程方式向购物车添加变体:
if ( !empty( $_POST['variations'] ) ) {

$productId = $_POST['product_id'];
$qty = 1;
$buyVariations = $_POST['variations'];

foreach ( $buyVariations as $variationId ) {

WC()->cart->add_to_cart( $productId, $qty, $variationId );

}

}

6) sanitizer 、验证和状态消息由您负责,但此过程应该有效。

关于wordpress - 使用 WooCommerce 中的变体复选框以允许多项选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40661032/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com