织梦CMS作为常用的建站系统,其首页默认模板往往只能固定调用几条最新文章,无法像栏目列表那样实现翻页浏览。借助自由列表功能,可以将一组文章以分页形式部署在首页,访客无需进栏目就能翻看更多内容。
自由列表是织梦后台提供的一种特殊文档调用方式,它允许用户自定义SQL条件、展示字段和每页数量,并自动生成分页代码。与普通文章列表不同,自由列表拥有独立的列表模板和页码规则,因此非常适合放在首页这类特殊页面。
一、后台创建自由列表
进入织梦后台,在左侧菜单找到核心,内容模型管理下方有自由列表管理。点击增加列表,填写列表名称,例如首页新闻分页。在列表规则中,设置起始ID为0,每页记录数建议填5到10条,具体视首页版式而定。
接着配置SQL语句,常用写法是Select * From dede_archives where arcrank>-1 order by pubdate desc limit 0,10,表示调用正常文档并按发布时间倒序。若只想调某模型,可加typeid条件。保存后系统会生成类似list-自由列表ID.html的页面,但我们不直接访问它,而是用标签嵌入首页。
二、首页模板调用自由列表
打开首页模板index.htm,在需要显示分页区域写入自由列表标签。织梦支持通过{dede:freelist/}调用,例如{dede:freelist pagesize='8' listid='2'}其中listid是刚建的自由列表ID。该标签会自动输出文章链接与标题,并附带分页导航。
如果默认样式不满足,可在标签内使用listitem属性控制页码显示,比如只显示首页、上一页、数字页、下一页。保存模板后生成首页,就能看到带页码的内容块。注意自由列表分页参数依靠URL中的page变量,因此首页需以动态或伪静态方式支持参数传递。
三、分页样式与常见问题
自由列表生成的分页代码含有特定类名,可通过CSS美化。例如给.freelist_page加上居中布局和间距,让页码更清晰。有些用户发现点击第二页跳转到了后台列表页,这是因为模板里没限定首页调用环境,应确认首页生成方式为包含自由列表标签的纯静态或动态首页。
另一个常见问题是分页总数不对,通常由于SQL里limit写死导致。正确做法是在自由列表后台设每页数和总记录条件,让系统自己算页数。下表列出关键配置项与说明:
| 配置项 | 作用 | 建议值 |
|---|---|---|
| 每页记录数 | 控制首页单次展示文章量 | 8 |
| 列表ID | 关联后台自由列表 | 对应新建ID |
| 排序字段 | 决定文章先后顺序 | pubdate |
通过上述步骤,织梦首页便能拥有顺滑的分页效果。实际操作时,先在小站点测试,确认页码跳转不报错,再套用到正式模板,可大幅降低调试成本。