[转]在ecshop中添加页面,并且实现后台管理

原文来自 :http://blog.csdn.net/kyjb/article/details/5726213

 

后台一共需要修改下面的四个文件

C:/Program Files/ShopEx/shop/docroot/ecshop/admin/template.php

C:/Program Files/ShopEx/shop/docroot/ecshop/admin/includes/lib_template.php

C:/Program Files/ShopEx/shop/docroot/ecshop/languages/zh_cn/admin/template.php

C:/Program Files/ShopEx/shop/docroot/ecshop/themes/default/libs.xml

 

 

1、  首先做模板文件 help.dwt 和 help.php

见下面的 7 和 8 的文件内容

 

2 、修改 C:/Program Files/ShopEx/shop/docroot/ecshop/languages/zh_cn /admin/template.php

追加如下内容

$_LANG['template_files']['help'] = ' 用户定义帮助 ';

 

3 、后台就可以显示出用户定义的模板文件了

 

 

 

4 、修改下面一个文件的 bug

C:/Program Files/ShopEx/shop/docroot/ecshop/admin/includes/lib_template.php

将 while ($vals[++$i]['tag'] != 'FILE' || !isset($vals[$i]['attributes']))

修改成

              $i++;

        while ($vals[$i]['tag'] != 'FILE' || !isset($vals[$i]['attributes']))     // 读出可编辑区库文件名称,放到一个数组中

        {

                     ……

            $i++;

 

        }

 

5 、【每个模板允许设置的库项目】做成

C:/Program Files/ShopEx/shop/docroot/ecshop/admin/includes/lib_template.php

在 $page_libs = array(…… 中加入下面代码

 

    'help' => array(

        '/library/ur_here.lbi' => 0,

        '/library/search_form.lbi' => 0,

        '/library/member.lbi' => 0,

        '/library/new_articles.lbi' => 0,

        '/library/category_tree.lbi' => 0,

        '/library/top10.lbi' => 0,

        '/library/invoice_query.lbi' => 0,

        '/library/recommend_best.lbi' => 3,

        '/library/recommend_new.lbi' => 3,

        '/library/recommend_hot.lbi' => 3,

        '/library/recommend_promotion.lbi' => 4,

        '/library/group_buy.lbi' => 3,

        '/library/auction.lbi' => 3,

        '/library/brands.lbi' => 3,

        '/library/promotion_info.lbi' => 0,

        '/library/cart.lbi' => 0,

        '/library/order_query.lbi' => 0,

        '/library/email_list.lbi' => 0,

        '/library/vote_list.lbi' => 0

    ),

 

 

6 、编辑可否设定

C:/Program Files/ShopEx/shop/docroot/ecshop/themes/default/libs.xml

加入下面代码,这些区域就变成可指定的了,以外的部分就不能被设定。如果不在这个文件中加入任何信息,所有的项目都是可编辑的

  <file name="help.dwt">

    <region name=" 左边区域 ">

      <lib>cart</lib>

      <lib>category_tree</lib>

      <lib>top10</lib>

      <lib>promotion_info</lib>

      <lib>order_query</lib>

      <lib>invoice_query</lib>

      <lib>vote_list</lib>

      <lib>email_list</lib>

    </region>

    <region name=" 站内快讯上广告位(宽: 210px ) "/>

    <region name=" 右边主区域 ">

      <lib>recommend_best</lib>

      <lib>recommend_new</lib>

      <lib>recommend_hot</lib>

      <lib>auction</lib>

      <lib>group_buy</lib>

    </region>

  </file>

 

 

 

7 、模板文件 help.dwt

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<!-- TemplateBeginEditable name="doctitle" -->

<title>{$page_title}</title>

<!-- TemplateEndEditable --><!-- TemplateBeginEditable name="head" --><!-- TemplateEndEditable -->

<meta name="Keywords" content="{$keywords}" />

<meta name="Description" content="{$description}" />

<link rel="shortcut icon" href="favicon.ico" />

<link rel="icon" href="animated_favicon.gif" type="image/gif" />

<link href="{$ecs_css_path}" rel="stylesheet" type="text/css" />

</head>

 

<body>

<!-- #BeginLibraryItem "/library/page_header.lbi" --><!-- #EndLibraryItem -->

  <div class="AreaR">

   <!-- 焦点图和站内快讯 START-->

    <div class="box clearfix">

     <div class="box_1 clearfix">

        <div class="f_l" id="focus">

       <!-- #BeginLibraryItem "/library/index_ad.lbi" --><!-- #EndLibraryItem -->

       </div>

       <!--news-->

       <div id="mallNews" class="f_r">

        <div class="NewsTit"></div>

        <div class="NewsList tc">

                            <!-- TemplateBeginEditable name=" 站内快讯上广告位 " -->

                                     <!-- #BeginLibraryItem "/library/cat_goods.lbi" --><!-- #EndLibraryItem -->

                            <!-- TemplateEndEditable -->

         <!-- #BeginLibraryItem "/library/new_articles.lbi" --><!-- #EndLibraryItem -->

         </div>

       </div>

       <!--news end-->

     </div>

    </div>

<!-- #BeginLibraryItem "/library/page_footer.lbi" --><!-- #EndLibraryItem -->

</body>

</html>

 

红色背景部分是可编辑区域,如下图

 

 

8 、 help.dwt

<?php

define('IN_ECS', true);

 

require(dirname(__FILE__) . '/includes/init.php');

 

assign_template('c', array($cat_id));

$position= assign_ur_here(0, 'asdfasdfaadsfasd');

$smarty->assign('ur_here',          $position['ur_here']);  // 当前位置

        

$smarty->display('help.dwt');

 

?>

 

 

9 、最终效果

 

posted @ 2012-03-29 01:33  沐雪架构师  阅读(375)  评论(0编辑  收藏  举报