2
我想定製產品頁面上的評論摘要塊,但我似乎無法找到Review模塊的Helper塊(這是名爲「Helper」,它不是助手的塊)的註冊位置在現有佈局XML(連接到真正的類名)「Review」模塊的「Helper」塊在哪裏註冊?
我挖了一個小到Magento的核心代碼,看看像一個怎麼行:
$this->getLayout->createBlock('modulename/blockname');
計算爲這樣的: 「Namespace_Modulename_Block_Blockname」
不知何故,內存中的XML配置包含評審組和幫手,所看到的文件app/code/core/Mage/Core/Model/Config.php
上線1173:
1164 $classArr = explode('/', trim($classId));
1165 $group = $classArr[0];
1166 $class = !empty($classArr[1]) ? $classArr[1] : null;
1167
1168 if (isset($this->_classNameCache[$groupRootNode][$group][$class])) {
1169 return $this->_classNameCache[$groupRootNode][$group][$class];
1170 }
1171
1172 //$config = $this->getNode($groupRootNode.'/'.$group);
1173 $config = $this->_xml->global->{$groupType.'s'}->{$group};
1174
1175 if (isset($config->rewrite->$class)) {
1176 $className = (string)$config->rewrite->$class;
1177 } else {
1178 if (!empty($config)) {
1179 $className = $config->getClassName();
我用法師::日誌的那後面線1173可以得到所需要的信息了$config
對象的代碼進行覈對。
如果有人可以給我提示,這將不勝感激。
謝謝,爲了您的快速回答,我很抱歉,我沒有回到你的更早。我能理解任何重寫只能在這個層面完成嗎?對我來說,這意味着如果我想在Review模塊中創建任何塊的子類,我將被強制子類化所有塊。 – pancake
我剛剛有一點啓示,請查看我編輯的問題。 – pancake
但是這可能是最好的地方:我嘗試在我的自定義模塊的config.xml中重寫「review_helper」,因爲我被整個「helper」做爲一個名爲helper的塊,而不是幫助器本身。它應該是「幫手」,現在它起作用了! – pancake