{dede:arcpagelist} 是 DedeCMS (织梦CMS) 中一个非常重要且常用的分页标签,它的主要作用是在文章内容页(article_article.htm 模板)中,生成当前文章的分页导航链接,首页 上一页 1 2 3 4 下一页 末页。

(图片来源网络,侵删)
基本语法
{dede:arcpagelist} 标签通常不需要像 {dede:list} 那样配合 {/dede:arcpagelist} 使用,它是一个独立的单标签。
{dede:arcpagelist listsize='5' listitem='index pre pageno next end'/}
属性详解
{dede:arcpagelist} 的功能主要通过其属性来控制,下面是各个属性的详细说明:
| 属性名 | 默认值 | 说明 |
|---|---|---|
listitem |
'pre,next' |
核心属性,用于设置需要显示的分页项,可以组合使用多个值,用英文逗号隔开,可选值包括: - index: 首页- pre: 上一页- pageno: 页码- next: 下一页- end: 末页 |
listsize |
3 |
核心属性,用于设置页码导航中,当前页码左右两侧显示的页码数量,如果 listsize='2' 且当前是第5页,页码会显示为 3 4 [5] 6 7。 |
tagid |
(空) | 分页标签的ID,如果一篇文章有多种分页方式(一种显示完整导航,一种只显示上一页/下一页),可以通过设置不同的 tagid 来区分,避免样式冲突。 |
function |
(空) | 对链接地址进行处理的函数,可以结合自定义函数,对分页链接进行URL重写等操作。function='html2text(@me)'。 |
type |
'text' |
分页项的显示类型。 - 'text': 显示为文字链接(如 "首页", "下一页")。- 'image': 显示为图片链接(需要准备对应的图片文件)。 |
常用属性组合示例
示例 1:标准分页导航(推荐)
这是最常用、最标准的分页样式,包含首页、上一页、页码、下一页、末页。
{dede:arcpagelist listitem='index,pre,pageno,next,end' listsize='3'/}
渲染效果(假设当前是第4页,总共有10页):
首页 上一页 1 2 3 [4] 5 6 7 下一页 末页

(图片来源网络,侵删)
示例 2:简洁分页导航
如果只需要简单的上一页/下一页导航,可以这样设置。
{dede:arcpagelist listitem='pre,next'/}
渲染效果:
上一页 下一页
示例 3:只显示页码
如果只需要显示页码列表,不需要首页、末页等。
{dede:arcpagelist listitem='pageno' listsize='5'/}
渲染效果(当前是第4页,总共有10页):
1 2 3 [4] 5 6 7 8 9 10

(图片来源网络,侵删)
样式控制
{dede:arcpagelist} 渲染出的HTML结构是固定的,但可以通过CSS进行样式美化。
默认生成的HTML结构
<ul class="pagelist">
<li><a href="...">首页</a></li>
<li><a href="...">上一页</a></li>
<li><a href="...">1</a></li>
<li><a href="...">2</a></li>
<li><span class="thisclass">3</span></li> <!-- 当前页 -->
<li><a href="...">4</a></li>
<li><a href="...">下一页</a></li>
<li><a href="...">末页</a></li>
</ul>
CSS 样式示例
你可以通过以下CSS来美化分页导航,这是最常见的样式:
/* 分页列表容器 */
.pagelist {
display: flex;
list-style: none;
padding: 0;
margin: 20px 0;
justify-content: center;
}
.pagelist li {
margin: 0 5px;
}
.pagelist li a {
display: block;
padding: 5px 12px;
border: 1px solid #ddd;
border-radius: 3px;
text-decoration: none;
color: #333;
transition: all 0.3s;
}
.pagelist li a:hover {
background-color: #f8f8f8;
border-color: #999;
}
/* 当前页样式 */
.pagelist li span.thisclass {
display: block;
padding: 5px 12px;
border: 1px solid #007bff;
border-radius: 3px;
background-color: #007bff;
color: #fff;
cursor: default;
}
注意事项
- 使用位置:此标签只能用在文章内容页模板,即
/templets/default/article_article.htm文件中,在其他地方使用无效。 - 后台设置:分页功能是否启用,以及每页显示多少字,是在 DedeCMS 后台设置的,进入“系统” -> “系统基本参数” -> “核心设置”,找到“文档内容同一标题分页数量”,设置为大于0的数字即可启用分页。
- 手动分页:在后台编辑文章时,如果需要手动分页,只需将光标定位到需要分页的位置,然后点击编辑器工具栏上的“分页”按钮(通常是一个“#”号或“分页”字样的图标)即可,DedeCMS 会自动在HTML中插入
<!----nextpage---->这个注释标记,{dede:arcpagelist}标签会识别这个标记并进行分页。
{dede:arcpagelist} 是实现文章内容页分页导航的关键,通过灵活运用 listitem 和 listsize 属性,你可以组合出各种样式的分页效果,再配合CSS,就能轻松打造出美观且实用的分页导航,对于大多数网站,使用 示例1 的属性组合 listitem='index,pre,pageno,next,end' listsize='3' 就足够了。
