Pagination problem
-
I have two custom rewrite rules:
add_rewrite_rule('foo/bar/?', 'index.php?post_type=foo', 'top'); add_rewrite_rule('foo/bar/([a-z]+)/?', 'index.php?post_type=foo&bar=$matches[1]', 'top');
Which gives me posts that match a custom variable bar. However, I want to handle pagination too, thus when a number succeeds
/bar/
wordpress should treat it as a page number. I wrote:add_rewrite_rule('foo/bar/([0-9]+)/?', 'index.php?post_type=foo&paged=$matches[1]', 'top');
In my custom function which is attached to
pre_get_posts
, I process the page number:if($query->get('paged')) { $query->set('paged', intval($query->get('paged'))); }
However, when user accesses, say,
foo/bar/2
, wordpress automatically appends/page/2/
, e.g. in the address bar I get the following url:foo/bar/2/page/2/
.Although the pagination itself works fine (I get the desired records as expected for each page) this
/page/n/
messes up my links on the page and it is an unnecessary duplication in my url. How can I get rid of it?
- The topic ‘Pagination problem’ is closed to new replies.