类似 flarum 和 discourse,
http://discuss.flarum.org/ https://meta.discourse.org/
帖子列表分页实际是在当前页面,滚动或者搞个“更多”按钮来 ajax 加载 帖子内容页,每次跳到未读内容显示,向上或向下滚动时在加载,。
目前这种 12345/#reply 实际是有 bug 的,而且显得不友好
当回复不满一页时,生成的楼层连接是
https://ruby-china.org/topics/24325#reply10
帖子回复一页以上后才会加上 page=1, 但已经收藏或者被搜索引擎索引的 连接 不能正确定位到该回复了
最讨厌这种,加载更多,又加载更多,面对长长的列表,很容易迷路,不知道自己看到哪了, 分页就像路标,永远不会迷路, 我一般直接点每个分页链接,background 打开页面,这样看完一个就 ctrl + W,很高效
无尽加载给人一种无望的感觉,不知道有多少在后面,有分页就很清楚,比如这个 Blog 一共 10 页,我想全看完,如果这个 blog 一共 50 页,我就要考虑是不是要分几次看完。
另外请教一下,Load more 的 SEO 是怎么做的?
简单的方案,让第一页的楼层链接都加上 page=1,或者最新页都加上 page=n。
discourse 的无限滚动设计是好的,但有很多细节,都实现的话不如迁移到 discourse 好了。
对了,我的 PlainSite 就是采用倒序字母编号的分页,这样当新文章发布时,旧的列表页面的 URL 不会改变。
因为文章是按时间从近到远排序的,第一页是最新的文章,所以最后一页的 URL 是a.html
,倒数第二页的 URL 是b.html
。
如果用数字分页,则可以let count = pages.length
,第一页的 URL 是page/#{count}
,第二页是page/#{count-1}