在使用Dedecms进行CMS建站时,有时我们需要在文章页调用新增的图片字段。然而,使用`{dede:field.字段名称/}`调用时,前端显示的并不是纯图片路径,而是包含了`
  • `、``等HTML标签的内容。这可能会影响到页面布局和SEO效果。本文将为大家提供一种解决方法,确保只获取到纯图片路径。
    ### 问题描述 当我们通过以下方式调用新增的图片字段时:
    
    {dede:field.字段名称/}
        
    前端默认显示的内容如下:
    可以看到,默认输出的内容中包含了多余的HTML标签,这对于需要直接获取图片路径的场景并不适用。
    ### 解决方法 为了提取出纯图片路径,我们可以对DedeCMS的模板标签进行修改或自定义处理。以下是具体步骤: #### 1. 修改核心文件 进入DedeCMS的后台目录,找到并编辑`include/extend.func.php`文件。如果该文件不存在,请手动创建。 在文件末尾添加以下函数:
    
    function get_img_src($html){
        preg_match_all('/]+src=["\\']([^"\\']+)/i', $html, $matches);
        if(isset($matches[1][0])){
            return $matches[1][0];
        }
        return '';
    }
        
    此函数的作用是从HTML内容中提取出``标签的`src`属性值。
    #### 2. 调整模板调用方式 在前台模板中,将原有的调用方式替换为以下形式:
    
    {dede:field.字段名称 function="get_img_src(@me)"/}
        
    这样,系统会先通过`get_img_src`函数处理原始数据,最终只输出图片的真实路径。
    ### 效果展示 经过上述修改后,原本复杂的HTML内容将被简化为纯图片路径,例如:
    
    /uploads/allimg/180330/a1.jpg
        
    这种方式不仅提高了页面加载速度,还优化了搜索引擎抓取时的内容结构。
    ### 注意事项 - 在修改核心文件前,请务必备份原文件,以防出现问题。 - 如果网站启用了缓存功能,记得清除缓存后再查看效果。 - 确保服务器环境支持PHP正则表达式相关函数。 通过以上方法,您可以轻松解决DedeCMS文章页调用新增图片字段时显示多余HTML标签的问题。希望这篇文章对您有所帮助!