Необходимо извлечь параметры из шорткодов виджетов, используемых в Magento

В проекте я купил расширение, которое использует виджеты и их короткие коды.
Я должен извлечь параметры из короткого кода виджета, чтобы я мог использовать их в своем модуле для отображения некоторых идентификаторов блоков.
Как извлечь параметры из строки короткого кода виджета в массив в следующем?

{{block type="cms/block" block_id="footer_links" template="ABC/roam/dp.phtml"}}

0

Решение

Это заняло у меня некоторое время для поиска того, как в области содержимого CMS работают короткие коды виджета.
Вот как я расшифровал шорткод. Я сделал помощник для этого.

public function widgetToArray($widget)
{
$tokenizer = new Varien_Filter_Template_Tokenizer_Parameter();
$cons = str_replace(array("{{","}}"),array("",""),$widget);
$tokenizer->setString($cons);
$params = $tokenizer->tokenize();
foreach ($params as $key => $value) {
if (substr($value, 0, 1) === '$') {
$params[$key] = $this->_getVariable(substr($value, 1), null);
}
}
return $params;
}

Надеюсь, что когда-нибудь это может кому-нибудь помочь.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]