二级域名下文章图片路径bug解决方法修改于DeDeCMS官方论坛,我们知道DeDeCMS V5.3启用二级域名后,其上传文章的时候,在编辑器中添加图片,默认的是相对的路径,意思就是说图片的路径在文章中是这样“/uploads/litimg/081215/1603461L57.jpg”显示的,当你用www的域名时,是不会出现问题的,而一旦启用了二级域名比如https://www.dedecms8.com/mb的时候,那么启用二级域名中的文章图片路径还是这样“/uploads/litimg/081215/1603461L57.jpg”,相对与当前文档就变成了“https://www.dedecms8.com/mb//uploads/litimg/081215/1603461L57.jpg”那么图片当然就不会显示了啊,所以,要解决这个问题,就变了很简单了,可以修改编辑器中的上传图片的相关代码,让他以绝对路径的形式显示,就可以了;
这里发布一个简单的解决的方法.只能用于fck编辑器.解决的是自己上传的图片路径bug.
打开include/FCKeditor/editor/dialog/image.php
找到141行左右.改成以下代码:
$imgHtml .= "<a href='http://www.domain.com/$urlValue' target='_blank'><img src='http://www.domain.com/$imgsrcValue' width='$imgwidthValue' border='0' height='$imgheightValue' alt='' /></a><br />图片{$i}<br />\r\n";
下面再说一下从的网站复制文章后里面自己带的图片.保存后路径出错的解决方法.
打开/dede/inc/inc_archives_functions.php
找到141行.
修改代码为:$fileurl = "http://www.domain.com/.$imgUrl."/".$milliSecondN.'-'.$key.$itype;
http://www.domain.com 指的是你自己的域名.也可以用官方的$cfg_basehost
以上是暂时的解决方法.最终还是要靠官方的补丁.
最后还是要反应一下官方论坛的态度实在是不敢让人恭维..这个问题论坛里反应非常久了.跨了好几个版本了..一直都说有解决bug,但实际上都没有最终解决.
而且还根本不管用户提的意见.
方法2:
第二种,需要修改dede的源码,是在目录include下的文件extend.func.php增加一个函数,函数的代码如下:
function replaceurl($newurl)
{
$newurl=str_replace(‘/uploads’,'http://www.yuerong.info/uploads’,$newurl);
return $newurl;
}
把代码中的域名替换成你的.另外调用文章正文内容的标签还需要改成{dede:field name=’body’ function=’replaceurl(@me)’/}