当文章无图时显示随机图片,当然这随机图片需要存放在固定的位置。
方法如下:
1.在根目录下面source/module/portal里面找到portal_list.php文件,打开找到- if($value['pic']) {
- $value['pic'] = pic_get($value['pic'], '', $value['thumb'], $value['remote'], 1, 1);
- }
复制代码 意思是在$value[‘pic’]为true的情况下,获取文章中第一张图片作为封面。
替换为- if($value['pic']) {
- $value['pic'] = pic_get($value['pic'], '', $value['thumb'], $value['remote'], 1, 1);
- }else{
- $value['pic'] = 'static/ranimg/cover_'.($value[aid]%10).'.jpg';
- }
复制代码 其中:[the]$value[‘pic’]=’static/ranimg/cover_’.($value[aid]%10).’.jpg’;[/the]
意为:在文章不包含图片时,即$value[‘pic’]为false时。从static/ranimg/下面存在的10张图片中随机选取一张作为封面,$value[aid]中aid为portal_article_title表中该文章的aid(该值为门户文章中第几篇文章)。
主要代码改完后注意两点:
1.根目录下static/ranimg/下必须有10张图,后缀为.jpg。
2.图片命名cover_’.($value[aid]%10).’.jpg,其实就是cover_数字.jpg,如cover_1.jpg、cover_2.jpg、cover_3.jpg等。
还有更简单的方法,无需修改系统文件,直接在模板里改,找到:- <!--{if $value[pic]}--><div class="atc"><a href="$article_url" target="_blank"><img src="$value[pic]" alt="$value[title]" class="tn" /></a></div><!--{/if}-->
复制代码 改为- <!--{if $value[pic]}-->
- <div class="atc"><a href="$article_url" target="_blank"><img src="$value[pic]" alt="$value[title]" class="tn" /></a></div>
- <!--{else}-->
- <!--{eval $picname = rand(1,10);}-->
- <div class="atc"><a href="$article_url"
- target="_blank"><img src="static/ranimg/cover_{$picname}.jpg" alt="$value[title]"
- class="tn" /></a></div>
- <!--{/if}-->
复制代码 |