Old

直接在 functions.php 实现WP原生缩略图支持

》WordPress 2.9 加入的缩略图(特色图片)功能,一般的使用方法是:

1. 在主题的 functions.php 加入缩略图支持函数:add_theme_support( 'post-thumbnails' );

2. 直接在 index.php/archive.php 用 <?php echo the_post_thumbnail(); ?> 调用(the_post_thumbnail() 函数说明地址:传送门

》我习惯是直接在 functions.php 完成所有:添加支持函数、直接插入文章开头。

》目前我新发布的主题和还在更新的老主题都用这种方式了,主要是懒 + 方便。

》下面说说方法:

1. 在主题的 functions.php 文件添加缩略图功能支持

add_theme_support( 'post-thumbnails' );

2. 定义图片大小,然后插入文章内容头部。

add_image_size( 'extra-featured-image', 100, 100, true ); //定义图片大小,这里是 100px*100px

function theme_featured_content($content) {
    if (is_home() || is_archive()) { //只在首页和文章列表页显示
        the_post_thumbnail( 'extra-featured-image' );
    }
    return $content;
}
add_filter( 'the_content', 'theme_featured_content',1 );

PS:the_post_thumbnail 函数可以通过参数来定义src、class、alt、title,如果不自定义class名,可以用函数默认生成的 class 来定义图片格式,这里的代码生成的class名是 attachment-extra-featured-image 。

3. 如果你要给缩略图加上链接,那么可以用下面的函数实现

function my_post_image_html( $html, $post_id, $post_image_id ) {
	$html = '<a href="' . get_permalink( $post_id ) . '" title="' . esc_attr( get_post_field( 'post_title', $post_id ) ) . '">' . $html . '</a>';
	return $html;
}
add_filter( 'post_thumbnail_html', 'my_post_image_html', 10, 3 );

更详细的内容参考 http://codex.wordpress.org/Function_Reference/the_post_thumbnail

完。

zww
or
oooo

声明: 除非注明,ZWWoOoOo文章均为原创,转载请以链接形式标明本文地址
本文地址: http://zww.me/archives/25451

66 comments

  1. 林木木 林木木 Google Chrome 12 Google Chrome 12 Windows 7 Windows 7

    算函数介绍了~官方的codex是好东西哟~

    沙发
  2. axiu axiu Google Chrome 11 Google Chrome 11 Windows 7 Windows 7

    这个介绍挺详细的。

    板凳
  3. SErHo SErHo Google Chrome 11 Google Chrome 11 Windows 7 Windows 7

    这个是自动将文章中的图片生成缩略图吗? :?:

    地板
  4. ......
  5. 疾风 疾风 Firefox 4 Firefox 4 Windows 7 Windows 7

    试用过,感觉不太方便

    21楼
  6. 北京瞳摄影工作室 北京瞳摄影工作室 Internet Explorer 7 Internet Explorer 7 Windows XP Windows XP

    哦?感谢博主啊。缩略图这个问题困扰我很久了。

    22楼
  7. Don Don Firefox 4 Firefox 4 Windows 7 Windows 7

    如果我需要多尺寸的生成呢?

    23楼
    • zwwooooo zwwooooo Namoroka 3 Namoroka 3 Windows 7 Windows 7

      @Don
      WP原生缩略图只支持一次定义一种尺寸

  8. 灰狼 灰狼 TheWorld Browser TheWorld Browser Windows XP Windows XP

    这个功能帅呆了.

    24楼
  9. liveme liveme Google Chrome 12 Google Chrome 12 Windows 7 Windows 7

    一步到位的方法,好是好,不过在某些个性调用的情况下或许不太好使。

    25楼
  10. 自在 自在 Internet Explorer 9 Internet Explorer 9 Windows 7 Windows 7

    挺实用的

    26楼
  11. seo seo Google Chrome 10 Google Chrome 10 Windows XP Windows XP

    博主我的博客CSS的框架是正方形的!
    当我调用长方形图片的时候,他就跟的比例缩小了!
    请问一下,怎么能让他自适成正方形?

    27楼
    • zwwooooo zwwooooo Namoroka 3 Namoroka 3 Windows 7 Windows 7

      @卸妆油
      统一你的图片比例,或者用第三方的自动缩略图代码/插件。

      另外,评论别用神马产品名,很恶心的。

  12. SEO SEO Internet Explorer 6 Internet Explorer 6 Windows XP Windows XP

    :oops: 现在换成SEO了,好的,我在试试呢,谢谢!我看了一下您的友情链接,也有SEO的链接,能否问一下,怎么样才能和您交换呢?

    28楼
    • zwwooooo zwwooooo Namoroka 3 Namoroka 3 Windows 7 Windows 7

      @SEO
      上面的才是友链(已停止添加差不多2年),下面的是付费链接。另外评论不需要关键词,木有用的,用自己网名吧,如果你喜欢在各个博客走,那么最好申请个头像。

  13. 小宽哥 小宽哥 Google Chrome 10 Google Chrome 10 Windows XP Windows XP

    上次准备申请了,因为,因为英文有限,放弃了!
    :sad: 话说,你不换友链了吗 :???:

    29楼
    • zwwooooo zwwooooo Namoroka 3 Namoroka 3 Windows 7 Windows 7

      @小宽哥
      停止友链应该差不多2年了吧

    • 小宽哥 小宽哥 Internet Explorer 6 Internet Explorer 6 Windows XP Windows XP

      @zwwooooo
      那要不要从新出山换购链接呢?我的net404.com这个站每天收录和快照哦~标题是SEO实标上是个人博客! :grin:

  14. 调皮鬼 调皮鬼 Google Chrome 15 Google Chrome 15 Windows XP Windows XP

    好奇怪,我在functions中添加第一段代码后保存,会报错。

    30楼
  15. 潇遥 潇遥 Google Chrome 22 Google Chrome 22 Windows XP Windows XP

    zww.me的主题越来越霸气越来越牛叉了啊 :oops:

    31楼

Leave a Reply