帝国CMS灵动标签调用新闻正文内容第一张图片的方法
经营范围:电脑组装,电脑维修,智能家居设备,苹果电脑系统安装,苹果手机刷机,监控安装,媒体编辑,数据恢复,复印打印,网站制作等 |
有时候我们在建站的过程当中需要调用内容页中正文的第一张图片(并不是缩略图),这样就会无从下手,但其实对不懂开发的站长是太难了,往往是会用标题图片来取代,下面分享网友们贡献出来的方法
1、打开 /e/class/connect.php 文件
找到
//替换列表模板/标签模板/搜索模板
在其上边添加以下代码:
//获取内容页第一张大图片
function diy_imgFirst($r){
global $empire,$dbtbpre;
$fr=$empire->fetch1("select newstext from {$dbtbpre}ecms_news_data_1 where id='$r[id]'");
$newstext=stripslashes($fr['newstext']);//去除反斜杠并且获取文章正文内容
$pattern = "/.*src=\"([^^]*?)\".*/i"; //正则
preg_match_all($pattern, $newstext, $match);
if(count($match[1])>=1){
//return $match[1][0];//返回第一张图片地址
$diyfpic=$match[1][0];
}else{
$diyfpic=$r['titlepic'];
}
return $diyfpic;
}
找到
$titleurl=sys_ReturnBqTitleLink($r);//链接
在其下边添加以下代码:
$diyfpic=diy_imgFirst($r);
找到
$listtemp=str_replace('[!--titleurl--]',$titleurl,$listtemp);
在其下边添加以下代码:
$listtemp=str_replace('[!--diyfpic--]',$diyfpic,$listtemp);
2、进入后台在 管理列表模板 的 list.var 中,直接使用 [!--diyfpic--]
最好把
$diyfpic=$r['titlepic'];
修改为
$diyfpic='e/data/images/notimg.gif';
因为一般没有大图,就没有缩略图。或者留空也行。