Advertisement
Guest User

Untitled

a guest
Feb 24th, 2014
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.26 KB | None | 0 0
  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. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement