* Allows visitors to page forward/backwards in any direction within month view
* an "infinite" number of times (ie, outwith the populated range of months).
class ContinualMonthViewPagination {
public function __construct() {
add_filter( 'tribe_events_the_next_month_link', array( $this, 'next_month' ) );
add_filter( 'tribe_events_the_previous_month_link', array( $this, 'previous_month' ) );
public function next_month() {
$url = tribe_get_next_month_link();
$text = tribe_get_next_month_text();
$date = TribeEvents::instance()->nextMonth( tribe_get_month_view_date() );
return '<a data-month="' . $date . '" href="' . $url . '" rel="next">' . $text . ' <span>»</span></a>';
public function previous_month() {
$url = tribe_get_previous_month_link();
$text = tribe_get_previous_month_text();
$date = TribeEvents::instance()->previousMonth( tribe_get_month_view_date() );
return '<a data-month="' . $date . '" href="' . $url . '" rel="prev"><span>«</span> ' . $text . ' </a>';
new ContinualMonthViewPagination;