首页 > CMS > 织梦DEDE > 正文

织梦dedecms调用文章内容页body中的图片(可多张)

2024-07-12 08:59:59
字体:
来源:转载
供稿:网友

我们开发织梦模板时,需要独立提取文章内容页 body字段中(可以是自定义字段名称)图片,可以自定义调用图片数量值。

函数代码

请将代码加入到 /include/extend.func.php 文件中

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    function getbodypics($string, $num)
    {
        preg_match_all("/<img([^>]*)/s*src=('|/")([^'/"]+)('|/")/",$string,$matches);
        $imgsrc_arr = array_unique($matches[3]);
        $count = count($imgsrc_arr);
        $i = 0;
        foreach($imgsrc_arr as $imgsrc)
        {
            if($i == $num) break;
            $result .= "<img src=/"$imgsrc/"/>";
            $i++;
        }
        return $result;
    }
 
    // $result .= "<img src=/"$imgsrc/"/>"; 这里可以给调用图片增加一些样式等。
    // 例如:$result .= "<img class='imgs' src=/"$imgsrc/"/>";
函数调用方法

在 dede:arclist 和 dede:list 标签中调用代码如下:

1
2
3
4
5
6
7
8
9
{dede:arclist addfields='body'  channelid='1' row='8'}  
[field:body function=getbodypics(@me,3)/]
{/dede:arclist}
<!-- body 可以改为自定义字段名称。 channelid为内容模型id,数字3,为调用图片数量,可以根据需要更改 -->
 
{dede:list}
[field:body function=getbodypics(@me,3)/]
{/dede:list}
<!--body 可以改为自定义字段名称,但是需要在新建自定义字段时,一定要选择 【使字段可以在列表的底层模板中获得】-->

 

在内容模板中的调用代码:

1
2
3
    {dede:field.body function=getbodypics(@me,3)/}
 
    <!-- body 可以改为自定义字段名称,3为调用图片数量。-->

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表