dedecms列表页分页样式修改需先确认模板中{dede:pagelist}标签位置,再通过css控制外观或修改arc.listview.class.php中getpagelistst()函数调整html结构,优先推荐css方案。

修改 DedeCMS 列表页分页样式,核心是调整 list.htm 模板中调用分页的标签及对应的 CSS 样式,必要时可自定义分页函数或重写底层分页 HTML 结构。
一、确认分页调用标签位置
打开你使用的列表模板(如 /templets/你的模板/list_article.htm),查找以下常见分页标签:
-
{dede:pagelist listsize='5'/}—— 最常用,默认输出带样式的 HTML 分页代码 -
{dede:pagelist listitem='info,index,end,pre,next,pageno' listsize='5'/}—— 自定义显示项
确保该标签位于 {dede:list} 标签外部、下方,否则无法正常渲染。
二、修改分页的 HTML 结构(进阶)
DedeCMS 默认分页 HTML 由 PHP 函数 GetPageListST() 或 GetPageListDM() 生成,位于 /include/arc.listview.class.php 中。如需彻底改变结构(比如去掉 <li> 改用 <span></span>,或添加按钮类名):
- 备份原文件后,搜索
function GetPageListST(,找到其返回的 HTML 字符串 - 修改其中的
<li>、@#@#@#@#@#@#@#@#@#@0 - @#@#@#@#@#@#@#@#@#@1
- 3
对应可加 CSS:
.pagelist { display: flex; gap: 8px; padding: 10px 0; }.pagelist li { margin: 0; }.pagelist a, .pagelist .thisclass { display: inline-block; padding: 6px 12px; border: 1px solid #ddd; border-radius: 4px; text-decoration: none; }.pagelist .thisclass { background: #007bff; color: #fff; border-color: #007bff; }
四、替换为纯数字+按钮式分页(轻量定制)
若不想动 PHP,也可用 JS + 原生分页 HTML 二次渲染,或直接替换为静态结构(适合固定页数较少的情况):
- 在模板中删掉
{dede:pagelist},改用{dede:pagelist listitem='pageno' runphp=yes}global $cfg_rewrite_if;@me = preg_replace("/<a>]*>([^>]+)/", "<span class="num">\1</span>", @me);{/dede:pagelist}</a> - 再配合 CSS 把
span.num排成一行,当前页用 JS 或模板判断高亮 - 注意:此方式会丢失“上一页/下一页”文字链,需额外补全逻辑











