WordPress文章显示第一张图或随机图片
不知道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 好吧,算是多尝试些风格嘛,说不定哪天又换回来了。哈~
@Yang 没事,你随意,你自己喜欢就好
如果风格真是脏到乱了,大不了就跟那谁谁谁的博客一样,我不看就是了
@Betty 好吓人啊,这个很严重的,我可不敢赶走本博最好的观众呀!!
那谁谁是谁呀,很好奇……
@Betty 就是,那谁谁是谁啊?要不好一阵子都没见你上俺家来了? ❗
@护法 那谁谁下面Betty回复了,叫什么破袜子的一个网友。
@Betty 我觉得你说的对,还是简洁一点好。 😆
@Yang 哈哈,莫非你试过多图显示以后,被错杂的视觉效果给看醉了?
@Betty 元素多了点,好看是好看but不符合内容突出的要求嘛
那谁谁谁叫什么破袜子来着,刚想把他网站打开给你看,结果发现人家换模板了,不脏乱了……
@Betty 人家太紧张了,不能承受被你辱骂的痛
@Yang 你错了,我跟人家没像跟你一样——熟?
所以人家在用那个脏脏的模板时候,我一句话没说,就顶多不去看而已,毕竟那是人家的地盘,人家喜欢最重要
现在人家换模板了,新的模板算干净的,然后我才表示出了对上一个模板的不满意,显脏……
@Betty 我在你那找了半天也没找到破袜子……
这第一张图的像素不够,首页放大就模糊了,而且大部分是白色。
@瑾瑜 昨晚晚睡前随便找的……心想能混就混了,想不到读者们的眼睛真是雪亮啊!
来,破袜子点此:http://pewae.com/
@Betty 貌似改过模板后还行……
@Yang 今天再去看,他模板是又换过了一个……
我昨天看到的不是今天这一个……
@Betty 好吧,今天那款还可以啦
@Betty 还是有点闹腾 😛
@护法 不闹不欢 😀
太同意了,这个特色图片功能经常导致我的首页出现空窗。
@护法 要没啥用就删了吧~ 🙂