add_filter('posts_orderby', 'orderby_pages_callback', 10, 2);
function orderby_pages_callback($orderby_statement, $wp_query) {
global $wpdb;
# Verify correct post type, or any other query variable
if ($wp_query->get("post_type") === "post") {
# In this trivial example add a reverse menu order sort
return " {$wpdb->posts}.post_date DESC ";
} else {
# Use provided statement instead
return $orderby_statement;
}
}