如何正确扩展Siteorigin布局滑块小部件?

时间:2020-08-14 14:29:39

标签: php wordpress plugins

我有以下代码将其他选项添加到Siteorigin布局滑块控件

add_filter('siteorigin_widgets_form_options_sow-layout-slider', 'my_extend_layout_slider_form', 10, 2);
function my_extend_layout_slider_form( $form_options ){
    $new_option = [
        'selectStyles' => [
            'type'    => 'radio',
            'label'   => __('Select Arrow Styles', 'cam-tilegallery-widget'),
            'default' => 'default',
            'options' => [
                'default' => 'Default',
                'grey' => 'Grey',
                'gold' => 'Gold',
            ],
        ],
    ];

    $form_options['design']['fields'] = array_merge($form_options['design']['fields'], $new_option);

    return $form_options;
}

这正常工作。之后,我有:

add_filter( 'siteorigin_widgets_less_file_sow-layout-slider', 'my_layout_slider_less_file', 10, 2 );
function my_layout_slider_less_file( $filename, $instance ){
    if( isset($instance['design']['selectStyles']) && $instance['design']['selectStyles'] == 'gold' ) {
        wp_enqueue_style( 'layout-slider-style-gold', get_template_directory_uri() . '/styles/layout-slider-gold.css', '', time() );
    } else if(  $instance['design']['selectStyles'] == 'grey' ) {
        wp_enqueue_style( 'layout-slider-style-grey', get_template_directory_uri() . '/styles/layout-slider-grey.css', '', time() );
    }

    return $filename;
}

这里的问题是,在一个页面中有多个小部件,这不起作用。关于如何解决此问题或如何做得更好的任何建议?

0 个答案:

没有答案