2
을 내가URL에 의해 카트 예약 가능한 제품에 추가 - WooCommerce 예약
Woocommerce Bookings
어떻게 URL에 의해 카트 예약 가능한 제품에 추가 사용하고 있습니다?
/?add-to-cart=[n.product]
어떻게 변형 된 날짜를 사용할 수 있습니까?
감사합니다.
을 내가URL에 의해 카트 예약 가능한 제품에 추가 - WooCommerce 예약
Woocommerce Bookings
어떻게 URL에 의해 카트 예약 가능한 제품에 추가 사용하고 있습니다?
/?add-to-cart=[n.product]
어떻게 변형 된 날짜를 사용할 수 있습니까?
감사합니다.
최근에 동일한 문제가 발생했지만 해결책을 발견했습니다.
// woocommerce-bookings/includes/class-wc-booking-cart-manager.php : ln 256
$booking_form = new WC_Booking_Form($product);
$cart_item_meta['booking'] = $booking_form->get_posted_data($_POST);
$cart_item_meta['booking']['_cost'] = $booking_form->calculate_booking_cost($_POST);
// Create the new booking
$new_booking = $this->create_booking_from_cart_data($cart_item_meta, $product_id);
: WooCommerce 예약하면 플러그인의 소스에서 볼 수있는 데이터가
POST
방법을 통해 전송 될 것으로 예상하고 있기 때문에
그것은 단지 URL의 끝에 올바른 변수를 추가하여 예약 가능한 제품을 추가 할 수 없습니다
과 대신이의
// woocommerce-bookings/includes/class-wc-booking-cart-manager.php : ln 276
private function create_booking_from_cart_data($cart_item_meta, $product_id, $status = 'in-cart') {
// Create the new booking
$new_booking_data = array(
'product_id' => $product_id, // Booking ID
'cost' => $cart_item_meta['booking']['_cost'], // Cost of this booking
'start_date' => $cart_item_meta['booking']['_start_date'],
'end_date' => $cart_item_meta['booking']['_end_date'],
'all_day' => $cart_item_meta['booking']['_all_day'],
);
:
<a href="/?add-to-cart=product_id">Add to cart</a>
,
'장바구니에 추가'버튼/링크를 제출 버튼과 함께 여러 숨겨진 필드가있는 양식을 만들어야합니다. 이 같은
뭔가 :
<form method="post" action="/">
<input type="hidden" name="add-to-cart" value="product_id">
<input type="hidden" name="wc_bookings_field_start_date_year" value="booking_start_date_year">
<input type="hidden" name="wc_bookings_field_start_date_month" value="booking_start_date_month">
<input type="hidden" name="wc_bookings_field_start_date_day" value="booking_start_date_day">
<button type="submit">Add to cart</button>
</form>