您好,欢迎来到建站之家源码网建站之家!只做精品网站源码
  • 首 页
  • 当前位置:首页 > 建站教程 > ecshop建站教程 >
    ECShop商品详情页调用指定一篇文章ID全部内容的方法
    时间:2017-02-28 18:34 来源:未知 作者:admin 浏览:收藏 打印

    一、ECSHOP商品详细页面如何调用一篇文章中的内容

     

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

    $id = 280; //要调用文章的ID
    $article_goods = $db->getOne("SELECT content FROM " . $ecs->table('article') . " WHERE article_id = '$id'");
    $smarty->assign('article_goods ', $article_goods );

    在模板种使用 {$article_goods} 就可以把id为280的文章内容调用出来了。如果需要调用其它id的文章,再按上面添加一个就行了。

     

    二、ECShop商品详细页获取调用指定文章ID的内容

     

    该功能主要用于在ECShop商品详情页面里的如:商品信息/规格参数/客户评价/购买记录/售后服务/常见问题;其中“ 售后服务/常见问题 ”就是以文章形式显示。而由于ECShop系统的详情页并没有调用指定文章的功能,导致很多的ECShop模板在商品详情页这块“售后服务/常见问题”里的内容都是写死在代码里,即添加、修改内容需要在代码里面操作,很多不懂html代码的用户,即使告诉他怎么添加他还是不会,连文件的路径都不会看。如此一来,添加这里的文章就变的相当麻烦了。

    所以今天,模板营就借这篇文章来告诉大家如何简单修改下程序代码,即所谓的ECShop二次开发,就能轻松解决这一麻烦问题,您只需要通后台添加文章,商品详情页会自动调用。

    同时模板营发布这篇文章的目的,也是希望能解决更多的不懂php代码的ECShop用户同样能做轻松好站长,感受ECShop的强大。

     

    下面就是该页面调用内容的方法:

    1、在/goods.php里尾部的  ?>  前加上如下代码:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    /** 2013-06-26 作者:mbying.com
     * 获得指定的文章的内容
     *
     * @access  private
     * @param   integer     $article_id
     * @return  array
     */
    function get_article($article_id)
    {
        /* 获得文章的信息 */
        $sql = 'SELECT article_id, title,content' .
                   ' FROM ' .$GLOBALS['ecs']->table('article') .
                   ' WHERE article_id='.$article_id;
        $row = $GLOBALS['db']->getRow($sql);
        return $row;
    }

    2、第二步,在 goods.php 找到以下代码:

    1
    2
    3
    4
    5
    6
    7
    8
    /* 获得商品的信息 */
    $goods = get_goods_info($goods_id);
    if ($goods === false)
    {
       /* 如果没有找到任何记录则跳回到首页 */
       ecs_header("Location: ./\n");
       exit;
    }

    在这段代码的上面新建一行添加以下代码:

    1
    2
    $smarty->assign('article',get_article(19));          //获取文章的内容页面
    $smarty->assign('article1',get_article(20));         //获取文章的内容页面

    最后在goods.dwt模板里输出:
    {$article.content} //对应ID=19的变量名article
    {$article1.content}//对应ID=20的变量名article1    

     

    这里的两个变量分别为“售后服务/常见问题”里的内容,“ID=**”是指您调用的文章的ID值,根据您后台添加的文章的ID来填写。

     

    三、ECSHOP商品分类商品调用关联文章方法

    **
     * 获得指定分类下所有商品的关联文章
     * sun04zh3-20130321
     * @access  public
     * @param   integer     $cat_id
     * @return  array
     */
    function get_category_linked_articles($cat_id)
    {
     $sql = 'SELECT a.article_id, a.title, a.file_url,
      a.open_type, a.add_time ' .
    'FROM ' . $GLOBALS['ecs']->table('goods_article') . ' AS ga, ' .
    $GLOBALS['ecs']->table('article') . ' AS a, ' .
    $GLOBALS['ecs']->table('goods').' AS g '.
    "WHERE ga.article_id = a.article_id AND
     ".get_children($cat_id).
     " AND a.is_open = 1 and ga.goods_id = g.goods_id " .
    'ORDER BY a.add_time DESC';
    $res = $GLOBALS['db']->query($sql);

    $arr = array();
    while ($row = $GLOBALS['db']->fetchRow($res))
    {
    $row['url']= $row['open_type'] != 1 ?
     build_uri('article', array('aid'=>$row['article_id']), $row['title'])
      : trim($row['file_url']);
    $row['add_time']    = local_date($GLOBALS['_CFG']['date_format'],
     $row['add_time']);
    $row['short_title'] = $GLOBALS['_CFG']['article_title_length'] > 0 ?
    sub_str($row['title'], $GLOBALS['_CFG']
    ['article_title_length']) : $row['title'];

    $arr[] = $row;
        }

        return $arr;
    }


    category.dwt模版页调用:

    <!--{foreach from=$article_list_jnc item=jnclist}-->
    <li><a href="{$jnclist.url}"  
    title="{$jnclist.title}">{$jnclist.title}</a></li>
    <!--{/foreach}-->

    category.php对应程序页调用:

    $smarty->assign('article_list',     get_category_linked_articles(8));

    标签:建站之家

    郑重声明:
    本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
    我们不承担任何技术及版权问题,且不对任何资源负法律责任。
    如无法下载,联系站长索要。
    如有侵犯您的版权,请及时联系QQ:1395550247,我们尽快处理。

    ECSHOP网站模板安装教程图文详解ECSHOP网站模板安装教程图文详
    ecshop安装教程(超详细)ecshop安装教程(超详细)
    如何安装ECShop商城程序到虚拟主机如何安装ECShop商城程序到虚拟
    支持建站之家广告栏目
      客服:我们竭诚为您服务!

      客服:我们竭诚为您服务!