Skip to content

Instantly share code, notes, and snippets.

@davirs
Forked from evgv/mage_get_widget.markdown
Created September 13, 2019 21:52
Show Gist options
  • Save davirs/f9d70918580a338dfcb403a76d35d985 to your computer and use it in GitHub Desktop.
Save davirs/f9d70918580a338dfcb403a76d35d985 to your computer and use it in GitHub Desktop.
Magento. Get widget.

Get widget

You can create and use any existed widget type in your Magento site.

1. In static block or cms page

  {{widget type="cms/widget_page_link" template="cms/widget/link/link_block.phtml" page_id="2"}}

2. In layout

  <block type="cms/widget_page_link" name="widget_page_link" as="widget_page_link" template="cms/widget/link/link_block.phtml">
      <action method="setPageId">
          <value>2</value>
      </action>
  </block>

3. In template (*.phtml)

  
  // 3.1. Default
  echo $this->getLayout()->createBlock('cms/widget_page_link')
                         ->setTemplate('cms/widget/link/link_block.phtml')
                         ->setPageId(2)
                         ->toHtml();
  
  
  // 3.2. Use widget template filter model (code same like in static block or cms page)
  $filter = Mage::getModel('widget/template_filter');
  
  echo $filter->filter('{{widget type="cms/widget_page_link" template="cms/widget/link/link_block.phtml" page_id="2"}}');

4. In code (*.php)

Same as in *.phml you just need to create own custom method and return html code of rendered widget.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment