woocommerce create custom single product page code example
Example 1: how to add custom divs to woocommerce product page
<li <?php wc_product_class( '', $product ); ?>>
<div class="col-md-5 offset-md-1">
<?php
/**
* Hook: woocommerce_before_shop_loop_item.
*
* @hooked woocommerce_template_loop_product_link_open - 10
*/
do_action( 'woocommerce_before_shop_loop_item' );
/**
* Hook: woocommerce_before_shop_loop_item_title.
*
* @hooked woocommerce_show_product_loop_sale_flash - 10
* @hooked woocommerce_template_loop_product_thumbnail - 10
*/
do_action( 'woocommerce_before_shop_loop_item_title' );
?>
</div>
<?php
/**
* Hook: woocommerce_shop_loop_item_title.
*
* @hooked woocommerce_template_loop_product_title - 10
*/
do_action( 'woocommerce_shop_loop_item_title' );
/**
* Hook: woocommerce_after_shop_loop_item_title.
*
* @hooked woocommerce_template_loop_rating - 5
* @hooked woocommerce_template_loop_price - 10
*/
do_action( 'woocommerce_after_shop_loop_item_title' );
/**
* Hook: woocommerce_after_shop_loop_item.
*
* @hooked woocommerce_template_loop_product_link_close - 5
* @hooked woocommerce_template_loop_add_to_cart - 10
*/
do_action( 'woocommerce_after_shop_loop_item' );
?>
</li>
Example 2: woocommerce create product specific template
add_filter('body_class','wpa76627_class_names');
function wpa76627_class_names( $classes ) {
if( is_singular( 'product' ) ):
global $post;
foreach( get_the_terms( $post->ID, 'product_cat' ) as $cat )
// maybe you want to make this more unique, like:
// $classes[] = 'product-category-' . $cat->slug;
$classes[] = $cat->slug;
endif;
return $classes;
}