Magento,有史以来功能最齐全的个人/企业用电子商务平台,于2007年开始由制作出osCommerce这套元老级电商平台的公司Varien Inc.开发,并于2011年被ebay收购。
Magento适用于各种中大型电子商务解决方案,拥有完整的购物车、订单管理、会员管理、产品管理、报表等系统,但是相对的,它也是一个复杂的系统,各种功能间的连动性也相当大,Magento采用Zend Frame Work这套MVC架构来作为核心。
(图片摘自Wiki: https://zh.wikipedia.org/wiki/MVC )
什么是MVC架构?
根据上图,假设你就是那位USER,CONTROLLER是一位管家,MODEL是工具,VIEW是你最后看到的结果。 某天你看到院子里杂草丛生(VIEW),你就对管家(CONTROLLER)下达“整理庭园”这个指令,而管家接收到命令后,去拿了一台除草机(MODEL)来除草,之后你就看到一个整齐的庭园了(UPDATED VIEW)。
另 外,Magento系统算是相当经典的一个EAV资料模型范例,它实现了能够随时增加商品属性的可行性,让商家能够在网站上贩卖不同类型的商品,却又可以 简单的分别为他们设定属性,例如衣服一定会分尺寸、颜色,包包分颜色、品牌,平板电脑会有作业系统、处理器、记忆体等规格。
采 用EAV资料模型的另一个好处是,让Magento可以开设不同国家的店面,每个店面可以有不同的语言、不同的价格、贩售不同的商品、结帐跟货运方式也可 依国家做不同设定,最重要的是只要单一个后台就能进行管理,相当方便,搭配客制化扩充套件,还能做到多仓库设置,非常适合跨国公司使用。
就 因为Magento是由各种大大小小的MVC架构模组以及EAV资料模型所组成,每个功能都要靠数个模组来运行,并依照资料模型来读取/写入/处理相关数 据,因此在开发扩充套件时,若是对于整体架构跟资料结构不了解,或没有经过考虑就硬加上编码,可能会导致系统混乱,让日后的维护或扩充变得非常困难,也因 为这样,Magento的客制化开发其实非常不容易,需要考虑的地方及花费的时间非常多,但它仍然是非常值得投资的系统,尤其是当您希望打造一个独特风格 的网站,为您的客户带来舒适的购物体验,或是您打算经营跨境电商,需要针对不同销售国家提供不一样的服务/商品。
希望采用Magento却又不知道如何着手吗? 开发客制化Magento系统,就交给欧斯瑞!
我们熟悉Magento系统的客制化开发,也拥有Magento原厂认证的工程师,能够提供您完善的服务,并在维持Magento原有结构的前提下,达成您的需求,让您可以安心的专注在事业上的规划。 此外,欧斯瑞也有丰富的网路行销经验,能够提供完整的响应式设计,并针对各种购物流程/设计进行AB测试,让您的网站业绩最佳化,若有任何需要,欢迎您随时联络我们。
原文:http://www.astralweb.com.tw/brief-of-magento-structure/
本文:Magento教程 69:Magento结构概述
Related Posts
-
Magento教程 16:Magento价格规则的优先度做为一个刚接触Magento的菜鸟,相信在设定商品时一定会感到一头雾水,这么多的参数,光是设定价格就被搞到一个头两个大了,到底该怎么弄呢? 价格、优惠价、群组价、阶层价都设定的话,究竟是会采用哪一个呢? 不要担心! 其实Magento是个非常有智慧的系统。 Magento有一套自己判断标准,那就是采用最低的价格,例如说,售价500,优惠价399的话,Magento一定优先采用优惠价399,但是如果今天反过来呢? 让我们来看看下图的例子: 我们可以看到Magento会采用较低的价格,接着我们来考虑下一个情境,当我的VIP价格(群组价格)比特价高的时候又会如何呢? 我们来看以下范例: 可以看到Magento系统依然采用了最低价格900,反之,若是VIP价格比较低,系统也会自动采用VIP价格,是不是很方便呢?…
-
Magento教程 65:Magento网站建置一部曲—–沟通的重要性相信许多人,尤其是从事软体服务业的人,在与客户进行专案的过程中,常常会发生双方想法差异太大,或是对于某项功能上的认知天差地远,好一点的可能案件依然可以成交,但弄得灰头土脸,差一点的可能煮熟的鸭子飞了,赔了夫人又折兵。 有个笑话是这么说的,一批造桥的工程师在丈量桥墩的位置时,位置偏了1公分他们没有发觉,就开始分别从两岸开始施工,到最后两边的桥要衔接在一起的时候才发现大事不妙…..两边完全无法衔接。 套用在网站建构,若是一开始没有沟通好,即使是一点点微小的差异,做出来的功能可能都与客户期待的天差地远。 事前的充分沟通就会变得非常重要,那要如何避免这样的情况发生: 1.充分沟通: 系统的规划与需求不是一两次的对谈或是书信往来就可以厘清的,尤其当我们要建置的是像Magento这样复杂又多功能的系统,我们希望在开始的时候,客户能够先提出他所有的需求,再经由与客户多次的谈话来慢慢理出轮廓。 2.增加客户的信赖度: 有时我们必须引导客户,绝大部份客户对Magento的理解不会比我们多,试着帮客户整理出可能他原本不知道的必要功能,这样子也会增加客户的信心。 3.以书面严格制定制作的范围:…
Magento教程 59:如何在Magento使用Session?一般而言,在网站中使用PHP函数设立Session,在Magento可以使用已经定义的函数来使用Session,我们将用几个简单的范例进行说明: 设置Session //输入你所要记录的Session名称与值 //此范例Session的名称是TestString,值为欧斯瑞Astralweb Mage::getSingleton('core/session')->set TestString('欧斯瑞Astralweb'); 取得Session值 //使用get取得已设立Session的值…