WordPress文章随机显示缩略图的实现方法

作者 : moke 本文共1040个字,预计阅读时间需要3分钟 发布时间: 2020-07-2 共34人阅读

在我们开发制作WordPress主题中,大多都会做首页和列表页自动调用文章内第一张图片作为缩略图,如果文章内没有缩略图会显示默认缩略图,但是这样就会大量重复显示一张默认缩略图,很印象用户体验,下面这段代码正好解决WordPress文章随机显示缩略图,可以让文章缩略图随机显示,如果有缩略图就调用缩略图,没有缩略图会随机选取一张缩略图。

如果不希望缩略图随机显示,也可以换成自动获取文章内第一张图片做为缩略图。具体教程请查看这篇文章《WordPress自动获取文章内第一张图片做为缩略图》

网上类似的教程也有很多,但是测试过几个代码都无效,甚至语法错误,以下是站壳网亲测可用的一个版本:

//支持外链缩略图
if ( function_exists('add_theme_support') )
 add_theme_support('post-thumbnails');
function catch_first_image() 
{
	global $post, $posts;$first_img = '';
	ob_start();
	ob_end_clean();
	$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
	$first_img = $matches [1] [0];
	//判断图片是否过小
	if(!empty($first_img))
	{
		$image_size = getimagesize($first_img);
		$image_width = $image_size[0];
	}
	//如果第一张图不存在或过小,则返回随机图片
	if(empty($first_img) || $image_width<50){
		$first_img = '';
		//从2张图中随机选择,可根据自己的图片数量设置
		$random = mt_rand(1, 2);
		echo get_bloginfo ( 'stylesheet_directory' );
		echo '/images/random/'.$random.'.JPG';
		}
  return $first_img;
}

使用方法

1、复制上面代码粘贴到主题functions.php中

2、在主题中新建/images/random/目录,找一些自己喜欢的图片上传进去。将他们重命名为1,2,3,4,5.jpg。

3、在想要展示缩略图的地方加入下面代码

<?php echo catch_first_image(); ?>

 

爱生活,爱陌客
网站源码-PHP网站源码-商业源码分享-免费网站模版下载 » WordPress文章随机显示缩略图的实现方法

发表评论

售后服务:

  • 售后服务范围 1、商业模板使用范围内问题免费咨询
    2、源码安装、模板安装(一般 ¥50-300)服务答疑仅限SVIP用户
    3、单价超过200元的模板免费一次安装,需提供服务器信息。
    付费增值服务 1、提供dedecms模板、WordPress主题、discuz模板优化等服务请详询在线客服
    2、承接 WordPress、DedeCMS、Discuz 等系统建站、仿站、开发、定制等服务
    3、服务器环境配置(一般 ¥50-300)
    4、网站中毒处理(需额外付费,500元/次/质保三个月)
    售后服务时间 周一至周日(法定节假日除外) 9:00-23:00
    免责声明 本站所提供的模板(主题/插件)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email: 1171280855@qq.com),我们会及时删除,给您带来的不便,我们深表歉意!

Hi, 如果你对这款模板有疑问,可以跟我联系哦!

联系作者
开通SVIP 享更多特权,建议使用 QQ 登录
喜欢我嘛?喜欢就按“ctrl+D”收藏我吧!♡