Source View: get_{$adjacent}_post_join

To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).

Understanding Source Code

The best way to understand what a hook does is to look at where it occurs in the source code.

  • Action hooks look like this: do_action( "hook_name" )
  • Filter hooks look like this: apply_filters( "hook_name", "what_to_filter" ).

Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.

Source View

Line Code
1135                     $posts_in_ex_cats_sql = " AND tt.taxonomy = 'category' AND tt.term_id NOT IN (" . implode($excluded_categories, ',') . ')';
1136                }
1137           }
1138      }
1139
1140      $adjacent = $previous ? 'previous' : 'next';
1141      $op = $previous ? '<' : '>';
1142      $order = $previous ? 'DESC' : 'ASC';
1143
1144      $join  = apply_filters( "get_{$adjacent}_post_join", $join, $in_same_cat, $excluded_categories );
1145      $where = apply_filters( "get_{$adjacent}_post_where", $wpdb->prepare("WHERE p.post_date $op %s AND p.post_type = %s AND p.post_status = 'publish' $posts_in_ex_cats_sql", $current_post_date, $post->post_type), $in_same_cat, $excluded_categories );
1146      $sort  = apply_filters( "get_{$adjacent}_post_sort", "ORDER BY p.post_date $order LIMIT 1" );
1147
1148      $query = "SELECT p.* FROM $wpdb->posts AS p $join $where $sort";
1149      $query_key = 'adjacent_post_' . md5($query);
1150      $result = wp_cache_get($query_key, 'counts');
1151      if ( false !== $result )
1152           return $result;
1153