dede_pages是什么?如何使用?

99ANYc3cd6
预计阅读时长 17 分钟
位置: 首页 DEDE建站 正文

这是一个非常核心且常用的功能,主要用于分页

dedecms dede_pages
(图片来源网络,侵删)

dede_pages 是什么?

dede_pages 并不是一个独立的数据库表,而是一个由 DedeCMS 系统在文章内容页(article_article.htm)中自动生成的全局变量

当你编辑一篇文章时,如果文章内容超出了设定的分页字数或插入了特定的分页符(<div style="page-break:;">#p#</div>[page]),DedeCMS 在生成该文章的静态 HTML 页面时,就会解析内容,并在模板的指定位置插入这个 dede_pages 变量,这个变量包含了文章所有分页的链接列表。


dede_pages 有什么用?

它的主要作用是在文章内容页,为读者提供翻页导航,当一篇文章被分成多页时,读者可以通过这个导航轻松地跳转到上一页、下一页,或者直接跳转到任意一页。

常见的效果如下:

dedecms dede_pages
(图片来源网络,侵删)

上一页 1 2 3 4 5 ... 下一页


如何使用 dede_pages

使用 dede_pages 主要涉及两个方面:

  1. 开启文章分页功能(后台设置)。
  2. 页模板中调用(前端模板修改)。

后台设置:开启文章分页

在 DedeCMS 后台,你需要确保文章分页功能是开启的,并设置好分页规则。

  • 路径:登录后台 -> 系统 -> 系统基本参数 -> 核心设置
  • 关键选项
    • 分页间隔:这是最核心的设置,它表示每页显示多少个字符(一个汉字算一个字符,一个英文或标点也算一个字符),当文章总字数超过这个数值时,系统会自动进行分页。
      • 设置为 2000,那么一篇 5000 字的文章就会被自动分成 3 页(前两页各 2000 字,最后一页 1000 字)。
    • 自动分页符标记:这个选项定义了在文章编辑器中手动插入分页符的代码,默认是 <div style="page-break:;">#p#</div>

      你可以在编辑文章时,在需要分页的地方手动插入这个标记,实现更精确的分页控制,而不是单纯依赖字数。

      dedecms dede_pages
      (图片来源网络,侵删)

前端模板:调用 dede_pages

页模板文件 article_article.htm 中,你只需要在需要显示分页导航的地方,插入一个简单的标签即可。

基本用法:

<div class="dede_pages">
    {dede:pages/}
</div>

{dede:pages/} 这个标签在解析时,会被系统自动替换为包含所有分页链接的 HTML 代码,也就是我们前面提到的 dede_pages 变量的值。


自定义 dede_pages 的样式

默认生成的分页导航样式可能比较朴素,通常是一堆 <a> 标签,为了让它符合你的网站设计,你需要自定义它的 CSS 样式。

步骤:

  1. 查看默认生成的 HTML 结构

    打开一篇已分页的文章,在浏览器中右键“查看网页源代码”,找到分页导航部分,你会发现类似下面的结构:

    <div class="dede_pages">
        <ul class="pagelist">
            <li><a href="/plus/view.php?aid=123" class="next">上一页</a></li>
            <li><span class="thisclass">1</span></li>
            <li><a href="/plus/view.php?aid=123&pageno=2">2</a></li>
            <li><a href="/plus/view.php?aid=123&pageno=3">3</a></li>
            <li><a href="/plus/view.php?aid=123&pageno=4">4</a></li>
            <li><a href="/plus/view.php?aid=123&pageno=5">5</a></li>
            <li><a href="/plus/view.php?aid=123&pageno=2" class="next">下一页</a></li>
            <li><select onchange="window.location.href=this.options[this.selectedIndex].value;">
                <option value="/plus/view.php?aid=123" selected>第1页</option>
                <option value="/plus/view.php?aid=123&pageno=2">第2页</option>
                <option value="/plus/view.php?aid=123&pageno=3">第3页</option>
                ...
            </select></li>
        </ul>
    </div>
  2. 编写 CSS 样式

    根据上面的 HTML 结构,你可以在你的 CSS 文件(如 style.css)中编写对应的样式来美化它。

    示例 CSS 代码:

    /* 分页导航容器 */
    .dede_pages {
        text-align: center; /* 居中显示 */
        margin: 20px 0;
        font-size: 14px;
    }
    /* 分页列表 */
    .dede_pages .pagelist {
        display: inline-block; /* 使其成为行内块,方便设置边距 */
        padding: 0;
        margin: 0;
        list-style: none; /* 去掉列表前的点 */
    }
    /* 每个分页项 */
    .dede_pages .pagelist li {
        float: left; /* 横向排列 */
        margin: 0 5px; /* 设置左右间距 */
    }
    /* 链接样式 */
    .dede_pages .pagelist li a {
        display: block;
        padding: 5px 10px;
        border: 1px solid #ddd;
        color: #333;
        text-decoration: none;
        border-radius: 3px; /* 圆角 */
    }
    /* 鼠标悬停效果 */
    .dede_pages .pagelist li a:hover {
        background-color: #f8f8f8;
        border-color: #ccc;
    }
    /* 当前页样式 */
    .dede_pages .pagelist li span.thisclass {
        display: block;
        padding: 5px 10px;
        border: 1px solid #007bff;
        background-color: #007bff;
        color: #fff;
        border-radius: 3px;
    }
    /* 下一页/上一页样式 */
    .dede_pages .pagelist li a.next,
    .dede_pages .pagelist li a.prev {
        /* 可以给上一页下一页单独加样式 */
    }

高级用法与注意事项

  1. 静态化模式下的链接 在静态化模式下,分页链接会以 .html 并且通过 号和页码来区分,article_123_1.htmlarticle_123_2.html,如果你的伪静态规则设置得当,也可能是 article-123-1.html 这样的形式,DedeCMS 会自动处理。

  2. 手动分页 vs 自动分页

    • 自动分页:依赖 分页间隔 设置,简单快捷,但可能在段落中间断开,影响阅读体验。
    • 手动分页:在文章编辑器中插入 <div style="page-break:;">#p#</div>,可以让你在章节结束、图片说明完成等逻辑节点进行分页,体验更好。
  3. SEO 优化

    • 确保每一页都有独立的 <title><description>,DedeCMS 的文章分页页默认会自动在标题后加上 - 第N页,这对于 SEO 是友好的。
    • 过短就分页,一页内容至少要有几百个字,否则可能会被搜索引擎视为“内容稀薄页”。
特性 描述
本质 一个在文章内容页自动生成的全局变量,包含分页链接的 HTML 代码。
作用 页为读者提供翻页导航功能。
调用方式 article_article.htm 模板中使用 {dede:pages/}
后台配置 系统基本参数 -> 核心设置 中配置 分页间隔自动分页符标记
样式自定义 通过分析 {dede:pages/} 生成的 HTML 结构,编写 CSS 进行美化。
关键点 结合后台设置和前端模板,才能实现完整的文章分页功能。

希望这份详细的解析能帮助你完全理解和使用 DedeCMS 的 dede_pages 功能!

-- 展开阅读全文 --
头像
int main在C语言中究竟指什么?
« 上一篇 12-12
dedecms小清新笑话模板哪里下载?
下一篇 » 12-12

相关文章

取消
微信二维码
支付宝二维码

目录[+]