行业动态
ECshop引用文章内容的方法,ECSHOP商品页引用文章内容的方法
发布日期:2013-03-13 阅读次数:3667 字体大小:

ecshop是目前国内使用率最广泛的一个开源商城系统。在商品详情页面有时需要有很多个切换说明,比如商品发货说明,物流说明,售后说明等,针对这个问题可以用ec自带的广告管理来搞定,但是缺点就是广告里面只能编辑源代码 使用很不方便。这里说的方法可以在后台文阐添加一篇文章,然后再商城需要的地方调用这篇文章的内容。

第一种方法: 这个方法很简单
在哪个页面调用文章内容 就在哪个页面的php文件里添加以下内容,如果在商品页调用 就在goods.php中加
 

PHP代码
  1.   
  2. $id = 133; //要调用文章的ID   
  3. $article_index =$db->getOne("select content from " .$ecs->table('article'). "  where article_id='$id'");//查询指定的ID文章中的内容   
  4. $smarty->assign('article_index'$article_index);赋值变量   
  5.   
  6. $id = 124; //要调用文章的ID   
  7. $article_index =$db->getOne("select content from " .$ecs->table('article'). "  where article_id='$id'");   
  8. $smarty->assign('article_index124'$article_index);   
  9.   
  10. $id = 186; //要调用文章的ID   
  11. $article_index =$db->getOne("select content from " .$ecs->table('article'). "  where article_id='$id'");   
  12. $smarty->assign('article_index186'$article_index);   
  13.   

在模板种使用 {$article_index}、 {$article_index124}  、{$article_index186} 

就可以把id为133、124、186的文章内容调用出来了。 如果需要调用其它id的文章 再按上面添加一个就行了。

第二种方法:
这种方法麻烦些 但是全站都可以调用,在include/int.php中添加如下代码
 

第二种方法:
这种方法麻烦些 但是全站都可以调用,在include/int.php中添加如下代码


 

PHP代码
  1. $article = get_article(17);   
  2.   $smarty->assign('article',      $article);   
  3.   
  4. $article1 = get_article(18);   
  5.   $smarty->assign('article1',      $article1);   
  6.   
  7. $article2 = get_article(19);   
  8.   $smarty->assign('article2',      $article2);   
  9.   
  10. function get_article($article_id)   
  11. {   
  12.     /* 获得文章的信息 */  
  13.     $sql = "SELECT a.*, IFNULL(AVG(r.comment_rank), 0) AS comment_rank ".   
  14.             "FROM " .$GLOBALS['ecs']->table('article'). " AS a ".   
  15.             "LEFT JOIN " .$GLOBALS['ecs']->table('comment'). " AS r ON r.id_value =  
  16.  
  17. a.article_id AND comment_type = 1 ".   
  18.             "WHERE a.is_open = 1 AND a.article_id = '$article_id' GROUP BY a.article_id";   
  19.     $row = $GLOBALS['db']->getRow($sql);   
  20.   
  21.     if ($row !== false)   
  22.     {   
  23.         $row['comment_rank'] = ceil($row['comment_rank']);                              // 用户评论级别取整   
  24.         $row['add_time']    = local_date($GLOBALS['_CFG']['date_format'], $row['add_time']);   
  25.   
  26. // 修正添加时间显示   
  27.   
  28.         /* 作者信息如果为空,则用网站名称替换 */  
  29.         if (emptyempty($row['author']) || $row['author'] == '_SHOPHELP')   
  30.         {   
  31.             $row['author'] = $GLOBALS['_CFG']['shop_name'];   
  32.         }   
  33.     }   
  34.   
  35.     return $row;   
  36. }   
  37.   

其中

$article = get_article(17);
  $smarty->assign('article',      $article);
是调用id为17的 文章内容,在模板种 直接用{$article.content}  就可以调用处id为17的文章内容。{$article1.content}  调用的id为18的 文章内容。如果需要调用其它id文章内容只需添加即可。

个人采用第二种方法做的公司简介:
在首页加入代码
 

XML/HTML代码
  1. <div class="box">  
  2. <div class="box_1">  
  3.   <h3>  
  4.   <span>企业简介</span>  
  5.   </h3>  
  6.   <div class="boxCenterList RelaArticle">  
  7.   <div>{$article.content}</div>  
  8.   </div>  
  9. </div>  
  10. </div>  
  11.     <div class="blank5"></div>