dede文章如何实现跳转到指定页面?

99ANYc3cd6
预计阅读时长 11 分钟
位置: 首页 DEDE建站 正文
  1. 外部链接需要跳转到其他网站。
  2. 内部专题页:文章需要跳转到网站内的一个专题页面。
  3. 下载地址:文章本身是介绍,实际内容是下载文件。
  4. 会员专享:未登录用户点击文章时,先跳转到登录页面。

下面我将为您提供几种最常用和最有效的方法,您可以根据您的具体需求选择。

dede文章跳转到指定
(图片来源网络,侵删)

后台直接修改(最简单,适用于单个文章)

这是最直接的方法,适用于只需要修改一篇文章的情况。

  1. 登录后台:使用管理员账号登录您的DedeCMS后台。
  2. 找到文章:进入“[核心]” -> “[内容管理]” -> “[普通文章管理]”,找到您需要设置跳转的那篇文章。
  3. 编辑文章:点击文章标题或“编辑”按钮,进入文章编辑页面。
  4. 修改文章来源:在编辑页面,找到“文章来源”这一栏。
    • 将来源名称修改为您想要跳转到的目标网址https://www.example.com
    • 在来源网址(或有些版本是“自定义链接”)一栏,也填入这个目标网址
  5. 更新文章:点击“保持”或“更新”按钮保存修改。

效果:用户在前台点击这篇文章的标题时,浏览器会直接跳转到您在“文章来源”中填写的网址。

优点:操作简单,无需修改任何代码。 缺点:只适用于单篇文章,如果文章很多,会非常繁琐。


修改文章模板(推荐,适用于批量文章)

这是最灵活、最推荐的方法,特别是当您需要为多篇文章设置跳转时,通过修改文章内容页的模板文件,我们可以添加一个自定义的跳转逻辑。

dede文章跳转到指定
(图片来源网络,侵删)

核心思路:在文章内容页模板中,判断文章是否有自定义的跳转字段,如果有,则执行跳转;如果没有,则正常显示内容。

步骤如下:

  1. 准备自定义字段

    • 进入后台“[核心]” -> “[频道模型]” -> “[内容模型管理]”。
    • 点击您文章所在的模型(通常是“普通文章模型”),进入编辑页面。
    • 在“字段管理”标签页,点击“添加新字段”。
    • 字段名jumpurl (这个名称可以自定义,建议用英文)
    • 跳转网址 (这个是后台显示的名称)
    • 字段类型单行文本
    • 其他选项:保持默认即可。
    • 保存后,系统会提示您需要重新生成文章页面才能生效。
  2. 为文章添加跳转网址

    dede文章跳转到指定
    (图片来源网络,侵删)
    • 进入“[核心]” -> “[内容管理]” -> “[普通文章管理]”。
    • 编辑一篇需要跳转的文章,您会发现文章编辑页面多出了一个“跳转网址”的输入框。
    • 在这个框中填入您想要跳转的目标网址,https://www.target-page.com
    • 更新文章。
  3. 修改文章内容页模板

    • 使用FTP或主机文件管理器,进入您的DedeCMS模板目录。
    • 路径通常是:/templets/default/ (如果您使用的是默认模板) 或您自定义的模板目录。
    • 找到文章内容页模板文件,通常是 article_article.htm
    • 用代码编辑器打开 article_article.htm 文件。
    • 找到 {dede:field.body/} 这个标签,它通常用于显示文章正文,我们可以在它前面或后面添加跳转逻辑。
    • {dede:field.body/} 之前,添加以下PHP代码:
    {dede:php}
    // 获取自定义的跳转字段值
    $jumpurl = $this->Fields['jumpurl'];
    // 如果跳转字段不为空,则执行跳转
    if (!empty($jumpurl)) {
        // 可以在这里添加一些提示信息,让用户知道即将跳转
        echo "<div style='text-align:center; padding:20px; color:red;'>您正在访问的文章已迁移至新地址,3秒后自动跳转...</div>";
        // 使用header函数进行跳转
        // 注意:这行代码必须在任何HTML输出之前执行
        Header("Location: $jumpurl");
        exit(); // 确保脚本在跳转后停止执行
    }
    {/dede:php}
  4. 更新文章页面

    • 进入后台“[生成]” -> “[HTML更新]”。
    • 选择“更新所有文章页面”或“更新指定栏目”,然后点击“开始生成”。
    • 这一步是为了让DedeCMS重新解析模板,并应用您刚才的修改。

效果:当用户访问一篇填写了“跳转网址”的文章时,页面会先显示一条提示信息,然后立即跳转到您指定的网址,对于没有填写该字段的文章,则完全正常显示。

优点

  • 灵活:可以为任意文章设置跳转,也可以不为任何文章设置。
  • 可控:可以自定义跳转前的提示信息。
  • 专业:是标准的CMS内容扩展方式。

使用JavaScript跳转(适用于前端临时需求)

如果您不想修改后端模板,或者只是想在文章内容里做一个临时的跳转,可以直接在文章编辑器中使用JavaScript。

  1. 编辑文章:在后台编辑文章,切换到“源代码”模式。

  2. 添加JS代码:在文章的任何位置(比如开头或结尾)插入以下JavaScript代码:

    <script type="text/javascript">
    // 页面加载完成后执行
    window.onload = function(){
        // 弹出提示
        alert('文章内容已迁移,即将为您跳转新地址。');
        // 执行跳转
        window.location.href = 'https://www.your-target-url.com';
    };
    </script>

效果:文章页面加载后,会弹出一个提示框,用户点击“确定”后,页面会跳转到指定网址。

优点

  • 无需修改任何后台或模板文件。
  • 非常快速,适合临时使用。 缺点
  • SEO不友好:搜索引擎爬虫可能会忽略JavaScript,导致跳转失效。
  • 用户体验稍差:会弹出alert提示框,可能会让用户感到突兀。
  • 不灵活:每篇文章都需要手动修改源代码,不适合批量操作。

总结与推荐

方法 优点 缺点 适用场景
后台修改来源 极其简单,无需技术知识 仅限单篇,操作繁琐,可能影响文章来源的统计 偶尔需要修改一两个外部链接的文章
修改模板(推荐) 灵活、强大、专业、SEO友好 需要修改代码和重新生成页面 绝大多数情况下的首选,特别是需要为多篇文章设置跳转时
JavaScript跳转 无需修改后台,快速临时使用 SEO不友好,用户体验一般,不灵活 临时测试、非正式内容的快速跳转

对于绝大多数用户,我强烈推荐您使用方法二,它虽然需要一些初始的设置,但一旦完成,后续管理起来非常方便,也是最符合DedeCMS设计理念的方式。

-- 展开阅读全文 --
头像
织梦伪静态后为何不能翻页?
« 上一篇 今天
rand与srand如何正确使用?
下一篇 » 今天

相关文章

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

目录[+]