'mfn_woo_attributes', 'description' => __('Shop Attributes.', 'mfn-opts') ); parent::__construct('widget_mfn_woo_attributes', __('Be Shop Attributes', 'mfn-opts'), $widget_ops); $this->alt_option_name = 'widget_mfn_woo_attributes'; } /** * Outputs the HTML for this widget. */ public function widget($args, $instance) { if( mfn_opts_get('variable-swatches') == 0 || !function_exists('is_woocommerce') ){ return; } if (! isset($args['widget_id'])) { $args['widget_id'] = null; } extract($args, EXTR_SKIP); echo wp_kses_post($before_widget); if( !empty($instance['title']) ){ $title = apply_filters('widget_title', $instance['title'], $instance, $this->id_base); echo wp_kses($before_title, array('h3'=>array(),'h4'=>array())); echo wp_kses($title, mfn_allowed_html()); echo wp_kses($after_title, array('h3'=>array(),'h4'=>array())); } $taxonomies = wc_get_attribute_taxonomies(); $selects = array(); if( isset($instance['mfn_attr']) ) $selects = $instance['mfn_attr']; if( is_iterable( $taxonomies ) ): echo '
'; endif; echo wp_kses_post($after_widget); } /** * Deals with the settings when they are saved by the admin. */ public function update($new_instance, $old_instance) { $instance = $old_instance; $instance['title'] = isset($new_instance['title']) ? strip_tags($new_instance['title']) : ''; $instance['button'] = isset($new_instance['button']) ? (int) $new_instance['button'] : 0; $instance['mfn_attr'] = isset($new_instance['mfn_attr']) ? $new_instance['mfn_attr'] : ''; return $instance; } /** * Displays the form for this widget on the Widgets page of the WP Admin area. */ public function form($instance) { $title = isset($instance['title']) ? esc_attr($instance['title']) : ''; $button = isset($instance['button']) ? absint($instance['button']) : 0; $list = isset($instance['mfn_attr']) ? $instance['mfn_attr'] : []; $taxonomies = wc_get_attribute_taxonomies(); ?>'; endforeach; endif; ?>