Advertisement
bdjobair

Untitled

Jun 11th, 2015
589
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.60 KB | None | 0 0
  1. # Dynamic Portfolio With Shortcode
  2.  function portfolio_shortcode($atts){
  3.         extract( shortcode_atts( array(
  4.                 'category' => ''
  5.         ), $atts, '' ) );
  6.        global $post;
  7.     $q = new WP_Query(
  8.         array('posts_per_page' => '-1', 'post_type' => 'portfolio')
  9.         );            
  10.                
  11.  
  12. //Portfolio taxanomy query
  13.         $args = array(
  14.                 'post_type' => 'portfolio',
  15.                 'paged' => $paged,
  16.                 'posts_per_page' => $data['portfolio_items'],
  17.         );
  18.  
  19.         $portfolio = new WP_Query($args);
  20.         if(is_array($portfolio->posts) && !empty($portfolio->posts)) {
  21.                 foreach($portfolio->posts as $gallery_post) {
  22.                         $post_taxs = wp_get_post_terms($gallery_post->ID, 'portfolio_category', array("fields" => "all"));
  23.                         if(is_array($post_taxs) && !empty($post_taxs)) {
  24.                                 foreach($post_taxs as $post_tax) {
  25.                                         $portfolio_taxs[$post_tax->slug] = $post_tax->name;
  26.                                 }
  27.                         }
  28.                 }
  29.         }
  30.         if(is_array($portfolio_taxs) && !empty($portfolio_taxs) && get_post_meta($post->ID, 'pyre_portfolio_filters', true) != 'no'):
  31. ?>            
  32.  
  33.                 <!--Category Filter-->
  34.                 <div class="portfolio_menu">
  35.                         <ul>
  36.                                    
  37.                                 <?php foreach($portfolio_taxs as $portfolio_tax_slug => $portfolio_tax_name): ?>
  38.                                     <li class="filter" data-filter=".<?php echo $portfolio_tax_slug; ?>"><?php echo $portfolio_tax_name; ?></li>
  39.                          
  40.                                 <?php endforeach; ?>
  41.                         </ul>
  42.                 </div>
  43.                 <!--End-->
  44.  
  45.                 <?php endif; ?>
  46.  
  47. <?php
  48.  
  49.         $list = '<div class="portfolio_content"><ul id="Container">  <!-- mixitup -->';
  50.         while($q->have_posts()) : $q->the_post();
  51.                 $idd = get_the_ID();
  52.                 //$portfolio_subtitle = get_post_meta($idd, 'portfolio_subtitle', true);
  53.                 //$filterr = get_post_meta($idd, 'filterr', true);
  54.                 //$small_image_url = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'portfolio_small_image' );
  55.                 //$full_image_url = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'portfolio_large_image' );
  56.                 //$small_image_url = the_post_thumbnail('project_smal_image', array('class' => 'post-thumb'));
  57.                $post_thumbnail= get_the_post_thumbnail( $post->ID, 'portfolio_small_image' );
  58.                 //Get Texanmy class
  59.                
  60.                 $item_classes = '';
  61.                 $item_cats = get_the_terms($post->ID, 'portfolio_category');
  62.                 if($item_cats):
  63.                 foreach($item_cats as $item_cat) {
  64.                         $item_classes .= $item_cat->slug . ' ';
  65.                 }
  66.                 endif;
  67.                        
  68.                 $single_link =
  69.                 $list .= '    
  70.                     <li class="mix '.$item_classes.'">
  71.                         <div class="single_portfolio">
  72.                             <div class="single_portfolio_one">
  73.                                 <div class="image">
  74.                                     '.$post_thumbnail.'
  75.                                 </div>
  76.                                 <div class="overlay">
  77.                                     <span><a href="'.get_the_permalink().'"><i class="fa fa-link"></i></a></span>
  78.                                 </div>
  79.                             </div>
  80.                         </div>
  81.                     </li>                      
  82.               ';        
  83.         endwhile;
  84.         $list.= '</ul></div>';
  85.         wp_reset_query();
  86.         return $list;
  87. }
  88. add_shortcode('portfolio', 'portfolio_shortcode');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement