修改ecshop三处代码进行简单优化来源:小雨QQ空间站 时间:2010-07-24 08:31 字体:[大 中 小] 收藏 我要投稿 分享至微博
      初用Ecshop发觉不是一般的复杂,设计一套好的Ecshop模板,绝对得呕心沥血,像我等菜鸟肯定是做不来的事,我又是一个十足十的穷人,买商业模板 那也是不可能的,所以唯有找一些免费模板,作一下小调整先将就着用了,不过默认要改的地方还不只是模板的问题,还有下面的一点点,略作记录以备不时之需。

1、ECShop标题优化

如何修改ECShop标题,现在要将网站标题修改一下,达到下面的效果网站首页标题显示的是为ECSHOP管理中心的[商店标题]。而频道页面,显示的是[频道名+商店名称],当然商品页面显示的是[商品名+商店名称]
第一步,去掉标题上的Powered by Ecshop字样。在includes/lib_main.php找到lib_main.php文件,去掉下面这段代码。
. ‘ - ‘ . ‘Powered by ECShop’
第二步,打开模板文件夹的goods.dwt文件,找到{$page_title},将它修改为{$goods.goods_style_name}_{$shop_name}
第三步,找到includes/lib_main.php第143行。将


$page_title=$GLOBALS['_CFG']['shop_title'];
改为:
$page_title=$GLOBALS['_CFG']['shop_name'];

然后找到241行左右,找到下面这样的代码
if (!empty($str))
{
$page_title = $str . '_' . $page_title;
$ur_here .= ' > ' . $str;
}

我们需要在这段代码的前面,加入
if ($filename == 'index') $page_title=$GLOBALS['_CFG']['shop_title'];

这段代码即可。
好了,这个ECShop标题我们就修改完了,这样比较符合seo。

2、去掉 ecshop head 之间的Generator" content="ECSHOP v2.7.1"

ecshop 把Generator放在title前面看着很不爽,决定去掉,保留页脚的底部版权就可以了



下面讲一下怎么删除这行代码,让系统不再自动产生。

打开 includes/cls_template.php 文件,
大概在1087行左右,找到


$source = preg_replace('//i', "\r\n", $source);



将之删除或者注释掉即可。

3、Ecshop分类树在所有页面显示全部的方法

我的网店商品分类比较少,想在所有页面把分类树全部显示出来,下面是修改方法

打开includes/lib_goods.php,找到get_categories_tree()函数部分,找到这一段:


function get_categories_tree($cat_id = 0)
{
    if ($cat_id > 0)
    {
        $sql = 'SELECT parent_id FROM ' . $GLOBALS['ecs']->table('category') . " WHERE cat_id = '$cat_id'";


        $parent_id = $GLOBALS['db']->getOne($sql);
    }
    else
    {
        $parent_id = 0;
    }