Advertisement
jegtheme

next-prev-cpt-parent

Sep 17th, 2015
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.67 KB | None | 0 0
  1. function jeg_next_prev_portfolio($parentid, $currentid, $to, $category = '')
  2.     {
  3.         $portfolioquery = array(
  4.             'post_type' => 'portfolio',
  5.             'meta_query' => array(
  6.                 array(
  7.                     'key' => 'portfolio_parent',
  8.                     'value' => array($parentid),
  9.                     'compare' => 'IN',
  10.                 )
  11.             ),
  12.             'orderby' => 'menu_order',
  13.             'order' => 'ASC',
  14.             'nopaging' => true
  15.         );
  16.  
  17.  
  18.         if($category !== '') {
  19.             $portfolioquery['tax_query'] =
  20.                 array(
  21.                     array(
  22.                         'taxonomy'  =>  'portfolio_category',
  23.                         'terms'     =>  $category,
  24.                         'field'     => 'id',
  25.                         'operator'  => 'IN'
  26.                     )
  27.                 );
  28.         }
  29.  
  30.         $query = new WP_Query($portfolioquery);
  31.  
  32.         $result = $query->posts;
  33.         $currentpost = 0;
  34.  
  35.         foreach($result as $key => $res) {
  36.             if($currentid === $res->ID) {
  37.                 $currentpost = $key;
  38.                 break;
  39.             }
  40.         }
  41.  
  42.         if($to === 'next') {
  43.             $nextpost = $currentpost + 1;
  44.             if($nextpost >= sizeof($result)) {
  45.                 $nextpost = 0;
  46.             }
  47.  
  48.             $nextcontent = $result[$nextpost];
  49.             return $nextcontent->ID;
  50.         } else {
  51.             $prevpost = $currentpost - 1;
  52.             if($prevpost < 0) {
  53.                 $prevpost = sizeof($result) - 1;
  54.             }
  55.             $prevcontent = $result[$prevpost];
  56.             return $prevcontent->ID;
  57.         }
  58.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement