워드프레스에서 다양한 우커머스(WooCommerce) 페이지 URL을 가져오는 방법입니다.
Shop URL(상점 페이지 URL)
다음 코드를 사용하여 WooCommerce Shop URL(루트 카테고리 페이지)을 가져올 수 있습니다.
$shop_page_url = get_permalink( woocommerce_get_page_id( 'shop' ) );
My Account URL(내 계정 URL)
woocommerce_myaccount_page_id 옵션을 사용하여 우커머스 내 계정 URL을 가져올 수 있습니다.
$myaccount_page_id = get_option( 'woocommerce_myaccount_page_id' ); if ( $myaccount_page_id ) { $myaccount_page_url = get_permalink( $myaccount_page_id ); }
다음과 같이 사용도 가능합니다.
<a href="<?php echo get_permalink( get_option('woocommerce_myaccount_page_id') ); ?>" title="<?php _e('My Account',''); ?>"><?php _e('My Account',''); ?></a> // Source: stackexchange
Cart URL(장바구니 URL)
WooCommerce Cart URL은 장바구니 개체의 get_cart_url() 메소드를 호출하여 가져올 수 있습니다.
global $woocommerce; $cart_url = $woocommerce->cart->get_cart_url();
Checkout URL(결제 URL)
장바구니 URL과 비슷하게 WooCommerce Checkout URL은 장바구니 개체의 get_checkout_url() 메소드를 호출하여 가져올 수 있습니다.
global $woocommerce; $checkout_url = $woocommerce->cart->get_checkout_url();
Payment Page URL
리다이렉트/호스팅 결제 게이트웨이에 의해 체크아웃(결제) 페이지 후에 결제 정보를 수집하는 데 사용되는 결제 페이지 URL입니다. 보통 이 URL은 checkout/pay/ 형식과 유사합니다. 다음 코드를 사용하여 이 URL을 가져올 수 있습니다.
$payment_page = get_permalink( woocommerce_get_page_id( 'pay' ) ); // make ssl if needed - 필요한 SSL을 만듬 if ( get_option( 'woocommerce_force_ssl_checkout' ) == 'yes' ) $payment_page = str_replace( 'http:', 'https:', $payment_page );
로그아웃 URL
다음 코드를 사용하면 사용자를 사이트의 계정 영역으로 되돌려 보내는 워드프레스 로그아웃 URL을 생성할 수 있습니다.
$myaccount_page_id = get_option( 'woocommerce_myaccount_page_id' ); if ( $myaccount_page_id ) { $logout_url = wp_logout_url( get_permalink( $myaccount_page_id ) ); if ( get_option( 'woocommerce_force_ssl_checkout' ) == 'yes' ) $logout_url = str_replace( 'http:', 'https:', $logout_url ); }
위의 내용은 "How to Get Various WooCommerce Page URLs"이라는 글을 참고했습니다. 작성된지 좀 오래되었지만, 문제 없이 작동할 것 같습니다.
댓글 남기기