'Just an Amazon Wishlist Widget' ) ); add_action('wp_enqueue_scripts', array($this, 'wp_enqueue_scripts')); } //Sidebar public function widget( $args, $instance ) { $multipage_start = 0; $multipage_count = 10; $wishlist = array(); $title = apply_filters( 'widget_body', $instance['title'] ); $tracking_id = apply_filters( 'widget_body', $instance['tracking'] ); $wishlist_id = apply_filters( 'widget_body', $instance['wishlist'] ); $locale = apply_filters( 'widget_body', $instance['locale'] ); $last_modified = (int) get_option( '_plugin_amazon_wishlist_widget_time' ); if (time() - $last_modified > 60 * 5) { //every 5min do { $json = $this->get_wishlist( $wishlist_id, $locale, $multipage_start, $multipage_count ); if (empty($json->results)) break; $wishlist = array_merge( $wishlist, $json->results ); $multipage_start += $multipage_count; } while ( $json->NumRecords > count($wishlist) ); update_option( '_plugin_amazon_wishlist_widget_data', $wishlist ); update_option( '_plugin_amazon_wishlist_widget_time', time() ); } else { $wishlist = get_option( '_plugin_amazon_wishlist_widget_data' ); } echo $args['before_widget']; if ($title) { ?>