팝업에서 우커머스 체크아웃
체크아웃 기능(+stripe with wooCommerce Stripe Payment Gateway plugin)을 modal window에 구현하려고 하고 있으며, 이를 위해 ajax를 사용하고 있습니다.계산대를 새로 고치기 위한 백엔드 코드는 다음과 같습니다.
add_action('wp_ajax_refresh_checkout', 'getCheckoutPageContentCallBack');
add_action('wp_ajax_nopriv_refresh_checkout', 'getCheckoutPageContentCallBack');
function getCheckoutPageContentCallBack() {
define('WOOCOMMERCE_CHECKOUT', true);
echo do_shortcode('[woocommerce_checkout]');
if (class_exists('WooCommerce')) {
$wcurl = WooCommerce::plugin_url();
$credit_card_form_script = file_get_contents($wcurl . '/assets/js/frontend/credit-card-form.min.js');
if ($credit_card_form_script) {
echo "<script>";
echo $credit_card_form_script;
echo "</script>";
}
$checkout_script = file_get_contents($wcurl . '/assets/js/frontend/checkout.min.js');
if ($checkout_script) {
echo "<script>";
echo $checkout_script;
echo "</script>";
}
}
wp_die();
}
체크아웃 페이지에 있는 스크립트를 모두 포함시켰지만 여전히 오류가 발생합니다.
결제하시려면 카드내역을 입력해주시기 바랍니다.개발자: jQuery를 포함하고 있고 페이지에 자바스크립트 오류가 없는지 확인해주세요.
jQuery가 포함되어 있고 페이지에 js 오류가 없습니다.원래 체크아웃 페이지는 정상적으로 작동합니다.저는 이 코드에 의해 결제 부분을 원래 부분에서 제거한 것이 문제라고 생각했습니다.
remove_action('woocommerce_checkout_order_review', 'woocommerce_checkout_payment', 20);
add_action('woocommerce_checkout_order_payment', 'woocommerce_checkout_payment', 20);
하지만 이 대사들을 언급하는 것은 나에게 아무것도 주지 않았습니다.페이지를 편집했기 때문에 지금은 샵 페이지도 아닙니다(루프가 있는 페이지일 뿐입니다).체크아웃 페이지를 통해 결제를 할 때, 첫 번째 요청은 카드 자격 증명이 있는 https://api.stripe.com/v1/tokens 로 가고, 다음 요청은 다음 요청으로 가는 것을 확인했습니다./checkout/?wc-ajax=checkout
와 함께stripe_token
그래서 제 모달에서 체크아웃을 하려고 하면 Stripe API에 대한 요청이 없고, 체크아웃만 할 수 있습니다.혹시 체크아웃을 새로 할 때마다 포함해야 하는 스크립트가 있나요?그것에 대한 정보를 찾을 수가 없습니다.
언급URL : https://stackoverflow.com/questions/44459212/woocommerce-checkout-in-the-popup
'programing' 카테고리의 다른 글
XPath: 자식 노드에서 부모 노드 가져오기 (0) | 2023.10.20 |
---|---|
pt로 할까요, px로 할까요? (0) | 2023.10.20 |
(Maria SQL + Node.js)에서 쿼리 문자열의 로그를 보는 방법은 무엇입니까? (0) | 2023.10.15 |
공유 라이브러리는 응용 프로그램과 동일한 힙을 사용합니까? (0) | 2023.10.15 |
리퀴베이스가 있는 하나의 sqlFile에 PL/Sql 및 SQL 스크립트? (0) | 2023.10.15 |