• [织梦吧]唯一域名:www.dedecms8.com,织梦DedeCMS学习平台.

当前位置: > DedeCMS教程 > DedeCMS模板标签 >

dedecms添加自定义标签显示非dede表数据

来源: www.dedecms8.com 编辑:织梦吧 时间:2012-04-25点击:

需求:调用一个商城系统里面的产品数据到dedecms文章页,希望对需要类似需求的人有所帮助
功能实现:为了不用垮数据库查询,dedecms安装到商城系统数据库里面
下面是实现的代码(请根据自己的环境进行修改)
include/taglib/hongyungoods.lib.php

  <?php
/**
 * @author http://www.heui.org/
 */
if(!defined('DEDEINC')) exit('Request Error!');
 
functionlib_hongyungoods(&$ctag, &$refObj)
{
    global$dsql, $envs, $cfg_cmsurl;
 
    //属性处理
    $attlist="row|6,titlelen|0,tid|0";
    FillAttsDefault($ctag->CAttribute->Items,$attlist);
    extract($ctag->CAttribute->Items, EXTR_SKIP);
 
    //只在指定栏目显示
    if($tid>0 && $tid!= $envs['typeid']) return'';
 
    if( !$dsql->IsTable("sl_products") ) return'没安装鸿运产品模块';
 
    $innertext= $ctag->GetInnerText();
    //@todo hongyungoods.htm
    if(trim($innertext)=='') $innertext= GetSysTemplets("hongyungoods.htm");
 
    //@todo 智能条件
    $where= 1;
    $limit= 5;
 
    $ctp= newDedeTagParse();
    $ctp->SetNameSpace('field', '[', ']');
    $ret= '';
    $query= "SELECT p.`Name` AS title,
 CONCAT('http://www.hongyun2000.com/', ps.`AcStr`, '-view-', p.`ID`, '.html') AS url,
 CONCAT('http://www.hongyun2000.com/uploadfile/s/', p.`Images`) AS img
 FROM `sl_products` AS p
 LEFT JOIN `sl_products_sort` AS ps ON p.`SID` = ps.`ID`
 WHERE " . $where . "ORDER BY RAND() LIMIT " . $limit;
 
    $dsql->Execute('me',$query);
  while($rs= $dsql->GetArray('me'))
  {
      $rs['title'] = 0 == $titlelen?$rs['title']:cn_substr($rs['title'], $titlelen);
        $ctp->LoadSource($innertext);
      foreach($ctp->CTags as$tagid=>$ctag) {
            if(!empty($rs[strtolower($ctag->GetName())])) {
                $ctp->Assign($tagid,$rs[$ctag->GetName()]);
            }
          }
          $ret.= $ctp->GetResult();
  }
 
  return$ret;
}
 
?>

调用页面使用:

 
{dede:hongyungoods}
<dd>
    <spanclass="tlink"><ahref="[field:url/]"><imgsrc="[field:img/]"alt="[field:title/]"/></a>
    <ahref="[field:url/]"target="_blank">[field:title/]</a></span>
</dd>
{/dede:hongyungoods}

About D8

  • ©2014 织梦吧(d8) DedeCMS学习交流平台
  • 唯一网址 www.DedeCMS8.com 网站地图
  • 联系我们 1978130638@qq.com ,  QQ