[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fp-8zz9EkLBUliq6OARrmpWa6gBpihRZ-nx5cb-gDCaI":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":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":23,"download_link":24,"security_score":25,"vuln_count":13,"unpatched_count":13,"last_vuln_date":26,"fetched_at":27,"vulnerabilities":28,"developer":29,"crawl_stats":26,"alternatives":35,"analysis":142,"fingerprints":331},"classroom-library","Classroom Library","0.1.4","mdburnette","https:\u002F\u002Fprofiles.wordpress.org\u002Fmdburnette\u002F","\u003Cp>Classroom library plugin to catalog books and create a check in\u002Fout system for students.\u003C\u002Fp>\n\u003Cp>Quick entry of publications: Using the built-in barcode lookup, you can use a scanner or enter a barcode to pull book details from OpenLibrary.org automatically – no API keys needed!\u003C\u002Fp>\n\u003Cp>Visual directory: Use a shortcode to place your library listing on any page you’d like!\u003C\u002Fp>\n","Classroom library plugin to catalog books and create a check in\u002Fout system for students.",20,2840,0,"2026-01-05T19:27:00.000Z","6.9.4","5.0","7.0",[19,20,21,22],"books","classroom","education","library","https:\u002F\u002Fmburnette.com\u002Fclassroom-library\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fclassroom-library.0.1.4.zip",100,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":30,"total_installs":31,"avg_security_score":25,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},6,2120,30,94,"2026-04-04T11:41:56.318Z",[36,62,83,106,124],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":44,"downloaded":45,"rating":46,"num_ratings":47,"last_updated":48,"tested_up_to":49,"requires_at_least":50,"requires_php":51,"tags":52,"homepage":56,"download_link":57,"security_score":58,"vuln_count":59,"unpatched_count":60,"last_vuln_date":61,"fetched_at":27},"library-bookshelves","Library Bookshelves","5.11","photonicgnostic","https:\u002F\u002Fprofiles.wordpress.org\u002Fphotonicgnostic\u002F","\u003Cp>The Library Bookshelves plugin allows you to curate virtual bookshelves just like you would a shelf around a theme in your library. Bookshelves are displayed as customizable Slick carousels, using cover art from and links to your library catalog. The plugin creates a Bookshelves post type, shortcode, and custom taxonomy.\u003C\u002Fp>\n\u003Cp>This plugin currently supports these catalog system OPACs:\u003Cbr \u002F>\n– Alexandria\u003Cbr \u002F>\n– Aspen\u003Cbr \u002F>\n– Atriuum\u003Cbr \u002F>\n– BiblioCommons\u003Cbr \u002F>\n– Bibliotheca cloudLibrary\u003Cbr \u002F>\n– Calibre and COPS\u003Cbr \u002F>\n– Civica Spydus\u003Cbr \u002F>\n– DB\u002FTextworks\u003Cbr \u002F>\n– EBSCOHost Discovery Service\u003Cbr \u002F>\n– Evergreen\u003Cbr \u002F>\n– Ex Libris Primo\u003Cbr \u002F>\n– Hoopla\u003Cbr \u002F>\n– III Encore, WebPAC PRO, Polaris, Vega\u003Cbr \u002F>\n– Insignia\u003Cbr \u002F>\n– Koha\u003Cbr \u002F>\n– Marmot Pika\u003Cbr \u002F>\n– OPAC SBN\u003Cbr \u002F>\n– OpenLibrary.org\u003Cbr \u002F>\n– Overdrive\u003Cbr \u002F>\n– SirsiDynix Enterprise and Horizon\u003Cbr \u002F>\n– Surpass Cloud\u003Cbr \u002F>\n– TLC\u003Cbr \u002F>\n– WorldCat\u003C\u002Fp>\n\u003Cp>It supports retrieval of images from these third-party CDNs:\u003Cbr \u002F>\n– \u003Ca href=\"https:\u002F\u002Fimages-na.ssl-images-amazon.com\" rel=\"nofollow ugc\">Amazon\u003C\u002Fa>\u003Cbr \u002F>\n– \u003Ca href=\"https:\u002F\u002Fsecure.chilifresh.com\" rel=\"nofollow ugc\">ChiliFresh\u003C\u002Fa>\u003Cbr \u002F>\n– \u003Ca href=\"https:\u002F\u002Fcontentcafe2.btol.com\" rel=\"nofollow ugc\">Baker & Taylor\u003C\u002Fa>\u003Cbr \u002F>\n– \u003Ca href=\"https:\u002F\u002Frps2images.ebscohost.com\" rel=\"nofollow ugc\">EBSCO\u003C\u002Fa>\u003Cbr \u002F>\n– \u003Ca href=\"http:\u002F\u002Fcovers.openlibrary.org\" rel=\"nofollow ugc\">OpenLibrary.org\u003C\u002Fa>\u003Cbr \u002F>\n– \u003Ca href=\"http:\u002F\u002Fsyndetics.com\" rel=\"nofollow ugc\">Syndetics\u003C\u002Fa>\u003Cbr \u002F>\n– \u003Ca href=\"http:\u002F\u002Fls2content.tlcdelivers.com\" rel=\"nofollow ugc\">TLC\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Bookshelves can be populated using:\u003Cbr \u002F>\n– Aspen API\u003Cbr \u002F>\n– BiblioCommons RSS feeds\u003Cbr \u002F>\n– Calibre OPDS (and HTML) PHP Server API\u003Cbr \u002F>\n– Evergreen SuperCat feeds\u003Cbr \u002F>\n– JSON data from any web address\u003Cbr \u002F>\n– Koha Reports Web Service\u003Cbr \u002F>\n– Koha RSS feeds\u003Cbr \u002F>\n– New York Times Books API\u003Cbr \u002F>\n– OpenLibrary API\u003Cbr \u002F>\n– Pika API\u003Cbr \u002F>\n– Sierra API\u003Cbr \u002F>\n– SirsiDynix RSS feeds\u003Cbr \u002F>\n– SirsiDynix Symphony Web Service\u003Cbr \u002F>\n– TLC LS2 PAC API\u003C\u002Fp>\n\u003Cp>You can set the plugin to use catalogs or image servers not specifially listed in the plugin settings. Select ‘Other’ catalog system or image server on the Catalog Settings tab, paste a URL from your catalog or server, and replace the item identifier with {ID}. If you think your catalog should be listed as a choice in the settings let us know on the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Flibrary-bookshelves\u002F\" rel=\"ugc\">support forum\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>You may need to whitelist your web server IP in your ILS in order for this plugin to access APIs. When using an API you can set a Bookshelf to update items on a regular schedule using the WordPress cron system.\u003C\u002Fp>\n\u003Cp>Originally developed by and for staff at the \u003Ca href=\"https:\u002F\u002Fguilderlandlibrary.org\" rel=\"nofollow ugc\">Guilderland Public Library\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Thanks to Gregory Testa of Chesapeake Public Library and Josh Stompro of Lake Agassiz Regional Library for feature suggestions and code contributions. Thanks to Emric Taylor for the admin menu icon.\u003C\u002Fp>\n\u003Ch4>Configuration\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Go to \u003Cem>Bookshelves>Settings\u003C\u002Fem> to configure the plugin.\u003C\u002Fli>\n\u003Cli>On the Catalog tab enter the domain name of your catalog (default is OpenLibrary.org).\u003C\u002Fli>\n\u003Cli>Select your catalog system and image server.\n\u003Cul>\n\u003Cli>If you have Polaris 6.3 or higher you may need to choose the Polaris 6.3+ catalog option if your item links fail.\u003C\u002Fli>\n\u003Cli>ChiliFresh users may need to add their website domain to “Covered hosts” in the ChiliFresh Admin Panel for images to display.\u003C\u002Fli>\n\u003Cli>TLC users will need to enter a Customer ID which can be found in your catalog’s item cover art URLs.\u003C\u002Fli>\n\u003Cli>If your catalog is not on the list you can select the Other option and enter an item or image URL, replacing the item ID with {ID}.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Enter your Overdrive or cloudLibrary catalog URL if you wish to have Bookshelves link to that catalog. You can then set individual Bookshelves to link to your ebook catalog instead of your main catalog.\u003C\u002Fli>\n\u003Cli>On the Slider Settings tab you can customize Bookshelf behavior. Defaults have been set to get you started.\u003C\u002Fli>\n\u003Cli>On the CSS Settings tab you can customize some Bookshelf element styles.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Getting Started\u003C\u002Fh4>\n\u003Cp>Create a new Bookshelf using ISBNs or UPCs from items in your catalog. You can input items manually, from an exported list, or from a web service API. Paste the Bookshelf shortcode into a post, page, or widget area. You can add location tags to your Bookshelves to keep them organized and remember where you have them displayed on your site.\u003C\u002Fp>\n\u003Cp>You can make a Bookshelf that links to an ebook catalog while having other Bookshelves link to your main catalog. To do this, enter your ebook catalog URL(s) in addition to your main catalog URL in the plugin settings. Create a new Bookshelf and choose an option in the eBook Catalog box.\u003C\u002Fp>\n\u003Cp>Captions can be displayed below the item images or overlaid on hover. See the new options in Bookshelves > Settings > Slider Settings. There are customizable options for captions on the Customize CSS tab.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>EBSCOHost users must enter Accession Numbers, and Calibre\u002FCOPS users must enter book ID numbers instead of ISBNs or UPCs.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>REST API\u003C\u002Fh4>\n\u003Cp>You can modify Bookshelf items and alt text using the \u003Ca href=\"https:\u002F\u002Fdeveloper.wordpress.org\u002Frest-api\u002Freference\u002Fposts\" rel=\"nofollow ugc\">WP REST API\u003C\u002Fa>. The API endpoint for Bookshelf posts is https:\u002F\u002F{your.library.url}\u002Fwp-json\u002Fwp\u002Fv2\u002Fbookshelves\u002F. This plugin only supports the REST API in WordPress 5.3 and higher.\u003C\u002Fp>\n","Create bookshelves that link to your library catalog. Use shortcodes to display book covers in carousels.",500,27671,90,8,"2025-03-01T21:00:00.000Z","6.7.5","4.6","5.3",[19,53,54,22,55],"bookshelf","catalog","opac","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Flibrary-bookshelves\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flibrary-bookshelves.5.11.zip",66,4,1,"2025-09-22 00:00:00",{"slug":63,"name":64,"version":65,"author":66,"author_profile":67,"description":68,"short_description":69,"active_installs":70,"downloaded":71,"rating":72,"num_ratings":47,"last_updated":73,"tested_up_to":15,"requires_at_least":16,"requires_php":74,"tags":75,"homepage":79,"download_link":80,"security_score":81,"vuln_count":59,"unpatched_count":13,"last_vuln_date":82,"fetched_at":27},"library-management-system","Library Management System","3.4","Online Web Tutor","https:\u002F\u002Fprofiles.wordpress.org\u002Fowthub\u002F","\u003Cp>\u003Cstrong>Library Management System is a WordPress plugin\u003C\u002Fstrong> designed to streamline and enhance the management of libraries, offering an intuitive and powerful solution for organizing books, users, bookcases, transactions, etc. Whether you are running a small community library or a large institutional library, our plugin provides the tools you need to operate efficiently and effectively.\u003C\u002Fp>\n\u003Ch3>Empower Your Institution with Our LMS Plugin\u003C\u002Fh3>\n\u003Cp>✔ \u003Cstrong>Limitless Organization:\u003C\u002Fstrong> Seamlessly manage an unlimited number of categories, bookcases, sections, and books, providing unparalleled flexibility in library organization.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>User Management:\u003C\u002Fstrong> Effortlessly handle unlimited user branches and LMS users, empowering administrators to efficiently manage access and permissions across the system.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>Streamlined Transactions:\u003C\u002Fstrong> Enable users to borrow and return multiple books simultaneously, while the system meticulously tracks transactions and maintains a comprehensive history.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>Comprehensive Multilingual Support:\u003C\u002Fstrong> Cater to a global audience with multilingual support for 5 languages – English, Hindi, Turkish, Vietnamese, and Italian – ensuring inclusivity and accessibility.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>Robust Data Management:\u003C\u002Fstrong> Utilize advanced tools for data management, including a test data import tool, CSV data import, and a data backup tool for seamless export and import operations.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>Detailed Reporting:\u003C\u002Fstrong> Generate detailed reports in PDF, print, or CSV format with customizable filters, providing valuable insights into library usage and trends.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>Flexible Listing Options:\u003C\u002Fstrong> Customize book listings with filters via shortcode, enabling users to easily navigate and discover library resources based on their preferences.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>Interactive Public LMS Page:\u003C\u002Fstrong> Enhance user experience with a public LMS page featuring data filters for category and book availability, empowering users to explore the library’s offerings effortlessly.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>Enhanced Viewing Experience:\u003C\u002Fstrong> Provide users with a rich viewing experience through a dedicated single book page view, facilitating in-depth exploration of individual titles.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>Tailored Settings:\u003C\u002Fstrong> Customize settings according to your institution’s specific requirements, including options for borrow days, fines, country, currency, data backup, and shortcode configurations.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>WooCommerce Integration:\u003C\u002Fstrong> Integrate with WooCommerce to sell books directly from your library store, combining the power of e-commerce with library management.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>Multi-Librarian Support:\u003C\u002Fstrong> Allow one or more librarians to manage the library, ensuring smooth operations even with multiple staff members.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>Public Book Requests:\u003C\u002Fstrong> Enable users to request to borrow books from a public page, making it easy for them to access the library’s resources.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>Self-Checkout and Return:\u003C\u002Fstrong> Users can self-checkout and self-return books from a public page, providing a convenient and efficient experience.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>User History Shortcodes:\u003C\u002Fstrong> Use shortcodes to display users’ history of borrowed and returned books, giving users easy access to their transaction records.\u003C\u002Fp>\n\u003Cp>✔ \u003Cstrong>WordPress User Sync:\u003C\u002Fstrong> Synchronize WordPress users with the LMS, ensuring a seamless integration between your website’s user base and the library system.\u003C\u002Fp>\n\u003Ch3>Library Management System is perfect for:\u003C\u002Fh3>\n\u003Cp>✔ Small Library Community Owners\u003Cbr \u002F>\n✔ Large Institutional Library\u003Cbr \u002F>\n✔ Schools and Colleges\u003C\u002Fp>\n\u003Ch3>Free Version Features\u003C\u002Fh3>\n\u003Cp>➜ Manage Categories (Up to 30)\u003Cbr \u002F>\n➜ Manage Bookcases (Up to 30)\u003Cbr \u002F>\n➜ Manage Sections (Up to 30)\u003Cbr \u002F>\n➜ Manage Books (Up to 40)\u003Cbr \u002F>\n➜ Manage User Branches (Up to 30)\u003Cbr \u002F>\n➜ Manage LMS Users (Up to 40)\u003Cbr \u002F>\n➜ Borrow a Single Book\u003Cbr \u002F>\n➜ Return Books\u003Cbr \u002F>\n➜ Track Book Transactions and History\u003Cbr \u002F>\n➜ Manage User Late Fines\u003Cbr \u002F>\n➜ Test Data Import Tool\u003Cbr \u002F>\n➜ Generate Reports (PDF \u002F Print \u002F CSV) with Filters\u003Cbr \u002F>\n➜ Multilingual Support (English \u002F Hindi)\u003Cbr \u002F>\n➜ Book Listing with Filters (via Shortcode)\u003Cbr \u002F>\n➜ Book Listing with Pagination\u003Cbr \u002F>\n➜ Public LMS Page (No Filters)\u003Cbr \u002F>\n➜ Single Book Page View\u003C\u002Fp>\n\u003Ch3>Documentation (Free version)\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>How to Work?\u003C\u002Fstrong> \u003Ca href=\"https:\u002F\u002Fonlinewebtutorblog.com\u002Fdoc\u002Flms-free-version\u002F\" rel=\"nofollow ugc\">Click here\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Now, if you have decided to get this plugin to use for your library, please look into this list of premium features as well. These features make it more powerful to manage everything efficiently. This is the full list of features provided by LMS.\u003C\u002Fp>\n\u003Ch3>Basic Premium Features\u003C\u002Fh3>\n\u003Cp>➜ Manage Unlimited Categories\u003Cbr \u002F>\n➜ Manage Unlimited Bookcases\u003Cbr \u002F>\n➜ Manage Unlimited Sections\u003Cbr \u002F>\n➜ Manage Unlimited Books\u003Cbr \u002F>\n➜ Manage Unlimited User Branches\u003Cbr \u002F>\n➜ Manage Unlimited LMS Users\u003Cbr \u002F>\n➜ Borrow Multiple Books\u003Cbr \u002F>\n➜ Return Multiple Books\u003Cbr \u002F>\n➜ Track Book Transactions and History\u003Cbr \u002F>\n➜ Manage User Late Fines\u003Cbr \u002F>\n➜ Test Data Import Tool\u003Cbr \u002F>\n➜ Generate Reports (PDF \u002F Print \u002F CSV) with Filters\u003Cbr \u002F>\n➜ Multilingual Support (5 Languages: English, Hindi, Turkish, Vietnamese, Italian)\u003Cbr \u002F>\n➜ Data Backup Tool (Export and Import)\u003Cbr \u002F>\n➜ CSV Data Import\u003Cbr \u002F>\n➜ Book Listing with Filters (via Shortcode)\u003Cbr \u002F>\n➜ Book Listing with Pagination\u003Cbr \u002F>\n➜ Public LMS Page with Data Filters (Category, Book Availability)\u003Cbr \u002F>\n➜ Single Book Page View\u003Cbr \u002F>\n➜ Customizable Settings (Borrow Days, Fines, Country, Currency, Data Backup, Shortcode)\u003C\u002Fp>\n\u003Cp>Unlock all the \u003Cstrong>Basic Premium Features\u003C\u002Fstrong> in just @ \u003Cem>$49\u003C\u002Fem>.\u003Cbr \u002F>\nFeel free to contact us via \u003Cstrong>Email ID: onlinewebtutorhub@gmail.com\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch3>Addons of Full Premium Version\u003C\u002Fh3>\n\u003Cp>➜ Sync WordPress Users to LMS\u003Cbr \u002F>\n➜ Self Checkout \u002F Self Return by User from Frontend\u003Cbr \u002F>\n➜ Borrowed Books \u002F Returned Books list for Users\u003Cbr \u002F>\n➜ User can Request to Borrow Book\u003Cbr \u002F>\n➜ Data Clone Function for any module like Bookcases, Sections, Categories, Books, etc\u003Cbr \u002F>\n➜ Bulk Data Operation for Delete, Move to Active Status, Inactive Status for any module like Bookcases, Sections, Categories, Books, etc\u003Cbr \u002F>\n➜ More than one Library Admin can manage LMS\u003Cbr \u002F>\n➜ Website owner can market (Sell) PDF eBooks with WooCommerce store\u003C\u002Fp>\n\u003Ch3>BUY PRO VERSION\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>More details\u003C\u002Fstrong> \u003Ca href=\"https:\u002F\u002Fonlinewebtutorblog.com\u002Flibrary-management-system-wordpress-plugin\u002F\" rel=\"nofollow ugc\">Click here\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Additional Notes\u003C\u002Fh3>\n\u003Cp>We would be happy to assist you anytime.\u003Cbr \u002F>\nIf you are interested in paid service, feel free to contact me via email \u003Cstrong>onlinewebtutorhub@gmail.com\u003C\u002Fstrong> or drop me a query in our website \u003Cstrong>https:\u002F\u002Fonlinewebtutorblog.com\u002F\u003C\u002Fstrong>\u003C\u002Fp>\n","Library Management System is a WordPress plugin that helps schools and colleges manage libraries, bookcases, sections, categories, and users.",300,15552,78,"2026-01-28T02:35:00.000Z","7.4",[19,22,76,77,78],"lms","management","system","https:\u002F\u002Fonlinewebtutorblog.com\u002Flibrary-management-system-wordpress-plugin\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flibrary-management-system.3.4.zip",93,"2026-02-18 00:00:00",{"slug":84,"name":85,"version":86,"author":87,"author_profile":88,"description":89,"short_description":90,"active_installs":91,"downloaded":92,"rating":93,"num_ratings":94,"last_updated":95,"tested_up_to":96,"requires_at_least":97,"requires_php":98,"tags":99,"homepage":103,"download_link":104,"security_score":105,"vuln_count":13,"unpatched_count":13,"last_vuln_date":26,"fetched_at":27},"writeshare","WriteShare Writing Community Platform","1.1.18","AOS","https:\u002F\u002Fprofiles.wordpress.org\u002Ffandoment\u002F","\u003Cp>There is more to writing on WordPress than blogging.\u003C\u002Fp>\n\u003Cp>WriteShare plugin will give you books with chapters. Turn WordPress into a full featured writing community.\u003C\u002Fp>\n\u003Cp>With WriteShare, site admins get a writing platform. It’s easy to set up full on writing communities for education. Classes and courses using various Learning Management Systems (LMS) like LearnDash, LifterLMS, Namaste, Sensei, WP Courseware, WP LMS, LearnPress, will find the WP WriteShare plugin a must for all writing and course work submissions.\u003C\u002Fp>\n\u003Cp>Fanfiction, recipe, journalism\u002Fnews, longread… hell, any site that invites writers or members to submit text, graphics, or both will want to use WriteShare.\u003C\u002Fp>\n\u003Cp>WriteShare uses advanced taxonomy features which offer flexibility in how content is organized for both writers and readers, making your WordPress more of a writing platform than a blogging site.\u003C\u002Fp>\n\u003Cp>Writers will upload their submissions in a simple yet organized format. Writings will be easily searched by not just author and date (thatâ€™s the blogging way), but with more search options.\u003C\u002Fp>\n\u003Cp>WP WriteShare is going to be super easy to use and set up, lightweight, flexible.\u003C\u002Fp>\n\u003Cp>Videos:\u003C\u002Fp>\n\u003Cp>WriteShare Overview – Site Admin Dashboard and Front End: https:\u002F\u002Fyoutu.be\u002Fn__S16KyRac\u003C\u002Fp>\n\u003Cp>Adding Books with Chapters:  https:\u002F\u002Fyoutu.be\u002FZHn9JqThcXc\u003C\u002Fp>\n","WriteShare will turn WordPress into a full featured writing community, not just a blogging community. Site members can post books with chapters.",80,18428,96,18,"2018-12-31T17:02:00.000Z","5.0.25","4.4","",[19,100,21,101,102],"chapters","fanfiction","writing-platform","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fwriteshare\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwriteshare.zip",85,{"slug":107,"name":108,"version":109,"author":110,"author_profile":111,"description":112,"short_description":113,"active_installs":11,"downloaded":114,"rating":13,"num_ratings":13,"last_updated":115,"tested_up_to":116,"requires_at_least":117,"requires_php":98,"tags":118,"homepage":122,"download_link":123,"security_score":105,"vuln_count":13,"unpatched_count":13,"last_vuln_date":26,"fetched_at":27},"bnc-biblioshare","BNC BiblioShare","1.0.9","John Miedema","https:\u002F\u002Fprofiles.wordpress.org\u002Fjohnmiedema\u002F","\u003Cp>The BNC BiblioShare plugin is for book reviewers, book bloggers, library webmasters, anyone who wants to put book covers and data on their WordPress blog or website. Use the plugin button in the WordPress visual editor or insert a ‘shortcode’ with a book number in a WordPress post, page or widget. The plugin will display a book cover image, author, and other book data from BiblioShare (http:\u002F\u002Fbiblioshare.org). The plugin is built on the OpenBook WordPress plugin. As with OpenBook, users can control the content and styling through templates. The plugin inserts COinS to integrate with applications like Zotero. Librarians can point the plugin to their library records using an OpenURL resolver.\u003C\u002Fp>\n\u003Cp>Requirements. To use the plugin, your server must use PHP 5 or higher, and cURL must be enabled.\u003C\u002Fp>\n","Displays a book's cover image, title, author, and other book data from BiblioShare",5905,"2019-03-29T18:26:00.000Z","4.1.42","2.5.1",[119,19,120,22,121],"book","libraries","reading","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fbnc-biblioshare\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbnc-biblioshare.1.0.11.zip",{"slug":125,"name":126,"version":127,"author":128,"author_profile":129,"description":130,"short_description":131,"active_installs":132,"downloaded":133,"rating":13,"num_ratings":13,"last_updated":134,"tested_up_to":135,"requires_at_least":136,"requires_php":74,"tags":137,"homepage":140,"download_link":141,"security_score":25,"vuln_count":13,"unpatched_count":13,"last_vuln_date":26,"fetched_at":27},"bestseller-lists-from-new-york-times","Bestseller Lists from the New York Times","2.6.0","jakeparis","https:\u002F\u002Fprofiles.wordpress.org\u002Fjakeparis\u002F","\u003Cp>Use this plugin to display all the bestseller lists from New York Times on your own site. Optionally include links from your own local library catalog for each book.\u003C\u002Fp>\n\u003Cp>The plugin uses an easy-to-use user-interface which updates quickly and “in-place” when changing lists without reloading the rest of the page.\u003C\u002Fp>\n\u003Ch3>Use\u003C\u002Fh3>\n\u003Cp>Use the \u003Cem>Bestseller Lists from NYT\u003C\u002Fem> block. You can optionally specify which list is initially displayed.\u003C\u002Fp>\n\u003Cp>There’s also a shortcode available to embed the list viewer: \u003Ccode>[nyt-bestseller-listings]\u003C\u002Fcode>. You can optionally specify which list is initially displayed by using the \u003Ccode>initial-list\u003C\u002Fcode> attribute with the list slug as the attribute value. Get the list slug by first placing the shortcode in your page, then visiting the page and changing lists. The page url will change as the list changes, and the list slug can be seen by looking for \u003Cstrong>nyt-list=SLUG-HERE\u003C\u002Fstrong> in your browser’s url bar. So for example, to place the lists on a page and set the initial list to be children’s picture books, you would use: \u003Ccode>[nyt-bestseller-listings initial-list=\"picture-books\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>To hide the images, add the following bit of css to your theme stylesheet or to the \u003Cem>Additional CSS\u003C\u002Fem> section in the Customizer: \u003Ccode>.nyt-bestseller-listings-img { display: none; }\u003C\u002Fcode>.\u003C\u002Fp>\n","Integrate bestseller lists from the New York Times into your own site with a user-friendly interface.",10,2943,"2026-01-05T21:35:00.000Z","6.9.0","5.4",[138,19,120,22,139],"bestsellers","reading-lists","https:\u002F\u002Fjakeparis.com\u002Fwordpress-plugins\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbestseller-lists-from-new-york-times.2.6.0.zip",{"attackSurface":143,"codeSignals":217,"taintFlows":283,"riskAssessment":321,"analyzedAt":330},{"hooks":144,"ajaxHandlers":203,"restRoutes":210,"shortcodes":211,"cronEvents":215,"entryPointCount":216,"unprotectedCount":13},[145,151,155,160,165,169,173,178,182,186,189,192,195,199],{"type":146,"name":147,"callback":148,"file":149,"line":150},"action","admin_enqueue_scripts","mbcl_load_admin_scripts","classroom-library.php",25,{"type":146,"name":152,"callback":153,"file":149,"line":154},"wp_enqueue_scripts","mbcl_load_scripts",37,{"type":146,"name":156,"callback":157,"file":158,"line":159},"wp_head","javascript_variables","inc\\create-transaction.php",111,{"type":146,"name":161,"callback":162,"file":163,"line":164},"init","mbcl_create_publication_post_type","inc\\publication-cpt.php",47,{"type":146,"name":166,"callback":167,"file":163,"line":168},"admin_init","mbcl_add_publication_meta_boxes",65,{"type":146,"name":170,"callback":171,"file":163,"line":172},"save_post","mbcl_save_publication_meta_boxes",124,{"type":174,"name":175,"callback":176,"file":163,"line":177},"filter","single_template","load_mbcl_publication_template",176,{"type":174,"name":179,"callback":180,"file":163,"line":181},"manage_mbcl_publication_posts_columns","filter_mbcl_publications_columns",193,{"type":146,"name":183,"callback":184,"priority":132,"file":163,"line":185},"manage_mbcl_publication_posts_custom_column","mbcl_publication_column",217,{"type":146,"name":161,"callback":187,"file":188,"line":164},"mbcl_create_transaction_post_type","inc\\transaction-cpt.php",{"type":146,"name":166,"callback":190,"file":188,"line":191},"mbcl_add_transaction_meta_boxes",62,{"type":146,"name":170,"callback":193,"file":188,"line":194},"mbcl_save_transaction_meta_boxes",116,{"type":174,"name":196,"callback":197,"file":188,"line":198},"manage_mbcl_transaction_posts_columns","filter_mbcl_transactions_columns",151,{"type":146,"name":200,"callback":201,"priority":132,"file":188,"line":202},"manage_mbcl_transaction_posts_custom_column","mbcl_transaction_column",188,[204,208],{"action":205,"nopriv":206,"callback":205,"hasNonce":207,"hasCapCheck":206,"file":158,"line":30},"create_mbcl_transaction",false,true,{"action":205,"nopriv":207,"callback":205,"hasNonce":207,"hasCapCheck":206,"file":158,"line":209},7,[],[212],{"tag":53,"callback":213,"file":214,"line":30},"mbcl_publication_bookshelf","inc\\bookshelf.php",[],3,{"dangerousFunctions":218,"sqlUsage":219,"outputEscaping":221,"fileOperations":13,"externalRequests":13,"nonceChecks":60,"capabilityChecks":13,"bundledLibraries":282},[],{"prepared":13,"raw":13,"locations":220},[],{"escaped":222,"rawEcho":223,"locations":224},45,34,[225,228,230,232,234,236,237,238,239,241,242,243,244,246,248,250,252,254,256,259,260,262,263,265,266,268,269,271,273,274,275,276,278,280],{"file":214,"line":226,"context":227},46,"raw output",{"file":214,"line":229,"context":227},53,{"file":214,"line":231,"context":227},55,{"file":214,"line":233,"context":227},63,{"file":214,"line":235,"context":227},69,{"file":214,"line":235,"context":227},{"file":214,"line":235,"context":227},{"file":214,"line":235,"context":227},{"file":214,"line":240,"context":227},71,{"file":214,"line":240,"context":227},{"file":214,"line":240,"context":227},{"file":214,"line":240,"context":227},{"file":214,"line":245,"context":227},82,{"file":158,"line":247,"context":227},107,{"file":158,"line":249,"context":227},108,{"file":188,"line":251,"context":227},159,{"file":188,"line":253,"context":227},172,{"file":188,"line":255,"context":227},179,{"file":257,"line":258,"context":227},"templates\\single-publication.php",27,{"file":257,"line":258,"context":227},{"file":257,"line":261,"context":227},29,{"file":257,"line":261,"context":227},{"file":257,"line":264,"context":227},36,{"file":257,"line":264,"context":227},{"file":257,"line":267,"context":227},41,{"file":257,"line":231,"context":227},{"file":257,"line":270,"context":227},57,{"file":257,"line":272,"context":227},58,{"file":257,"line":233,"context":227},{"file":257,"line":72,"context":227},{"file":257,"line":91,"context":227},{"file":257,"line":277,"context":227},81,{"file":257,"line":279,"context":227},86,{"file":257,"line":281,"context":227},167,[],[284,302,311],{"entryPoint":285,"graph":286,"unsanitizedCount":300,"severity":301},"mbcl_publication_bookshelf (inc\\bookshelf.php:7)",{"nodes":287,"edges":298},[288,293],{"id":289,"type":290,"label":291,"file":214,"line":292},"n0","source","$_POST (x2)",17,{"id":294,"type":295,"label":296,"file":214,"line":229,"wp_function":297},"n1","sink","echo() [XSS]","echo",[299],{"from":289,"to":294,"sanitized":206},2,"medium",{"entryPoint":303,"graph":304,"unsanitizedCount":300,"severity":310},"\u003Cbookshelf> (inc\\bookshelf.php:0)",{"nodes":305,"edges":308},[306,307],{"id":289,"type":290,"label":291,"file":214,"line":292},{"id":294,"type":295,"label":296,"file":214,"line":229,"wp_function":297},[309],{"from":289,"to":294,"sanitized":206},"low",{"entryPoint":312,"graph":313,"unsanitizedCount":13,"severity":310},"\u003Csingle-publication> (templates\\single-publication.php:0)",{"nodes":314,"edges":319},[315,318],{"id":289,"type":290,"label":316,"file":257,"line":317},"$_GET['message']",15,{"id":294,"type":295,"label":296,"file":257,"line":317,"wp_function":297},[320],{"from":289,"to":294,"sanitized":207},{"summary":322,"deductions":323},"The \"classroom-library\" v0.1.4 plugin exhibits a generally good security posture concerning direct vulnerabilities.  The static analysis shows no dangerous functions, all SQL queries are prepared, and there are no recorded CVEs, indicating a responsible development approach.  The presence of nonce checks is a positive sign for securing entry points.  However, a significant concern arises from the taint analysis, which identified two flows with unsanitized paths. While these are not classified as critical or high severity, they represent potential avenues for injection if not properly handled by the application context.  Additionally, the output escaping rate is only 57%, suggesting a substantial number of outputs that are not properly sanitized, increasing the risk of Cross-Site Scripting (XSS) vulnerabilities. The absence of capability checks on AJAX handlers, coupled with the 2 unprotected AJAX entry points, is a critical oversight, leaving these functionalities exposed to unauthorized access and manipulation.  Despite the lack of historical vulnerabilities, the identified taint flows and poor output escaping, along with unprotected AJAX endpoints, warrant careful consideration.",[324,326,328],{"reason":325,"points":47},"Unsanitized paths in taint analysis flows",{"reason":327,"points":209},"Low output escaping rate (43% not escaped)",{"reason":329,"points":132},"AJAX handlers without capability checks","2026-03-16T22:56:34.705Z",{"wat":332,"direct":343},{"assetPaths":333,"generatorPatterns":337,"scriptPaths":338,"versionParams":342},[334,335,336],"\u002Fwp-content\u002Fplugins\u002Fclassroom-library\u002Fjs\u002Fbarcode-lookup.js","\u002Fwp-content\u002Fplugins\u002Fclassroom-library\u002Fcss\u002Fstyles.css","\u002Fwp-content\u002Fplugins\u002Fclassroom-library\u002Fjs\u002Fcreate-transaction.js",[],[339,340,341],"js\u002Fbarcode-lookup.js","css\u002Fstyles.css","js\u002Fcreate-transaction.js",[],{"cssClasses":344,"htmlComments":345,"htmlAttributes":356,"restEndpoints":366,"jsGlobals":367,"shortcodeOutput":370},[],[346,347,348,349,350,351,352,353,354,355],"\u003C!-- Classroom library directory with bookshelf, book search, barcode lookup, and check in\u002Fout. -->","\u003C!-- Don't access this file directly -->","\u003C!-- LOAD ADMIN SCRIPTS -->","\u003C!-- LOAD FRONTEND SCRIPTS -->","\u003C!-- CREATE BOOKS POST TYPE -->","\u003C!-- CREATE TRANSACTIONS POST TYPE -->","\u003C!-- CREATE TRANSACTION AJAX -->","\u003C!-- BOOKSHELF SHORTCODE -->","\u003C!-- CREATE TRANSACTION AJAX FUNCTION -->","\u003C!-- HELPERS -->",[357,358,359,360,361,362,363,364,365],"name=\"transaction-publication-id\"","name=\"transaction-publication-copies\"","name=\"transaction-name\"","name=\"transaction-publication-barcode\"","name=\"transaction_type\"","name=\"transaction-date\"","nonce=\"create_mbcl_transaction_nonce\"","type=\"text\"","name=\"seek\"",[],[368,369],"ajax_url","ajax_nonce",[371],"[bookshelf]"]