在wordpress中自己写代码获取文章内容的第一个图片作为文章缩略图来显示,这样给用户看到页面时图文并茂,感觉会好一些。
在博客吧看到了相关的实现方法,记录一下,估计以后也用得到。
当前使用的主题模板的functions.php文件
[php]
//获取文章第一张图片,如果没有图就会显示默认的图
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 = bloginfo(‘template_url’). ‘/images/default-thumb.jpg’;
}
return $first_img;
}
[/php]
在首页显示时
当前主题index.php文件
你自己对应位置添加
[php]<a href="<?php the_permalink(); ?>"><img src="<?php echo catch_that_image() ?>" alt="<?php the_title(); ?>"/></a>[/php]
分类列表页面,我所使用的是twentyseventeen主题改用过来的,所以在template-parts/post/content.php文件中添加
[php]<a href="<?php the_permalink(); ?>"><img src="<?php echo catch_that_image() ?>" alt="<?php the_title(); ?>"/></a>[/php]
发表评论