SHARE
TWEET

Untitled

a guest Feb 24th, 2014 48 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*  Related posts
  2. /* ------------------------------------ */
  3. if ( ! function_exists( 'alx_related_posts' ) ) {
  4.  
  5.         function alx_related_posts() {
  6.                 wp_reset_postdata();
  7.                 global $post;
  8.  
  9.                 // Define shared post arguments
  10.                 $args = array(
  11.                         'no_found_rows'                         => true,
  12.                         'update_post_meta_cache'        => false,
  13.                         'update_post_term_cache'        => false,
  14.                         'ignore_sticky_posts'           => 1,
  15.                         'orderby'                                       => 'rand',
  16.                         'post__not_in'                          => array($post->ID),
  17.                         'posts_per_page'                        => 3
  18.                 );
  19.                 // Related by categories
  20.                 if ( ot_get_option('related-posts') == 'categories' ) {
  21.                        
  22.                         $cats = get_post_meta($post->ID, 'related-cat', true);
  23.                        
  24.                         if ( !$cats ) {
  25.                                 $cats = wp_get_post_categories($post->ID, array('fields'=>'ids'));
  26.                                 $args['category__in'] = $cats;
  27.                         } else {
  28.                                 $args['cat'] = $cats;
  29.                         }
  30.                 }
  31.                 // Related by tags
  32.                 if ( ot_get_option('related-posts') == 'tags' ) {
  33.                
  34.                         $tags = get_post_meta($post->ID, 'related-tag', true);
  35.                        
  36.                         if ( !$tags ) {
  37.                                 $tags = wp_get_post_tags($post->ID, array('fields'=>'ids'));
  38.                                 $args['tag__in'] = $tags;
  39.                         } else {
  40.                                 $args['tag_slug__in'] = explode(',', $tags);
  41.                         }
  42.                         if ( !$tags ) { $break = true; }
  43.                 }
  44.                
  45.                 $query = !isset($break)?new WP_Query($args):new WP_Query;
  46.                 return $query;
  47.         }
  48.        
  49. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top