2
在Ruby中,我們可以有幾個.rhtml文件裏,我們可以將這些文件呈現到html.erb文件在Magento中渲染「部分視圖」?
這將幫助我們通過停止創建跨多個頁面的UI元素,而渲染UI元素,凡有必要。 我正在尋找類似的概念在PHP。
謝謝
在Ruby中,我們可以有幾個.rhtml文件裏,我們可以將這些文件呈現到html.erb文件在Magento中渲染「部分視圖」?
這將幫助我們通過停止創建跨多個頁面的UI元素,而渲染UI元素,凡有必要。 我正在尋找類似的概念在PHP。
謝謝
在Magento中,方法有所不同。基本上,Magento使用與視圖中的模板相關聯的塊,因此每個頁面都由一個塊PHP類(它們全部從Mage_Core_Block_Abstract繼承)和大多數(但有例外)關聯模板(phtml文件)組成。
要渲染部分,塊可以在其中具有給定子名稱的子塊。從父塊中,您可以使用getChildHtml($ childName)呈現子塊。 要在子塊中設置變量,可以使用神奇的getter和setter,因爲所有塊PHP類最終都是從Varien_Object擴展而來的。
另一個說明:Magento使用Zend框架,它提供了與Ruby中完全相同的部分方法,例如,請參閱:http://stackoverflow.com/questions/10487228/view-helper-partial-view-or-something-然而,如上所述,Magento採取了更加詳細的視圖方法,所以我認爲在框架的上下文中,不應該使用簡單的Zend分部視圖助手。 – mpaepper