wordpress 显示图片的逻辑是
1 假如文章有指定特色图则显示特色图。
2 假如没有指定特色图片,则使用文章的第一个图片来作为缩略图显示。
3 假如文章里面没有图片。则随机使用指定的图片作为缩略图来显示。
找到控制其缩略图的函数文件:functions-theme.php
里面有个使用图片的函数: _get_post_thumbnail 稍微改下:
function _get_post_thumbnail($size = 'thumbnail', $class = 'thumb') {
if (has_post_thumbnail()) {
$domsxe = get_the_post_thumbnail();
$images = $strResult[1];
foreach($images as $src){
$r_src = $src;
break;
}
}else{
$thumblink = get_post_meta($post->ID, 'thumblink', true);
if( _hui('thumblink_s') && !empty($thumblink) ){
$r_src = $thumblink;
}
elseif( _hui('thumb_postfirstimg_s') ){
$content = $post->post_content;
preg_match_all('/<img.*?(?: |\\t|\\r|\\n)?src=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>/sim', $content, $strResult, PREG_PATTERN_ORDER);
$images = $strResult[1];
foreach($images as $src){
if( _hui('thumb_postfirstimg_lastname') ){
$filetype = _get_filetype($src);
$src = rtrim($src, '.'.$filetype)._hui('thumb_postfirstimg_lastname').'.'.$filetype;
}
$r_src = $src;
break;
}
}
}
if( $r_src ){
if( _hui('thumbnail_src') ){
return sprintf('<img data-src="%s" alt="%s" src="%s" class="thumb">', $r_src, $post->post_title._get_delimiter().get_bloginfo('name'), get_stylesheet_directory_uri().'/img/thumbnail.png');
}else{
return sprintf('<img src="%s" alt="%s" class="thumb">', $r_src, $post->post_title._get_delimiter().get_bloginfo('name'));
}
}else{
//原来的使用指定一张图片
//return sprintf('<img data-thumb="default" src="%s" class="thumb">', get_stylesheet_directory_uri().'/img/thumbnail.png');
// 现在使用的。随机使用文件夹里面的图片
$random = mt_rand(1, 8);
return sprintf('<img data-thumb="default" src="%s" class="thumb">', get_stylesheet_directory_uri().'/img/random/'.$random.'.png');
}
}
就改了这部分,其它不变:
//原来的使用指定一张图片
//return sprintf('<img data-thumb="default" src="%s" class="thumb">', get_stylesheet_directory_uri().'/img/thumbnail.png');
// 现在使用的。随机使用文件夹里面的图片
$random = mt_rand(1, 8);
return sprintf('<img data-thumb="default" src="%s" class="thumb">', get_stylesheet_directory_uri().'/img/random/'.$random.'.png');
评论前必须登录!
注册