Create an array of “read next” posts using a dynamic offset

Use a date_query to get the 30 posts older than the current one.

EXAMPLE

(NOTE: The following is untested and requires WordPress 3.7+ and PHP 5.4+)

$current_post = get_queried_object();
$args = [
    // Your arguments to pass, add as needed
    'posts_per_page' => 30,
    'date_query' => [
        [
            'before' => strtotime( $current_post->post_date ), // Add current post date to search posts againt before this one
            'inclusive' => false, // Exclude current post from the list
        ]
    ],
];
$q = get_posts( $args );