dedecms升级到5.7SP1后,开启二级域名,你会发现,在二级域名下的文章,上传的图片地址都是:二级域名+图片地址,这是相对路径。但是你的图片是默认上传在uploads里面的。应该使用绝对路径。这就出现图片路径错误,导致图片不显示。那怎么修改这种情况呢?我在网上看了好多方法,但是大部分最终是不可用的。在这里,将两种有效的方法分享给大家。这两种方法都是在你开启“多站点支持”、“绑定完二级域名”的前提下。

第一种:批量修改域名下所有文章内的图片路径。

1、进后台-核心-批量维护-数据库内容替换

2、选择表 dede_addonarticle

3、字段 body

4、被替换内容: src="/uploads/

5、替换为:src="http://你的域名/uploads/

6、点击“开始替换”

提示完成后就代表替换完成。 生成一下文章,你就发现前台显示正常了。

这种方法对于网站不大经常更新的站长比较适合,如果你每天都会更新网站文章,这个方法就会太繁琐了!下面介绍第二种方法。彻底解决这个问题。

第二种:修改程序文件,增加一个参数。

1、找到include下的文件extend.func.php

2、在文件最后增加一个参数。(php函数的结束括号外)

function replaceurl($newurl)
{
$newurl=str_replace('src="/uploads/allimg/','src="http://你的域名/uploads/allimg/',$newurl);
return $newurl;
}

3、将文章正文的调用标签 {dede:field.body/} 修改成 {dede:field.body function='replaceurl(@me)'/}

4、传到服务器,在测试一下就会发现,问题解决!

至此,dedecms5.7二级域名文章图片不显示,相对路径改成绝对路径就算完成!经测试,第二种方法可用。