为dedecms模板文章列表块添加新标签

这里介绍下,对dedecms模板中的标签进行二次开发的一个实例:

本实例用于在dedecms列表块中获取文章第一张大图的连接地址。

一些特殊的模板需要取得文章的大图而不是缩略图,因为通常文章的大图要比缩略图清楚地多。

下面是dedecms模板标签二次开发的方法:

1、 修改include/extend.func.php

添加如下代码:

  •     //利淘淘www.litaotao.com 提取图集第一张大图,为arclist用      function get_firstbigimg($arcid){     //获取图片附加表imgurls字段内容进行处理     $dsql = new DedeSql(false);     $row = $dsql->GetOne("Select imgurls From dede_addonimages where aid='$arcid'");      preg_match_all("|{dede:img ddimg='(.*)' text=(.*)|Uis",$row['imgurls'],$imgurls); //获取所有图片地址      $get_firestimg = $imgurls[1][0]; //       return $get_firestimg;  } 

注意:该文件用于存放dede模板标签中公共调用的一些函数。

2、修改include/taglib/arclist.lib.php 在373行添加 $row['first_imgurl'] = get_firstbigimg($row['id']);

说明:该语句的含义为添加一个标签变量,该标签变量用于获取文章中第一张大图的地址。

如此:一个在arclist标签中可以使用的标签就制作完成了。简单吧?

下面是使用方法举例:

{dede:arclist row=5 typeid='' type='image.'}<a href="[field:arcurl/]" target="_blank"><img src=[field:first_imgurl/] /><br />[field:title/]</a>{/dede:arclist}

注意红色的部分。标签名就是我们定义过的变量哦。

支付宝扫码打赏 微信扫码打赏

如果本文对你有帮助,欢迎打赏本站

喜欢 ()or分享
    匿名评论
  • 评论
人参与,条评论