Advertisement
OrangePulp

Category Tab

Feb 4th, 2020
227
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.17 KB | None | 0 0
  1. <?php
  2.  
  3. function services_product_functions(){
  4.  
  5.   ob_start();
  6.  
  7.   $parent_cat = get_terms( 'product_cat', array(
  8.     'hide_empty' => false,
  9.     'parent'   => 0
  10.     ));
  11.  
  12. echo '<div class="et_pb_module et_pb_tabs ct-tabs">';
  13.             echo '<ul class="et_pb_tabs_controls clearfix" style="min-height: 35px;">';
  14.                 $count=0;    
  15.                 $active ="et_pb_tab_active";
  16.  
  17.                     foreach($parent_cat as $cat){
  18.                          echo '<li class="et_pb_tab_'.$count.' '.$active.'"><a href="#">'.$cat->name.'</a></li>';
  19.                         $count++;
  20.                         $active = '';
  21.                     }
  22.  
  23.             echo '</ul>';
  24. echo '<div class="et_pb_all_tabs">';
  25.     $count=0;    
  26.     $active ="et_pb_active_content et-pb-active-slide";
  27. foreach($parent_cat as $cat){
  28.     echo '<div class="et_pb_tab et_pb_tab_'.$count.' clearfix  '.$active.'">';
  29.     $count++;
  30.     $active = '';
  31.    
  32.  $custom_query = new WP_Query( array('post_type' => 'product',
  33.                                      'tax_query' => array(
  34.                                         array (
  35.                                             'taxonomy' => 'product_cat',
  36.                                             'field' => 'slug',
  37.                                             'terms' => $cat->slug,
  38.                                         )
  39.                                         ),                            
  40.                                      'posts_per_page' => 7 ) );
  41.   if($custom_query->have_posts()) :
  42.    
  43.     echo '<div class="ct-services">';
  44.      while ( $custom_query->have_posts() ) : $custom_query->the_post();
  45.      $image_listing = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'services-product-featured-img', true );
  46.      ?>
  47.       <div class="services-product-container">
  48.         <div class="content-container">
  49.             <div class="column img-container">
  50.                 <a href="<?php the_permalink(); ?>">
  51.                     <?php
  52.                     if(has_post_thumbnail()){
  53.                         the_post_thumbnail('services-product-featured-img');
  54.                     }
  55.                     else {
  56.                         echo '<img src="/wp-content/uploads/2018/10/placeholder-340x180.png" alt="" />';
  57.                     }
  58.                     ?>
  59.                 </a>
  60.             </div>
  61.             <div class="container-title">
  62.               <h4><a href="<?php the_permalink(); ?>"><?php the_title();?></a></h4>
  63.               <p class="product-category-list"><?php the_category(); ?></p>
  64.               <?php
  65.               echo '<ul class="product-cat">';
  66.                 $terms = get_the_terms ( get_the_ID(), 'product_cat' );
  67.                 foreach ( $terms as $term ) {
  68.                    echo '<li><a href="'.get_term_link( $term ).'">'.$term->name.'</a></li>';
  69.                    
  70.                 }
  71.                 echo '</ul>';
  72.  
  73.                 ?>
  74.             </div>
  75.         </div>
  76.       </div>
  77.      
  78.     <?php      
  79.     endwhile;
  80.     echo '</div>';
  81.   endif;
  82.   wp_reset_postdata();
  83.  
  84.   ?>
  85. <?php
  86.  
  87.  
  88. echo '</div>';
  89. }
  90.  
  91.  
  92.   $content =  ob_get_contents();
  93.   ob_clean();
  94.  
  95.   return $content;
  96.  
  97. }
  98.  
  99. add_shortcode ( 'services-product' , 'services_product_functions' );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement