Get Direct URL to WooCommerce Page Template

Categories:

 

Get the WooCommerce Shop URL (this is the root category page) with the following:

$shop_page_url = get_permalink( woocommerce_get_page_id( 'shop' ) );

My Account URL

You can get the WooCommerce My Account URL by using the woocommerce_myaccount_page_id option:

<?php if ( is_user_logged_in() ) { ?>
 	<a href="<?php echo get_permalink( get_option('woocommerce_myaccount_page_id') ); ?>" title="<?php _e('My Account','woothemes'); ?>"><?php _e('My Account','woothemes'); ?></a>
 <?php } 
 else { ?>
 	<a href="<?php echo get_permalink( get_option('woocommerce_myaccount_page_id') ); ?>" title="<?php _e('Login / Register','woothemes'); ?>"><?php _e('Login / Register','woothemes'); ?></a>
 <?php } ?>

Or

$myaccount_page_id = get_option( 'woocommerce_myaccount_page_id' );
if ( $myaccount_page_id ) {
  $myaccount_page_url = get_permalink( $myaccount_page_id );
}

URL to WooCommerce Cartย Page

The WooCommerce Cart URL can be retrieved with a call to the cart objectโ€™s get_cart_url() method:

global $woocommerce;
$cart_url = $woocommerce->cart->get_cart_url();

URL to WooCommerceย Checkoutย Page

Similar to getting the cart URL, the WooCommerce Checkout URL can be retrieved with a call to the cart objectโ€™s get_checkout_url() method:

global $woocommerce;
$checkout_url = $woocommerce->cart->get_checkout_url();

URL to WooCommerceย Payment Page

This is the payment page URL used to collect payment information after the checkout page by redirect/hosted payment gateways. The path typically looks like /checkout/pay/. Get this URL with the following:

$payment_page = get_permalink( woocommerce_get_page_id( 'pay' ) );

// make ssl if needed
if ( get_option( 'woocommerce_force_ssl_checkout' ) == 'yes' ) $payment_page = str_replace( 'http:', 'https:', $payment_page );

 

URL to WooCommerceย Logoutย Page

This example will generate a WordPress logout URL that brings the user back to the Account area of the site:

$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 );
}

 

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *