HotNews主题集成的随机缩略图本来是为懒人准备的,可能有童鞋感觉,不同的分类内容都显示相同的随机缩略图,有些不搭调,如果博客日志较多,文章中又无图片,重新编辑添加图片工作量又太大,来个折中的办法,改动一下随机缩略图调用函数,让不同的分类显示不同的随机缩略图。
首先,在HotNews主题images目录新建名称为:random1、random2、random3.........文件夹,并在其中放置不同的随机缩略图片,图片名称必须是连续的。
其次,打开主题functions.php模版,找到:
- //支持外链缩略图
- if ( function_exists('add_theme_support') )
- add_theme_support('post-thumbnails');
- /*Catch first image (post-thumbnail fallback) */
- 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)){ //Defines a default image
- $random = mt_rand(1, 20);
- echo get_bloginfo ( 'stylesheet_directory' );
- echo '/images/random/'.$random.'.jpg';
- }
- return $first_img;
- }
替换为:
- //支持外链缩略图
- if ( function_exists('add_theme_support') )
- add_theme_support('post-thumbnails');
- /*Catch first image (post-thumbnail fallback) */
- 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)){ //Defines a default image
- $random = mt_rand(1, 20);
- echo get_bloginfo ( 'stylesheet_directory' );
- if ( is_category( '472' ) ) {
- echo '/images/random1/'.$random.'.jpg';
- } elseif ( is_category( '473' ) ) {
- echo '/images/random2/'.$random.'.jpg';
- } elseif ( is_category( '474' ) ) {
- echo '/images/random3/'.$random.'.jpg';
- }
- }
- return $first_img;
- }
其中:
数字20是随机缩略图数量,根据实际自行修改。
修改上面代码类似“ is_category( '472' )”中数字为相应的分类ID号
random3是图片文件夹的名称
如果分类较多,可以多复制几个:
- elseif ( is_category( '474' ) ) {
- echo '/images/random3/'.$random.'.jpg';
- }
同样要修改其中的分类ID及图片文件夹名称。
注:此方法只支持分类页面,首页无效
本站文章大部分为原创,用于个人学习记录,可能对您有所帮助,仅供参考!

我的微信
微信号已复制
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!





51F
鸟哥,我太喜欢你网站的风格了,所以把你网站给偷了过来,过一段时间可能要上线了,希望您不要介意。
52F
鸟哥,请教个问题,为什么我用TXT修改functions.php文件后, 在后台会出现错误,切换而且我现在发现博客内容页的侧边也不显示了,只有最新文章,本月排行,分类目标那一个模块了。
发布公告也出现错误了 public_html/wp-includes/pluggable.php on line 881
求救啊。
B1
@ jauntry 我也是菜鸟,不过我怀疑是用TXT修改造成的,不知是不是,因为鸟哥每篇日志都提醒编辑代码一定要用专业软件比如:EditPlus 等等。有下载的主题源文件里找到
functions.php文件复制修改的部分再改回来,不知行不行。呵呵
53F
鸟哥。。相册功能设置不了~
B1
@ 贾维清博客 要仔细看使用说明,上面鸟哥说的很详细,我一开始也是不行,仔细看了使用说明后就搞定了
54F
不多说什么 这就是实力……
55F
我也用了鸟哥的东西,很不错啊
56F
统一的风格展示不同的内容。
广东 广州市 57F
鸟哥,我有个建议,不知道你会不会采纳了。目前这些随机缩略图是没有添加img 标签的alt描述,这样可能会影响搜索引擎的收录,不利于网站整体seo优化,鸟哥能考虑下优化下这个地方吗?
B1
@ hnyzchenl 还真是,所以我现在都每篇自己配图片。这样就不会有这个问题了。尽量不用系统带的随机图。
B1
@ hnyzchenl 随机图有alt标签
58F
使用你的代码修改后,在分类中看,图是可以按我的要求显示的.但是为什么首页不显示图片?
B1
@ 276080758 2.7.1版
B1
@ 276080758 麻烦帮忙看看
59F
鸟哥,小弟主题启用cms布局,根据这个教程已实现不同目录显示不同缩略图,但是碰到一点问题折腾了几天还是没有搞定,因此特来请教鸟哥。
若文章中有图片或者手动添加自定义栏目ta-thumbnail则缩略图在任何位置都能正常显示。
若文章中没有图片也没有手动添加自定义栏目ta-thumbnail,那么随机缩略图在某些板块不会显示,例如:首页的最新文章、文章底部的随机缩略图、tags页面、搜索页面……似乎除了分类页面外,其他页面缩略图显示都不正常。
但是如果换回修改前默认的随机缩略图便一切正常,请问鸟哥,这是否是我修改有误?小弟的站http://rubberkeycn.com
B1
@ 无墨 此方法只支持分类页面,首页无效
B2
@ 知更鸟 原来是这样,感谢鸟哥!
是否有办法可以在所有页面都实现呢?
请原谅我的好奇和爱折腾给您带来麻烦…
60F
这篇文章不过,虽然现在不用,先收着。我转载了,已注明出处,请查看http://cn123.sinaapp.com/archives/1463
另外为了学习方便,交换个连接号码,你的已做好,亲看http://cn123.sinaapp.com/%E8%B6%85%E7%BA%A7%E5%8D%9A%E5%AE%A2%E5%A2%99
红枫苑
http://cn123.sinaapp.com
广东 广州市 61F
随机调用有点难度
62F
鸟哥,救命啊! 我按这样操作后就提示:Parse error: parse error in D:wwwrootshuiguowwwrootwp-contentthemesHotNewsprofunctions.php on line 115
我改回以前的也还是这样提示,在线急等…
63F
鸟哥,你主题自动缩略图的比例是不是有问题,150×150,应该是160×100吧。。
北京市 海淀 64F
这个不错,学习了
北京市 朝外 65F
谢啦,鸟哥。。。。
66F
这个方法挺实用的
67F
鸟哥,你好,能否问你个插件的问题,我用了一款SyntaxHighlighter Evolved插件,但是无效,不能高亮代码。我现在用的主题是hotnews2.7.1,换了好几个主题,还是一样,禁用了所有插件,只留下SyntaxHighlighter Evolved,还是一样,不知道还能是什么原因?在主题footer.php 也是有的。鸟哥,能帮忙分析下吗
B1
@ 雨辰 这个插件没用过,可以网站搜索一下使用方法
另外,主题本身已集成代码高亮功能,使用方法看使用说明
68F
鸟哥,站点图标怎么替换的?我用favicon.ico直接替换了主题下的favicon.ico,但是不管用啊,还需要改哪里吗?
来自外部的引用