EasyCMS完成分页导航功能

五一前后对EasyCMS系统进行了进一步的开发,完成了分页导航的功能。

这次分页导航主要解决三个问题:

1. 当进入某一个分类的文章列表时,需要将它下面的子分类的文章也全部列出。

这个问题主要考验的是数据库设计,我的解决方案是在记录分类父子关系时,增加一个字段用来记录分类的路径,也就是某一个分类在整个分类树中的完整路径。通过这个字段就可以非常方便的获得某一个分类的上级分类、下级分类的信息。

2. 分页缓存的问题,也就是说每一页列表都是可以缓存的。

这个问题主要考验的是分页的实现方式。通常的分页排序都是按照添加时间的先后顺序进行倒序排的,也就是新添加的文章会在第一页,但这样的问题就是每一页的文章列表都无法固定下来,也就无法进行缓存。我的解决方案是从第一篇文章开始排,然后从后一页倒序显示。这样每一页的文章列表基本可以固定下来。

3. 分页的SEO问题,也就是说我希望即使是文章列表页面,对搜索引擎也是友好的。

解决这个问题我是通过url 重写来完成的。cat8_5_7_0.html这样的链接,第一个数字实际上分类的id号,第二个数字是记录的总数,第三个数字是每页显示的记录数,第四个数字则是当前的分页编号。

产品动态