wordpress自动调用文章第一张图为缩略图或显示随机图

现在的wordpress主题大多都集成了首页和列表页自动调用文章内第一张图片作为缩略图进行展示的功能,文内没有图片的话也会显示随机图片,以提高用户体验度。晓兔今天在整理以前几个老网站的时候,发现很多低版本的wordpress主题没有这些集成功能,又不想升级wordpress版本,于是只好手动添加代码来实现自动调用文章首图为缩略图的功能。

本以为是个很简单的功能,因为网上类似的教程很多,但是发现试了几个代码都无效,甚至语法错误,大概是很多年前的代码版本了,有些不太兼容。

以下是晓兔亲测可用的一个版本:

首先在主题文件夹下找到functions.php文件,添加一段代码:
//支持外链缩略图
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)){ //Defines a default image
$random = mt_rand(1, 20);
echo get_bloginfo ( 'stylesheet_directory' );
echo '/images/random/tb'.$random.'.jpg';
}
return $first_img;
}

在random文件夹内放入文件名如tb1.jpg,tb2.jpg,tb10.jpg等随机图片。

然后新建一个thumbnail.php文件,内容为:
<div class="thumbnail">
<?php if ( get_post_meta($post->ID, 'thumbnail', true) ) : ?>
<?php $image = get_post_meta($post->ID, 'thumbnail', true); ?>
<a href="http://eps.gs/go.php?url=<?php the_permalink() ?>" rel="nofollow" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo $image; ?>" alt="<?php the_title(); ?>" title="<?php the_title(); ?>" /></a>
<?php else: ?>
<a href="http://eps.gs/go.php?url=<?php the_permalink() ?>" rel="nofollow" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo catch_first_image() ?>" width="140px" height="100px" alt="<?php the_title(); ?>"/></a>
<?php endif; ?>
</div>

最后在首页或文章列表页相应位置插入:
<?php include('includes/thumbnail.php'); ?>

一定要仔细注意代码内的文件夹路径和名称是否正确,方可确保正常抓取和展示缩略图。

版权所有:《博客之家
文章标题:《wordpress自动调用文章第一张图为缩略图或显示随机图
除非注明,文章均为 《博客之家》 原创
转载请注明本文短网址:http://bk.likinming.com/post-1178.html  [生成短网址]

日期:2018年01月08日 星期一   分类:好文分享   浏览(347)
百度暂未收录本文
声明:本页信息由网友自行发布或来源于网络,真实性、合法性由发布人负责,请仔细甄别!本站只为传递信息,我们不做任何双方证明,也不承担任何法律责任。免费发布信息

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

自动获取QQ

昵称

邮箱

网址

网站收录提交

  • 名称:
  • 网址:

网址统计

  • 收录网址:746 个
  • 发布文章:514 条
  • 本站运行:5年1月23天
Copyright © 2012 - 2018 by 李明关于本站免责声明本站下载站点地图sitemap广告联系