Disable wordpress pagination URL rewrite for specific page

I’m hoping somebody could help me out with the following issue. I have a wordpress page: http://www.howdesign.com/design-jobs and there is a list of jobs coming from behance.net via JavaScript. When you click on “Next Page” or a specific page number, the URL is supposed to be as follows:
/design-jobs/?callback=Joblist.search.repage&page=2&sort=published_date&status=current

However, WordPress automatically takes the “page=2” and rewrites the URL as

Read More
/design-jobs/2/?callback=Joblist.search.repage&sort=published_date&status=current

(I was unable to post more than two URLs hence the shortened version). Notice the number 2 is now out of the query string and “page=2” was removed as well. This then breaks the pagination of the job listing on this page.

I was wondering if there is a way to disable this rewrite behavior for a specific page to allow the pagination to work correctly.

Related posts

Leave a Reply

1 comment

  1. The redirect_canonical filter is responsible for this, which you can selectively disable depending on the requested page. This is untested, but should work:

    function wpa66273_disable_canonical_redirect( $query ) {
        if( 'design-jobs' == $query->query_vars['pagename'] )
            remove_filter( 'template_redirect', 'redirect_canonical' );
    }
    add_action( 'parse_query', 'wpa66273_disable_canonical_redirect' );