建站帮助

诚信合作, 高质专业!

Phpcms V9广告位自定义PC标记调用方法

2016-08-24 17:42:00 浏览 我要评论

在之前的文章Phpcms V9广告位循环数据调用方法详解以及Phpcms V9.6.0正式版广告调用eval()方式改成string2array()更新中,详细讲解了采用pc:get  SELECT广告位循环调用的方法,今天CMSYOU在这里再次就PC V9的广告位调用提供一个新的方法:自定义修改content_tag类,做到pc标签循环调用。

这个方法来源自PC V9自身的调用方式{pc:content 参数名="参数值" 参数名="参数值" 参数名="参数值"},比如:

{pc:content action="lists" cache="3600" num="20" page="$page"}{/pc}

这里的action,比较常见的是:栏目category、列表lists、推荐位position、相关文章relation、热门排行点击量hits、可视化pc_tag,具体方法函数文件:phpcms/modules/content/classes/content_tag.class.php,大家可以看下里边的函数写法。

根据这些函数写法,不防为广告位也自定义pc标记调用函数:

/**
* 广告位循环调用
* @param $data
*/
public function ads($data) {
   $this->dbads = pc_base::load_model('poster_model');
   $where = '1';
   $spaceid = $data['spaceid'] ? intval($data['spaceid']) :"";
   if ($spaceid) $where .= " AND `spaceid`='".$spaceid."' AND disabled='0'" ;
  $return= $this->dbads->select($where, '*', $data['limit'], $data['order']);
  $result=array();
  foreach ($return AS $value){
     $result[$value['id']]['title']=$value['name'];
    $temp=string2array($value['setting']);
   $result[$value['id']]['alt']=$temp['1']['alt'];
   $result[$value['id']]['imageurl']=$temp['1']['imageurl'];
   $result[$value['id']]['url']=$temp['1']['linkurl'];
  }
  return $result;
}

注:上面的函数代码加在最后类的结尾前,上一个函数结尾处。

这样,前台模板文件就可以这样调用指定id、指定条数的广告数据了:

{pc:content  action="ads" spaceid="9" order="listorder ASC" num="5"}
{loop $data $r}
        <li><a class="item" href="{$r['url']}" title="{$r['alt']}" target="_blank"><img class="bg" src="{$r['imageurl']}" alt="{$r['alt']}" /></a></li>
{/loop}
{/pc}

具体调用的字段具体见数据库里边的表结构,Phpcms V9广告位循环数据调用方法详解这里有详细说明。

 

希望大家喜欢,有更多自定义phpcms,以后多多分享,最近CMSYOU忙于项目,比较少分享,如果有好的文章也欢迎投稿,投稿email:info@cmsyou.com。

同时欢迎大家收听CMSYOU官方微博,相互探讨Phpcms

我要收藏
个赞

相关阅读

本月热门

精选推荐

在线客服

扫一扫,关注我们

扫一扫,关注我们