不知道WordPress的开发者是怎么想的,设置了一个非常鸡肋的不能引用外链的“特色图像”功能,而老外主题开发者们又对此功能趋之若鹜,每个主题都有,Hueman也不例外,导致主页如果设置图像为“Show featured image placeholders if no featured image is set”时一大方框不是很好看,但真的每篇文章都去设置一张特色图像又占空间还不能引用外链,还不能随机显示默认图像。
找了一圈,《WordPress文章没有图片时显示随机图片或默认图片》给了个不错的解决方案,经实践、修改后将步骤介绍如下:
1、在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(empty($first_img) || $image_width<50){
$first_img = '';
//从2张图中随机选择,可根据自己的图片数量设置
$random = mt_rand(1, 2);
echo get_bloginfo ( 'stylesheet_directory' );
echo '/images/random/'.$random.'.JPG';
}
return $first_img;
}
2、在主题中新建/images/random/目录,找一些自己拍的图片放进去。
3、原主题content.php中引用特色图像的代码:
<?php if ( has_post_thumbnail() ): ?>
<?php the_post_thumbnail('thumb-medium'); ?>
<?php elseif ( ot_get_option('placeholder') != 'off' ): ?>
<img src="<?php echo get_template_directory_uri(); ?>/img/thumb-medium.png" alt="<?php the_title(); ?>" />
<?php endif; ?>
修改为:
<!--裁切高大于宽的图片-->
<div style="overflow:hidden;width:100%;max-height:100px;">
<img src='<?php echo catch_first_image(); ?>' />
</div>
4、CSS中注意修改相关代码:
.post-thumbnail img {
display: block;
width: 100%;
//height: auto;
}
告成!
Betty 上海
其实首页我不太喜欢很多图片
因为无法保证图片一个风格,或者是彼此色调和谐
一旦图多,色调多了,就显得页面非常脏乱
作为喜欢简洁风的人,不能忍受太多东西的堆砌
十年前 Safari 8 · Mac OS X 10.10S 江苏 *
@Betty 好吧,算是多尝试些风格嘛,说不定哪天又换回来了。哈~
十年前 Chromium 38 · UbuntuBetty 上海
@S 没事,你随意,你自己喜欢就好
如果风格真是脏到乱了,大不了就跟那谁谁谁的博客一样,我不看就是了
十年前 Safari 8 · Mac OS X 10.10S 江苏 *
@Betty 好吓人啊,这个很严重的,我可不敢赶走本博最好的观众呀!!
十年前 Chromium 38 · Ubuntu那谁谁是谁呀,很好奇……
护法 新西兰
@Betty 就是,那谁谁是谁啊?要不好一阵子都没见你上俺家来了? ❗
十年前 Google Chrome 39 · Windows 7S 江苏 *
@护法 那谁谁下面Betty回复了,叫什么破袜子的一个网友。
十年前 Google Chrome 31 · Windows XPS 江苏 *
@Betty 我觉得你说的对,还是简洁一点好。 😆
十年前 Chromium 38 · UbuntuBetty 上海
@S 哈哈,莫非你试过多图显示以后,被错杂的视觉效果给看醉了?
十年前 Safari 8 · Mac OS X 10.10S 江苏 *
@Betty 元素多了点,好看是好看but不符合内容突出的要求嘛
十年前 WebView 1 · Samsung SM-G9009DBetty 上海
那谁谁谁叫什么破袜子来着,刚想把他网站打开给你看,结果发现人家换模板了,不脏乱了……
十年前 Safari 8 · Mac OS X 10.10S 江苏 *
@Betty 人家太紧张了,不能承受被你辱骂的痛
十年前 Chromium 38 · UbuntuBetty 上海
@S 你错了,我跟人家没像跟你一样——熟?
十年前 Safari 8 · Mac OS X 10.10所以人家在用那个脏脏的模板时候,我一句话没说,就顶多不去看而已,毕竟那是人家的地盘,人家喜欢最重要
现在人家换模板了,新的模板算干净的,然后我才表示出了对上一个模板的不满意,显脏……
S 江苏 *
@Betty 我在你那找了半天也没找到破袜子……
十年前 Chromium 38 · Ubuntu瑾瑜 安徽
这第一张图的像素不够,首页放大就模糊了,而且大部分是白色。
十年前 Internet Explorer 11 · Windows 8.1S 江苏 *
@瑾瑜 昨晚晚睡前随便找的……心想能混就混了,想不到读者们的眼睛真是雪亮啊!
十年前 WebView 1 · Samsung SM-G9009DBetty 上海
来,破袜子点此:http://pewae.com/
十年前 Google Chrome 39 · Mac OS X 10.10S 江苏 *
@Betty 貌似改过模板后还行……
十年前 Chromium 38 · UbuntuBetty 上海
@S 今天再去看,他模板是又换过了一个……
我昨天看到的不是今天这一个……
十年前 Safari 8 · Mac OS X 10.10S 江苏 *
@Betty 好吧,今天那款还可以啦
十年前 WebView 1 · Samsung SM-G9009D护法 新西兰
@Betty 还是有点闹腾 😛
十年前 Google Chrome 39 · Windows 7S 江苏 *
@护法 不闹不欢 😀
十年前 Google Chrome 31 · Windows XP护法 新西兰
太同意了,这个特色图片功能经常导致我的首页出现空窗。
十年前 Google Chrome 39 · Windows 7S 江苏 *
@护法 要没啥用就删了吧~ 🙂
十年前 Google Chrome 31 · Windows XP