programing

WooCommerce의 변형에 대한 확인란을 사용하여 다중 선택 허용

muds 2023. 7. 5. 21:04
반응형

WooCommerce의 변형에 대한 확인란을 사용하여 다중 선택 허용

나는 지금 우커머스를 한동안 사용하고 있지만, 이 한 가지 문제가 나에게 문제를 일으키고 있습니다.제가 사이트를 만들고 있는 고객은 교육 과정과 프레젠테이션을 제공하며, 이 특정 제품(또는 프레젠테이션)은 카트에 여러 가지 다른 옵션을 각각의 가격으로 추가할 수 있습니다.

따라서 기본 가격은 0입니다.그러면 사용자가 기존 웹 사이트의 확인란을 통해 선택할 수 있는 8개의 다른 프레젠테이션이 있습니다. 어떻게든 새 사이트에서 WooCommerce를 사용하여 복제해야 하지만 드롭다운은 변형에만 사용할 수 있으며 내가 보기에는 하나의 옵션만 선택할 수 있습니다.이 기능이 작동하는 것을 확인할 수 있는 유일한 방법은 8개의 서로 다른 드롭다운을 각각 8개씩 추가하고 고객이 원하는 프레젠테이션을 몇 개나 선택하는 것입니다.이는 다소 번거롭지만 잠재적으로 사용자 오류를 일으킬 수 있습니다(예: 동일한 프레젠테이션을 두 번 선택).

다음은 WooCommerce 내에서 이상적인 모습을 보여주는 스크린샷입니다.

이것을 달성할 수 있는 방법이 있습니까?그것이 유일한 방법이라면 플러그인을 사용해도 괜찮습니다.

다음과 같은 방법으로 수행할 수 있습니다.

컨텐츠를 단일 제품으로 편집할 수 있습니다.php:

$product = wc_get_product($productId )로 제품 가져오기

$product->product_type == "잘못되었는지 확인합니다."

현재 제품의 모든 변형을 가져와서 확인란에 나열:

$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 . '" />

그런 다음 $_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 );

}

}

검사, 유효성 검사 및 상태 메시지는 사용자에게 제공되지만 이 프로세스는 작동해야 합니다.

언급URL : https://stackoverflow.com/questions/40661032/using-checkboxes-for-variations-in-woocommerce-to-allow-multiple-choice

반응형