A-A+

dedecms (首页、列表)等页面 提取内容中第一张图片代码

2017年10月21日 23:27 学习笔记 暂无评论 阅读 5 views 次

【注意:此文章为博主原创文章!转载需注意,请带原文链接,至少也要是txt格式!】

在include/extend.func.php 最下方增加下面的代码。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function Getpic($body)
{
    $getpic = '';
    preg_match_all("/(src)=[\"|'| ]{0,}([^>]*\.(gif|jpg|bmp|png))/isU",$body,$img_array);
    $img_array = array_unique($img_array[2]);
    if(count($img_array)>0)
    {
        foreach($img_array as $key=>$value)
        {
            $picname = preg_replace("/[\"|'| ]{1,}/", '', $value);
            $getpic = $picname;
			break;
        }
    }
    else
    {    
     $getpic="/images/defaultpic.gif";
    }
    return $getpic;
}

假设你在列表页调用

1
2
3
4
5
6
{dede:list pagesize='10'  addfields='body'}
    <li><a href='[field:arcurl /]' target='_blank'>
      <span class="title">[field:title /]</span>
      [field:body function='Getpic(@me)'/]</a>
    </li>
{/dede:list}

同时到网站后台-内容模型管理,修改普通文章模型附加列表字段增加body

dedecms 提取内容中第一张图片

dedecms 提取内容中第一张图片

保存后,就可以更新列表了,这样就能在列表页显示文章正文内所有图片

标签:

给我留言