dede如何修改图片路径?

99ANYc3cd6
预计阅读时长 13 分钟
位置: 首页 DEDE建站 正文
  1. 内容正文中的图片:用户在编辑器里上传或插入的图片。
  2. 系统/模板中的图片:系统自带的图标、模板文件里引用的图片等。

下面我将针对这两种情况,提供最常用和最有效的修改方法。

dede 修改图片路径
(图片来源网络,侵删)

正文中的图片路径(最常见)

这种情况通常发生在更换网站域名后,之前发布的文章里的图片路径还是旧域名,导致图片无法显示。

核心原理

DedeCMS 在发布文章时,会自动将图片从 ../uploads/ 这样的相对路径转换成完整的、基于当时网站域名的绝对路径,当域名更换后,这些路径就失效了,我们需要将这些旧的绝对路径批量替换为新的绝对路径。

推荐工具:使用织梦自带的SQL命令执行器

这是最安全、最高效的方法,无需修改代码,直接在后台数据库里完成批量替换。

操作步骤:

dede 修改图片路径
(图片来源网络,侵删)
  1. 登录 DedeCMS 后台:使用管理员账号登录您的网站后台。

  2. 进入 SQL 命令执行页面

    • 在左侧菜单栏找到 “系统” -> “SQL命令行工具” -> “SQL命令行工具”
    • 点击进入,你会看到一个文本框,可以在这里输入 SQL 语句。
  3. 编写并执行 SQL 替换语句

    • 在文本框中输入以下 SQL 语句,请务必根据您的实际情况修改 旧域名新域名
    UPDATE `dede_addonarticle` SET body = REPLACE(body, '旧域名', '新域名');
    • 语句解释

      dede 修改图片路径
      (图片来源网络,侵删)
      • UPDATEdede_addonarticle`dede_addonarticle是 DedeCMS 存储文章正文的表名(如果你的文章模型是“普通文章”),如果你的模型是“图集”等其他模型,表名可能是dede_addonimages等,这里以最常用的dede_addonarticle` 为例。
      • SET body = REPLACE(body, '旧域名', '新域名'):这是核心操作,它将 body 字段(文章正文内容)中所有 旧域名 的字符串替换为 新域名 的字符串。
    • 示例

      • 假设你的旧域名是 http://www.old-site.com,新域名是 https://www.new-site.com
      • 那么你的 SQL 语句应该是:
        UPDATE `dede_addonarticle` SET body = REPLACE(body, 'http://www.old-site.com', 'https://www.new-site.com');
      • 重要提示
        • 旧域名和新域名最好都带上协议(如 http://https://),并且结尾不要带斜杠(),这样可以避免遗漏或错误替换。
        • 如果你的网站是 HTTPS,请务必将 http:// 替换为 https://,否则浏览器会提示“不安全”。
  4. 执行查询

    • 在页面下方,“确认” 按钮旁边通常会有一个选择框,选择“直接运行SQL语句”。
    • 点击 “确定”“执行查询” 按钮。
  5. 验证结果

    系统会提示你受影响的行数,执行成功后,可以到前台随便打开一篇文章,刷新页面,查看图片路径是否已经更新为新域名。


修改系统或模板中的图片路径

这种情况相对少见,通常用于修改系统默认的 Logo、图标,或者修改模板文件里写死的图片路径。

情况1:修改系统默认图片路径(如 Logo、favicon.ico)

这些路径通常在系统基本参数里设置。

  1. 登录后台:进入 “系统” -> “系统基本参数”
  2. 查找相关设置
    • 在左侧菜单选择 “站点信息”,在这里可以修改网站 Logo 的地址。
    • 在左侧菜单选择 “核心选项” -> “网站目录设置”,这里可以设置上传目录、附件目录等。
    • “核心选项” -> “网站参数设置” 中,可以找到网站ico路径等。
  3. 修改并保存:将对应的路径修改为你新的路径,然后点击“保存”。

情况2:修改模板文件中的图片路径

如果你在模板文件(.htm 文件)里直接写死了图片路径, <img src="/static/images/logo.png" />

你需要手动修改这些模板文件。

  1. 找到模板文件

    • 登录 FTP 或主机文件管理器。
    • 进入 DedeCMS 的 /templets/ 目录,然后进入你当前使用的模板文件夹(default/)。
    • 找到包含错误路径的 .htm 文件,index.htmhead.htm 等。
  2. 修改路径

    • 推荐使用相对路径:为了网站的可移植性,最好使用相对于当前模板文件的相对路径。
      • 你的图片都放在 /templets/default/static/images/ 目录下,那么在 index.htm 中,路径就写成 static/images/logo.png
    • 使用绝对路径:如果必须使用绝对路径,请确保路径正确,/static/images/logo.png(网站根目录下)或 /你的目录/static/images/logo.png
  3. 更新缓存

    • 修改完模板文件后,回到后台,进入 “系统” -> “性能选项” -> “更新系统缓存”,点击“更新缓存”。
    • 这样前台才能立即看到修改效果。

从根源解决问题(更换域名)

如果你更换了域名,仅仅修改文章中的图片路径是不够的,还需要修改所有与域名相关的配置,以避免未来再次出现同样的问题。

  1. 修改后台基本参数

    • 进入 “系统” -> “系统基本参数” -> “站点信息”
    • 将“网站域名”修改为你的新域名。
    • 将“网站根URL”也一并修改。
  2. 修改数据库中的域名

    • 使用 SQL 命令执行器,执行以下命令,将数据库中所有存储旧域名的地方都替换掉。
    • 这条命令会替换 dede_homepagecache 表中的缓存域名。
      UPDATE `dede_homepagecache` SET homepagedata = REPLACE(homepagedata, '旧域名', '新域名');
    • 这条命令会替换 dede_arctype 表中的栏目默认页面链接。
      UPDATE `dede_arctype` SET defaultname = REPLACE(defaultname, '旧域名', '新域名');
    • (可选)如果文章内容表(dede_addonarticle)中的 body 字段没有被包含在第一种方法里,也可以再执行一次。
  3. 修改配置文件 dede/config.php

    • 打开 /dede/config.php 文件,找到 $cfg_cmsurl 这一行,将其值修改为你的新域名。
      // $cfg_cmsurl = 'http://www.old-site.com';
      $cfg_cmsurl = 'https://www.new-site.com';
修改对象 推荐方法 注意事项
文章正文中的图片 后台 SQL 命令替换 最常用、最有效,务必写对 旧域名新域名,并确认文章表名(如 dede_addonarticle)。
系统默认图片(Logo等) 后台“系统基本参数”修改 在站点信息和核心选项里设置,方便直观。
模板文件中的图片 手动修改模板文件 推荐使用相对路径,修改后记得更新系统缓存。
整体更换域名 综合以上方法 除了修改图片,还要修改后台参数、数据库缓存和配置文件,确保万无一失。

强烈建议:在进行任何数据库操作(尤其是 UPDATEDELETE)之前,务必备份数据库!以防操作失误,可以及时恢复。

-- 展开阅读全文 --
头像
织梦手机站如何绑定m域名?
« 上一篇 今天
C语言中printf和s有何关联?
下一篇 » 今天

相关文章

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

目录[+]