什么是特色图片?
wordpress 中的特色图片是我们用来代表特定博客文章或页面的图片。特色图片的另一个名称是帖子缩略图。
默认情况下,WordPress 帖子编辑页面上的特色图片部分不可用。通过将以下行添加到functions.php文件中,将支持添加到主题中。
add_theme_support( 'post-thumbnails' );
如果您的主题支持特色图片,您将在帖子的编辑屏幕上看到特色图片部分,如下所示。
如何在 WordPress 中获取特色图片?
假设一个主题增加了对特色图像功能的支持。在这种情况下,您可以使用该get_the_post_thumbnail()函数检索指定帖子的特色图像。此函数将返回帖子缩略图图像标签。它接受三个可选参数:
您要为其获取图像的帖子 ID
图像大小
属性
如果您不提供任何参数,该函数将默认为当前帖子的特色图像返回一个图像标签。
<?php while ( have_posts() ) { the_post(); echo "<h1>".get_the_title()."</h1>"; echo get_the_post_thumbnail(); the_content(); } ?>
您可以使用的另一个功能是the_post_thumbnail()无需使用echo来输出帖子缩略图的功能。
如何在 WordPress 中获取特色图片 ID?
还有另一个有用的函数调用get_post_thumbnail_id(),它将返回当前帖子的帖子缩略图 ID。您还可以将帖子 ID 作为参数传递给函数,以获取特定帖子的特色图像。
如果当前帖子没有特色图片怎么办?在这种情况下,此函数将返回值 0。
如果您使用此函数获取特定帖子的特色图像 ID 并且它不存在,您将false作为返回值返回。这确保了严格的比较将揭示特定帖子是否没有特色图片或帖子本身是否不存在。
<?php while ( have_posts() ) { // Some other code echo "<p>Thumbnail ID: ".get_post_thumbnail_id()."</p>"; } ?>
尝试在循环中回显缩略图 ID,您将看到它为未提供缩略图的帖子返回 0。此外,传递一个不存在的帖子 ID 将返回false如下所示。
<?php // Outputs: bool(false) var_dump(get_post_thumbnail_id(3468)); ?>
我的网站上没有 ID 为 3468 的帖子,所以它返回false。
如何检查帖子是否包含特色图片?
您不必依赖get_post_thumbnail_id()函数的返回值来检查帖子是否设置了特色图片。您可以对另一个名为has_post_thumbnail(). 此函数接受一个可选的帖子 ID 参数并返回一个布尔值。
true如果帖子有附加的缩略图,它将返回,false否则。
<?php while ( have_posts() ) { the_post(); echo "<h1>".get_the_title()."</h1>"; if(has_post_thumbnail()) { echo get_the_post_thumbnail(); } else { // Show Placeholder Image } } ?>
在前端显示帖子列表时,您可以使用此函数的值来做出与布局相关的决策。
最后的想法
在这个快速提示中,我向您展示了三个不同的函数,您可以使用它们来获取帖子的特色图片、帖子的特色图片的 ID,或者检查特色图片是否存在。
发表评论