我在学习如何制作Wordpress主题中,看过一些关于WordPress缩略图的教程,它们为WordPress的特色图片功能设置默认的文章缩略图。 但如果用户不设置特色图片或是忘记设置特色图片时,就会出现错位。

而大多数人都用以下的代码来判断是否有特色图像。如果没有则显示一张默认图片。代码如下:

The WordPress Toolbox
Unlimited Downloads: 500,000+ WordPress Themes, Plugins, Templates & Design Assets

主题教程:如何定义默认缩略图

DOWNLOAD NOW

<?php
  if ( has_post_thumbnail() )
    the_post_thumbnail();
  else
    echo '<img src="' . trailingslashit( get_stylesheet_directory_uri() ) . 'images/default-thumbnail.png' . '" alt="" />';
?>

这样虽然主题作者很方便。但用户用起来却不一定方便,如果用户想修改。除了替换默认主题目录下的图像以为。就要改大段段的代码。每个调用特色图像的地方都要改一遍。对新用户来说简直就是噩梦。那有没有一种简便方法呢。当然是有的。请看下面的代码:

add_filter( 'post_thumbnail_html', 'my_post_thumbnail_html' );
function my_post_thumbnail_html( $html ) {
  if ( empty( $html ) )
    $html = '<img src="' . trailingslashit( get_stylesheet_directory_uri() ) . 'images/default-thumbnail.png' . '" alt="" />';
  return $html;
}

您只需要修改一次这个代码一次后。把它放在您主题下的functions.php文件里就行了。

发表回复