我最近开始在一个现有的WordPress网站上工作。WordPress安装上的主题过度使用TimThumb,这真的没有必要。WordPress的原生图像大小应该能够处理所需的功能。但是,我不知道如何替换TimThumb。
在生成缩略图的主题文件中有一个post-thumb.php
。文件如下:
if (get_option('solostream_default_thumbs') == 'yes') { $defthumb = get_bloginfo('stylesheet_directory') . '/images/def-thumb.jpg'; } else { $defthumb == 'false'; }
$solostream_img = get_the_image(array(
'meta_key' => 'thumbnail',
'size' => 'thumbnail',
'image_class' => 'thumbnail',
'default_image' => $defthumb,
'format' => 'array',
'image_scan' => true,
'link_to_post' => false, ));
if ( $solostream_img['url'] && get_option('solostream_show_thumbs') == 'yes' && get_post_meta( $post->ID, 'remove_thumb', true ) != 'Yes' ) { ?>
<img class="<?php echo $solostream_img['class']; ?>" src="<?php bloginfo('template_directory'); ?>/scripts/timthumb.php?src=<?php echo $solostream_img['url']; ?>&w=150&h=150&zc=1" alt="<?php the_title(); ?>" title="<?php the_title(); ?>" />
<?php }
} ?>
我只想用WordPress内置的the_post_thumbnail('thumbnail')
函数来替换整个函数。
更换这么简单吗
src="<?php bloginfo('template_directory'); ?>/scripts/timthumb.php?src=<?php echo $solostream_img['url']; ?>&w=150&h=150&zc=1"
像
src="<?php the_post_thumbnail('thumbnail'); ?>"
任何想法或朝着正确的方向推动都将不胜感激。感谢阅读。
您可以添加自定义缩略图并在代码中使用它们。
首先你必须添加主题支持,设置缩略图名称,设置大小,并设置大小
add_theme_support( 'post-thumbnails' ); // this enable thumbnails and stuffs
add_image_size( 'mini-thumbnail', 60, 60, true );
add_image_size( 'one-more-size', 300, 260, true );
然后,您可以通过调用以下命令在代码中使用它:
<?php while ( have_posts() ) : the_post();
the_title();
the_post_thumbnail( 'mini-thumnail' );
the_excerpt(); ?>
Wordpress有一个很好的参考页面,用于此实现和功能:https://developer.wordpress.org/themes/functionality/featured-images-post-thumbnails/
我不确定这是否是最有效的方法,但我已经能够通过替换使其工作
<img class="<?php echo $solostream_img['class']; ?>" src="<?php bloginfo('template_directory'); ?>/scripts/timthumb.php?src=<?php echo $solostream_img['url']; ?>&w=150&h=150&zc=1" alt="<?php the_title(); ?>" title="<?php the_title(); ?>" />
带有
<?php the_post_thumbnail('thumbnail'); ?>