我知道关于这个问题有很多话题,我读了很多,尝试了不同的方法。但分页仍然不起作用。我认为这与永久链接设置有关。
The situation
我有一个名为“艺术家”的自定义帖子类型,可以链接到活动。在艺术家页面上,我显示了艺术家链接到的所有事件(它们使用posts 2 posts插件链接)。我想为这些活动分页。让我们使用ACDC作为示例艺术家。
显示分页,链接指向root/artist/acdc/page/#
其中#是页码。
例如,如果我点击第2页,我不会root/artists/acdc/page/2
. 页面似乎确实加载了,但我最终还是在同一个URL上显示了前3篇文章(roots/artists/acdc
). 所以我没有404。
当我去root/artists/acdc?page=2
, URL变为root/artists/acdc/2/
, 但它仍然显示第1页的3篇帖子。这种情况发生在\'format\'
设置为\'/page/%#%\'
在里面paginate_links
. 如果我悬停第3页的分页链接,该链接将变为root/artists/acdc/2/page/3
...
My settings
/%category%/%postname%/我使用的是根主题,它确实应用了一些重写,但据我所知,永久链接/页面结构没有重写Stuf I\'ve already tried
<更改了WP设置中的“显示最大值”设置,从10更改为1\'paged\'
到\'page\'
在里面$paged
转到URLroot/artists/acdc/page/2
, 如上所述,没有运气转到URLroot/artists/acdc?page=2
, 如上所述,运气不佳,行为怪异\'format\'
在里面paginate_links
到\'?page=%#%\'
My code (which is on the artist custom post type template but will eventually be stored in functions.php $paged = (get_query_var(\'paged\')) ? get_query_var(\'paged\') : 1;
$args = array(
\'connected_type\' => \'artists_to_events\',
\'connected_items\' => get_queried_object(),
\'post_type\' => \'events\',
\'post_status\' => \'publish\',
\'posts_per_page\' => 3,
\'paged\' => $paged,
\'meta_key\' => \'custom_date\',
\'orderby\'=> \'meta_value\',
\'order\' => \'ASC\'
);
$query = new WP_Query($args);
$big = 99999999;
echo paginate_links(array(
\'base\' => str_replace($big, \'%#%\', get_pagenum_link($big)),
\'format\' => \'/page/%#%\',
\'total\' => $query->max_num_pages,
\'current\' => max(1, get_query_var(\'paged\')),
\'show_all\' => false,
\'end_size\' => 2,
\'mid_size\' => 3,
\'prev_next\' => true,
\'prev_text\' => \'Vorige\',
\'next_text\' => \'Volgende\',
\'type\' => \'list\'
));
由于奇怪的URL行为,我真的不知道问题出在哪里。有什么想法吗?