一些网站虽然有很多内容,但却没有什么与内容相配置缩略图,再就是一些老站缺少很多图片,这是一种最快速最省事的办法,让程序自动给文章列表随机调用指定目录当中的图片。
要如何实现呢?
主要分两步:
1,在wordpress的主题目录下的主脚本当中(Functions.php)添加图片规则:
文章目录
代码:
//支持外链缩略图
if ( function_exists('add_theme_support') )
add_theme_support('post-thumbnails'); // 若有错误删掉上面两行
function catch_first_image()
{
global $post, $posts;$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];
//判断图片是否过小
if(!empty($first_img))
{
$image_size = getimagesize($first_img);
$image_width = $image_size[0];
}
//如果第一张图不存在或过小,则返回随机图片.如果不需要默认第一张图的话把上面的代码以及if都去掉即可
if(empty($first_img) || $image_width<50){
$first_img = '';
//从图片目录中随机选择,可根据自己的图片数量设置
$random = mt_rand(1,12);//设置可选取的图片数量和总量,这里指的是每次从12张图片当中选择一张做为文章列表缩略图。
echo get_bloginfo ( 'stylesheet_directory' );
echo '/assets/img/random/'.$random.'.jpg';
}
return $first_img;
}
2,然后,在列表页模板调用这个新的图片参数就可以了:
代码:
<img src='<?php echo catch_first_image(); ?>' />
看,是不是很简单:
评论