Modules->模块
Controller->控制器
Model->模型
是这个星球上最强大的购物车网店平台。当然,你应该已经对此毫无疑问了。不过,你可能还不知道,Magento同样是一个面向对象的PHP框架。你可以配合Magento购物车程序强大的功能,开发动态WEB应用程序。
- Modules)代码组织形式
Magento的代码:
你的代码:
/
中的任何代码。在MVC系统中,index.的左右大概有以下几项:
://example.com/catalog/category/view/id/25
URL地址可以被分拆为以下几个部分。
Front Name – catalog
Controller Name – Category
文件夹,用来存放该模块下的所有控制器。上述URL地址,匹配了下面这个控制器文件。
Action Name – view
Paramater/Value – id/25
catalog。这是用来关联模块与URL地址中frontname的。Magento核心代码选择将一个模块的名字与frontname一致,但这不是强制规定的。
getPrice()会获取模型属性price,而调用$product->setPrice()会设置price属性。当然,所有的这些都假设模型类没有getPrice和setPrice方法。如果它们存在于模型类中,PHP魔术方法会被忽略。如果你有兴趣知道这是如何实现的,可以参考Varien_Object类,所有的模型类都继承自该类。
getData()方法,它会返回包含所有字段的一个数组。
符号链接的形式:
能够使用这种方式调用方法,最主要的原因是所有的set方法都会返回一个模型的实例。 你会经常在Magento的核心代码中看到此类调用方法的形式。
使用与其对应的page/html/head.phtml模板文件。
文件就是视图文件。
调用,
输出head,body以及设定单栏或多栏的布局。另外,还有一些内容Blocks负责实际输出像导航,产品分类等。
内容”Blocks在布局系统中是随意设置的。一般不会在代码中刻意添加代码,从而区分一个Block是结构还是内容,但是Blocks要么属于“结构”,要么属于“内容”。
添加一个内容Blocks到布局中,你需要告诉Magento系统
添加到内容Block 里”
代码进行控制,
前台购物车应用中)是使用基于XML文件的布局系统。
文件的布局 允许你删除正常输出的Blocks或者添加默认的skeleton区域(即Structure Blocks)。例如下面这个XML布局文件,
代码的作用是,在catalog模块的category控制器的默认动作方法中,将catalog/navigation Block插入到左边栏结构Block中,并使用catalog/navigation/left.phtml模板文件。
文件中,你会看到很多类似下面的代码,
输出套嵌Block的方式。但是,只有在XML布局文件中明确声明一个Block包含另一个子Block时,才能在模板文件中通过getChildHtml()方法调用子Block的模板文件。
文件中,
getChildHtml(‘foobar’);
用户作为钩子。对于在页面请求时(模型存储,用户登录等)调用的特定动作方法,Magento会生成一个事件信号。
特定用户登录商店的时候发一封邮件到管理员信箱里,可以通过“监听”customer_login事件做到。
功能,你可以通过自己的代码覆盖核心代码里的模型,助手,和Blocks类。
功能。产品的模型类是Mage_Catalog_Model_Product.无论何时,下面的代码被调用时,就会生成一个Mage_Catalog_Model_Product对象。
配置文件中进行配置。
原文链接:https://www.f2er.com/php/403004.html