欢迎访问 夜阑小雨 我的学习碎片档案,这里记录了我的学习内容和工作中经验,希望给您带去帮助。

【转】ECSHOP如何实现不同的分类调用不同的模版

javascript 夜阑小雨 794℃ 0评论

要增一些功能,除了找论坛里,或者找人帮忙,还有一种就是自己学习如何解决,因为不懂PHP语言,所以只能生搬硬套的方式来修改。
在高手看来,这是很笨的方法,但是在不懂PHP语言的情况下,只能如此,希望能给那些跟我一样的新手有所帮助。同理,用类似的方法还可以增加很多新的功能,比如,在商品详情页增加视频,下载区域等

目的:不同的分类调用不同的模版,如果没有就调用默认的模版
方法:模仿分类样式,COPY一个分类模版

注意:红色部分是新增加的,黑色部分,是让你找到位置,知道在哪里增加

1,在分类表ecs_category里增加一个字段,style_moban,属性就与style相同吧,
或者执行以下SQL语句 alter table   `ecs_category` add style_moban varchar(255) NOT NULL DEFAULT ”;
2,修改admintemplatescategory_info.htm
   <tr>
       <td class=”label”><a href=”javascript:showNotice(‘noticeGoodsSN’);” title=”{$lang.form_notice}”><img src=”images/notice.gif” width=”16″ height=”16″ border=”0″ alt=”{$lang.notice_style}”></a>{$lang.cat_style}:</td>
       <td>
      <input type=”text” name=”style” value=”{$cat_info.style|escape}” size=”40″ /> <br />
      <span class=”notice-span” {if $help_open}style=”display:block” {else} style=”display:none” {/if} id=”noticeGoodsSN”>{$lang.notice_style}</span>
       </td>
   </tr>
         <tr>
       <td class=”label”><a href=”javascript:showNotice(‘noticeGoodsSN’);” title=”{$lang.form_notice}”><img src=”images/notice.gif” width=”16″ height=”16″ border=”0″ alt=”{$lang.notice_style}”></a>{$lang.cat_style_moban}:</td>
       <td>
      <input type=”text” name=”style_moban” value=”{$cat_info.style_moban|escape}” size=”40″ /> <br />
      <span class=”notice-span” {if $help_open}style=”display:block” {else} style=”display:none” {/if} id=”noticeGoodsSN”>{$lang.notice_style_moban}</span>
       </td>
   </tr>

2.修改admincategory.php
第一处:
$cat[‘style’]        = !empty($_POST[‘style’])        ? trim($_POST[‘style’])        : ”;
       $cat[‘style_moban’]   = !empty($_POST[‘style_moban’])   ? trim($_POST[‘style_moban’])   : ”;
第二处:
$cat[‘style’]        = !empty($_POST[‘style’])        ? trim($_POST[‘style’])        : ”;
       $cat[‘style_moban’]   = !empty($_POST[‘style_moban’])   ? trim($_POST[‘style_moban’])   : ”;
3.修改语言库
languageszh_cnadmincategory.php
第一处:
$_LANG[‘cat_style’] = ‘分类的样式表文件’;
$_LANG[‘cat_style_moban’] = ‘分类的模版文件’;
第二处:
$_LANG[‘notice_style’] = ‘您可以为每一个商品分类指定一个样式表文件。例如文件存放在 themes 目录下则输入:themes/style.css’;
$_LANG[‘notice_style_moban’] = ‘您可以为每一个商品分类指定一个模版文件。例如文件存放在 themes 目录下则输入:themes/category.dwt’;
到这里,在后台就可以输入分类模版了,
接下来,是如何调用
4.修改根目录下的:category.php
找到行,$smarty->display(‘category.dwt’, $cache_id);
(注意应该是第二处(2.71就只有一处),本文件 有两处,我的文件修改过了,所以也不懂是第几行,300-400之间的那一处)

替换成:
//获取自定义分类增加的信息
$cat_id = intval($_REQUEST[‘id’]);
$sql = “SELECT * FROM ” .$GLOBALS[‘ecs’]->table(‘category’). ” WHERE cat_id=’$cat_id’ LIMIT 1″;
$cat_info   = $GLOBALS[‘db’]->getRow($sql);
/*———————–新增加的自定议分类模版—————————– */
$template_cat = $cat_info[‘style_moban’];
if($template_cat !=”)
{
$smarty->display($template_cat, $cache_id);
}
else
{
$smarty->display(‘category.dwt’, $cache_id);
}

5.自己制作一份新的模版,在后台输入到需要自义的分类里就可以。

转载请注明:夜阑小雨 » 【转】ECSHOP如何实现不同的分类调用不同的模版

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址