有人可以给我一个关于Magento块,布局和模板的鹰眼视角吗?

时间:2015-08-12 08:10:26

标签: magento

有人可以给我一个关于Magento块,布局和模板以及它们如何相互关联的鹰眼视角吗?

我知道块是构成页面的基本构建块,它们是一种迷你控制器。

我也明白布局会以某种方式将这些块组合在一起。

但是模板以及它们与块和布局的关系仍然存在一些不确定性,反之亦然。

2 个答案:

答案 0 :(得分:2)

什么是街区?

基本上你需要知道4件事:

  

有两种类型的块:自动渲染它们的块   孩子和那些没有的孩子。知道你正在使用哪种类型   帮助您进行调试。

     

Magento块本质上是包含视图模板逻辑的模型。请注意 - 这不是业务逻辑,但它是逻辑   与您要呈现的信息的显示有关。这是   根据定义表示逻辑。如果你熟悉Zend   Framework的Zend_Layout可以在自定义之间进行比较   查看对象和布局助手。

     

分配给块对象的模板文件可以执行代码,就好像它是该对象的本地代码一样。也就是说,$ this直接对应于   块类。

     

布局动作是人们使用的东西。

两种类型的

  

一天结束时有两种类型的块 - 那些   自动渲染和不渲染。记笔记,因为这是   关于Magento认证考试!!

Auto-rendered blocks
  

在布局中定义时,任何类型为core / text_list的块都将   自动渲染所有孩子。虽然核心/文本会   自动渲染自己它真的只应该包含文本和   因此对于布局目的没有用(虽然有些聪明的东西   可以用它们实现。)

其他街区

  

需要手动渲染任何其他块类型。提供   阻止一个别名然后可以传递给getChildHtml,返回   然后你回应的内容。

布局和模板

  

顾名思义,布局文件在渲染首页时非常有用   Magento。布局文件是位于app>中的XML文件。设计

     
    

前端>你的界面>你的主题>布局。在这里,您可以看到任何给定模块都有许多布局文件。每个Magento     模块有自己的布局文件,就像客户模块一样     customer.xml布局文件,目录模块有catalog.xml布局文件     这些布局文件包含结构块和内容块。

  

阅读以下博客。它将清除你对磁电的概念。

http://alanstorm.com/category/magento

http://devdocs.magento.com/guides/m1x/magefordev/mage-for-dev-4.html

http://blog.philwinkle.com/the-most-misunderstood-concept-in-magento/

http://code.tutsplus.com/tutorials/custom-layouts-and-templates-with-magento--cms-21419

答案 1 :(得分:1)

块是页面的构建模块。他们可以被视为"砖"。现在每个块都在布局中。布局用于定义"形状"的页面。现在,模板用于定义特定块的行为。这意味着每个街区或砖块#34;将具有不同的特征取决于它所使用的模板。

也就是说,要构建一个magento页面,您需要先定义一个布局,以便了解该页面的形状。现在用块填充布局。现在每个块都集中在整个布局的特定部分。这意味着取决于"性质"块,每个小部分将表现不同。为了定义特定部分的独特性,块使用模板(模板实际上包含网页构建代码,即html + js + php)

我希望这会给你一个简短的想法。

尝试google这个。我相信有很多关于此的教程和博客。