王尘宇王尘宇

研究百度干SEO做推广变成一个被互联网搞的人

typecho缩略图到场依据标签缩略名输出缩略图

做出来的结果就是:
缩略图显现,依次是附件中的图片,若不存在,输出文章的第一张图片,若不存在,输出对应的tag缩略名图片,如果未设置的tag,则输出随机图片,若文章不存在tag,则输出随机图片。

首先在functions.php增加

/** 输出文章缩略图 */function showThumbnail($widget){     // 当文章无图片时的默许缩略图    $rand = rand(1,99); // 随机 1-99 张缩略图    $random = $widget->widget('Widget_Options')->themeUrl . '/img/sj/' . $rand . '.jpg'; // 随机缩略图途径   // $random = $widget->widget('Widget_Options')->themeUrl . '/img/mr.jpg'; // 若只想要一张默许缩略图请删除本行开头的"//",须要在img文件夹下放个mr.jpg图片    $attach = $widget->attachments(1)->attachment;    $pattern = '/\<img.*?src\=\"(.*?)\"[^>]*>/i'; if (preg_match_all($pattern, $widget->content, $thumbUrl)) {         echo $thumbUrl[1][0];    } else     if ($attach->isImage) {      echo $attach->url;     } elseif ($widget->tags) {foreach ($widget->tags as $tag) {if($tag['slug']==daima||$tag['slug']==anzhuo){//if语句推断标签缩略名,如果是则输出下面文件夹内的图片$a= $widget->widget('Widget_Options')->themeUrl . '/img/tag/' . $tag['slug'] . '.jpg';echo $a;}else {echo $random;//没有婚配的标签图片,则随机输出图片}break;}} else {echo $random;}      }

模板中须要增加缩略图地点的处所增加

<?php showThumbnail($this); ?>

图片安排位置,在对应模板根目录里,增加img文件夹,然后新建文件夹sj,内里放图片,花样请求1.jpg...99.jpg,然后再在img文件夹下新建文件夹tag内里安排tag缩略名对应的图片,根据上述代码的话须要安排两站图片,定名分别为daima.jpg和anbzhuo.jpg。

末了提醒
typecho的标签缩略名背景是能够设置的,不设置的话默许是和标签名字一样。比方该篇文章标签名字是typecho,默许他的缩略名也是typecho,但我把它的缩略名改成了te,也就是说这篇文章的缩略图是te.jpg。

相关文章

评论列表

发表评论:
验证码

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。