本文整理汇总了PHP中Mage_Core_Model_Layout::setXml方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Core_Model_Layout::setXml方法的具体用法?PHP Mage_Core_Model_Layout::setXml怎么用?PHP Mage_Core_Model_Layout::setXml使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mage_Core_Model_Layout
的用法示例。
在下文中一共展示了Mage_Core_Model_Layout::setXml方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _prepareLayout
/**
* @param Mage_Core_Model_Layout $layout
* @param array $dynamicBlocks
* @return Mage_Core_Model_Layout
*/
protected function _prepareLayout(Mage_Core_Model_Layout $layout, array $dynamicBlocks)
{
$xml = simplexml_load_string($layout->getXmlString(), Lesti_Fpc_Helper_Data::LAYOUT_ELEMENT_CLASS);
$cleanXml = simplexml_load_string('<layout/>', Lesti_Fpc_Helper_Data::LAYOUT_ELEMENT_CLASS);
$types = array('block', 'reference', 'action');
foreach ($dynamicBlocks as $blockName) {
foreach ($types as $type) {
$xPath = $xml->xpath("//" . $type . "[@name='" . $blockName . "']");
foreach ($xPath as $child) {
$cleanXml->appendChild($child);
}
}
}
$layout->setXml($cleanXml);
$layout->generateBlocks();
return Mage::helper('fpc/block_messages')->initLayoutMessages($layout);
}