dede在首页调用文章页的多张图片

admin2019-01-081544

一、我们在include\extend.func.php文件内增加下面函数

//自己增加的函数(调用文章内容页多张图片)
function Getpic_pc($body,$img_num)//$body为传进来的[field:body/]的内容,$img_num是图片数量,该函数不要命名为Getpic,否则会导致友情链接后台空白
{
    $getpic = '';
    preg_match_all("/(src)=[\"|'| ]{0,}([^>]*\.(gif|jpg|png))/isU",$body,$img_array);//通过正则获取[field:body/]内容里的图片
    $img_array = array_unique($img_array[2]);
    $img_array=array_slice($img_array,0,$img_num);
    if(count($img_array)>0)
    {
        foreach($img_array as $key=>$value)
        {
            $picname = preg_replace("/[\"|'| ]{1,}/", '', $value);
            $getpic .="<li><img src='".$picname."' border=0 /></li>";//此处为输出的结果,可以在这里增加html标签以便调整输出的样式
        }
    }
    else 
    {
        $getpic="<p>没有图片</p>";
    }
    return $getpic;
}

二、在首页调用标签

{dede:arclist   typeid='4' addfields='body' channelid='1' }//此处必须添加addfields='body' channelid='1',因为body内容在文章的附加表内
    [field:body function=Getpic(@me,4)/]//调用标签
{/dede:arclist}

说明:上面的@me为[field:body/]的内容。

            4为调用的图片个数。

网友评论