Created
January 14, 2017 10:17
-
-
Save funkysoul/c27bb013adb9cb847cfff4f5ee8c3847 to your computer and use it in GitHub Desktop.
woocommerce category tree
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//GET CATEGORIES FOR NAVIGATION | |
add_action('tauchbar_get_cats', 'getCatTree', 15); | |
function getCatTree(){ | |
$taxonomy = 'product_cat'; | |
$orderby = 'name'; | |
$show_count = 0; // 1 for yes, 0 for no | |
$pad_counts = 0; // 1 for yes, 0 for no | |
$hierarchical = 1; // 1 for yes, 0 for no | |
$title = ''; | |
$empty = 0; | |
$args = array( | |
'taxonomy' => $taxonomy, | |
'orderby' => $orderby, | |
'show_count' => $show_count, | |
'pad_counts' => $pad_counts, | |
'hierarchical' => $hierarchical, | |
'title_li' => $title, | |
'hide_empty' => $empty, | |
'exclude' => array( 104 ) | |
); | |
echo '<ul class="nav_categories">'; | |
$all_categories = get_categories( $args ); | |
foreach ($all_categories as $cat) { | |
if($cat->category_parent == 0) { | |
$category_id = $cat->term_id; | |
echo '<li data-catname="'.$cat->name.'" class="cat_button"><a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .'</a>'; | |
$args2 = array( | |
'taxonomy' => $taxonomy, | |
'child_of' => 0, | |
'parent' => $category_id, | |
'orderby' => $orderby, | |
'show_count' => $show_count, | |
'pad_counts' => $pad_counts, | |
'hierarchical' => $hierarchical, | |
'title_li' => $title, | |
'hide_empty' => $empty | |
); | |
$sub_cats = get_categories( $args2 ); | |
if($sub_cats) { | |
echo '<ul class="sub_cat">'; | |
foreach($sub_cats as $sub_category) { | |
echo '<a href="' . get_term_link($sub_category->slug, 'product_cat') .'">'; | |
/*$thumbnail_id = get_woocommerce_term_meta( $sub_category->term_id, 'thumbnail_id', true ); | |
$image = wp_get_attachment_url( $thumbnail_id ); | |
echo '';*/ | |
echo "<p>" . $sub_category->name . "</p></a>"; | |
} | |
echo '</ul></li>'; | |
} else { | |
echo '</li>'; | |
} | |
} | |
} | |
echo '</ul>'; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment