10 次查询 耗时 0.045 秒
共写了1098个字,约2分钟读完,有0条留言

WordPress主题开发:自动添加文章第一张图为缩略图

我们在开发WordPress主题的时候经常会用到缩略图。

使用缩略图的好处这里就不多做介绍,今天给大家分享的是:如何自动把文章的第一张图设置成缩略图,无需手动设置。[reply]

/* ------------------------------------------------------------------------- *
* 自动文章第一个图片为特色图片
/* ------------------------------------------------------------------------- */
function autoset_featured_image(){
global $post;
$already_has_thumb = has_post_thumbnail($post->ID);
	if (!$already_has_thumb){
		$attached_image = get_children("post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1");
		if ($attached_image){
			foreach ($attached_image as $attachment_id => $attachment) {
				set_post_thumbnail($post->ID, $attachment_id);
			}
		}
		
	}
}
add_action('the_post', 'autoset_featured_image');
add_action('save_post', 'autoset_featured_image');
add_action('draft_to_publish', 'autoset_featured_image');
add_action('new_to_publish', 'autoset_featured_image');
add_action('pending_to_publish', 'autoset_featured_image');
add_action('future_to_publish', 'autoset_featured_image');

[/reply]

将以上代码放入主题的function.php中保存即可。

接下来在需要用到文章缩略图的地方直接调用即可,例如:

<img src="<?php echo get_the_post_thumbnail_url();?>">

我们还可以根据自己的需求做一些个性化的设置,比如:文章中连一张图也没有的时候,可以设置成默认的一张图作为缩略图。

加入对话

您的电子邮箱地址不会被公开。