2014-09-17 3 views
0

Я пытаюсь получить категории продукции из WooCommerce через функцию в моей теме WordPress и я сделал это:как отобразить подкатегории подкатегории (суб-подкатегория) в WooCommerce

<?php 
     $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 
    ); 
    ?> 
    <?php $all_categories = get_categories($args); 
    //print_r($all_categories); 
    foreach ($all_categories as $cat) { 
     //print_r($cat); 
     if($cat->category_parent == 0) { 
      $category_id = $cat->term_id; 

    ?>  

    <?php  

      echo '<br /><a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .'</a>'; ?> 


      <?php 
      $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) { 
       foreach($sub_cats as $sub_category) { 
        echo $sub_category->name ; 
       } 

      } ?> 



     <?php }  
    } 
    ?> 

Это будет отображать все категории верхнего уровня и подкатегории под ними иерархически, но у меня есть подкатегории подкатегории (под-подкатегории), поэтому как я могу перечислить эти под-категории.

ответ

1

Самый простой способ - сделать блок виджета, добавив следующий код в ваш function.php и перетащить/перетащить WooCommerce встроенный «Категории продуктов WooCommerce» виджет. Она имеет несколько вариантов для отображения категорий/подкатегорий и суб суб categories.u

function arphabet_widgets_init() { 

    register_sidebar(array(
    'name' => 'Widget Name', 
    'id' => 'sidebar-1', 
    'before_widget' => '<div class="your-class">', 
    'after_widget' => '</div>', 
)); 

}  

Теперь создайте врезке файл врезку-1.php и в этом файле добавить следующий код:

<?php if (! dynamic_sidebar('sidebar-1')) : else : ?>  
<?php endif; ?>  

По при загрузке этих файлов на странице виджетов Wordpress будет отображаться опция блока виджетов. Включите файл sidebar-1.php, где вы хотите, чтобы ваши категории отображались и перетаскивались * «Категории продуктов WooCommerce» ** виджет из раздела виджетов Wordpress.

Спасибо.

Смежные вопросы