WordPress主题随机显示缩略图

2018年8月7日10:46:18 2 215

很多主题使用timthumb.php函数自动调整缩略图大小,并生成缓存文件。但这一方法无法截取外链图片,这一致命弱点最终让很多主题开发者放弃使用timthumb.php函数。采用比较普遍的显示缩略图的方法,添加自定义域,并通过CSS控制缩略图大小。有时文章中没有图片,也懒得特意作缩略图,虽然有默认占位图代替缩略图的位置,但文章发多了看着非常单调(难看),也失去了缩略图吸引读者眼球的作用,于是忽随机显示默认缩略图的想法就出来了,下面请看具体的实现方法。
一般 WordPress杂志型主题,都具备缩略图功能,采用的通用缩略图函数代码如下:

<?php if ( get_post_meta($post->ID, 'thumbnail', true) ) : ?>   
<?php $image = get_post_meta($post->ID, 'thumbnail', true); ?>   
<a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo $image; ?>" alt="<?php the_title(); ?>"/></a>   
<?php else: ?>   
<a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php bloginfo('template_directory'); ?>/images/img.jpg" alt="<?php the_title(); ?>" /></a>   
<?php endif; ?>

只需在默认占位图链接位置添加一句rand()函数就可随机调用特定目录下的多个图片,下面是修改后的:

<?php if ( get_post_meta($post->ID, 'thumbnail', true) ) : ?>   
<?php $image = get_post_meta($post->ID, 'thumbnail', true); ?>   
<a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo $image; ?>" alt="<?php the_title(); ?>"/></a>   
<?php else: ?>   
<a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php bloginfo('template_directory'); ?>/images/random/img<?php echo rand(1,5)?>.jpg" alt="<?php the_title(); ?>" /></a>   
<?php endif; ?>

修改后的代码说明:

/images/random/img<?php echo rand(1,10)?>.jpg

img<?php echo rand(1,10)?>.jpg前面的img是图片的名称,可以之定义为自己喜欢的,我们可以新建几个名称为:img1.jpg, img2.jpg,img3.jpg,img4.jpg,img5.jpg...img10.jpg的图片,放到/images/random/(图片所在的位置,可根据实际修改。)目录中,也可以是其它格式的图片,数字10是预设的的随机图片数量,可以修改此数字,并相应增加随机图片数量。将上面的代码添加到模板适当位置,刷新一下页面看看效果如何。

weinxin
关注公众号
发送想要内容的关键字会自动回复你哟,快来试试!!!(●ˇ∀ˇ●)
管理员

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:2   其中:访客  1   官方  1

    • 魏公子 0

      签到成功!签到时间:下午1:23:47,每日打卡,生活更精彩哦~

      • 管理员 管理员 官方

        签到成功!签到时间:下午1:17:11,每日打卡,生活更精彩哦~