陈德馨

Z-Blog PHP获取调用文章的第一张图片或随机缩略图的方法

1626人参与 |分类: 站长百科|时间:2017年05月28日 08:44

Z-Blog PHP版提供了获取文章首张图片的函数代码,直接把函数代码添加到模板文件中,然后调用对应的变量输入图片url即可,默认用于最新文章列表,通过代码调整可用于分类文章列表,比如Z-Blog PHP企业模板的首页产品展示列表。

Z-Blog官方Z-Blog WiKi提供的代码:

{php}
$temp=mt_rand(1,4);
$pattern="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png]))[\'|\"].*?[\/]?>/";
$content = $article->Content;
preg_match_all($pattern,$content,$matchContent);
if(isset($matchContent[1][0]))
    $temp=$matchContent[1][0];
else
    $temp=$zbp->host."zb_users/theme/$theme/style/images/random/$temp.jpg";//需要在相应位置放置4张jpg的文件,名称为1,2,3,4
{/php}

调用代码:

<img src="{$temp}">

以上代码默认调用文章首张图片,当文章没有图片的时候,随机调用主题style/images/random/下的1.jpg、2.jpg、3.jpg、4.jpg图片。如果不想调用随机图片,可以修改一下:

{php}
$pattern="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png]))[\'|\"].*?[\/]?>/";
$content = $article->Content;
preg_match_all($pattern,$content,$matchContent);
if(isset($matchContent[1][0]))
    $temp=$matchContent[1][0];
else
    $temp=$zbp->host."zb_users/theme/$theme/style/images/random/no-image.jpg";//在相应位置放置一张命名为no-image的jpg图片
{/php}

用于分类文章列表下:

{foreach GetList(12,1,null,null,null,null,array('has_subcate' => ture)) as $related}    
    <li>        
        {php} 
        $pattern="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png]))[\'|\"].*?[\/]?>/"; 
        $content = $related->Content; 
        preg_match_all($pattern,$content,$matchContent); 
        if($matchContent[1][0]) 
            $temp=$matchContent[1][0]; 
        else 
            $temp="$host"."zb_users/theme/$theme/style/images/no-image.jpg"; 
        {/php}
        <a href="{$related.Url}" title="{$related.Title}"><img src="{$temp}" alt="{$related.Title}" /></a>
    </li>
{/foreach}

调用文章首张图片,如果文章没有图片就调用默认图片no-image.jpg。

来源:陈德馨博客(微信/QQ号:35435164),转载请保留出处和链接!

地址:

必填

选填

选填

◎已有 1 人评论,请发表您的观点。

  
    
1楼友吧网   2017-08-02 11:06:49
有用吗?为什么我用的,文章自带的图片是自动缩放,如果随机调用就没有,请教
回复