Pregunta

¿Puedo crear una instancia de widget y asignarla a una página específica para aparecer a través del script de instalación? Me gustaría tener alguna funcionalidad similar al contenido de la muestra, pero con widgets. Para ser más específica, mi pregunta tiene como objetivo crear instancias de widgets y colocarlos en ciertas páginas programáticamente a través de Install Script.

¿Fue útil?

Solución

No es bonito, pero por supuesto, puede crear una instancia de widget mediante programación, por ejemplo, en un script de configuración:

$widgetParameters = array(
    'param1' => 'This is some value from the widget form,
    'param2' => 'Some/other/value',
    'param2_2' => 'Rly?',
    'template' => 'this/is/the/template.phtml'
);

$instance = Mage::getModel('widget/widget_instance')->setData(array(
    'type' => 'your_module/your_widget',
    'package_theme' => 'default/theme', // has to match the concrete theme containing the template
    'title' => 'This is the Widget title',
    'store_ids' => '0', // or comma separated list of ids
    'widget_parameters' => serialize($widgetParameters),
    'page_groups' => array(array(
        'page_group' => 'all_pages',
        'all_pages' => array(
            'page_id' => null,
            'group' => 'all_pages',
            'layout_handle' => 'default',
            'block' => 'left',
            'for' => 'all',
            'template' => $widgetParameters['template],
        )
    ))
))->save();

Este ejemplo establece la instancia de widget para mostrar en cada página de la columna izquierda.
Si desea especificar diferentes páginas o bloques de destino, debe actualizar los valores en consecuencia. Sugiero mirar lo que está establecido Mage_Widget_Adminhtml_Widget_InstanceController::saveAction() y ajuste el código anterior en consecuencia.

Otros consejos

Puede crear un módulo personalizado en lugar de un script. Puede referir este enlace oficial de Magento para crear un widget magento

http://www.magentocommerce.com/knowledge-base/entry/tutorial-creating-a-magento-widget-part-1

http://www.magentocommerce.com/knowledge-base/entry/tutorial-creating-a-magento-widget-part-2

Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange
scroll top