位置:首页 > CMS相关 > 织梦CMS >

织梦手机端文章页调用{dede:field.body/}图片不显示问题处理

字号+ 作者:micloud 来源:www.seoalphas.com 2018-12-02 09:10 浏览量:2001

同样是织梦手机端模板问题,织梦默认是将手机端作为二级栏目的形式,即:http://www.seoalphas.com/m  就是手机端的网址;但是我们很多情况下想要的手机端url是二级域名的形式,如:http://m.seoalphas.com/ 。二级栏目的形式生成的文章页图片路径没有问题,图片会正常显示,但是如果是二级域名的情况,手机端同样调用的是和pc端同样的数据,图片显示就会异常,这是因为数据库中出入的图片路径是相对的,如:‘/uploads/.......jpg’形式,正确的路径应该是‘http://www.seoalphas.com/uploads/.......jpg’,现在却变成了‘http://m.seoalphas.com/uploads/.......jpg’,导致图片显示错误。

网上有一周处理方法是将上传的图片,在上传的时候,直接加上www的域名,这样相对路径的图片url就变成了绝对路径,在调用的时候就不会出现问题了。感觉上述方法改变了存入数据库中的数据,不够灵活。

这里采用另一种办法,在生成的时候处理要生成的图片路径,替换为绝对路径,即保持数据库内容不变,只是改变要显示的内容。

修改如下:

打开文件include/arc.archives.php文件,搜索‘isset($this->Fields[$fname]’,找到后修改为如下内容:

if($fname == 'body'){
                $newbody = str_replace('src="/uploads/','src="http://'.$_SERVER['HTTP_HOST'].'/uploads/',$this->Fields[$fname]);
                return $newbody;
            }else{
                return $this->Fields[$fname];
}

2.jpg

代码意思也比较简单:先判断下模板是否调用了body内容,如果调用了,将相对图片路径加上文字根域名。

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 织梦系统去除版权显示:Power by DedeCms

    织梦系统去除版权显示:Power by DedeCms

    浏览次数:11899

  • dedecms织梦调取文章页跳转地址,直接调用跳转网址的问题

    dedecms织梦调取文章页跳转地址,直接调用跳转网址的问题

    浏览次数:6249

  • dedecms PC和移动端共用一个后台 图片路径处理问题

    dedecms PC和移动端共用一个后台 图片路径处理问题

    浏览次数:3659

  • DedeCMS实现添加栏目图片功能

    DedeCMS实现添加栏目图片功能

    浏览次数:2673

网友点评
评论区域