Advertisement
hmbashar

How to dynamic mixitup Or isotop in wordpress

Feb 14th, 2015
972
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 6.52 KB | None | 0 0
  1. <?php
  2.  
  3.  
  4. # Register Custom Post
  5. function cb_post_type() {
  6.         register_post_type( 'portfolio',
  7.                 array(
  8.                         'labels' => array(
  9.                                 'name' => __( 'Portfolio' ),
  10.                                 'singular_name' => __( 'Portfolio' ),
  11.                                 'add_new' => __( 'Add New' ),
  12.                                 'add_new_item' => __( 'Add New Portfolio' ),
  13.                                 'edit_item' => __( 'Edit Portfolio' ),
  14.                                 'new_item' => __( 'New Portfolio' ),
  15.                                 'view_item' => __('portfolio'),
  16.                                 'not_found' => __( 'Sorry, we couldnt find the Portfolio you are looking for.' )
  17.                         ),
  18.                 'public' => true,
  19.                 'publicly_queryable' => true,
  20.                 'exclude_from_search' => true,
  21.                 'has_archive' => false,
  22.                 'hierarchical' => false,
  23.                 'capability_type' => 'page',
  24.                 'rewrite' => array( 'slug' => 'portfolio' ),
  25.                 'supports' => array( 'title', 'editor', 'custom-fields','thumbnail')
  26.                 )
  27.         );
  28. }
  29. add_action( 'init', 'cb_post_type' );
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36. # Register Custom Taxonomy For Portfolio
  37.  
  38. function cb_post_taxonomy() {
  39.         register_taxonomy(
  40.                 'portfolio_category',  //The name of the taxonomy. Name should be in slug form (must not contain capital letters or spaces).
  41.                 'portfolio',                  //post type name
  42.                 array(
  43.                         'hierarchical'          => true,
  44.                         'label'                         => 'Portfolio Category',  //Display name
  45.                         'query_var'             => true,
  46.                         'show_admin_column'             => true,
  47.                         'rewrite'                       => array(
  48.                                 'slug'                  => 'portfolio-category', // This controls the base slug that will display before each term
  49.                                 'with_front'    => true // Don't display the category base before
  50.                                 )
  51.                         )
  52.         );
  53. }
  54. add_action( 'init', 'cb_post_taxonomy');
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61. ======================================================
  62.  
  63. */Shortcode*/
  64.  
  65.  
  66. # Dynamic Portfolio With Shortcode
  67.  
  68. function cb_portfolio_shortcode($atts){
  69.         extract( shortcode_atts( array(
  70.                 'category' => ''
  71.         ), $atts, '' ) );
  72.        
  73.     $q = new WP_Query(
  74.         array('posts_per_page' => '-1', 'post_type' => 'portfolio')
  75.         );            
  76.                
  77.  
  78. //Portfolio taxanomy query
  79.         $args = array(
  80.                 'post_type' => 'portfolio',
  81.                 'paged' => $paged,
  82.                 'posts_per_page' => $data['portfolio_items'],
  83.         );
  84.  
  85.         $portfolio = new WP_Query($args);
  86.         if(is_array($portfolio->posts) && !empty($portfolio->posts)) {
  87.                 foreach($portfolio->posts as $gallery_post) {
  88.                         $post_taxs = wp_get_post_terms($gallery_post->ID, 'portfolio_category', array("fields" => "all"));
  89.                         if(is_array($post_taxs) && !empty($post_taxs)) {
  90.                                 foreach($post_taxs as $post_tax) {
  91.                                         $portfolio_taxs[$post_tax->slug] = $post_tax->name;
  92.                                 }
  93.                         }
  94.                 }
  95.         }
  96.         if(is_array($portfolio_taxs) && !empty($portfolio_taxs) && get_post_meta($post->ID, 'pyre_portfolio_filters', true) != 'no'):
  97. ?>            
  98.  
  99.                 <!--Category Filter-->
  100.                 <div class="category-filter">
  101.                         <ul>
  102.                                 <?php foreach($portfolio_taxs as $portfolio_tax_slug => $portfolio_tax_name): ?>
  103.                                 <li class="filter" data-category="<?php echo $portfolio_tax_slug; ?>"><?php echo $portfolio_tax_name; ?></li>
  104.                                 <?php endforeach; ?>
  105.                         </ul>
  106.                 </div>
  107.                 <!--End-->
  108.  
  109.                 <?php endif; ?>
  110.  
  111. <?php
  112.  
  113.         $list = '<div class="portfolio-thumbnail"><div class="megafolio-container noborder">';
  114.         while($q->have_posts()) : $q->the_post();
  115.                 $idd = get_the_ID();
  116.                 //$portfolio_subtitle = get_post_meta($idd, 'portfolio_subtitle', true);
  117.                 //$filterr = get_post_meta($idd, 'filterr', true);
  118.                 $small_image_url = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'portfolio_small_image' );
  119.                 //$full_image_url = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'portfolio_large_image' );
  120.                 //$small_image_url = the_post_thumbnail('project_smal_image', array('class' => 'post-thumb'));
  121.                
  122.                 //Get Texanmy class
  123.                
  124.                 $item_classes = '';
  125.                 $item_cats = get_the_terms($post->ID, 'portfolio_category');
  126.                 if($item_cats):
  127.                 foreach($item_cats as $item_cat) {
  128.                         $item_classes .= $item_cat->slug . ' ';
  129.                 }
  130.                 endif;
  131.                        
  132.                 $single_link =
  133.                 $list .= '    
  134.              
  135.                        <!--Thumbnail 1 Start-->
  136.                        <div class="mega-entry '.$item_classes.'" id="" data-src="'.$small_image_url[0].'">
  137.                              
  138.                                <!--Hover Effect Start-->
  139.                                <a class="" href="'.get_permalink().'">
  140.                                        <div class="mega-hover alone notitle">
  141.                                      
  142.                                                <!-- Link Button -->
  143.                                                <div class="mega-hoverview"></div>
  144.                                                
  145.                                        </div>
  146.                                </a>
  147.                                <!--Hover Effect End-->
  148.                              
  149.                        </div>
  150.                      
  151.                ';        
  152.         endwhile;
  153.         $list.= '</div></div>';
  154.         wp_reset_query();
  155.         return $list;
  156. }
  157. add_shortcode('portfolio', 'cb_portfolio_shortcode');
  158.  
  159.  
  160.  
  161.  
  162. ?>
  163.  
  164.  
  165.  
  166. /*Tutorial Link: https://www.youtube.com/watch?v=tKa_sxw9cfk */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement