wordpress文章列表缩略图的调用

本站点在建站以来一直使用的知更鸟的主题,最近迁站服务器阿里,所以更换了主题,使用的是DUX3.0的主题,折腾下来,发现PC端一直不显示文章列表缩略图。
那么针对此问题分享出以下的解决方法(其他主题请自测)。
特点:
1.判断文章是否设置了特色图像,若有则显示特色图像;
2.若没有特色图像时,查找文章内容中是否包含图片,若有图片,则调用第一张图片作为缩略图;
3.文章若没有图片则随机调用images/thumimg目录下的一张图片。
第一步:在主题根目录下的functions.php中 添加如下代码:
/**
*文章列表页缩略图显示 https://www.ydxinzuo.cn
*显示特色图像,或者文章内第一张图片,或者随机显示一张图片
*
**/

//缩略图调取
add_theme_support( 'post-thumbnails' );
function lerm_thumbnail() {
global $post;
if (has_post_thumbnail()) {
// 判断该文章是否已经设置了“特色图像”,如果有则直接显示该特色图像的缩略图
echo '<a class="thumbnail" title="' . get_the_title() . '" href="' . get_permalink() . '">';
the_post_thumbnail();
echo '</a>';
} else { //如果文章没有设置特色图像,则查找文章内是否包含图片
$content = $post-&gt;post_content;
preg_match_all('/<img />]*src=["|\']([^"|\']+)/i', $content, $strResult, PREG_PATTERN_ORDER);
$n = count($strResult[1]);
if ($n &gt; 0) {
// 如果文章内包含有图片,则取第一张图片的缩略图;
echo '<a class="thumbnail" title="' . get_the_title() . '" href="'. get_permalink() .'" rel="bookmark"><img class="post-thumb" src="' . $strResult[1][0] . '" alt="' . get_the_title() . '" /></a>';
}else{
//如果文章内没有图片,则随机显示根目录下images/thumimg文件夹下的一张图片。
echo '<a class="thumbnail" title="' . get_the_title() . '" href="the_permalink()" rel="bookmark"><img class="post-thumb" src="'.get_template_directory_uri().'/images/thumimg/'.rand(1,10).'.jpg" alt="' . get_the_title() . '" /></a>';
}
}
}
第三步:主题根目录下img文件夹中新建thumimg文件夹,然后在里面放10张.jpg的图片即可;

如果觉得随机文章缩略图片不够用请调整上述代码中.rand(1,10)加大10的值。(注:要将图片的命名为1~20.jpg)

第四步:若想在博客显示一张默认的图片

文章中没有图片,也没有设置特色缩略图,不显示随机图片,只想显示一张默认图片

<img class="post-thumb" src="'.get_template_directory_uri().'/img/thumimg/'.rand(1,10).'.jpg" alt="' . get_the_title() . '" />

那么请将上述代码中:
‘.rand(1,10).jpg’换成你img/thumimg文件夹下“默认图片的名字”.jpg即可。

非著名均为来自网络,不代表一点新作立场,若为著名原创,转载请注明出处:https://ydxinzuo.cn/archives/564

作者: xinyuan7630

发表评论

邮箱地址不会被公开。 必填项已用*标注

1条评论

联系我们

联系我们

在线咨询: QQ交谈

邮箱: 303817524@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部