2016-04-01 28 views
0

Ich habe einige benutzerdefinierte Kategorien für Produkte erstellt und es hat Unterkategorien und die Unterkategorien hat weitere Unterkategorien. jetzt zeige ich zuerst die Hauptkategorien an. Wenn ich dort sub zeige, dann werden alle Unterkategorien, die zu dieser Kategorie gehören, und ihre Unterkategorie angezeigt. Ich möchte sie Schritt für Schritt zeigen. Das heißt, wenn der Benutzer auf Hauptkategorie klickt, dann geht es zu seiner Unterkategorie Seite. Wenn der Benutzer auf eine seiner Unterkategorien klickt, sollte er in Unterkategorien wechseln. Wenn er keine Unterkategorie hat, werden die Produkte angezeigt. Code ist dasKategorien und Unterkategorien wordpress

$products = get_term_children($term_id[0], 'product-cat'); 
if(count($products) > 0){ 
    $count = 0; 
    $sorted_products = array(); 

    foreach ($products as $product) { 

     $sorted_products = get_term($product, 'product-cat'); 
     $prod_meta = get_option("taxonomy_term_".$term->term_id); 
    //echo "<pre>"; print_r($sorted_products); 

    foreach ($sorted_products as $product) { ?> 
      <div class="col-md-3 col-sm-4 col-xs-12"> 
        <a href="<?php echo $product['link']; ?>"> 
         <a href="<?php echo $product['link']; ?>" class="hvr-grow"> 
          <img class="center-block img-responsive" src="<?php echo $product['img'] ? $product['img'] : '/wp-content/themes/ruskin/images/dummy-product.jpg'; ?>" alt="<?php echo $product['name']; ?>"> 
        <h3><a href="<?php echo $product['link']; ?>"><?php echo $product['name']; ?></a></h3> 
else{ 

    # Define the WP Query post arguments. 
    $args = array(
    'post_status' => 'publish', 
    'post_type' => 'products', 
    'posts_per_page' => -1, 
    //'meta_query' => array('relation' => 'AND', array('key' => '_cus__featured', 'value' => '1', 'compare' => '='),), 
    'meta_key' => '_cus__sort_order', 
    //'meta_value' => 'meta_value', 
    'orderby' => 'meta_value_num', 
    'order' => 'ASC', 
    'tax_query' => array(
     array('taxonomy' => 'product-cat', 
      'field' => 'slug', 
      'terms' => $cats 
     ))); 
$loop = new WP_Query($args); 
$total = $loop->found_posts; 
$sliders=''; 
// Generatet the slider conteents 
while ($loop->have_posts()) { 
    $loop->the_post(); 
    $listingimg = get_post_custom_values('_cus__listing_img'); 
     $listingimg = "/wp-content/themes/bodyo/images/no-slider-img.jpg"; 

    $img = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'main_slide_img'); 
     $img = "/wp-content/themes/bodyo/images/no-slider-img.jpg"; 
    $sliders .= '<a href="'. get_the_permalink() .'" class="hvr-grow">'; 
    $sliders .= '<img src="'.$listingimg.'" class="center-block img-responsive" alt="'. get_the_title() .'" />'; 
    $sliders .= '</a>'; 
    $sliders .= '</div>'; 
    $sliders .= '<a href="'. get_the_permalink() .'">'; 
    $sliders .= '<h3>'. get_the_title() .'</h3>'; 
    $sliders .= '<p>'. get_the_excerpt() .'</p>'; 
    $sliders .= '<a href="'. get_the_permalink() .'">read more</a>'; 
    $counter++; 

} 

Es übersteuert die vorherige Sortierreihenfolge. Das heißt, wenn wir aus dem Dashboard zwei bis drei Kategorien in der Sortierreihenfolge angeben, zeigt es nur die letzte an. Die ersten beiden werden überschrieben.

Antwort

0

So etwas sollte es tun.

$args = array(
    'child_of' => $term_id[0], 
    'taxonomy' => 'product-cat', 
    'hierarchical' => true, 
    'depth' => 1, 
); 
$categories = get_categories($args); 

Beachten Sie, dass get_categories() ist ein Wrapper von get_terms().

Sie können alle akzeptierten Werte here finden, aber die, die Sie suchen, ist Tiefe.

+0

in welchem ​​Schritt können Sie dies ein wenig –

+0

die erste Zeile des Codes, den Sie gebucht haben. –

Verwandte Themen