dede留言板调用方法是什么?

99ANYc3cd6
预计阅读时长 28 分钟
位置: 首页 DEDE建站 正文
  1. 直接在页面中显示留言板内容:这是最常见的需求,即在某个页面(如首页、关于我们页)的指定位置,展示最新的几条留言。
  2. 创建一个独立的留言板页面:创建一个完整的页面,用于展示所有留言和留言表单。

下面我将详细介绍这两种方法,并提供完整的代码示例。

dede怎么调用留言板
(图片来源网络,侵删)

在任意页面调用留言板内容

这种方法的核心是使用DedeCMS的标签 {dede:feedback} 来获取并显示留言数据。

步骤1:进入后台生成相关栏目(可选但推荐)

虽然留言板不隶属于任何栏目,但为了方便管理和生成,建议你:

  1. 在后台“核心” -> “频道模型” -> “内容模型管理”中,确保“留言簿反馈”模型是启用状态。
  2. 在“栏目管理”中,创建一个顶级栏目,命名为“留言板”。
  3. 在这个“留言板”栏目下,创建一个“普通栏目”,客户留言”。
  4. 将这个“客户留言”栏目的“栏目内容”设置为你希望显示留言的页面(比如首页或一个专门的留言板页面),这一步不是必须的,但有助于后续管理和SEO。

步骤2:使用标签调用留言

在你希望显示留言的模板文件(index.htm 或一个自定义的 guestbook.htm)中,使用 {dede:feedback}

基本语法:

{dede:feedback row='10' titlelen='24' infolen='100'}
    <li>
        <strong>[field:username function="(@me=='guest' ? '游客' : @me)"/]</strong>:
        <span class="msg">[field:msg/]</span>
        <span class="time">([field:time function="MyDate('Y-m-d H:i',@me)"/])</span>
    </li>
{/dede:feedback}

参数说明:

dede怎么调用留言板
(图片来源网络,侵删)
  • row='10':显示的留言数量,10表示显示最新的10条,len='24'的长度,对于普通留言,通常没有标题,此参数可忽略或设为0`。
  • infolen='100'的长度,超过这个长度会被截断并加上 。
  • type='feedback':指定获取的类型,feedback表示普通留言,这个参数通常可以省略,因为默认就是它。

字段说明(使用[field:字段名/]调用):

  • id:留言ID。
  • aid:关联的文章ID(如果留言是针对某篇文章的)。
  • username:留言者用户名。
  • msg
  • time:留言时间。
  • ip:留言者IP。
  • ischeck:是否通过审核(1为已通过,0为待审核)。

完整示例代码

假设你想在网站首页的侧边栏显示最新的5条留言,你可以这样操作:

  1. 打开你的首页模板文件 templets/default/index.htm
  2. 找到你想放置留言板的位置(比如一个侧边栏 div)。
  3. 插入以下代码:
<div class="sidebar-box">
    <h3>最新留言</h3>
    <ul class="guest-list">
        {dede:feedback row='5' infolen='50'}
        <li>
            <span class="user">[field:username function="(@me=='guest' ? '游客' : @me)"/]:</span>
            <span class="msg">[field:msg/]</span>
            <span class="time">([field:time function="MyDate('m-d H:i',@me)"/])</span>
        </li>
        {/dede:feedback}
    </ul>
</div>

代码优化:

  • function="(@me=='guest' ? '游客' : @me)":这是一个非常实用的PHP代码,它会判断用户名是否为guest(默认游客名),如果是,就显示“游客”,否则显示真实的用户名。
  • function="MyDate('m-d H:i',@me)":将默认的时间戳格式化为更易读的“月-日 时:分”格式。

保存模板文件,然后到后台“生成” -> “更新主页HTML”,即可在首页看到最新的留言。

dede怎么调用留言板
(图片来源网络,侵删)

创建一个独立的留言板页面

这种方法会创建一个完整的页面,包含留言列表、留言表单和分页功能,非常适合作为专门的留言板页面。

步骤1:创建模板文件

templets/你的模板名称/ 目录下,新建一个文件,命名为 guestbook_page.htm

步骤2:编写模板代码

将以下代码完整地复制到 guestbook_page.htm 文件中。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">网站留言板 - {dede:global.cfg_webname/}</title>
    <meta name="description" content="欢迎来到我们的网站,有任何问题或建议,请在此给我们留言。" />
    <link rel="stylesheet" href="/templets/default/style.css"> <!-- 引入你的网站样式 -->
</head>
<body>
    {dede:include filename="head.htm"/} <!-- 引入头部 -->
    <div class="main-content">
        <div class="guestbook-wrap">
            <h1>网站留言板</h1>
            <!-- 留言表单开始 -->
            <form name="feedback" method="post" action="/plus/feedback.php">
                <input type="hidden" name="action" value="send" />
                <input type="hidden" name="dede_fields" value="username,text;email,text;msg,text;arctitle,text" />
                <input type="hidden" name="dede_fieldshash" value="这里需要生成" />
                <div class="form-group">
                    <label for="username">您的昵称:</label>
                    <input type="text" name="username" id="username" class="input-text" required />
                </div>
                <div class="form-group">
                    <label for="email">电子邮箱:</label>
                    <input type="email" name="email" id="email" class="input-text" required />
                </div>
                <div class="form-group">
                    <label for="msg">留言内容:</label>
                    <textarea name="msg" id="msg" class="textarea" rows="8" required ></textarea>
                </div>
                <div class="form-group">
                    <label for="arctitle">针对文章:</label>
                    <input type="text" name="arctitle" id="arctitle" class="input-text" value="无" />
                </div>
                <button type="submit" class="btn-submit">提交留言</button>
            </form>
            <!-- 留言表单结束 -->
            <hr style="margin: 30px 0;">
            <!-- 留言列表开始 -->
            <div class="feedback-list">
                {dede:feedback}
                <div class="feedback-item">
                    <div class="feedback-header">
                        <span class="user">[field:username function="(@me=='guest' ? '游客' : @me)"/]</span>
                        <span class="time">([field:time function="MyDate('Y-m-d H:i',@me)"/])</span>
                    </div>
                    <div class="feedback-content">
                        [field:msg/]
                    </div>
                </div>
                {/dede:feedback}
            </div>
            <!-- 留言列表结束 -->
            <!-- 分页开始 -->
            <div class="pagination">
                {dede:pagelist listsize='4' listitem='info,index,end,pre,next,pageno'}
                </div>
            <!-- 分页结束 -->
        </div>
    </div>
    {dede:include filename="footer.htm"/} <!-- 引入底部 -->
</body>
</html>

代码关键点解释:

  1. 留言表单

    • action="/plus/feedback.php":这是DedeCMS处理留言提交的固定程序。
    • name="action" value="send":指定操作为“发送”。
    • name="dede_fields"这是核心! 它告诉DedeCMS你要提交哪些字段,以及它们的类型,格式为 字段名,类型;字段名,类型;...
      • username,text:用户名字段,文本类型。
      • email,text:邮箱字段,文本类型。
      • msg,text字段,文本类型(通常用textarea,但这里也用text)。
      • arctitle,text:针对的文章标题,文本类型。
    • name="dede_fieldshash"这是安全验证! 它不能手动填写,你需要:
      1. 先暂时留空,或者随便写一个值。
      2. 保存模板文件。
      3. 在后台“生成” -> “HTML更新”中,点击“更新系统缓存”。
      4. 然后重新打开这个模板文件,dede_fieldshash 的值就会被自动生成并填充进去。
  2. 留言列表:与方法一中的调用方式相同,这里直接展示所有留言。

  3. 分页{dede:pagelist} 标签会自动为留言列表生成分页链接,非常方便。

步骤3:创建页面并关联模板

  1. 在DedeCMS后台,进入“核心” -> “内容管理” -> “单页文档管理”。
  2. 点击“增加新的一页文档”。
  3. :填写“网站留言板”。
  4. 自定义属性:可以勾选“首页调用”等。
  5. 内容来源:选择“使用远程图片或远程文件”,然后点击“从模板中获取”。
  6. 在弹出的窗口中,选择你刚刚创建的 guestbook_page.htm 模板。
  7. 点击“确定”,系统会自动将模板内容填充到内容编辑器中,你无需做任何修改,直接保存即可。
  8. 生成页面,你就可以通过访问这个单页文档的链接来查看你的独立留言板了。

常见问题与注意事项

  • 留言不显示
    • 检查后台“系统” -> “系统基本参数” -> “互动设置”中,是否开启了“是否启用留言板功能”。
    • 检查留言是否需要审核,如果设置了审核,新提交的留言需要你在后台“核心” -> “互动管理” -> “留言簿管理”中审核通过后才会显示。
  • 样式错乱:记得在模板中引入你网站的CSS样式文件,或者直接内写一些简单的CSS来美化留言板。
  • Spam垃圾留言:DedeCMS的留言板默认没有验证码,很容易被垃圾信息轰炸,强烈建议你安装或开发一个验证码插件来增强安全性。

希望这份详细的教程能帮助你成功在DedeCMS中调用留言板!

-- 展开阅读全文 --
头像
dede文学网整站源码获取与使用指南?
« 上一篇 03-01
dede栏目关键字调用怎么用?
下一篇 » 03-01
取消
微信二维码
支付宝二维码