esc_html__( 'Amazing linker widget for displaying amazon product', 'amazing-linker' ), ) // Args ); require_once AMAZING_LINKER_PLUGIN_DIR . 'admin/includes/class-amazing-linker-api.php'; $this->api = new Amazing_Linker_Api(); $this->api->set_credentials(); require_once AMAZING_LINKER_PLUGIN_DIR . 'includes/class-amazing-linker-helper.php'; $this->helper = new Amazing_Linker_Helper(); require_once AMAZING_LINKER_PLUGIN_DIR . 'includes/class-amazing-linker-database-query.php'; $this->database_query = new Amazing_Linker_Database_Query(); require_once AMAZING_LINKER_PLUGIN_DIR . 'public/includes/class-amazing-linker-widget-template.php'; $this->widget_template = new Amazing_Linker_Widget_Template(); } /** * 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 ) { $args['before_widget'] = '
'; $args['after_widget'] = '
'; echo $args['before_widget']; // Whatever you want to display before widget (
, etc) if ( ! empty( $instance['title'] ) ) { echo $args['before_title'] . apply_filters( 'widget_title', sanitize_text_field($instance['title']) ) . $args['after_title']; } // Widget Content Output $items = array_map('trim', explode(",",sanitize_text_field($instance['asin']))); if ( $instance['layout'] == 'horizontal' ) { $this->widget_template->amazing_linker_product_horizontal_widget($items); } elseif ($instance['layout'] == 'vertical') { $this->widget_template->amazing_linker_product_vertical_widget($items); } else { echo ''; } echo $args['after_widget']; // Whatever you want to display after widget (
, etc) } /** * Back-end widget form. * * @see WP_Widget::form() * * @param array $instance Previously saved values from database. */ public function form( $instance ) { $title = ! empty( $instance['title'] ) ? sanitize_text_field($instance['title']) : esc_html__( 'Editor\'s Top Pick', 'amazing-linker' ); $asin = ! empty( $instance['asin'] ) ? sanitize_text_field($instance['asin']) : esc_html__( '', 'amazing-linker' ); $layout = ! empty( $instance['layout'] ) ? sanitize_text_field($instance['layout']) : esc_html__( 'default', 'amazing-linker' ); ?> amazing-linker-logo.png

To show more than one product, simply enter multiple ASIN/ISBN/SKU/UPC/EAN and separate them with comma: e.g. B07H9XKDPM,B0748FG2Z6

helper->session_management($items);*/ $items_confirm = []; foreach($items as $item) { if(!$this->database_query->item_exists_database($item,"single")) { $items_confirm[] = $item; } } $items = $items_confirm; $item_count = count($items); if(isset($items) && count($items)>0) { $items = $this->api->item_lookup($items); } if($item_count == 1 ){ $item = []; array_push($item,$items); $items = $item; } if(isset($items) && count($items)>0) { $this->database_query->insert_item_database($items); } } return $instance; } } }