категории и подкатегории вордпресс

Я создал несколько пользовательских категорий для продуктов, и у них есть подкатегории, а подкатегории имеют дополнительные подкатегории. теперь сначала я показываю основные категории. Если я показываю там подкатегорию, то отображаются все подкатегории, связанные с этой категорией и ее подкатегорией. Я хочу показать их шаг за шагом. То есть, если пользователь нажимает на основную категорию, он переходит на страницу своей подкатегории. Если пользователь щелкнет одну из его подкатегорий, он должен перейти к подкатегориям, а если подкатегории нет, то отобразить продукты. Код это

 $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++;

}

Он перезаписывает предыдущий порядок сортировки. То есть, если на приборной панели мы даем от 2 до 3 категорий в порядке сортировки, то отображается только последняя. Первые два перезаписываются.


person Waqas_aamer    schedule 01.04.2016    source источник


Ответы (1)


Что-то вроде этого должно сделать это.

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

Имейте в виду, что get_categories() является оболочкой get_terms().

Вы можете найти все допустимые значения здесь, но вам нужна глубина .

person Jose Guillen    schedule 01.04.2016
comment
на каком этапе вы можете немного уточнить это - person Waqas_aamer; 01.04.2016