WordPress获取第一张图作为缩略图

记录WordPress获取第一张图作为缩略图。

首先如果有设置缩略图,则从设置中获取缩略图,没有的话,就从文章中获取第一张图片作为缩略图。

将其添加到functions.php或制作功能插件:

1
2
3
4
5
6
7
8
9
10
11
12
13
function catch_that_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)) {
    $first_img = "/path/to/default.png";
  }
  return $first_img;
}

前端循环输出代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
if ( get_the_post_thumbnail($post_id) != '' ) {
 
  echo '<a href="'; the_permalink(); echo '" class="thumbnail-wrapper">';
   the_post_thumbnail();
  echo '</a>';
 
} else {
 
 echo '<a href="'; the_permalink(); echo '" class="thumbnail-wrapper">';
 echo '<img src="';
 echo catch_that_image();
 echo '" alt="" />';
 echo '</a>';
 
}

参考自:https://developer.aliyun.com/article/751726

此文章的评论已关闭.