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. 林木木 林木木

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

    沙发
  2. axiu axiu

    这个介绍挺详细的。

    板凳
  3. SErHo SErHo

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

    地板
  4. ......
  5. 疾风 疾风

    试用过,感觉不太方便

    21楼
  6. 北京瞳摄影工作室 北京瞳摄影工作室

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

    22楼
  7. Don Don

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

    23楼
  8. 灰狼 灰狼

    这个功能帅呆了.

    24楼
  9. liveme liveme

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

    25楼
  10. 自在 自在

    挺实用的

    26楼
  11. seo seo

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

    27楼
    • zwwooooo zwwooooo

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

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

  12. SEO SEO

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

    28楼
    • zwwooooo zwwooooo

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

  13. 小宽哥 小宽哥

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

    29楼
    • zwwooooo zwwooooo

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

    • 小宽哥 小宽哥

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

  14. 调皮鬼 调皮鬼

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

    30楼
  15. 潇遥 潇遥

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

    31楼

Leave a Reply