[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fSJrTZbh26n50PZ4mhughHsYlBOExNjy55muIfQeyJK4":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30,"vulnerabilities":31,"developer":32,"crawl_stats":29,"alternatives":39,"analysis":121,"fingerprints":198},"display-good-reads-books","Good Reads Books","1.2","David Sword","https:\u002F\u002Fprofiles.wordpress.org\u002Fdavidsword\u002F","\u003Ch4>Showcase reading and read Goodreads shelves on your website.\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Fully Responsive\u003C\u002Fli>\n\u003Cli>Select how many books to show in a row\n\u003Cul>\n\u003Cli>Will display all currently reading\u003C\u002Fli>\n\u003Cli>Rest of space filled with recently read\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Updates shelves daily\u003C\u002Fli>\n\u003Cli>Colour, or, Black & White covers (for the true Kindle experience)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Usage\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>After setting up, use \u003Ccode>[goodreads]\u003C\u002Fcode> shortcode to display\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Please Note\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>🍺 This is a new plugin, please \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fdisplay-good-reads-books\" rel=\"ugc\">open a support request\u003C\u002Fa> before summiting a negative review, \u003Cem>I’m happy to help,\u003C\u002Fem> please provide as much information as possible (books that are causing an issue, theme currently used, your GoodReads profile URL, your GoodReads API key, WordPress and PHP version).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Road Map\u003C\u002Fh3>\n\u003Ch4>The current todo list:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Make the \u003Cstrong>Select Media Item\u003C\u002Fstrong> input with upload instead of text input for cover exemptions\u003C\u002Fli>\n\u003Cli>Better default CSS for headings\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Please add any additional requests into \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fdisplay-good-reads-books\" rel=\"ugc\">the Support tab\u003C\u002Fa>.\u003C\u002Fp>\n","Showcase currently reading and recently read Goodreads books on your website.",100,5474,80,4,"2017-12-07T00:27:00.000Z","4.9.29","4.0","",[20,21,22,23,24],"good-reads","goodread","goodreads","goodreads-com","show-books","https:\u002F\u002Fdavidsword.ca\u002Fwordpress-plugins\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdisplay-good-reads-books.1.2.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":33,"display_name":7,"profile_url":8,"plugin_count":34,"total_installs":35,"avg_security_score":27,"avg_patch_time_days":36,"trust_score":37,"computed_at":38},"davidsword",3,210,30,84,"2026-04-05T09:25:11.467Z",[40,64,86,101],{"slug":41,"name":42,"version":43,"author":44,"author_profile":45,"description":46,"short_description":47,"active_installs":48,"downloaded":49,"rating":11,"num_ratings":50,"last_updated":51,"tested_up_to":52,"requires_at_least":53,"requires_php":54,"tags":55,"homepage":60,"download_link":61,"security_score":62,"vuln_count":34,"unpatched_count":28,"last_vuln_date":63,"fetched_at":30},"novelist","Novelist","1.3.0","Ashley","https:\u002F\u002Fprofiles.wordpress.org\u002Fnosegraze\u002F","\u003Cp>Novelist helps authors easily organize and display their portfolio of books.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>All books are stored in their own “Books” area.\u003C\u002Fli>\n\u003Cli>Easy form for filling out book information.\u003C\u002Fli>\n\u003Cli>All book information is automatically formatted for you.\u003C\u002Fli>\n\u003Cli>Customizable templates.\u003C\u002Fli>\n\u003Cli>Easily create an archive of all your books.\u003C\u002Fli>\n\u003Cli>Developer-friendly.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Available Book Info Fields:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Title\u003C\u002Fli>\n\u003Cli>Book Cover\u003C\u002Fli>\n\u003Cli>Series (name and number)\u003C\u002Fli>\n\u003Cli>Contributors\u003C\u002Fli>\n\u003Cli>Publisher\u003C\u002Fli>\n\u003Cli>Release Date\u003C\u002Fli>\n\u003Cli>Genres\u003C\u002Fli>\n\u003Cli>Pages\u003C\u002Fli>\n\u003Cli>Synopsis\u003C\u002Fli>\n\u003Cli>Goodreads Link\u003C\u002Fli>\n\u003Cli>Purchase Links (configure your own list of retail sites)\u003C\u002Fli>\n\u003Cli>ISBN13\u003C\u002Fli>\n\u003Cli>ASIN\u003C\u002Fli>\n\u003Cli>Excerpt\u003C\u002Fli>\n\u003Cli>Extra Text\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Documentation\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Extensive documentation is available at \u003Ca href=\"https:\u002F\u002Fnovelistplugin.com\u002Fdocs\u002F\" rel=\"nofollow ugc\">novelistplugin.com\u002Fdocs\u003C\u002Fa>\u003C\u002Fp>\n","Easily organize and display your portfolio of books.",1000,30645,9,"2025-08-02T14:58:00.000Z","6.8.5","5.0","7.4",[56,57,22,58,59],"authors","books","publishing","writing","https:\u002F\u002Fnovelistplugin.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fnovelist.zip",98,"2025-03-27 00:00:00",{"slug":65,"name":66,"version":67,"author":68,"author_profile":69,"description":70,"short_description":71,"active_installs":72,"downloaded":73,"rating":74,"num_ratings":14,"last_updated":75,"tested_up_to":76,"requires_at_least":77,"requires_php":78,"tags":79,"homepage":84,"download_link":85,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"goodreviews","GoodReviews","2.2.5","jhanbackjr","https:\u002F\u002Fprofiles.wordpress.org\u002Fjhanbackjr\u002F","\u003Cp>The GoodReviews plugin displays information about a specific title from Goodreads, including reader reviews. This plugin was developed mainly for authors or booksellers who want to showcase Goodreads information about specific titles on their WordPress sites. You must obtain a Goodreads API developer key in order to use this plugin. You can obain an API key by following the instructions at goodreads.com\u002Fapi. This plugin was developed by a third party who is not affiliated with Goodreads.\u003C\u002Fp>\n\u003Cp>Features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Uses a shortcode to display Goodreads reviews and book information for a specific ISBN or Goodreads.com ID in any page or post.\u003C\u002Fli>\n\u003Cli>Returns book information in divs and reviews in an iframe that can be styled manually from the shortcode, via custom CSS, or via a built-in responsive style sheet.\u003C\u002Fli>\n\u003Cli>Includes three separate widgets that can be used in place of the shortcode.\u003C\u002Fli>\n\u003Cli>Supports WordPress localization (i18n)\u003C\u002Fli>\n\u003Cli>Uses WordPress 3.8 and later Dashicons to display average ratings.\u003C\u002Fli>\n\u003C\u002Ful>\n","Display Goodreads.com reviews for ISBNs or IDs you specify on any page or post.",300,16868,86,"2020-09-30T18:21:00.000Z","5.5.18","3.8","5.6",[22,80,81,82,83],"isbn","readers","reviews","stars","https:\u002F\u002Fwzymedia.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgoodreviews.2.2.5.zip",{"slug":87,"name":88,"version":89,"author":90,"author_profile":91,"description":92,"short_description":93,"active_installs":11,"downloaded":94,"rating":13,"num_ratings":95,"last_updated":96,"tested_up_to":97,"requires_at_least":18,"requires_php":18,"tags":98,"homepage":18,"download_link":100,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"share-goodreads-update","Share Goodreads Update","1.1","Stephan Elst","https:\u002F\u002Fprofiles.wordpress.org\u002Festephan\u002F","\u003Cp>This plugin allows you to share your the books you are currently reading as a widget on your WordPress page, without the use of an API.\u003C\u002Fp>\n\u003Cp>The plugin will display the following data, title, author, cover image and progress. The widget can link to the books and authors page on goodreads. It can display the content in two layouts, compact and long.\u003C\u002Fp>\n\u003Cp>Please note that your profile has to be set to public.\u003C\u002Fp>\n","Widget to give an overview of your currently reading books on goodreads, whitout the use of API.",2403,1,"2024-01-21T07:53:00.000Z","6.4.8",[99,22,80,81],"data","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fshare-goodreads-update.1.1.zip",{"slug":102,"name":103,"version":104,"author":105,"author_profile":106,"description":107,"short_description":108,"active_installs":109,"downloaded":110,"rating":28,"num_ratings":28,"last_updated":111,"tested_up_to":112,"requires_at_least":113,"requires_php":18,"tags":114,"homepage":119,"download_link":120,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"booktuner","bookTuner","1.1.2","silversteelwolf","https:\u002F\u002Fprofiles.wordpress.org\u002Fsilversteelwolf\u002F","\u003Cp>bookTuner pulls book information from one of your shelves on Goodreads.com. Title, author, jacket art, and a review snippet can all be displayed on your site with the plugin’s configurable settings and simple tags. The plugin is an adaptation of fmTuner by Collin Allen.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Displays books from currently-reading, to-read, read, or a custom shelf\u003C\u002Fli>\n\u003Cli>Limit how many books are shown\u003C\u002Fli>\n\u003Cli>Configure how often the book list is updated\u003C\u002Fli>\n\u003Cli>Customize book appearence with HTML and tags\u003C\u002Fli>\n\u003Cli>Set length of review preview\u003C\u002Fli>\n\u003Cli>Sort list by a number of criteria including author, title, rating, and date read\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Requirements\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>A Goodreads.com account with books added to a shelf\u003C\u002Fli>\n\u003Cli>WordPress 2.7 or newer\u003C\u002Fli>\n\u003Cli>PHP 5 or newer\u003C\u002Fli>\n\u003C\u002Ful>\n","bookTuner displays books from Goodreads.com in a customizable format.",20,5144,"2011-02-06T01:24:00.000Z","3.0.5","2.7",[115,116,117,22,118],"artwork","book","cover","reading","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fbooktuner\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbooktuner.1.1.2.zip",{"attackSurface":122,"codeSignals":167,"taintFlows":190,"riskAssessment":191,"analyzedAt":197},{"hooks":123,"ajaxHandlers":158,"restRoutes":159,"shortcodes":160,"cronEvents":164,"entryPointCount":95,"unprotectedCount":28},[124,130,134,138,142,146,150,154],{"type":125,"name":126,"callback":127,"file":128,"line":129},"action","init","goodrds","good-reads-books.php",15,{"type":125,"name":131,"callback":132,"file":128,"line":133},"admin_menu","goodrds_admin_menu",35,{"type":125,"name":135,"callback":136,"file":128,"line":137},"admin_init","goodrds_settings",36,{"type":125,"name":139,"callback":140,"file":128,"line":141},"admin_enqueue_scripts","goodrds_admin_scripts",39,{"type":125,"name":143,"callback":144,"file":128,"line":145},"wp_enqueue_scripts","goodrds_scripts",42,{"type":125,"name":147,"callback":148,"file":128,"line":149},"wp","goodrds_schedule_cron",45,{"type":125,"name":151,"callback":152,"file":128,"line":153},"goodrds_cronjob","goodrds_get",46,{"type":125,"name":155,"callback":156,"file":128,"line":157},"wp_footer","goodrds_show_footer_css",359,[],[],[161],{"tag":22,"callback":162,"file":128,"line":163},"goodrds_show",57,[165],{"hook":151,"callback":151,"file":128,"line":166},532,{"dangerousFunctions":168,"sqlUsage":169,"outputEscaping":171,"fileOperations":28,"externalRequests":95,"nonceChecks":95,"capabilityChecks":95,"bundledLibraries":189},[],{"prepared":28,"raw":28,"locations":170},[],{"escaped":28,"rawEcho":172,"locations":173},7,[174,177,179,181,183,185,187],{"file":128,"line":175,"context":176},129,"raw output",{"file":128,"line":178,"context":176},143,{"file":128,"line":180,"context":176},197,{"file":128,"line":182,"context":176},224,{"file":128,"line":184,"context":176},241,{"file":128,"line":186,"context":176},244,{"file":128,"line":188,"context":176},453,[],[],{"summary":192,"deductions":193},"The \"display-good-reads-books\" v1.2 plugin exhibits a mixed security posture. On the positive side, it demonstrates good practices by utilizing prepared statements for all SQL queries, includes nonce and capability checks, and has no recorded historical vulnerabilities. The attack surface appears minimal with no unprotected entry points identified in the static analysis, and importantly, there are no identified critical or high-severity taint flows. This suggests a generally cautious approach to handling sensitive data within the plugin's operations.\n\nHowever, a significant concern arises from the complete lack of output escaping. With 7 total outputs identified and 0% properly escaped, this presents a clear and present risk of Cross-Site Scripting (XSS) vulnerabilities. Attackers could potentially inject malicious scripts through user-supplied data that is then displayed on the frontend. While the plugin avoids dangerous functions and file operations, and has a limited attack surface, the unescaped output is a critical flaw that undermines the otherwise positive security indicators.\n\nGiven the absence of historical vulnerabilities, it's possible this is an oversight in development or that the plugin's functionality does not expose data in a way that has historically been exploited. Nevertheless, the static analysis clearly points to a critical weakness in output sanitization. The plugin's strengths lie in its database interaction security and access control mechanisms, but the critical failure in output escaping is a major security concern that needs immediate attention to prevent potential XSS attacks.",[194],{"reason":195,"points":196},"Output not properly escaped",12,"2026-03-16T20:35:30.971Z",{"wat":199,"direct":212},{"assetPaths":200,"generatorPatterns":205,"scriptPaths":206,"versionParams":207},[201,202,203,204],"\u002Fwp-content\u002Fplugins\u002Fdisplay-good-reads-books\u002Fgoodrds.css","\u002Fwp-content\u002Fplugins\u002Fdisplay-good-reads-books\u002Fgoodrds.js","\u002Fwp-content\u002Fplugins\u002Fdisplay-good-reads-books\u002Fgoodrds-admin.css","\u002Fwp-content\u002Fplugins\u002Fdisplay-good-reads-books\u002Fgoodrds-admin.js",[],[],[208,209,210,211],"goodrds_css","goodrds_js","goodrds_admin_css","goodrds_admin_js",{"cssClasses":213,"htmlComments":217,"htmlAttributes":222,"restEndpoints":231,"jsGlobals":232,"shortcodeOutput":234},[214,215,216],"wrap","settings-error","code",[218,219,220,221],"HUSTON ..we have lift off..","Plugin initialization","Add Resources to front end","HTML Settings Page",[223,224,225,226,227,228,229,230],"id=\"goodrds\"","placeholder=\"###################\"","placeholder=\"########-user-name\"","name='goodrds_options[apikey]'","name='goodrds_options[user]'","name='goodrds_options[public]'","name='goodrds_options[show]'","name='goodrds_options[bw]'",[],[233],"jQuery",[235],"[goodreads]"]