text_fields = array( 'storecommerce-store-offers-title', 'storecommerce-store-offers-subtitle', 'storecommerce-store-offers-1-image', 'storecommerce-store-offers-1-title', 'storecommerce-store-offers-1-desc', 'storecommerce-store-offers-1-link', 'storecommerce-store-offers-2-image', 'storecommerce-store-offers-2-title', 'storecommerce-store-offers-2-desc', 'storecommerce-store-offers-2-link', 'storecommerce-store-offers-3-image', 'storecommerce-store-offers-3-title', 'storecommerce-store-offers-3-desc', 'storecommerce-store-offers-3-link' ); $widget_ops = array( 'classname' => 'storecommerce_store_offers_widget grid-layout', 'description' => __('Displays posts carousel from selected category.', 'storecommerce'), 'customize_selective_refresh' => true, ); parent::__construct('storecommerce_store_offers', __('AFTSC Store Offers', 'storecommerce'), $widget_ops); } /** * Front-end display of widget. * * @see WP_Widget::widget() * * @param array $args Widget arguments. * @param array $instance Saved values from database. */ public function widget($args, $instance) { $instance = parent::storecommerce_sanitize_data($instance, $instance); /** This filter is documented in wp-includes/default-widgets.php */ $title = apply_filters('widget_title', $instance['storecommerce-store-offers-title'], $instance, $this->id_base); $subtitle = isset($instance['storecommerce-store-offers-subtitle']) ? $instance['storecommerce-store-offers-subtitle'] : ''; $offers = array(); for ($i = 1; $i <= 3; $i++) { if (isset($instance['storecommerce-store-offers-'.$i.'-title']) && !empty($instance['storecommerce-store-offers-'.$i.'-title']) || isset($instance['storecommerce-store-offers-'.$i.'-desc']) && !empty($instance['storecommerce-store-offers-'.$i.'-desc']) || isset($instance['storecommerce-store-offers-'.$i.'-image']) && !empty($instance['storecommerce-store-offers-'.$i.'-image'])) { $offers['offers_'.$i.''][] = isset($instance['storecommerce-store-offers-'.$i.'-image']) ? $instance['storecommerce-store-offers-'.$i.'-image'] : ''; $offers['offers_'.$i.''][] = isset($instance['storecommerce-store-offers-'.$i.'-title']) ? $instance['storecommerce-store-offers-'.$i.'-title'] : ''; $offers['offers_'.$i.''][] = isset($instance['storecommerce-store-offers-'.$i.'-desc']) ? $instance['storecommerce-store-offers-'.$i.'-desc'] : ''; $offers['offers_'.$i.''][] = isset($instance['storecommerce-store-offers-'.$i.'-link']) ? $instance['storecommerce-store-offers-'.$i.'-link'] : ''; } } // open the widget container echo $args['before_widget']; ?>

form_instance = $instance; // generate the text input for the title of the widget. Note that the first parameter matches text_fields array entry echo parent::storecommerce_generate_text_input('storecommerce-store-offers-title', 'Title', 'Store Offers'); echo parent::storecommerce_generate_text_input('storecommerce-store-offers-subtitle', 'Subtitle', 'Store Offers Subtitle'); echo parent::storecommerce_generate_section_title('storecommerce-store-offers-1', 'Store Offers 1'); echo parent::storecommerce_generate_text_input('storecommerce-store-offers-1-title', 'Title', 'Sale off 25%'); echo parent::storecommerce_generate_image_upload('storecommerce-store-offers-1-image', 'Background Image', 'Background Image'); echo parent::storecommerce_generate_text_input('storecommerce-store-offers-1-desc', 'Descriptions', 'Lorem ipsum dolor sit amet,sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat.'); echo parent::storecommerce_generate_text_input('storecommerce-store-offers-1-link', 'Offer Link', ''); echo parent::storecommerce_generate_section_title('storecommerce-store-offers-2', 'Store Offers 2'); echo parent::storecommerce_generate_text_input('storecommerce-store-offers-2-title', 'Title', 'Sale off 35%'); echo parent::storecommerce_generate_image_upload('storecommerce-store-offers-2-image', 'Background Image', 'Background Image'); echo parent::storecommerce_generate_text_input('storecommerce-store-offers-2-desc', 'Descriptions', 'Lorem ipsum dolor sit amet,sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat.'); echo parent::storecommerce_generate_text_input('storecommerce-store-offers-2-link', 'Offer Link', ''); echo parent::storecommerce_generate_section_title('storecommerce-store-offers-3', 'Store Offers 3'); echo parent::storecommerce_generate_text_input('storecommerce-store-offers-3-title', 'Title', 'Sale off 55%'); echo parent::storecommerce_generate_image_upload('storecommerce-store-offers-3-image', 'Background Image', 'Background Image'); echo parent::storecommerce_generate_text_input('storecommerce-store-offers-3-desc', 'Descriptions', 'Lorem ipsum dolor sit amet,sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat.'); echo parent::storecommerce_generate_text_input('storecommerce-store-offers-3-link', 'Offer Link', ''); } } endif;