dede 织梦 如何在主页添加用户登录

99ANYc3cd6
预计阅读时长 24 分钟
位置: 首页 织梦建站 正文

使用“会员登录”标签(推荐,最简单)

这是最简单、最推荐的方法,因为它不需要你手动编写任何 HTML 表单代码,只需要在模板中插入系统自带的标签即可。

dede 织梦 如何在主页添加用户登录
(图片来源网络,侵删)

步骤 1:确认并启用“会员”系统模块

在添加登录框之前,请确保你的 DedeCMS 已经安装并启用了会员系统。

  1. 登录网站后台:使用你的管理员账号登录 DedeCMS 后台。
  2. 进入模块管理:在左侧菜单栏中,找到 “系统” -> “软件频道”“系统” -> “核心设置” (不同版本路径可能略有不同,但核心功能都在这里)。
  3. 检查会员模块:在软件频道列表中,找到 “会员” 模块,如果它没有被启用,请点击 “启用” 按钮,这是使用所有会员相关标签的前提。

步骤 2:在主页模板中添加登录标签

  1. 找到主页模板文件:登录 FTP 或使用主机文件管理器,进入 DedeCMS 的模板目录,通常是 /templets/ 目录,然后找到你当前使用的模板文件夹,/templets/default/,在该文件夹下,找到主页模板文件,通常是 index.htm

  2. 定位插入位置:在你希望显示登录框的 HTML 位置,例如网站的头部 (header.htm 中)、侧边栏 (left.htm 中) 或页脚 (footer.htm 中),插入以下标签代码。

    最核心的标签代码:

    dede 织梦 如何在主页添加用户登录
    (图片来源网络,侵删)
    {dede:php}
    if($cfg_ml->IsLogin()){
        // 如果用户已登录,显示欢迎信息和退出链接
        echo "欢迎您,".$cfg_ml->M_UserName.'! <a href="'.$cfg_memberurl.'/index.php">会员中心</a> <a href="'.$cfg_memberurl.'/index.php?uid='.$cfg_ml->M_ID.'" target="_blank">我的空间</a> <a href="'.$cfg_memberurl.'/logout.php?fmdo=login&dopost=exit&cktemp=login">退出登录</a>';
    } else {
        // 如果用户未登录,显示登录表单
        echo '
        <form name="userlogin" action="'.$cfg_memberurl.'/index_do.php" method="POST">
            <input type="hidden" name="dopost" value="login" />
            <input type="hidden" name="keeptime" value="604800" />
            <div>
                <input type="text" name="userid" placeholder="用户名" required="required" />
                <input type="password" name="pwd" placeholder="密码" required="required" />
                <button type="submit">登录</button>
                <a href="'.$cfg_memberurl.'/reg.php">注册</a> | <a href="'.$cfg_memberurl.'/resetpassword.php">忘记密码?</a>
            </div>
        </form>';
    }
    {/dede:php}
  3. 美化样式(可选):上面的代码提供了基本功能,但样式可能很简陋,你可以用 divspan 等标签包裹它,并添加 CSS 类,然后在你的 CSS 文件中定义样式,使其更美观。

    一个美化后的示例:

    {dede:php}
    if($cfg_ml->IsLogin()){
        // 已登录状态
        echo '<div class="user-box logged-in">';
        echo '<span>欢迎,<strong>'.$cfg_ml->M_UserName.'</strong>!</span>';
        echo '<a href="'.$cfg_memberurl.'/index.php" class="btn">会员中心</a> ';
        echo '<a href="'.$cfg_memberurl.'/logout.php?fmdo=login&dopost=exit&cktemp=login" class="btn">退出</a>';
        echo '</div>';
    } else {
        // 未登录状态
        echo '<div class="user-box login-form">';
        echo '<form name="userlogin" action="'.$cfg_memberurl.'/index_do.php" method="POST">';
        echo '<input type="hidden" name="dopost" value="login" />';
        echo '<input type="hidden" name="keeptime" value="604800" />';
        echo '<input type="text" name="userid" placeholder="用户名" class="input-text" required="required" />';
        echo '<input type="password" name="pwd" placeholder="密码" class="input-text" required="required" />';
        echo '<button type="submit" class="btn-login">登录</button>';
        echo '<div class="form-links">';
        echo '<a href="'.$cfg_memberurl.'/reg.php">注册</a> | <a href="'.$cfg_memberurl.'/resetpassword.php">忘记密码?</a>';
        echo '</div>';
        echo '</form>';
        echo '</div>';
    }
    {/dede:php}

    然后你可以在你的 CSS 文件(如 /templets/default/style/dedecms.css)中添加如下样式:

    .user-box {
        /* 你的通用样式 */
    }
    .input-text {
        width: 120px;
        padding: 5px;
        border: 1px solid #ccc;
        margin-right: 5px;
    }
    .btn-login {
        padding: 5px 15px;
        background-color: #007bff;
        color: white;
        border: none;
        cursor: pointer;
    }
    .form-links a {
        font-size: 12px;
        color: #666;
        text-decoration: none;
    }

步骤 3:更新缓存并查看效果

  1. 后台更新缓存:登录 DedeCMS 后台,点击 “生成” -> “更新主页HTML”“更新缓存”
  2. 刷新网站主页:在浏览器中访问你的网站主页,你应该就能看到登录框了,未登录时显示登录表单,登录后则显示欢迎信息和退出链接。

使用“织梦标签”中的 memberlogin

这是另一种更“模板化”的方法,它利用了 DedeCMS 的标签系统,代码更简洁,但灵活性稍差。

dede 织梦 如何在主页添加用户登录
(图片来源网络,侵删)

步骤 1:同样需要启用会员模块

与方法一的第一步完全相同,请确保后台的“会员”模块已启用。

步骤 2:在模板中插入 memberlogin
  1. 找到并打开模板文件:同方法二,找到 index.htm 或其他包含文件。

  2. 插入标签代码:在需要显示登录框的位置,直接使用以下标签。

    {dede:memberlogin}
    <div class="dede-login">
        <form name="userlogin" action="{dede:global.cfg_memberurl/}/index_do.php" method="POST">
            <input type="hidden" name="dopost" value="login" />
            <input type="hidden" name="keeptime" value="604800" />
            <dl>
                <dt>用户登录</dt>
                <dd><input type="text" name="userid" class="ipt-txt" placeholder="用户名" /></dd>
                <dd><input type="password" name="pwd" class="ipt-txt" placeholder="密码" /></dd>
                <dd><button type="submit" class="btn-login">登 录</button></dd>
                <dd><a href="{dede:global.cfg_memberurl/}/reg.php">注册账号</a> | <a href="{dede:global.cfg_memberurl/}/resetpassword.php">忘记密码?</a></dd>
            </dl>
        </form>
    </div>
    {/dede:memberlogin}

    这个标签会自动判断用户是否登录,如果已登录,它会显示一个包含欢迎信息和退出链接的块;如果未登录,则显示上面的登录表单。

步骤 3:美化样式

与方法二类似,你可以为 .dede-login.ipt-txt.btn-login 等类编写 CSS 样式,以达到你想要的外观效果。

步骤 4:更新缓存并查看

与方法二相同,在后台更新主页HTML或缓存,然后刷新网站查看效果。


总结与对比

特性 方法一 (PHP 代码块) 方法二 (memberlogin
易用性 需要少量 PHP 知识,但逻辑清晰 非常简单,直接粘贴标签
灵活性 极高,可以完全自定义 HTML 结构和逻辑,比如添加“记住我”复选框、验证码等。 较低,受限于标签本身提供的 HTML 结构,自定义修改比较麻烦。
推荐度 强烈推荐,尤其是对于有自定义需求的网站。 适合快速、简单地实现一个标准登录框,不追求复杂样式。

对于绝大多数用户来说,方法一 是更好的选择,因为它给了你完全的控制权,而且代码本身并不复杂。

希望这个详细的教程能帮助你成功在 DedeCMS 主页添加用户登录功能!

-- 展开阅读全文 --
头像
dede channel list与普通channel列表有何区别?
« 上一篇 2025-12-02
printf与fprintf有何区别?
下一篇 » 2025-12-02

相关文章

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