WordPress中调试缩略图的相关PHP函数使用解析

时间:2022-04-27 04:27:44

the_post_thumbnail
the_post_thumbnail 在 WordPress 中主要用来打印文章中设定的缩略图,而 get_the_post_thumbnail 函数可以将你需要的 HTML 代码以字符串的形式返回。

the_post_thumbnail 函数的使用

?
1
the_post_thumbnail( $size , $attr)

函数参数

  • $size 是指你想要的缩略图类型 默认是 ‘post-thumbnail' 也就是特色图像
  • $attr 图像img标签中的属性设置。

the_post_thumbnail 函数声明

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
/**
 * Display Post Thumbnail.
 *
 * @since 2.9.0
 *
 * @param int $size Optional. Image size. Defaults to 'post-thumbnail', which theme sets using set_post_thumbnail_size( $width, $height, $crop_flag );.
 * @param string|array $attr Optional. Query string or array of attributes.
 */
function the_post_thumbnail( $size = 'post-thumbnail', $attr = '' ) {
 echo get_the_post_thumbnail( null, $size, $attr );
}
get_the_post_thumbnail 函数声明
 * Retrieve Post Thumbnail.
 *
 * @since 2.9.0
 *
 * @param int $post_id Optional. Post ID.
 * @param string $size Optional. Image size. Defaults to 'post-thumbnail'.
 * @param string|array $attr Optional. Query string or array of attributes.
 */
function get_the_post_thumbnail( $post_id = null, $size = 'post-thumbnail', $attr = '' ) {
 $post_id = ( null === $post_id ) ? get_the_ID() : $post_id;
 $post_thumbnail_id = get_post_thumbnail_id( $post_id );
 $size = apply_filters( 'post_thumbnail_size', $size );
 if ( $post_thumbnail_id ) {
 do_action( 'begin_fetch_post_thumbnail_html', $post_id, $post_thumbnail_id, $size ); // for "Just In Time" filtering of all of wp_get_attachment_image()'s filters
 if ( in_the_loop() )
  update_post_thumbnail_cache();
 $html = wp_get_attachment_image( $post_thumbnail_id, $size, false, $attr );
 do_action( 'end_fetch_post_thumbnail_html', $post_id, $post_thumbnail_id, $size );
 } else {
 $html = '';
 }
 return apply_filters( 'post_thumbnail_html', $html, $post_id, $post_thumbnail_id, $size, $attr );

set_post_thumbnail_size
set_post_thumbnail_size 函数是 WordPress 中设置特色图像大小的一个函数也是 add_image_size 函数的一个简单的应用。为了更好的突出特色图像的使用, WordPress 自 2.9.0 版开始,便有了本函数。

set_post_thumbnail_size 函数的使用
与 add_image_size 函数使用大概类似,只是该函数只针对特色图像进行设置。

?
1
set_post_thumbnail_size( $width, $height, $crop)

参数详解

  • $width 图像宽度
  • $height 图像高度
  • $crop 是否按照高宽剪裁图像

实例

?
1
set_post_thumbnail_size(100,0,true);

注意:当高度和宽度任意一个为0时, WP 将自动适应另一个值进行缩略图生成工作。

函数声明

?
1
2
3
4
5
6
7
/**
 * Registers an image size for the post thumbnail
 *
 * @since 2.9.0
 */
function set_post_thumbnail_size( $width = 0, $height = 0, $crop = false ) {
 add_image_size( 'post-thumbnail', $width, $height, $crop );