自定义邮寄类型档案与分页?

时间:2011-02-17 作者:J82

我有一个名为“项目”的自定义帖子类型(pastebin) 我在仪表板中设置了一个名为“项目”的页面,用于显示项目模板。(pastebin)

问题是,当我使用WP\\u PageNavi合并分页并单击第2页时,我得到一个错误404。我在某处读到,这是因为自定义帖子类型和页面不能有相同的名称。我发现这是真的,因为我尝试将页面名称更改为“项目2”,并且成功了。

但是,当我更改自定义帖子类型的名称时,这会反映在url中。因此,如果我将自定义帖子类型更改为“projects2”,而不仅仅是“projects”,那么url现在看起来是这样的:mysite。com/项目2/单桩

顺便说一下,我的自定义永久链接设置为/%类别%/%postname%/。

同样,出于美观原因,我无法将页面名称更改为“项目2”。

那么我该如何应对呢?这让我疯狂了好几个小时。如果有任何有用的建议,我将不胜感激!

2 个回复
最合适的回答,由SO网友:Jan Fabry 整理而成

正如您在重写分析器中所看到的,/projects/page/2/ 集合projects=page&page=/2 而不是pagename=projects&paged=2 如我们所愿。因此,您只需要为这种特殊情况添加重写规则(在register_projects() 注册自定义帖子类型后,函数将是一个很好的位置):

add_rewrite_rule( \'projects/page/([0-9]+)/?$\', \'index.php?pagename=projects&paged=$matches[1]\', \'top\' );
记住通过访问Permalinks页面或其他方式刷新重写规则。

SO网友:bueltge

这是一种更好的方法,您可以构建自己的分页:

echo paginate_links(array(
  \'current\' => 5,
  \'total\' => 9,
  \'prev_text\' => \'« Prev\'
));
或者通过定制解决方案,请参阅以下2篇帖子:

结束

相关推荐

Pagination with custom loop

我的问题可能是Pagination not working with custom loop, 但有一种不同。我使用自定义循环来显示flash游戏。我想按类别在游戏页面上分页。类别php:<?php if ($cat) { $cols = 2; $rows = 4; $paged = ((\'paged\')) ? get_query_var(\'paged\') : 1; $post_per_page = $cols * $rows; // -1 s