我自己使用的主题 zsnos-private 在 alpha6~alpha9 使用的缩略图中的一种方法就是给没有图片的文章随机显示若干美女图片/广告图片,我所使用的随机显示图片方法是最简单的,最原始的方法,笨方法。
这方法就是用随机函数 mt_rand() 产生一个随机数,然后按照这个随机数显示对应名称的图片。方法虽然原始,但我觉得好用,下面就说说实现方法,也许有朋友和我一样需要这样折腾玩
下面的用随机显示 5 张图片做例子
1. 准备好5张不同的缩略图片放在主题的images目录下,命名为:0.png、1.png、2.png、3.png、4.png
2. 修改主题的 index.php (有些主题是 home.php),找到 <?php the_content() ?>,在其上面加入如下代码:
<?php $random = mt_rand(0, 4);//随机获取0~4中一个数字付给参数 $random echo '<a href="'.get_permalink().'" rel="bookmark" title="' . get_the_title(); . '"><img src="' . get_bloginfo('template_directory') . '/images/'.$random.'.png" alt="" /></a>'; ?>
3. 如果你用了WordPress 2.9新加的文章缩略图功能,可以结合使用:有缩略图显示缩略图,没有的话显示随机图片
<?php if ( (function_exists('has_post_thumbnail')) && (has_post_thumbnail()) ) { ?> <a href="<?php the_permalink(); ?>" rel="nofollow"> <?php echo the_post_thumbnail(array(100,100), array('class' => 'alignleft', 'alt' => 'alttext')); ?> </a> <?php } else { $random = mt_rand(0, 4); echo '<a href="'.get_permalink().'" rel="bookmark" title="' . get_the_title(); . '"><img src="' . get_bloginfo('template_directory') . '/images/'.$random.'.png" alt="" /></a>'; } ?>
有兴趣的折腾玩玩,其实很多地方都可以使用,如随机显示背景图……
zww
赏
oooo
or
- 本文标题:随机显示缩略图片的简单方法
- 本文链接:https://zww.me/archives/25237
- 发布时间:2010年08月10日 10:18
- 版权声明:除非注明,文章均为 zwwooooo 原创,转载请以链接形式标明本文地址!
这个很不错的小技术,另外发现网上上传头像的技术也不多
@丕子 wp不用上传头像,用的都是gravatar的
这个我的主题自带了...
@掌柜的马甲 你那主题很厉害,作者“拍工”也很厉害
嘿嘿,你这里混多人啊~
话说我今天怎么没看到美女图了
@mustang_er 取消鸟,因为会引起人冲动后进来后就泻了,对身体不好
@zwwooooo 文章里放张大的不就好了 呵呵
@疾风 有些文章没图片
你的缩略图好像换了,logo也换了啊
@yetone 对,哈哈
这个方法适合做顶部banner
不错哦 顶一个
顺便帮你点一下右边的百度
@roger 对啊。感谢
喜欢折腾,不妨去试试
这么多人支持哦!
赞个!帮顶!
嗯,支持一下~~~
@山水画 谢谢支持
一般用前段脚本就可以做到把!
@阅网博客 核心就是前面那段
这样子挺有灵活性的.
@铵铵 厌了就随机
我有个想法,不过还没有去折腾。
就是跟据文章分类,或者标签去选择图片。这样跟内容更相关一些,可以弄多个图片 也玩儿随机。呵呵。
@向晚 我现在首页的图片就是这样处理的,文章没图片就显示分类图
那好啊,可以共享下源码吗,或者你发篇博文,嘿嘿。
这样的功能挺实用的,还没见到别人写。
@向晚 向晚 搜一下吧,很多人写过了,我就不重复了
对了,加上随机选择标签的的图片就更好了。
@向晚 向晚 标签太多,不适合
记得十几年前,Yo2还在的时候,100兄把一些模板改成 当没设置缩略图的时候显示文中第一副图片,不知是怎么实现的
@Armgod 我的首页就是啊
谢谢分享 收藏了
书香阁来留个脚丫 以后常来往哈
@书香阁免费网 欢迎常来
收藏之,这个以后可能用上
阅网博客的收藏夹图片就是随即获取的,呵呵。
@阅网博客 看看去
占沙发啊
@晴天小宝 你是58楼的沙发
一般要不要给 mt_rand() 播种呢?
@小邪 播种?啥来的?
@zwwooooo mt_srand((double)microtime()*1000000*getmypid());
额,比如这样,然后再 mt_rand ~
好像能减少重复率 ~
感觉挺麻烦的 有没有更简单一点的方法呀
@ghd straighteners 不知道,找找插件吧