'amadeo_widget_image', 'description' => esc_html__('Add image with link', 'amadeo-free'), ); $control_ops = array('width' => 400, 'height' => 350); parent::__construct('amadeo_widget_image', esc_html__('Image with link', 'amadeo-free'), $widget_ops, $control_ops); add_action('admin_enqueue_scripts', array($this, 'amadeoAddAdminScripts')); add_action('wp_ajax_amadeoImageWidgetAJAX', array($this, 'amadeoImageWidgetAJAX')); add_action('wp_ajax_nopriv_amadeoImageWidgetAJAX', array($this, 'amadeoImageWidgetAJAX')); } function amadeoAddAdminScripts(){ if(get_current_screen()->id == 'widgets' || get_current_screen()->id == 'customize'){ wp_enqueue_script('jquery'); wp_enqueue_media(); wp_register_style('amadeo_wi_admin_css', $this->amadeoPluginDirUrl() . '/css/amadeo-widget-image.css'); wp_enqueue_style('amadeo_wi_admin_css'); wp_enqueue_script('amadeo_wi_admin_js', $this->amadeoPluginDirUrl() . '/js/amadeo-widget-image.js'); wp_localize_script('amadeo_wi_admin_js', 'amadeo_wi_l10n', array( 'add_images' => esc_html__('Add image(s)', 'amadeo-free'), 'ajax_url' => admin_url('admin-ajax.php') )); } } public function form($instance){ $instance['instanceName'] = str_replace("[instance]", '', $this->get_field_name('instance')); $instance['instanceId'] = str_replace("-instance", '', $this->get_field_id('instance')); $title = isset($instance['title']) ? sanitize_text_field($instance['title']) : ''; $ids = isset($instance['ids']) ? sanitize_text_field($instance['ids']) : ''; $i = 0; $idsArray = ($ids) ? json_decode($ids) : array(); ?>

<?php echo ${'image_'. $id}['alt']; ?>
id_base); echo $args['before_widget']; if(!empty($title)){ echo $args['before_title'] . $title . $args['after_title']; } $ids= isset($instance['ids']) ? sanitize_text_field($instance['ids']) : ''; $idsArray = ($ids) ? json_decode($ids) : array(); foreach($idsArray as $id){ ${'image_'. $id} = isset($instance['image_'. $id]) ? $instance['image_'. $id] : array(); ?>
<?php echo esc_attr(${'image_'. $id}['alt']); ?>
$value){ $instance['image_'. $id][$key] = $value; } } } return $instance; } function amadeoImageWidgetAJAX(){ if(defined('DOING_AJAX') && DOING_AJAX){ foreach($_REQUEST['instanceData'] as $key => $value){ ${'instance_'. $key} = $value; } foreach($_REQUEST['imageData'] as $image){ ?>
image_<?php echo esc_attr($image['id']); ?>[alt]