'widget_banner', 'description' => esc_html__( 'Add linked image with text', 'solarify' ), ); parent::__construct( false, esc_html__( 'Theme - Ad Banner', 'solarify' ), $widget_ops ); //Create our options by using Unyson option types $this->options = array( 'title' => array( 'type' => 'text', 'label' => esc_html__( 'Widget Title', 'solarify' ), ), 'image' => array( 'type' => 'upload', 'value' => '', 'label' => esc_html__( 'Banner Image', 'solarify' ), 'images_only' => true, ), 'url' => array( 'type' => 'text', 'value' => '', 'label' => esc_html__( 'Banner URL', 'solarify' ), ), ); $this->prefix = 'widget_banner'; } function widget( $args, $instance ) { extract( wp_parse_args( $args ) ); $params = array(); foreach ( $instance as $key => $value ) { $params[ $key ] = $value; } $instance = $params; $filepath = SOLARIFY_THEME_PATH . '/inc/widgets/banner/views/widget.php'; if ( file_exists( $filepath ) ) { include( $filepath ); } else { esc_html_e( 'View not found', 'solarify' ); } } function update( $new_instance, $old_instance ) { return fw_get_options_values_from_input( $this->options, FW_Request::POST( fw_html_attr_name_to_array_multi_key( $this->get_field_name( $this->prefix ) ), array() ) ); } function form( $values ) { $prefix = $this->get_field_id( $this->prefix ); // Get unique prefix, preventing duplicated key $id = 'fw-widget-options-' . $prefix; // Print our options echo '
'; return $values; } } endif;