osCommerce开发心得
弄了大半个月的oscommerce了,当初觉得烂的不能再烂的东西,现在看看,却觉得这个电子商务平台还是挺不错的。项目弄了大半个月,可实际上真正做也就一周的时间。算上调试和部署。不怎么难。
这东西文档还真是少的可怜,Google搜一下,国外倒是有一些技术文档,搜“中文网页”前几页都是各种oscommerce二次开发的求职或者出售模板的。绝无文档可言。唯有一个还算是技术论坛的什么gate站,居然还收费才可以看到文章,真狠了。既然没有捷径,那就自己看吧,凭着自己这么点经验,看还是能看的懂的。下面就是一些心得,写的比较乱,想到什么写什么。事情就是这么个事情,情况就是这么个情况,希望有人可以用的上。
我用的是2.2RC2a版本,现在最新的是3.0a4,可以在oscommerce的官方网站下到oscommerce-2.2rc2a.zip,安装STS 4.5.8插件,很奇怪,我下的oscommerce里内置了STS,没找到哪能单独下。
osCommerce前台后台使用两套CSS和CONFIG文件,后台数据库中,前台和后台用户数据使用两套表,分别是customers、administrators 。
感觉这个版本对模板支持的不怎么样,改一次模板就和新做一个站差不多工作量了。我做的第一个项目改了程序的大部分核心程序。为了摒弃这个缺陷,我装了STS。STS能支持多重模板:
1. 默认的站点模板:./catalog/includes/sts_template.html
2. 默认的类别(category)模板:. /catalog/includes/sts_templates/index.php.html
3. 主目录页面(cPath=0)的模板:. /catalog/includes/sts_templates/index.php_0.html
4. 其他目录页面(cPath=XX_YY)的模板:. /catalog/includes/sts_templates/index.php_XX-YY.html ,这个意思就是为指定类型的商品制作模板。
5. 商品信息模板:./catalog/includes/sts_templates/product_info.php.html,可以在product_info模板里堆砌变量,达到对product_info.php页面进行排版的效果。
你要是懒一点,只修改./catalog/includes/sts_template.html文件,配合默认的css文件,就能做出来简单的效果。要是需要更高级的,就要用多重模板够哦能,就是5那条说的。比如,我们为“index.php”定制一个模板应为:./catalog/includes/sts_templates/index.php.html。
我查到了一些模板支持的系统标签,列出来。
$cataloglogo: logo标志和链接;
$urlcataloglogo: $cataloglogo所对应的URL;
$myaccountlogo: “我的帐号”图片和链接;
$urlmyaccountlogo: “我的帐号”的功能链接;
$cartlogo: “购物车”图片和链接;
$urlcartlogo: “购物车”的功能链接;
$checkoutlogo: “结算” 图片和链接;
$urlcheckoutlogo: “结算”的功能链接;
$breadcrumbs: 页顶的”Top > Catalog > whatever…”路径显示文字和链接;
$myaccount: 文字格式的“我的帐号”和链接. 如果已经登陆,将会变成”Logoff”;
$urlmyaccount: “我的帐号”的URL;
$logoff: “Logoff”的文字和链接;
$urllogoff: “Logoff”的URL;
$myaccountlogoff: 如果已经登陆,显示“我的帐号 | Logoff”,如果未登陆,则显示“我的帐号”;
$cartcontents: “购物车内容”文字显示;
$urlcartcontents: “购物车内容”的URL;
$checkout: 文字格式的“结算”;
$urlcheckout: “结算”的URL;
$categorybox: 显示类别的方格;
$manufacturerbox: 显示厂商的方格;
$whatsnewbox: 显示新品上架的方格;
$searchbox: 显示搜索工具的方格;
$informationbox: 显示信息的方格;
$cartbox: 显示购物车的方格;
$maninfobox: 显示厂商信息的方格 (如果为空就不显示在页面上);
$orderhistorybox: 定单历史的方格 (如果为空就不显示在页面上,例如用户未登陆);
$bestsellersbox: 显示畅销商品的方格;
$specialfriendbox: 其他专门的方格或“推荐给朋友”方格 (根据页面视图而定);
$reviewsbox: 显示评论的方格;
$languagebox: 显示语言选择的方格;
$currenciesbox: 显示流通货币选择的方格;
$content: 页面的主内容 (在页面中间);
$date: 当前时间;
$numrequests: 显示从建站起的浏览次数;
$counter: 页面浏览计数器;
$footer: footer.php的页脚输出;
$banner: footer.php的banner广告条;
$sid: Session ID的string 以”SessionIdVarName=WhateverTheSessionIdIs”格式显示;
$urlcat_Category_Name: 商品目录的URL链接,商品目录名中的空格必须以下划线替代。例如,目录“Video Cards”的链接您所使用模板变量是 $urlcat_Video_cards,由于变量名不分大小写,您可以随便使用大写或小写字母;
$urlcat_x_y_z:使用cPath string把URL和目录链接起来;
$cat_Category_Name: 与$urlcat_Category_Name一样;
$cat_x_y_z: 与$urlcat_x_y_z一样;
$catmenu: 一个下拉型的目录菜单 (使用sts_user_code.php进行定义)。
支持产品页产品信息模板的标签:
$startform: 目录中的第一个项目;
$endform: 目录中的最后一个项目;
$productname: 商品名字;
$productmodel: 商品型号或空格;
$productdesc: 商品描述;
$imagesmall: 商品的缩图,大小由后台管理定制;
$imagelarge: 商品的大图(图片真实尺寸);
$optionheader: “可用到的选项”的文字,如果没有设置则留空;
$optionames: 选项列表,名字,以换行符分隔,如果没有设置则留空;
$optionchoices: 选项列表下拉菜单,以换行符分隔,如果没有设置则留空;
$moreinfolabel: TEXT_MORE_INFORMATION的值,链接到一个详细介绍页面;
$moreinfourl: 更多信息的URL;
$productdatelabel: 包含上架日期和可用日期等信息的指定语言;
$productdate: 上架日期或可用日期;
$reviews: 对商品的评论数目;
$reviewsbutton: 发表评论的按钮;
$reviewsurl: 发表评论的URL;
hoho,看来是做的有经验咯,改天我也搞个来研究下
老大,oscommerce的评论功能如何关闭阿?或者在首页右边和商品购买那里不要显示也行。我对代码是一点都不懂,请对待我像对待白吃一样, 如有任何帮助,非常感谢。 qq 770799066 email: lscmallcenter@gmail.com