Showing other subcategories of parent when in subcategory of parent
up vote
1
down vote
favorite
I want a simple overview of categories and their subcategories. When clicking the parent category only subcategories of that category are shown. But I also want the subcategories to show when in a different subcategory of the same parent.
I realise the queried_object_id(); changes when clicking on the subcategory. But how do I let the query know?
My following code:
<ul>
<?php
$parentid = get_queried_object_id();
$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
);
$all_categories = get_categories( $args );
foreach ($all_categories as $cat) {
if($cat->category_parent == 0) {
$category_id = $cat->term_id;
//echo $category_id;
echo '<li><a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .' - '. $category_id .'</a></li>';
//echo $parentid;
if($parentid == $category_id) {
//$cat = get_queried_object();
$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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .' - '. $sub_category->term_id .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
}
}
?>
</ul>
php wordpress woocommerce html-lists custom-taxonomy
add a comment |
up vote
1
down vote
favorite
I want a simple overview of categories and their subcategories. When clicking the parent category only subcategories of that category are shown. But I also want the subcategories to show when in a different subcategory of the same parent.
I realise the queried_object_id(); changes when clicking on the subcategory. But how do I let the query know?
My following code:
<ul>
<?php
$parentid = get_queried_object_id();
$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
);
$all_categories = get_categories( $args );
foreach ($all_categories as $cat) {
if($cat->category_parent == 0) {
$category_id = $cat->term_id;
//echo $category_id;
echo '<li><a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .' - '. $category_id .'</a></li>';
//echo $parentid;
if($parentid == $category_id) {
//$cat = get_queried_object();
$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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .' - '. $sub_category->term_id .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
}
}
?>
</ul>
php wordpress woocommerce html-lists custom-taxonomy
@LoicTheAztec you always have miracle solutions when it comes to this ;)
– Solomax
Nov 21 at 12:38
add a comment |
up vote
1
down vote
favorite
up vote
1
down vote
favorite
I want a simple overview of categories and their subcategories. When clicking the parent category only subcategories of that category are shown. But I also want the subcategories to show when in a different subcategory of the same parent.
I realise the queried_object_id(); changes when clicking on the subcategory. But how do I let the query know?
My following code:
<ul>
<?php
$parentid = get_queried_object_id();
$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
);
$all_categories = get_categories( $args );
foreach ($all_categories as $cat) {
if($cat->category_parent == 0) {
$category_id = $cat->term_id;
//echo $category_id;
echo '<li><a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .' - '. $category_id .'</a></li>';
//echo $parentid;
if($parentid == $category_id) {
//$cat = get_queried_object();
$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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .' - '. $sub_category->term_id .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
}
}
?>
</ul>
php wordpress woocommerce html-lists custom-taxonomy
I want a simple overview of categories and their subcategories. When clicking the parent category only subcategories of that category are shown. But I also want the subcategories to show when in a different subcategory of the same parent.
I realise the queried_object_id(); changes when clicking on the subcategory. But how do I let the query know?
My following code:
<ul>
<?php
$parentid = get_queried_object_id();
$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
);
$all_categories = get_categories( $args );
foreach ($all_categories as $cat) {
if($cat->category_parent == 0) {
$category_id = $cat->term_id;
//echo $category_id;
echo '<li><a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .' - '. $category_id .'</a></li>';
//echo $parentid;
if($parentid == $category_id) {
//$cat = get_queried_object();
$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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .' - '. $sub_category->term_id .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
}
}
?>
</ul>
php wordpress woocommerce html-lists custom-taxonomy
php wordpress woocommerce html-lists custom-taxonomy
edited Nov 21 at 14:14
LoicTheAztec
80.5k125993
80.5k125993
asked Nov 21 at 12:37
Solomax
138111
138111
@LoicTheAztec you always have miracle solutions when it comes to this ;)
– Solomax
Nov 21 at 12:38
add a comment |
@LoicTheAztec you always have miracle solutions when it comes to this ;)
– Solomax
Nov 21 at 12:38
@LoicTheAztec you always have miracle solutions when it comes to this ;)
– Solomax
Nov 21 at 12:38
@LoicTheAztec you always have miracle solutions when it comes to this ;)
– Solomax
Nov 21 at 12:38
add a comment |
3 Answers
3
active
oldest
votes
up vote
1
down vote
accepted
I changed the code based on getting $parentid2 = get_queried_object();
Note: this code is placed in /woocommerce/archive-product.php
and I added an elseif statement with different args.
Maybe a little bit too much but it works
<ul>
<?php
$parentid2 = get_queried_object();
$parentid = get_queried_object_id();
$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
);
$all_categories = get_categories( $args );
foreach ($all_categories as $cat) {
if($cat->category_parent == 0) {
$category_id = $cat->term_id;
echo '<li><a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .'</a></li>';
if($parentid == $category_id) {
$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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
elseif($parentid2->parent == $category_id) {
$args2 = array(
'taxonomy' => $taxonomy,
'child_of' => 0,
'parent' => $parentid2->parent,
'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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
}
}
?>
</ul>
add a comment |
up vote
1
down vote
Why you dont simply use the woocommerce Widget for product categories with Wordpress the_widget() function, as you will get everything this way:
the_widget( 'WC_Widget_Product_Categories', array( 'hide_empty' => false, 'hierarchical' => true, 'show_children_only' => true ) );
It will display a hierarchical vertical list of linked product categories.
With
the_widget()function you can with:
- the 2nd parameter argument make changes in the Query
- the 3rd parameter argument make changes in the html output
the widget works perfect but I want to show the subcategories of the parent category only. And when clicking on a subcategory the menu must stay in tact.
– Solomax
Nov 21 at 20:24
basically when in the subcategory get the queried_object and use it to compare
– Solomax
Nov 21 at 20:26
@Solomax I have updated my answer adding ,'show_children_only' => trueto the arguments array… may it's that what you want. Try it again please.
– LoicTheAztec
Nov 22 at 0:13
add a comment |
up vote
-1
down vote
you can exclude current category/term by
'exclude' => $catID
in the arguments.
add a comment |
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
accepted
I changed the code based on getting $parentid2 = get_queried_object();
Note: this code is placed in /woocommerce/archive-product.php
and I added an elseif statement with different args.
Maybe a little bit too much but it works
<ul>
<?php
$parentid2 = get_queried_object();
$parentid = get_queried_object_id();
$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
);
$all_categories = get_categories( $args );
foreach ($all_categories as $cat) {
if($cat->category_parent == 0) {
$category_id = $cat->term_id;
echo '<li><a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .'</a></li>';
if($parentid == $category_id) {
$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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
elseif($parentid2->parent == $category_id) {
$args2 = array(
'taxonomy' => $taxonomy,
'child_of' => 0,
'parent' => $parentid2->parent,
'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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
}
}
?>
</ul>
add a comment |
up vote
1
down vote
accepted
I changed the code based on getting $parentid2 = get_queried_object();
Note: this code is placed in /woocommerce/archive-product.php
and I added an elseif statement with different args.
Maybe a little bit too much but it works
<ul>
<?php
$parentid2 = get_queried_object();
$parentid = get_queried_object_id();
$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
);
$all_categories = get_categories( $args );
foreach ($all_categories as $cat) {
if($cat->category_parent == 0) {
$category_id = $cat->term_id;
echo '<li><a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .'</a></li>';
if($parentid == $category_id) {
$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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
elseif($parentid2->parent == $category_id) {
$args2 = array(
'taxonomy' => $taxonomy,
'child_of' => 0,
'parent' => $parentid2->parent,
'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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
}
}
?>
</ul>
add a comment |
up vote
1
down vote
accepted
up vote
1
down vote
accepted
I changed the code based on getting $parentid2 = get_queried_object();
Note: this code is placed in /woocommerce/archive-product.php
and I added an elseif statement with different args.
Maybe a little bit too much but it works
<ul>
<?php
$parentid2 = get_queried_object();
$parentid = get_queried_object_id();
$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
);
$all_categories = get_categories( $args );
foreach ($all_categories as $cat) {
if($cat->category_parent == 0) {
$category_id = $cat->term_id;
echo '<li><a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .'</a></li>';
if($parentid == $category_id) {
$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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
elseif($parentid2->parent == $category_id) {
$args2 = array(
'taxonomy' => $taxonomy,
'child_of' => 0,
'parent' => $parentid2->parent,
'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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
}
}
?>
</ul>
I changed the code based on getting $parentid2 = get_queried_object();
Note: this code is placed in /woocommerce/archive-product.php
and I added an elseif statement with different args.
Maybe a little bit too much but it works
<ul>
<?php
$parentid2 = get_queried_object();
$parentid = get_queried_object_id();
$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
);
$all_categories = get_categories( $args );
foreach ($all_categories as $cat) {
if($cat->category_parent == 0) {
$category_id = $cat->term_id;
echo '<li><a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .'</a></li>';
if($parentid == $category_id) {
$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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
elseif($parentid2->parent == $category_id) {
$args2 = array(
'taxonomy' => $taxonomy,
'child_of' => 0,
'parent' => $parentid2->parent,
'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>';
foreach($sub_cats as $sub_category) {
//echo $parentid;
echo '<li><a href="'. get_term_link($sub_category->slug, 'product_cat') .'">'. $sub_category->name .'</a></li>';
//echo $sub_category->name ;
}
echo '</ul>';
}
}
}
}
?>
</ul>
answered Nov 21 at 20:30
Solomax
138111
138111
add a comment |
add a comment |
up vote
1
down vote
Why you dont simply use the woocommerce Widget for product categories with Wordpress the_widget() function, as you will get everything this way:
the_widget( 'WC_Widget_Product_Categories', array( 'hide_empty' => false, 'hierarchical' => true, 'show_children_only' => true ) );
It will display a hierarchical vertical list of linked product categories.
With
the_widget()function you can with:
- the 2nd parameter argument make changes in the Query
- the 3rd parameter argument make changes in the html output
the widget works perfect but I want to show the subcategories of the parent category only. And when clicking on a subcategory the menu must stay in tact.
– Solomax
Nov 21 at 20:24
basically when in the subcategory get the queried_object and use it to compare
– Solomax
Nov 21 at 20:26
@Solomax I have updated my answer adding ,'show_children_only' => trueto the arguments array… may it's that what you want. Try it again please.
– LoicTheAztec
Nov 22 at 0:13
add a comment |
up vote
1
down vote
Why you dont simply use the woocommerce Widget for product categories with Wordpress the_widget() function, as you will get everything this way:
the_widget( 'WC_Widget_Product_Categories', array( 'hide_empty' => false, 'hierarchical' => true, 'show_children_only' => true ) );
It will display a hierarchical vertical list of linked product categories.
With
the_widget()function you can with:
- the 2nd parameter argument make changes in the Query
- the 3rd parameter argument make changes in the html output
the widget works perfect but I want to show the subcategories of the parent category only. And when clicking on a subcategory the menu must stay in tact.
– Solomax
Nov 21 at 20:24
basically when in the subcategory get the queried_object and use it to compare
– Solomax
Nov 21 at 20:26
@Solomax I have updated my answer adding ,'show_children_only' => trueto the arguments array… may it's that what you want. Try it again please.
– LoicTheAztec
Nov 22 at 0:13
add a comment |
up vote
1
down vote
up vote
1
down vote
Why you dont simply use the woocommerce Widget for product categories with Wordpress the_widget() function, as you will get everything this way:
the_widget( 'WC_Widget_Product_Categories', array( 'hide_empty' => false, 'hierarchical' => true, 'show_children_only' => true ) );
It will display a hierarchical vertical list of linked product categories.
With
the_widget()function you can with:
- the 2nd parameter argument make changes in the Query
- the 3rd parameter argument make changes in the html output
Why you dont simply use the woocommerce Widget for product categories with Wordpress the_widget() function, as you will get everything this way:
the_widget( 'WC_Widget_Product_Categories', array( 'hide_empty' => false, 'hierarchical' => true, 'show_children_only' => true ) );
It will display a hierarchical vertical list of linked product categories.
With
the_widget()function you can with:
- the 2nd parameter argument make changes in the Query
- the 3rd parameter argument make changes in the html output
edited Nov 22 at 0:12
answered Nov 21 at 14:13
LoicTheAztec
80.5k125993
80.5k125993
the widget works perfect but I want to show the subcategories of the parent category only. And when clicking on a subcategory the menu must stay in tact.
– Solomax
Nov 21 at 20:24
basically when in the subcategory get the queried_object and use it to compare
– Solomax
Nov 21 at 20:26
@Solomax I have updated my answer adding ,'show_children_only' => trueto the arguments array… may it's that what you want. Try it again please.
– LoicTheAztec
Nov 22 at 0:13
add a comment |
the widget works perfect but I want to show the subcategories of the parent category only. And when clicking on a subcategory the menu must stay in tact.
– Solomax
Nov 21 at 20:24
basically when in the subcategory get the queried_object and use it to compare
– Solomax
Nov 21 at 20:26
@Solomax I have updated my answer adding ,'show_children_only' => trueto the arguments array… may it's that what you want. Try it again please.
– LoicTheAztec
Nov 22 at 0:13
the widget works perfect but I want to show the subcategories of the parent category only. And when clicking on a subcategory the menu must stay in tact.
– Solomax
Nov 21 at 20:24
the widget works perfect but I want to show the subcategories of the parent category only. And when clicking on a subcategory the menu must stay in tact.
– Solomax
Nov 21 at 20:24
basically when in the subcategory get the queried_object and use it to compare
– Solomax
Nov 21 at 20:26
basically when in the subcategory get the queried_object and use it to compare
– Solomax
Nov 21 at 20:26
@Solomax I have updated my answer adding ,
'show_children_only' => true to the arguments array… may it's that what you want. Try it again please.– LoicTheAztec
Nov 22 at 0:13
@Solomax I have updated my answer adding ,
'show_children_only' => true to the arguments array… may it's that what you want. Try it again please.– LoicTheAztec
Nov 22 at 0:13
add a comment |
up vote
-1
down vote
you can exclude current category/term by
'exclude' => $catID
in the arguments.
add a comment |
up vote
-1
down vote
you can exclude current category/term by
'exclude' => $catID
in the arguments.
add a comment |
up vote
-1
down vote
up vote
-1
down vote
you can exclude current category/term by
'exclude' => $catID
in the arguments.
you can exclude current category/term by
'exclude' => $catID
in the arguments.
answered Nov 21 at 14:21
janjua
295
295
add a comment |
add a comment |
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53412196%2fshowing-other-subcategories-of-parent-when-in-subcategory-of-parent%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
@LoicTheAztec you always have miracle solutions when it comes to this ;)
– Solomax
Nov 21 at 12:38