WordPress:获取文章中的第一张图片

| 3 Comments

   我想在WordPress的首页只显示文章中的第一个图片作为该文章索引,就像这样:

  总结一下做个记录,这里有两种方法:

  WordPress 版本 3.0

  第一种方法:自定义函数

  首先,在当前主题的 functions.php 中添加一个自定义函数,比如叫 catch_that_image() :

/* GET IMAGE */
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 echo catch_that_image() ?>

  获取第一张图片的链接。比如: 

<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><img src="<?php echo catch_that_image() ?>" alt="<?php the_title(); ?>"/></a>

     第二种方法:插件 wp-thumbnails

  启用这个插件之后,使用下面的PHP代码就可以同时生成图片和文字链接:

<?php if(function_exists('wp_thumbnails_for_recent_posts')) { wp_thumbnails_for_recent_posts(); } ?>

   是不是很方便呢?

 

本文结束。

 

3 Comments

蛋疼啊,不是WP研究WP,评个论还要验证码,而且是这种,郁闷
不喜欢用MT或者WP自带的图片上传功能,觉得缩略图不可控并且会在数据库加入不必要的内容。

Leave a comment