Zblog随机图片.jpg


本文介绍Zblog调用随机一张图片的方法,使用以下代码可实现提取文章第一张图片否则随机调用自定义图片。

其实搜索引擎已经收录了很多关于“Z-BlogPHP文章无图时列表随机显示默认图片”,但我觉得结实的都不是太完美,调用的时候也没有给图片增加Title或者Alt属性,所以我汇聚网文总结分享一下更利于SEO的代码。

一、修改当前主题的post-multi.php,在开头加入以下代码:

{php}
$temp=mt_rand(1,30);
$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/pic/aswait$temp.jpg";
{/php}
代码释意:
1.$temp=mt_rand(1,30); 中30指的是调用图片的总体数;

2.*?(?:[\.gif|\.jpg|\.png]))[\'|\"].*?[\/]?>/"; 我们可以直接修改为.jpg或者.gif或者.png;

3.$temp=$zbp->host."zb_users/theme/$theme/pic/aswait$temp.jpg"; 为:调用:“zb_users”Zblog用户文件夹/“theme”主题文件夹/“$theme”主题名/“pic”文件夹/名称为aswait*的文件(*为1~30的随机数);


二、继续修改post-multi.php文件,在你需要的地方插入调用图片的代码:

<img src="{$temp}" 
延伸:我们可以实现图片居中,并加上alt属性,调用代码如下(当然我们也可以增加Title属性)
<p style="text-align:center;"><img src="{$temp}" alt="{$article.Title}"/></p>