如何使用WordPress 2.9内置的缩略图功能
恩...话说2.9更新以后,我最关心的其实就是内置缩略图的这个功能,很想马上在鸸鹋动物园上做实验。
对于WordPress的伪CMS化来说,这个功能几乎可以说是最大的进步——当然也是越来越臃肿...
确定,官方的函数已经由the_post_image改为the_post_thumbnail。
但是...在折腾了一个小时以后我也没有在文章编辑的后台发现关于缩略图的模块(英文称作Post Thumbnail):

正常应该是这样...为什么呢?伟大的搜索引擎再次帮助了我,但是我很难理解为什么要这么做,既然已经是内置功能:
在functions.php中添加:
- if ( function_exists( 'add_theme_support' ) ) {
- add_theme_support( 'post-thumbnails' );
- }
好了,添加以后就可以正常显示这个模块了,至于操作就很简单了没什么可说的。缩略图添加完了,在主题(theme)内如何显示呢?通常我们只会在index.php或者archive.php之类的地方显示缩略图,以默认模版的index.php为例,将如下部分:
- <div class="entry">
- <?php the_content('Read the rest of this entry »'); ?>
- </div>
修改为:
- <div class="entry">
- <?php if ( has_post_thumbnail() ) : ?>
- <?php the_post_thumbnail( array( 125, 125 ), array( 'class' => 'alignleft' ) ); ?>
- <?php endif; ?>
- <?php the_content('Read the rest of this entry »'); ?>
- </div>
其中,arry(125, 125)是说缩略图的大小,同样也可以根据后台的设置,指定为thumbnail、medium、large或者full。
至于array( 'class' => 'alignleft' ),指定的就是图片的class效果了。
进一步的,如果这篇文章没有图,那么我们怎么显示一张默认的图片(例子.jpg)呢?
- <?php if ( has_post_thumbnail() ) : ?>
- <?php the_post_thumbnail( array( 'thumbnail' ), array( 'class' => 'alignleft' ) ); ?>
- <?php else : ?>
- <img src="例子.jpg" />
- <?php endif; ?>
恩...大概应该就可以了...我只是奇怪,关于缩略图的函数,在codex.wordpress.org站上统统没有详细说明——实在很费解(起码此时此刻还没有)
the_post_thumbnail (2.9+)
get_the_post_thumbnail (2.9+)
has_post_thumbnail (2.9+)
get_post_thumbnail_id (2.9+)
可是实际上,在鸸鹋动物园上我还是没有这么采用缩略图,因为它毕竟还是要手动的去选择一下缩略图——我不知道对于以往的几千篇文章,应该怎么自动调用这个缩略图,有知道的朋友望提示。
所以呢,我还是在使用布谷鸟自制的这个thumbnails_anywhere插件:)
Popularity: 16%
