在使用织梦(DedeCMS)系统时,如果需要绑定二级域名并优化SEO,可能会遇到文章页面图片路径不正确的问题。这不仅影响用户体验,还可能对搜索引擎优化产生负面影响。以下是一篇关于如何解决此问题的详细教程,帮助您更好地优化网站。

首先,我们需要处理已经发布过的内容:

进入后台 > 核心 > 批量维护 > 数据库内容替换,选择表 dede_addonarticle 字段 body
被替换内容:src="/uploads/
替换为:src="http://你的域名/uploads/
这样可以确保已有的图片路径变为绝对路径。


接下来,进行系统设置的调整:

后台 > 系统-系统设置 > 核心设置。
找到“(是/否)支持多站点,开启此项后附件、栏目连接、arclist内容启用绝对网址”选项,选择“是”,然后保存。
这项设置将确保新生成的内容自动使用绝对路径。


完成上述步骤后,重新生成所有内容页面。到此为止,老问题已经解决完毕。


然而,如果您最近安装了最新版的Dede程序,并且绑定了二级域名,可能会发现产生的路径结构发生了变化。例如,主域名下的路径为:域名/栏目/文章(三层),而绑定二级域名后则变为:二级域名/文章(两层)。这种结构更利于SEO优化,但Dede系统可能存在先天不足,导致文章页面的图片路径错误,进而无法显示图片。


针对这一问题,可以通过修改Dede的源码来解决。具体操作如下:

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

将上述函数添加到目录include下的文件extend.func.php中。


此外,还需要修改调用文章正文内容的标签。将原来的标签:

{dede:field.body/}

改为:

{dede:field.body function='replaceurl(@me)'/}


通过以上步骤,您可以成功解决DedeCMS绑定二级域名后图片路径错误的问题,同时优化网站结构以提升SEO效果。希望这篇教程能为您带来帮助!

注意:在实际操作中,请根据您的域名和具体情况调整代码中的相关参数。同时,在修改源码前,建议备份重要文件,以防万一。