这也可能对你有用。它扫描帖子,然后将图像集提取为“特色”。如果不存在,则返回附加到帖子的第一个图像。如果没有,它会在帖子中查找任何图像;如果没有,它会抓取一个YouTube截图。把这个放在你的主题函数中。php文件:
// Note that your theme must support post thumbnails for this function to work.
// If you are getting an error try adding add_theme_support(\'post-thumbnails\'); to your functions. php file
function vp_get_thumb_url($text, $size){
global $post;
$imageurl="";
// Check to see which image is set as "Featured Image"
$featuredimg = get_post_thumbnail_id($post->ID);
// Get source for featured image
$img_src = wp_get_attachment_image_src($featuredimg, $size);
// Set $imageurl to Featured Image
$imageurl=$img_src[0];
// If there is no "Featured Image" set, move on and get the first image attached to the post
if (!$imageurl) {
// Extract the thumbnail from the first attached imaged
$allimages =&get_children(\'post_type=attachment&post_mime_type=image&post_parent=\' . $post->ID );
foreach ($allimages as $img){
$img_src = wp_get_attachment_image_src($img->ID, $size);
break;
}
// Set $imageurl to first attached image
$imageurl=$img_src[0];
}
// If there is no image attached to the post, look for anything that looks like an image and get that
if (!$imageurl) {
preg_match(\'/<\\s*img [^\\>]*src\\s*=\\s*[\\""\\\']?([^\\""\\\'>]*)/i\' , $text, $matches);
$imageurl=$matches[1];
}
// If there\'s no image attached or inserted in the post, look for a YouTube video
if (!$imageurl){
// look for traditional youtube.com url from address bar
preg_match("/([a-zA-Z0-9\\-\\_]+\\.|)youtube\\.com\\/watch(\\?v\\=|\\/v\\/)([a-zA-Z0-9\\-\\_]{11})([^<\\s]*)/", $text, $matches2);
$youtubeurl = $matches2[0];
$videokey = $matches2[3];
if (!$youtubeurl) {
// look for youtu.be \'embed\' url
preg_match("/([a-zA-Z0-9\\-\\_]+\\.|)youtu\\.be\\/([a-zA-Z0-9\\-\\_]{11})([^<\\s]*)/", $text, $matches2);
$youtubeurl = $matches2[0];
$videokey = $matches2[2];
}
if ($youtubeurl)
// Get the thumbnail YouTube automatically generates
// \'0\' is the biggest version, use 1 2 or 3 for smaller versions
$imageurl = "http://i.ytimg.com/vi/{$videokey}/0.jpg";
}
// Spit out the image path
return $imageurl;
}
要在主题文件中显示此内容,请首先插入以下内容:
<?php
if (function_exists(\'vp_get_thumb_url\')) {
// Set the desired image size. Swap out \'thumbnail\' for \'medium\', \'large\', or custom size
$thumb=vp_get_thumb_url($post->post_content, \'large-feature\');
}
?>
在这之后的某个地方,要显示实际的图像,在这种情况下,用指向帖子的链接包装:
<?php if ($thumb!=\'\') { ?>
<a href="<?php the_permalink() ?>" title="<?php the_title(); ?>" rel="bookmark"><img src="<?php echo $thumb; ?>" alt="<?php get_the_title(); ?>" /></a>
<?php } ?>
在vp\\u get\\u thumb\\u url函数名上搜索Google,以获取有关如何实现此功能的其他文章。祝你好运!