Как определить все блоки и дочерние блоки, прикрепленные к дескриптору?


Есть ли способ определить, какие блоки прикреплены к дескриптору и/или какие дочерние блоки есть у блока?

Author: ruuter, 2013-04-18

3 answers

Чтобы получить все дескрипторы , см. mage_core_model_layout_update::Получить дескрипторы()

Например, внутри контроллера вы можете использовать его для отладки, например:

Zend_Debug::dump($this->getLayout()->getUpdate()->getHandles());

Примечание: используйте его после вызова loadLayout или loadLayoutUpdates

Чтобы все дети блока видели mage_core_block_abstract::getChild()без параметров Примечание: getChild() возвращает все дочерние блоки в качестве объекта, поэтому используется что-то вроде

Zend_Debug::dump(array_keys($block->getChild())) 

И вы получаете массив с дочерним блоком псевдонимы

И если вы хотите узнать больше о блоке, используйте

Zend_Debug::dump($block->getChild($aliasName))
 8
Author: PandaWebStudio, 2013-07-02 17:19:09

Попробуйте следующее бесплатное расширение, которое очень удобно при отладке: http://www.magentocommerce.com/magento-connect/magento-debug-8676.html

 2
Author: MagePsycho, 2018-04-02 10:53:48

Я думаю, что мог бы найти ответ, и он довольно прост. Просто выполните поиск по имени дескриптора или блока из всех файлов в папке макета:)

 0
Author: ruuter, 2013-04-18 07:31:47