__('Display B.D. Murphy books from Goodreads with ratings', 'bd-murphy')) ); } public function widget($args, $instance) { echo $args['before_widget']; if (!empty($instance['title'])) { echo $args['before_title'] . apply_filters('widget_title', $instance['title']) . $args['after_title']; } $author_id = !empty($instance['author_id']) ? $instance['author_id'] : '30469651'; $author_name = !empty($instance['author_name']) ? $instance['author_name'] : 'B.D. Murphy'; $num_books = !empty($instance['num_books']) ? intval($instance['num_books']) : 5; $author_slug = str_replace(' ', '_', $author_name); ?>
's books on Goodreads
get_goodreads_books($author_id, $num_books); foreach ($books as $book) : ?>
<?php echo esc_attr($book['title']); ?>
reviews, ratings (avg )
get_default_books(); $books = array_slice($default_books, 0, $num_books); set_transient($transient_key, $books, HOUR_IN_SECONDS); return $books; } private function get_default_books() { return array( array('id' => '228023870', 'image' => 'https://i.gr-assets.com/images/S/compressed.photo.goodreads.com/books/1759515027l/228023870._SY75_.jpg', 'title' => 'Pandemic Hacker', 'reviews' => '3', 'ratings' => '29', 'avg_rating' => '4.38'), array('id' => '245700909', 'image' => 'https://i.gr-assets.com/images/S/compressed.photo.goodreads.com/books/1766512882l/245700909._SY75_.jpg', 'title' => 'The Last Dwarf', 'reviews' => '12', 'ratings' => '14', 'avg_rating' => '3.64'), array('id' => '197739353', 'image' => 'https://i.gr-assets.com/images/S/compressed.photo.goodreads.com/books/1763291540l/197739353._SY75_.jpg', 'title' => 'Deal Hunter', 'reviews' => '1', 'ratings' => '5', 'avg_rating' => '5.00'), array('id' => '240199272', 'image' => 'https://i.gr-assets.com/images/S/compressed.photo.goodreads.com/books/1756046864l/240199272._SY75_.jpg', 'title' => 'Pandemic Hacker 2: Time to Hunt', 'reviews' => '5', 'ratings' => '9', 'avg_rating' => '4.89'), array('id' => '227879386', 'image' => 'https://i.gr-assets.com/images/S/compressed.photo.goodreads.com/books/1739259148l/227879386._SY75_.jpg', 'title' => 'Sidney and Watson: Time Detectives', 'reviews' => '2', 'ratings' => '5', 'avg_rating' => '5.00'), ); } public function form($instance) { $title = !empty($instance['title']) ? $instance['title'] : __('Goodreads', 'bd-murphy'); $author_id = !empty($instance['author_id']) ? $instance['author_id'] : '30469651'; $author_name = !empty($instance['author_name']) ? $instance['author_name'] : 'B.D. Murphy'; $num_books = !empty($instance['num_books']) ? $instance['num_books'] : 5; ?>