Magento 用户姓名中文化
因magento用的是西方的姓名规则,即前名firstname,后姓lastname,与我们国内姓名规则相反;这里通过修改后姓lastname为非必填,并隐藏,将前名firstname作为姓名整体使用,用这个方法来解决magento的中文姓名颠倒问题。
因magento用的是西方的姓名规则,即前名firstname,后姓lastname,与我们国内姓名规则相反;这里通过修改后姓lastname为非必填,并隐藏,将前名firstname作为姓名整体使用,用这个方法来解决magento的中文姓名颠倒问题。
在magento中,我们需要给用户中心的订单栏目中每个订单后面添加一个取消订单的按钮(如果这个订单可以取消),那么下面我们来新建一个模块,来开发这个取消订单的功能。
这篇博客为大家列出magento社区版所有的事件以及所属模块和参数列表。注意,某些事件的派发调用是根据事件的动态名称来的。所以以下事件可能不是最全面的。下面是magento社区版的所有事件列表。
我们讲过Magento有两种模型,简单模型和EAV(Entity Attribute Value)模型。上一章我们讲过所有的Magento模型都是继承自Mage_Core_Model_Abstract / Varien_Object。简单模型和EAV模型的区别在于资源模型(Model Resource)。虽然所有的资源模型都最终继承“Mage_Core_Model_Resrouce_Abstract”,但是简单模型是直接继承 “Mage_Core_Model_Mysql4_Abstract”,而EAV模型是直接继承 “Mage_Eav_Model_Entity_Abstract”。
对于任何一个更新频繁的项目来说,保持开发环境和生产环境的数据库同步是件很头疼的事情。Magento提供了一套系统,用版本化的资源迁移脚本来解决这个问题。
对于任何一个MVC架构,模型(Model)层的实现都是占据了很大一部分。对于Magento来说,模型占据了一个更加重要的位置,因为它常常包含了一部分商业逻辑代码(可以说它对,也可以说它错)。这些代码在其他的MVC框架中往往出现在控制器或者帮助函数中。
我们接着研究Magento。根据我们第二章讲的Magento MVC的架构,我们接下来应该讲模型(Model),但是我们跳过模型先来看布局和块。和一些流行的PHP MVC架构不同的是,Magento的执行控制器不直接将数据传给试图,相反的视图将直接引用模型,从模型取数据。这样的设计就导致了视图被拆分成两部 分,块(Block)和模板(Template)。块是PHP对象,而模板是原始PHP文件,混合了XHTML和PHP代码(也就是把PHP作为模板语言 来使用了)。每一个块都和一个唯一的模板文件绑定。在模板文件phtml中,“$this”就是指该模板文件对应的快对象。
Model-View-Controller (MVC) ,模型-视图-控制器,现在有很多系统是基于MVC架构的,不同的系统MVC的实现也略有不同,但都体现了MVC的精髓,分离数据,业务逻辑和显示逻辑。
Magento的配置系统就像是Magento的心脏,支撑着Magento的运行。这套配置系统掌管着几乎所有“module/model/class/template/etc”。它把整个Magento系统抽象出来,用一个配置文件来描述。这里的“配置文件”并不是一个物理上存在的文 件,而是Magento根据当前的系统状态动态生成的一段XML。大多数的PHP开发者并不习惯于这样抽象层,因为它增加的编程的复杂性。但是这样的抽象 提供了无与伦比的灵活性,允许你覆盖几乎任何系统的默认行为。