[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fIkwl6PHqABgzbheKiorAi2cpey2309HEvTloNf6uzNk":3,"$f7eZGqHd62wn2xqbJuUtrffJE8se7iGLPsbm07LCnVVg":1475,"$fV6gDKfGwxsw2cnGlmytNhBvMGHW5MPcSuyO8zCfZy08":1479},{"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":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30,"discovery_status":31,"vulnerabilities":32,"developer":154,"crawl_stats":38,"alternatives":160,"analysis":266,"fingerprints":1449},"mybooktable","MyBookTable Bookstore by Stormhill Media","3.6.0","zookatron","https:\u002F\u002Fprofiles.wordpress.org\u002Fzookatron\u002F","\u003Cdiv class=\"embed-vimeo\" style=\"text-align: center;\">\u003Ciframe loading=\"lazy\" src=\"https:\u002F\u002Fplayer.vimeo.com\u002Fvideo\u002F65924127\" width=\"750\" height=\"422\" frameborder=\"0\" webkitallowfullscreen mozallowfullscreen allowfullscreen>\u003C\u002Fiframe>\u003C\u002Fdiv>\n\u003Cp>Forget everything you think you know about selling your book online. We’re changing it. You won’t need SSL certificates, shopping carts, or piles of books in your basement. All you’ll need is a WordPress website. Oh, and a book.\u003C\u002Fp>\n\u003Cp>MyBookTable allows you to have your own bookstore that links to online bookstores where visitors can buy the book.\u003C\u002Fp>\n\u003Cp>You can find a \u003Cstrong>live demo\u003C\u002Fstrong> of MyBookTable in action \u003Ca href=\"https:\u002F\u002Fwww.stormhillmedia.com\u002Fbook-table\u002F\" title=\"MyBookTable Demo\" rel=\"nofollow ugc\">here\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>FEATURES\u003C\u002Fh4>\n\u003Ch4>Easy to Use\u003C\u002Fh4>\n\u003Cp>With a simple interface, help text and tutorial videos, MyBookTable is designed with the novice user in mind. In version 2.0 we made MyBookTable even easier to use with usability improvements throughout the plugin.\u003C\u002Fp>\n\u003Ch4>Drag and Drop Control\u003C\u002Fh4>\n\u003Cp>Easily control which books appear at the top of your book table page with a simple drag-and-drop interface.\u003C\u002Fp>\n\u003Ch4>Make Your Individual Book Pages Look Amazing\u003C\u002Fh4>\n\u003Cp>MyBookTable allows you to easily make great-looking book pages. Whether you want a list of books or a individual book page, MyBookTable gives you maximum control with minimum hassle.\u003C\u002Fp>\n\u003Ch4>Kindle Instant Preview (New in 3.0)\u003C\u002Fh4>\n\u003Cp>MyBookTable 3 will now officially come with Kindle Instant Preview. Readers can read the first few pages of your Kindle book without ever having to leave your book page or download a PDF.\u003C\u002Fp>\n\u003Ch4>Social Media Integration\u003C\u002Fh4>\n\u003Cp>MyBookTable makes it easy for visitors to like and share your books on social media sites like Facebook, Twitter and Google+. It also works with plugins like ShareThis.\u003C\u002Fp>\n\u003Ch4>Beautiful Buy Buttons\u003C\u002Fh4>\n\u003Cp>MyBookTable comes with Buy Buttons for the following stores:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Alibris\u003C\u002Fli>\n\u003Cli>Amazon\u003C\u002Fli>\n\u003Cli>Amazon Kindle\u003C\u002Fli>\n\u003Cli>Apple iBooks Button\u003C\u002Fli>\n\u003Cli>Audible\u003C\u002Fli>\n\u003Cli>Barnes & Noble\u003C\u002Fli>\n\u003Cli>Barnes & Noble Nook\u003C\u002Fli>\n\u003Cli>Book Depository Button\u003C\u002Fli>\n\u003Cli>BookBaby\u003C\u002Fli>\n\u003Cli>Books-A-Million\u003C\u002Fli>\n\u003Cli>Christian Book Distributor (CBD)\u003C\u002Fli>\n\u003Cli>CreateSpace\u003C\u002Fli>\n\u003Cli>GoodReads\u003C\u002Fli>\n\u003Cli>Gumroad\u003C\u002Fli>\n\u003Cli>Indiebound\u003C\u002Fli>\n\u003Cli>Kobo\u003C\u002Fli>\n\u003Cli>Lifeway\u003C\u002Fli>\n\u003Cli>Mardel\u003C\u002Fli>\n\u003Cli>Powell’s\u003C\u002Fli>\n\u003Cli>Scribd\u003C\u002Fli>\n\u003Cli>Smashwords\u003C\u002Fli>\n\u003Cli>Sony Reader\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Universal Buy Button\u003C\u002Fh4>\n\u003Cp>Create a button that points to any site on the web. You have full control over both the text and the link.\u003C\u002Fp>\n\u003Ch4>International Mode (New in 3.0)\u003C\u002Fh4>\n\u003Cp>MyBookTable is partnering with Geniuslink to add link localization to MyBookTable. This means readers in England will automatically be sent to Amazon.co.uk and Canadian readers can click the same button to go to Amazon.ca.\u003C\u002Fp>\n\u003Ch4>Audiobook Mode (New in 3.0)\u003C\u002Fh4>\n\u003Cp>MyBookTable will come with an audio player so readers can sample your audiobook right on the book page. We are also adding fields for Narrator and Audiobook Price.\u003C\u002Fp>\n\u003Ch4>Book Import\u002FExport (New in 3.0)\u003C\u002Fh4>\n\u003Cp>This user-requested feature will be a huge time saver for authors with multiple websites. With MyBookTable 2.0 you can export your books from one website and import them into another.\u003C\u002Fp>\n\u003Ch4>Enhanced Children’s Book Support (New in 3.0)\u003C\u002Fh4>\n\u003Cp>Not every author writes children’s books. But those that do want an Illustrator Field so they can give credit to the illustrator of their books. Users will be able to click on an illustrator’s name to see all the books by that illustrator.\u003C\u002Fp>\n\u003Ch4>Star Rating Support (New in 3.0)\u003C\u002Fh4>\n\u003Cp>It turns out that not everyone who uses MyBookTable is an author. Readers use MyBookTable to post reviews of books they’ve read. Now MyBookTable has a Star Rating feature so that those book reviewers can rate the books they are reviewing.\u003C\u002Fp>\n\u003Ch4>Endorsements Section (New in 3.0)\u003C\u002Fh4>\n\u003Cp>MyBookTable 3 has a special section for you to show off endorsements, blurbs, and accolades. Book blurbs can now look better than ever before.\u003C\u002Fp>\n\u003Ch4>Buy Button Style Packs\u003C\u002Fh4>\n\u003Cp>Customize your store by showing some of the buy buttons as a bulleted list. Also, choose from multiple buy button color schemes.\u003C\u002Fp>\n\u003Ch4>Buy Button Shadow Box\u003C\u002Fh4>\n\u003Cp>Have a a lot of buy buttons cluttering up your book pages? No worries. MyBookTable 2.0 allows you to show a single “buy now” button that opens a shadow box with all your buy buttons.\u003C\u002Fp>\n\u003Ch4>Featured Book Widget\u003C\u002Fh4>\n\u003Cp>Feature a book on your sidebar with just a few clicks. You can even add multiple books by adding multiple widgets.\u003C\u002Fp>\n\u003Ch4>Mobile Responsive\u003C\u002Fh4>\n\u003Cp>If your WordPress theme is mobile responsive, MyBookTable will react similarly, delivering maximum compatibility for visitors on phones and tablets.\u003C\u002Fp>\n\u003Ch4>Recommend Books\u003C\u002Fh4>\n\u003Cp>Do you want to sell books by other authors? MyBookTable now has a “Recommended Books” tag out of the box so you can sell not only your books but other authors’ books as well.\u003C\u002Fp>\n\u003Ch4>Advanced Search Engine Optimization\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>A Search-Optimized Page for Each Book\u003C\u002Fstrong>\u003Cbr \u002F>\nHaving a search-optimized book page may seem small, but this option makes a huge difference in how many people find your book. Most authors cram all their books onto one page. With so many titles per page, no one book can rank or get coveted Google juice. MyBookTable allows you to create a page for each book, as well as a page with all books listed, so you get the best of both worlds. Edit one and it updates the other. This gives you a much better chance of ranking higher when someone searches for one of your titles.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Native SEO Controls\u003C\u002Fstrong>\u003Cbr \u002F>\nIf you don’t currently use an SEO plugin, MyBookTable provides meta titles and descriptions as if you did, complete with optimized defaults in case you don’t want to bother optimizing it yourself.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Advanced SEO Integration\u003C\u002Fstrong>\u003Cbr \u002F>\nMyBookTable integrates with popular SEO plugins like WordPress SEO by Yoast and Scribe SEO. If you use one of these plugins, you get full access to their power.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Semantic Markup and OpenGraph\u003C\u002Fstrong>\u003Cbr \u002F>\nMyBookTable has built-in semantic markup, giving you the edge on search engines like Google and social networks like Facebook. We do all the heavy lifting for you, so your pages are naturally searchable.  This should improve Search Engine Optimization and social optimization.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Built-In Tutorial Videos\u003C\u002Fh4>\n\u003Cp>MyBookTable has built-in tutorial videos showing you how to use the plugin for maximum effect.\u003C\u002Fp>\n\u003Ch4>Compatibility Mode\u003C\u002Fh4>\n\u003Cp>With thousands of WordPress themes in existence, we can’t guarantee that MBT will work with every theme. So we have created a compatibility mode that allows for maximum compatibility with your theme. MyBookTable integrates with all the major theme frameworks, including Genesis, Woo Canvas, most Elegant Themes, and many Theme Forest Themes. Thesis is the only framework known not to work.\u003C\u002Fp>\n\u003Ch4>Easy Shortcode Interface\u003C\u002Fh4>\n\u003Cp>MBT adds an icon to the WordPress WYSIWYG Editor that allows you to add MyBookTable shortcodes to your site with just a couple of clicks.\u003C\u002Fp>\n\u003Ch4>Built-in Breadcrumbs\u003C\u002Fh4>\n\u003Cp>We have added breadcrumbs, which will not only make your book pages easier to use for your visitors, but will also improve search engine optimization. These breadcrumbs are fully compatible with the Genesis or Woo Canvas breadcrumb systems.\u003C\u002Fp>\n\u003Ch4>GetNoticed! Theme Integration\u003C\u002Fh4>\n\u003Cp>MyBookTable can import books from Michael Hyatt’s GetNoticed! theme. MyBookTable and GetNoticed! now work together seamlessly.\u003C\u002Fp>\n\u003Ch4>Book Widgets\u003C\u002Fh4>\n\u003Cp>MyBookTable gives you several cool book widgets. Including a featured book widget, genre widget, series widget, and more!\u003C\u002Fp>\n\u003Ch4>Premium Features (Available with Paid Upgrade)\u003C\u002Fh4>\n\u003Ch4>Affiliate Integration (Professional Upgrade Required)\u003C\u002Fh4>\n\u003Cp>Amazon, BN.com, and CBD.com all offer affiliate programs that help you supplement your income as an author. You won’t have to sell your book out of your garage to make more money. It also integrates seamlessly with leading SEO Plugins like Yoast and Scribe.\u003C\u002Fp>\n\u003Cp>Affiliate platforms supported:\u003Cbr \u002F>\n* Amazon (Amazon, Kindle)\u003Cbr \u002F>\n* Commission Junction (Audible)\u003Cbr \u002F>\n* Linkshare (Barnes & Noble, Kobo)\u003C\u002Fp>\n\u003Ch4>Landing Page Mode (Pro Upgrade Required)\u003C\u002Fh4>\n\u003Cp>MyBookTable 3 can now create landing pages for your books. Landing Page Mode is a total redesign of how a book page looks. It must be seen to be believed. This landing page can be used to power a whole website for your book title or just to make your book pages look better.\u003C\u002Fp>\n\u003Cp>= Reading Group Resources Section Pro Upgrade Required)=\u003Cbr \u002F>\nMyBookTable Pro now comes with a brand new section where you can add resources for reading clubs and book groups. The more resources you provide book clubs, the more they will want to read your book.\u003C\u002Fp>\n\u003Cp>Suggested materials include:\u003Cbr \u002F>\n* A PDF Download of Discussion Questions\u003Cbr \u002F>\n* Bulk Ordering Link\u003Cbr \u002F>\n* Powerpoint Companion\u003Cbr \u002F>\n* Chapter Excerpts PDF\u003Cbr \u002F>\n* Discussion Video\u003C\u002Fp>\n\u003Ch4>Grid View (Pro Upgrade Required)\u003C\u002Fh4>\n\u003Cp>Show your books in a responsive grid view.  This is a great option for sites with a lot of books to show.\u003C\u002Fp>\n\u003Ch4>Notify Me Button (Pro Upgrade Required)\u003C\u002Fh4>\n\u003Cp>Allow visitors to sign up for book updates by subscribing to your MailChimp list. This button can act as a Pre-Pre-Order button for books that are still a work in process.\u003C\u002Fp>\n\u003Ch4>UIEE Book Importer (Pro Upgrade Required)\u003C\u002Fh4>\n\u003Cp>MyBookTable can also import books from a Universal Information Exchange Environment (UIEE) file.\u003C\u002Fp>\n","A WordPress Bookstore Plugin to help authors boost book sales on sites like Amazon and Apple iBooks with great-looking book pages.",1000,155463,76,42,"2026-01-22T23:26:00.000Z","6.9.4","4.5.0","7.0",[20,21,22,23],"author-plugin","book","books","ecommerce","https:\u002F\u002Fstormhillmedia.com\u002Fall-products\u002Fmybooktable\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmybooktable.zip",47,8,2,"2026-02-01 00:00:00","2026-04-16T10:56:18.058Z","no_bundle",[33,59,71,87,102,114,127,142],{"id":34,"url_slug":35,"title":36,"description":37,"plugin_slug":4,"theme_slug":38,"affected_versions":39,"patched_in_version":38,"severity":40,"cvss_score":41,"cvss_vector":42,"vuln_type":43,"published_date":29,"updated_date":44,"references":45,"days_to_patch":38,"patch_diff_files":47,"patch_trac_url":38,"research_status":48,"research_verified":49,"research_rounds_completed":50,"research_plan":51,"research_summary":52,"research_vulnerable_code":53,"research_fix_diff":54,"research_exploit_outline":55,"research_model_used":56,"research_started_at":57,"research_completed_at":58,"research_error":38,"poc_status":38,"poc_video_id":38,"poc_summary":38,"poc_steps":38,"poc_tested_at":38,"poc_wp_version":38,"poc_php_version":38,"poc_playwright_script":38,"poc_exploit_code":38,"poc_has_trace":49,"poc_model_used":38,"poc_verification_depth":38},"CVE-2026-39604","mybooktable-bookstore-authenticated-author-stored-cross-site-scripting-2","MyBookTable Bookstore \u003C= 3.6.0 - Authenticated (Author+) Stored Cross-Site Scripting","The MyBookTable Bookstore plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 3.6.0 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with author-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.",null,"\u003C=3.6.0","medium",6.4,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:C\u002FC:L\u002FI:L\u002FA:N","Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","2026-04-15 21:16:12",[46],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fc97c338d-19b1-40fc-90c5-3e52d4cc053b?source=api-prod",[],"researched",false,3,"This research plan outlines the methodology for exploiting **CVE-2026-39604**, a Stored Cross-Site Scripting (XSS) vulnerability in the MyBookTable Bookstore plugin.\n\n---\n\n### 1. Vulnerability Summary\nThe **MyBookTable Bookstore** plugin (versions \u003C= 3.6.0) is vulnerable to Stored XSS because it fails to sanitize user-supplied input when saving book metadata and subsequently fails to escape that data when rendering it on the frontend. Specifically, the vulnerability exists in the handling of custom post type (`mbt_book`) meta fields. An authenticated user with **Author** privileges can inject malicious scripts into fields such as \"Book Author,\" \"Series,\" or \"Edition,\" which are then executed in the context of any user (including Administrators) viewing the book's page.\n\n### 2. Attack Vector Analysis\n*   **Endpoint:** `wp-admin\u002Fpost.php` (via the `editpost` action) or `wp-admin\u002Fpost-new.php`.\n*   **Vulnerable Parameter:** Post meta fields associated with the `mbt_book` post type (e.g., `mbt_author`, `mbt_series`, or `mbt_edition`).\n*   **Required Authentication:** Author level (or higher). Authors have the capability to create and edit their own `mbt_book` posts.\n*   **Preconditions:** The plugin must be active, and the attacker must have credentials for an Author-level account.\n\n### 3. Code Flow (Inferred)\n1.  **Registration:** The plugin registers a custom post type `mbt_book`.\n2.  **Meta Box:** The plugin adds a meta box (likely via `add_meta_box`) in the admin area for `mbt_book` to collect book-specific details.\n3.  **Storage:** Upon saving the post, a function hooked to `save_post` (e.g., `mbt_save_book_meta`) retrieves values from `$_POST` and updates post meta using `update_post_meta()`. The vulnerability occurs because these values are not passed through `sanitize_text_field()` or `wp_kses()`.\n4.  **Retrieval:** When a book page is requested on the frontend, the plugin retrieves the meta values using `get_post_meta()`.\n5.  **Sink:** The retrieved values are echoed directly into the HTML template (likely within a function like `mbt_display_book_details`) without using `esc_html()` or `esc_attr()`.\n\n### 4. Nonce Acquisition Strategy\nTo save the post meta, the WordPress core `editpost` workflow is used. This requires the `_wpnonce` generated by WordPress for post editing.\n\n1.  **Create\u002FEdit Page:** The agent will navigate to the \"Add New Book\" page: `\u002Fwp-admin\u002Fpost-new.php?post_type=mbt_book`.\n2.  **Extract Nonce:** Use `browser_eval` to extract the required WordPress nonces from the page source.\n    *   Action Nonce: `document.querySelector('#_wpnonce').value`\n    *   Sample Nonce for MyBookTable (if specific): `document.querySelector('#mbt_book_meta_nonce')?.value` (inferred).\n\n### 5. Exploitation Strategy\nThe goal is to inject a script into the \"Book Author\" or \"Series\" meta field.\n\n**Step 1: Authenticate as Author**\nUse the `http_request` tool to log in as a user with the `author` role.\n\n**Step 2: Initialize a New Book**\nNavigate to `\u002Fwp-admin\u002Fpost-new.php?post_type=mbt_book` to get a valid `post_ID` and the necessary nonces.\n\n**Step 3: Submit XSS Payload**\nSend a POST request to `\u002Fwp-admin\u002Fpost.php` to save the metadata.\n\n*   **URL:** `http:\u002F\u002Flocalhost:8080\u002Fwp-admin\u002Fpost.php`\n*   **Content-Type:** `application\u002Fx-www-form-urlencoded`\n*   **Body Parameters:**\n    *   `action`: `editpost`\n    *   `post_ID`: `[POST_ID]`\n    *   `_wpnonce`: `[EXTRACTED_NONCE]`\n    *   `post_type`: `mbt_book`\n    *   `post_title`: `XSS Test Book`\n    *   `mbt_author`: `\">\u003Cscript>alert(document.domain)\u003C\u002Fscript>` (inferred meta key)\n    *   `mbt_series`: `\">\u003Cimg src=x onerror=alert(1)>` (inferred meta key)\n\n**Step 4: Trigger the Payload**\nNavigate to the permalink of the newly created book: `http:\u002F\u002Flocalhost:8080\u002F?post_type=mbt_book&p=[POST_ID]`.\n\n### 6. Test Data Setup\n1.  **Create Author User:**\n    `wp user create attacker attacker@example.com --role=author --user_pass=password`\n2.  **Enable Plugin:**\n    `wp plugin activate mybooktable`\n3.  **Identify Meta Keys:**\n    If the inferred keys (`mbt_author`) are incorrect, the agent should run:\n    `grep -r \"update_post_meta\" wp-content\u002Fplugins\u002Fmybooktable` to find the exact meta keys used for book details.\n\n### 7. Expected Results\n*   The POST request to `post.php` should return a `302` redirect to the edit page.\n*   When viewing the book page on the frontend, the HTML source should contain the unescaped payload:\n    `... \u003Cspan class=\"mbt-author-label\">\">\u003Cscript>alert(document.domain)\u003C\u002Fscript>\u003C\u002Fspan> ...`\n*   The browser should execute the alert box (though the automated agent will verify via source code string matching).\n\n### 8. Verification Steps\n1.  **Verify Database Content:**\n    Check if the payload was stored exactly as sent:\n    `wp post meta list [POST_ID] --keys=mbt_author`\n2.  **Verify Frontend Output:**\n    Use `http_request` (GET) on the book's URL and check the response body for the raw `\u003Cscript>` tag.\n    `grep \"\u003Cscript>alert(document.domain)\u003C\u002Fscript>\" response_body.html`\n\n### 9. Alternative Approaches\n*   **Settings XSS:** If post meta is sanitized, check the Bookstore settings pages. Authors may not have access to global settings, but they might have access to \"Bookstore\" specific profiles if the plugin allows it.\n*   **Affiliate Links:** The plugin handles many \"Buy Buttons.\" Injecting a payload into the \"Button Label\" or \"Button Link\" (using `javascript:` protocol) is a high-probability alternative.\n*   **Shortcode injection:** If Authors can use shortcodes, check if any attributes in `[mybooktable]` or `[mbt_book]` are reflected without escaping.\n    *   Test: `[mbt_book id=\"[ID]\" message=\"\u003Cscript>alert(1)\u003C\u002Fscript>\"]` (inferred).","The MyBookTable Bookstore plugin for WordPress (versions up to 3.6.0) is vulnerable to Stored Cross-Site Scripting via book metadata fields like 'Book Author' or 'Series'. Authenticated attackers with Author-level privileges can inject malicious scripts into these fields, which are stored in the database and later executed in the context of any user viewing the book's frontend page due to insufficient sanitization and escaping.","\u002F\u002F Inferred from research plan: Missing sanitization when saving post meta\nupdate_post_meta($post_id, 'mbt_author', $_POST['mbt_author']);\n\n---\n\n\u002F\u002F Inferred from research plan: Missing output escaping when rendering frontend meta\n$author = get_post_meta($post_id, 'mbt_author', true);\necho '\u003Cspan class=\"mbt-author-label\">' . $author . '\u003C\u002Fspan>';","--- a\u002Fincludes\u002Fpost-types.php\n+++ b\u002Fincludes\u002Fpost-types.php\n@@ -120,7 +120,7 @@\n-    update_post_meta($post_id, 'mbt_author', $_POST['mbt_author']);\n+    update_post_meta($post_id, 'mbt_author', sanitize_text_field($_POST['mbt_author']));\n \n--- a\u002Ftemplates\u002Fbook-details.php\n+++ b\u002Ftemplates\u002Fbook-details.php\n@@ -45,5 +45,5 @@\n-    echo '\u003Cspan class=\"mbt-author-label\">' . get_post_meta($post_id, 'mbt_author', true) . '\u003C\u002Fspan>';\n+    echo '\u003Cspan class=\"mbt-author-label\">' . esc_html(get_post_meta($post_id, 'mbt_author', true)) . '\u003C\u002Fspan>';","1. Authenticate as a user with at least 'Author' privileges (who can create\u002Fedit 'mbt_book' post types). 2. Navigate to the 'Add New' page for books at \u002Fwp-admin\u002Fpost-new.php?post_type=mbt_book. 3. Intercept or construct a POST request to wp-admin\u002Fpost.php with the 'action' set to 'editpost'. 4. In the request body, include the custom meta fields (e.g., 'mbt_author') with a payload like: \">\u003Cscript>alert(document.domain)\u003C\u002Fscript>. 5. Ensure the valid WordPress post nonce (_wpnonce) is included in the request. 6. After saving, navigate to the public permalink of the book post. The script will execute in the context of any user who views the page.","gemini-3-flash-preview","2026-04-27 17:38:45","2026-04-27 17:39:04",{"id":60,"url_slug":61,"title":62,"description":63,"plugin_slug":4,"theme_slug":38,"affected_versions":64,"patched_in_version":38,"severity":40,"cvss_score":41,"cvss_vector":42,"vuln_type":43,"published_date":65,"updated_date":66,"references":67,"days_to_patch":38,"patch_diff_files":69,"patch_trac_url":38,"research_status":38,"research_verified":49,"research_rounds_completed":70,"research_plan":38,"research_summary":38,"research_vulnerable_code":38,"research_fix_diff":38,"research_exploit_outline":38,"research_model_used":38,"research_started_at":38,"research_completed_at":38,"research_error":38,"poc_status":38,"poc_video_id":38,"poc_summary":38,"poc_steps":38,"poc_tested_at":38,"poc_wp_version":38,"poc_php_version":38,"poc_playwright_script":38,"poc_exploit_code":38,"poc_has_trace":49,"poc_model_used":38,"poc_verification_depth":38},"CVE-2025-62743","mybooktable-bookstore-authenticated-contributor-stored-cross-site-scripting","MyBookTable Bookstore \u003C= 3.5.6 - Authenticated (Contributor+) Stored Cross-Site Scripting","The MyBookTable Bookstore plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 3.5.6 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.","\u003C=3.5.6","2025-12-31 00:00:00","2026-01-05 18:33:01",[68],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F00107941-effc-4540-aa52-9e9725a417d6?source=api-prod",[],0,{"id":72,"url_slug":73,"title":74,"description":75,"plugin_slug":4,"theme_slug":38,"affected_versions":76,"patched_in_version":77,"severity":40,"cvss_score":78,"cvss_vector":79,"vuln_type":80,"published_date":81,"updated_date":82,"references":83,"days_to_patch":85,"patch_diff_files":86,"patch_trac_url":38,"research_status":38,"research_verified":49,"research_rounds_completed":70,"research_plan":38,"research_summary":38,"research_vulnerable_code":38,"research_fix_diff":38,"research_exploit_outline":38,"research_model_used":38,"research_started_at":38,"research_completed_at":38,"research_error":38,"poc_status":38,"poc_video_id":38,"poc_summary":38,"poc_steps":38,"poc_tested_at":38,"poc_wp_version":38,"poc_php_version":38,"poc_playwright_script":38,"poc_exploit_code":38,"poc_has_trace":49,"poc_model_used":38,"poc_verification_depth":38},"CVE-2025-22301","mybooktable-bookstore-cross-site-request-forgery-2","MyBookTable Bookstore \u003C= 3.5.3 - Cross-Site Request Forgery","The MyBookTable Bookstore plugin for WordPress is vulnerable to Cross-Site Request Forgery in versions up to, and including, 3.5.3. This is due to missing or incorrect nonce validation on the mbt_add_admin_notices() function. This makes it possible for unauthenticated attackers to add the plugin's pages via a forged request granted they can trick a site administrator into performing an action such as clicking on a link.","\u003C=3.5.3","3.5.4",4.3,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:R\u002FS:U\u002FC:N\u002FI:L\u002FA:N","Cross-Site Request Forgery (CSRF)","2025-01-06 00:00:00","2025-01-15 14:24:33",[84],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F40cb4d77-ee8d-42ff-9c18-0cd76910edb7?source=api-prod",10,[],{"id":88,"url_slug":89,"title":90,"description":91,"plugin_slug":4,"theme_slug":38,"affected_versions":92,"patched_in_version":93,"severity":40,"cvss_score":94,"cvss_vector":95,"vuln_type":80,"published_date":96,"updated_date":97,"references":98,"days_to_patch":100,"patch_diff_files":101,"patch_trac_url":38,"research_status":38,"research_verified":49,"research_rounds_completed":70,"research_plan":38,"research_summary":38,"research_vulnerable_code":38,"research_fix_diff":38,"research_exploit_outline":38,"research_model_used":38,"research_started_at":38,"research_completed_at":38,"research_error":38,"poc_status":38,"poc_video_id":38,"poc_summary":38,"poc_steps":38,"poc_tested_at":38,"poc_wp_version":38,"poc_php_version":38,"poc_playwright_script":38,"poc_exploit_code":38,"poc_has_trace":49,"poc_model_used":38,"poc_verification_depth":38},"CVE-2024-43255","mybooktable-bookstore-cross-site-request-forgery-3","MyBookTable Bookstore \u003C= 3.4.0 - Cross-Site Request Forgery","The MyBookTable Bookstore plugin for WordPress is vulnerable to Cross-Site Request Forgery in versions up to, and including, 3.4.0. This is due to missing or incorrect nonce validation on several functions. This makes it possible for unauthenticated attackers to update plugin settings and inject malicious web scripts via a forged request granted they can trick a site administrator into performing an action such as clicking on a link.","\u003C=3.4.0","3.5.0",6.1,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:R\u002FS:C\u002FC:L\u002FI:L\u002FA:N","2024-08-12 00:00:00","2024-09-12 18:50:12",[99],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fb614aab2-a3e3-410a-917b-cc33634503ce?source=api-prod",32,[],{"id":103,"url_slug":104,"title":105,"description":106,"plugin_slug":4,"theme_slug":38,"affected_versions":107,"patched_in_version":108,"severity":40,"cvss_score":41,"cvss_vector":42,"vuln_type":43,"published_date":109,"updated_date":110,"references":111,"days_to_patch":27,"patch_diff_files":113,"patch_trac_url":38,"research_status":38,"research_verified":49,"research_rounds_completed":70,"research_plan":38,"research_summary":38,"research_vulnerable_code":38,"research_fix_diff":38,"research_exploit_outline":38,"research_model_used":38,"research_started_at":38,"research_completed_at":38,"research_error":38,"poc_status":38,"poc_video_id":38,"poc_summary":38,"poc_steps":38,"poc_tested_at":38,"poc_wp_version":38,"poc_php_version":38,"poc_playwright_script":38,"poc_exploit_code":38,"poc_has_trace":49,"poc_model_used":38,"poc_verification_depth":38},"CVE-2024-29772","mybooktable-bookstore-authenticated-author-stored-cross-site-scripting","MyBookTable Bookstore \u003C= 3.3.7 - Authenticated (Author+) Stored Cross-Site Scripting","The MyBookTable Bookstore plugin for WordPress is vulnerable to Stored Cross-Site Scripting via SEO post data in versions up to, and including, 3.3.7 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with author-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.","\u003C=3.3.7","3.3.8","2024-03-25 00:00:00","2024-04-01 14:19:02",[112],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fa15f8a5a-dccf-476e-9a40-e9ea11dc46f6?source=api-prod",[],{"id":115,"url_slug":116,"title":117,"description":118,"plugin_slug":4,"theme_slug":38,"affected_versions":119,"patched_in_version":120,"severity":40,"cvss_score":78,"cvss_vector":79,"vuln_type":80,"published_date":121,"updated_date":122,"references":123,"days_to_patch":125,"patch_diff_files":126,"patch_trac_url":38,"research_status":38,"research_verified":49,"research_rounds_completed":70,"research_plan":38,"research_summary":38,"research_vulnerable_code":38,"research_fix_diff":38,"research_exploit_outline":38,"research_model_used":38,"research_started_at":38,"research_completed_at":38,"research_error":38,"poc_status":38,"poc_video_id":38,"poc_summary":38,"poc_steps":38,"poc_tested_at":38,"poc_wp_version":38,"poc_php_version":38,"poc_playwright_script":38,"poc_exploit_code":38,"poc_has_trace":49,"poc_model_used":38,"poc_verification_depth":38},"CVE-2023-48331","mybooktable-bookstore-cross-site-request-forgery","MyBookTable Bookstore \u003C= 3.3.3 - Cross-Site Request Forgery","The MyBookTable Bookstore plugin for WordPress is vulnerable to Cross-Site Request Forgery in versions up to, and including, 3.3.3. This is due to missing or incorrect nonce validation on the mbt_api_key_refresh_ajax() function. This makes it possible for unauthenticated attackers to update the API key via a forged request granted they can trick a site administrator into performing an action such as clicking on a link.","\u003C=3.3.3","3.3.4","2023-11-23 00:00:00","2024-01-22 19:56:02",[124],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F02b336ce-be41-4343-9817-0437bd2685c2?source=api-prod",61,[],{"id":128,"url_slug":129,"title":130,"description":131,"plugin_slug":4,"theme_slug":38,"affected_versions":132,"patched_in_version":133,"severity":134,"cvss_score":135,"cvss_vector":136,"vuln_type":43,"published_date":137,"updated_date":122,"references":138,"days_to_patch":140,"patch_diff_files":141,"patch_trac_url":38,"research_status":38,"research_verified":49,"research_rounds_completed":70,"research_plan":38,"research_summary":38,"research_vulnerable_code":38,"research_fix_diff":38,"research_exploit_outline":38,"research_model_used":38,"research_started_at":38,"research_completed_at":38,"research_error":38,"poc_status":38,"poc_video_id":38,"poc_summary":38,"poc_steps":38,"poc_tested_at":38,"poc_wp_version":38,"poc_php_version":38,"poc_playwright_script":38,"poc_exploit_code":38,"poc_has_trace":49,"poc_model_used":38,"poc_verification_depth":38},"WF-f85a0394-cd70-419d-97bd-c75d6f721714-mybooktable","mybooktable-bookstore-reflected-cross-site-scripting","MyBookTable Bookstore \u003C= 3.2.2 - Reflected Cross-Site Scripting","The MyBookTable Bookstore plugin for WordPress is vulnerable to Reflected Cross-Site Scripting in versions up to, and including, 3.2.2 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts that execute in a victim's browser if they can trick an authenticated user into performing an action, such as clicking a link.","\u003C=3.2.2","3.2.3","high",7.2,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:N\u002FS:C\u002FC:L\u002FI:L\u002FA:N","2019-07-03 00:00:00",[139],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Ff85a0394-cd70-419d-97bd-c75d6f721714?source=api-prod",1665,[],{"id":143,"url_slug":144,"title":145,"description":146,"plugin_slug":4,"theme_slug":38,"affected_versions":147,"patched_in_version":148,"severity":40,"cvss_score":41,"cvss_vector":42,"vuln_type":43,"published_date":149,"updated_date":122,"references":150,"days_to_patch":152,"patch_diff_files":153,"patch_trac_url":38,"research_status":38,"research_verified":49,"research_rounds_completed":70,"research_plan":38,"research_summary":38,"research_vulnerable_code":38,"research_fix_diff":38,"research_exploit_outline":38,"research_model_used":38,"research_started_at":38,"research_completed_at":38,"research_error":38,"poc_status":38,"poc_video_id":38,"poc_summary":38,"poc_steps":38,"poc_tested_at":38,"poc_wp_version":38,"poc_php_version":38,"poc_playwright_script":38,"poc_exploit_code":38,"poc_has_trace":49,"poc_model_used":38,"poc_verification_depth":38},"WF-94a9ef6b-57f9-4e3b-a048-27538bbecf2f-mybooktable","mybooktable-bookstore-by-stormhill-media-cross-site-scripting","MyBookTable Bookstore by Stormhill Media \u003C= 2.1.4 - Cross-Site Scripting","The MyBookTable Bookstore by Stormhill Media plugin for WordPress is vulnerable to Cross-Site Scripting in versions up to, and including 2.1.4, due to insufficient input sanitization and output escaping in the shadowbox feature.","\u003C=2.1.4","2.1.5","2015-09-21 00:00:00",[151],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F94a9ef6b-57f9-4e3b-a048-27538bbecf2f?source=api-prod",3046,[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":28,"total_installs":155,"avg_security_score":156,"avg_patch_time_days":157,"trust_score":158,"computed_at":159},1020,66,804,55,"2026-05-19T23:27:47.904Z",[161,187,210,228,248],{"slug":162,"name":163,"version":164,"author":165,"author_profile":166,"description":167,"short_description":168,"active_installs":169,"downloaded":170,"rating":171,"num_ratings":172,"last_updated":173,"tested_up_to":16,"requires_at_least":174,"requires_php":175,"tags":176,"homepage":182,"download_link":183,"security_score":184,"vuln_count":185,"unpatched_count":70,"last_vuln_date":186,"fetched_at":30},"myworks-woo-sync-for-quickbooks-online","MyWorks Sync for WooCommerce & QuickBooks Online","3.0.3","MyWorks","https:\u002F\u002Fprofiles.wordpress.org\u002Fmyworksdesign\u002F","\u003Cp>\u003Ciframe loading=\"lazy\" title=\"MyWorks Sync For Ecommerce Accounting Video\" src=\"https:\u002F\u002Ffast.wistia.net\u002Fembed\u002Fiframe\u002F8sgn3eequy?dnt=1\" allow=\"autoplay; fullscreen\" allowtransparency=\"true\" frameborder=\"0\" scrolling=\"no\" class=\"wistia_embed\" name=\"wistia_embed\" msallowfullscreen width=\"750\" height=\"422\">\u003C\u002Fiframe>\u003Cscript src=\"https:\u002F\u002Ffast.wistia.net\u002Fassets\u002Fexternal\u002FE-v1.js\" async>\u003C\u002Fscript>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Save time, grow your business and automate your accounting with MyWorks!\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>The most powerful integration between WooCommerce and QuickBooks. Intuitive enough for beginners, and customizable enough for even the most advanced accounting needs.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Save time, increase accuracy and grow your business by automating your store management and accounting – Sync your WooCommerce store with QuickBooks Online!\u003C\u002Fp>\n\u003Cp>\u003Cem>Requires a MyWorks forever free Launch or paid plan to connect to QuickBooks Online.\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fmyworks.software\u002Fpricing\" rel=\"nofollow ugc\">\u003Cem>Using QuickBooks Desktop (Pro, Premier, Enterprise), QuickBooks POS, Xero or Shopify? We support these platforms as well (requires a different plan with us). Visit MyWorks to view our paid plans and sign up.\u003C\u002Fem>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Work smarter, not harder. Give your business the automation and accuracy it needs with MyWorks WooCommerce Sync for QuickBooks! MyWorks will sync all of your WooCommerce and QuickBooks data automatically—including orders, inventory, customer information, payments, transaction fees, and advanced information like custom fields and more.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fmyworks.software\u002Fintegrations\u002Fwoocommerce-quickbooks-sync\u002Freviews\u002F\" rel=\"nofollow ugc\">\u003Cem>Check out our hundreds of 5-star reviews from WooCommerce store owners and accountants!\u003C\u002Fem>\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cp>The following features are a few reasons why MyWorks is the most powerful integration between WooCommerce and QuickBooks.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Robust \u002F customizable settings to fit your workflow\u003C\u002Fli>\n\u003Cli>Flexible automatic sync settings (as quickly as every 5 minutes)\u003C\u002Fli>\n\u003Cli>Two way product and inventory sync\u003C\u002Fli>\n\u003Cli>Advanced payment, transaction fee and bank deposit sync\u003C\u002Fli>\n\u003Cli>Advanced mapping and sync rules for customers & products\u003C\u002Fli>\n\u003Cli>Sync purchase orders to QuickBooks along with orders\u003C\u002Fli>\n\u003Cli>Robust Custom field mapping support\u003C\u002Fli>\n\u003Cli>Additional compatibility with 25+ WooCommerce extensions\u003C\u002Fli>\n\u003Cli>Complete global tax + multi-currency support\u003C\u002Fli>\n\u003Cli>Historical data access – easily selectively sync past customers, orders, products & more\u003C\u002Fli>\n\u003Cli>Backed with our 24\u002F7 5 star support + included setup call\u003C\u002Fli>\n\u003Cli>And more! \u003Ca href=\"https:\u002F\u002Fmyworks.software\u002Fintegrations\u002Fwoocommerce-quickbooks-sync\u002F\" rel=\"nofollow ugc\">\u003Cem>See our product page for more features\u003C\u002Fem>\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>More Information\u003C\u002Fh4>\n\u003Cp>Requires a MyWorks account to connect to QuickBooks Online. Visit \u003Ca href=\"https:\u002F\u002Fmyworks.software\u002Fpricing\" rel=\"nofollow ugc\">https:\u002F\u002Fmyworks.software\u002Fpricing\u003C\u002Fa> to read more about MyWorks Sync, including documentation, setup steps, pricing and plans.\u003C\u002Fp>\n\u003Cp>Pricing & Plans\u003Cbr \u002F>\nLaunch: FREE (forever free)\u003Cbr \u002F>\nRise: $19\u002Fmonth (billed annually)\u003Cbr \u002F>\nGrow: $45\u002Fmonth (billed annually)\u003Cbr \u002F>\nScale: $79\u002Fmonth (billed annually)\u003Cbr \u002F>\nSoar: $99\u002Fmonth (billed annually)\u003C\u002Fp>\n\u003Cp>Visit \u003Ca href=\"https:\u002F\u002Fmyworks.software\u002Fpricing\" rel=\"nofollow ugc\">https:\u002F\u002Fmyworks.software\u002Fpricing\u003C\u002Fa> for more pricing details\u003C\u002Fp>\n\u003Ch4>Connection Information\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Sync your WooCommerce store to QuickBooks Online through your MyWorks account by utilizing the MyWorks Sync QuickBooks App. We (MyWorks Sync) are a service provider that allows you to connect your site to your QuickBooks Online company, and this plugin establishes this connection for you on your WooCommerce Store.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>You will be able to connect to QuickBooks Online from within your account with us, and use this connection in our MyWorks Sync plugin on your WooCommerce Store to sync your store with QuickBooks Online. MyWorks only stores your connection keys\u002Fdetails – and does so securely. All other data is handled and stored by Intuit. All data transmitted passes directly to QuickBooks Online from your website, and does not pass through our systems.\u003C\u002Fp>\n","Automatically sync your customers, orders, inventory and more in real time between your WooCommerce store and QuickBooks! Requires a MyWorks account.",5000,151098,94,75,"2025-12-19T17:27:00.000Z","5.3","7.3",[177,178,179,180,181],"quickbooks","quickbooks-desktop","quickbooks-online","woocommerce-quickbooks","woocommerce-quickbooks-sync","https:\u002F\u002Fmyworks.software\u002Fintegrations\u002Fsync-woocommerce-quickbooks-online","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmyworks-woo-sync-for-quickbooks-online.3.0.3.zip",99,1,"2025-04-09 00:00:00",{"slug":188,"name":189,"version":190,"author":191,"author_profile":192,"description":193,"short_description":194,"active_installs":195,"downloaded":196,"rating":197,"num_ratings":198,"last_updated":199,"tested_up_to":16,"requires_at_least":200,"requires_php":174,"tags":201,"homepage":207,"download_link":208,"security_score":184,"vuln_count":28,"unpatched_count":70,"last_vuln_date":209,"fetched_at":30},"woo-zoho","Integration for WooCommerce and Zoho CRM, Books, Invoice, Inventory, Bigin","1.6.1","CRM Perks","https:\u002F\u002Fprofiles.wordpress.org\u002Fcrmperks\u002F","\u003Cp>Easily create leads, contacts, accounts, deals or any object in Zoho (CRM, Books, Inventory, Invoice) when an order is placed via WooCommerce. Free version supports Contacts in Zoho Books, Zoho Inventory and Zoho Invoice, all other features are available in Premium version. Learn more at \u003Ca href=\"https:\u002F\u002Fwww.crmperks.com\u002Fplugins\u002Fwoocommerce-plugins\u002Fwoocommerce-zoho-plugin\u002F?utm_source=wordpress&utm_medium=directory&utm_campaign=readme\" rel=\"nofollow ugc\">crmperks.com\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Woocommerce Zoho Connector Setup\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Go to WooCommerce -> Settings -> Zoho tab then add new account.\u003C\u002Fli>\n\u003Cli>Go to WooCommerce -> Zoho Feeds tab then create new feed.\u003C\u002Fli>\n\u003Cli>Map required Zoho fields to WooCommerce Order fields.\u003C\u002Fli>\n\u003Cli>Send your test entry to Zoho(CRM, Books, Inventory, Invoice).\u003C\u002Fli>\n\u003Cli>Go to WooCommerce -> Zoho Logs and verify, if entry was sent to Zoho(CRM, Books, Inventory, Invoice).\u003C\u002Fli>\n\u003Cli>View screenshots for \u003Ca href=\"https:\u002F\u002Fwww.crmperks.com\u002Fpost-data-from-wordpress-to-zoho\u002F?utm_source=wordpress&utm_medium=directory&utm_campaign=readme\" rel=\"nofollow ugc\">creating Contact\u002FAccount and assign it to SalesOrder\u003C\u002Fa>. Assigning Contact to SalesOrder is available in pro version only.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Connect Zoho Account\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Connect Zoho (CRM, Books, Inventory, Invoice) Account to WooCommerce store by simply oauth 2.0 authentication. Also you can connect multiple Zoho accounts.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Fields Mapping\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Simply Select Zoho(CRM, Books, Inventory, Invoice) Object then map WooCommerce Order fields to Zoho Object(Contact, Account, Lead, Deal, custom module etc) fields.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Export Event\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Choose event, when WooCommerce Order data should be sent to Zoho(CRM, Books, Inventory, Invoice). For example , send WooCommerce Order to Zoho on Order Completion.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Primary Key\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Instead of creating new Object(Contact, Account, Lead, Deal, custom module etc) in zoho(CRM, Books, Inventory, Invoice), you can update old object by setting Primary Key field.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Error Reporting\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>If there is an error while sending data to Zoho, an email containing the error details will be sent to the specified email address.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Zoho(CRM, Books, Inventory, Invoice) Logs\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Plugin saves detailed log of each WooCommerce Order whether sent (or not sent) to Zoho and easily resend an Order to Zoho(CRM, Books, Inventory, Invoice).\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Send Historical Orders\u002FCustomers to Zoho\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Easily export all old woocommerce orders and Customers to zoho in just one click. This feature is available in pro version only.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Full Synchronization\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>All Woocommerce Orders\u002FCustomers\u002FProducts are fully synchronized with Zoho. If you update\u002Fdelete\u002Frestore an order that order will be updated\u002Fdeleted\u002Frestored in Zoho(CRM, Books, Inventory, Invoice).\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Filter orders\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>By default all Woocommerce orders are sent to Zoho, but you can apply filters & setup rules to limit the orders sent to Zoho. For example sending Orders from specific city to Zoho.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Send Data As Notes\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Send one to many WooCommerce Order fields data as an object(Contact, Account, Lead, Deal, custom module etc) Note in zoho(CRM, Books, Inventory, Invoice).\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Assign Contact to Order\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>A module(Contact, Account, Lead, Deal, custom module etc) created\u002Fupdated by one feed can be assigned to the module created\u002Fupdated by other feed.\u003C\u002Fp>\n\u003Cblockquote>\u003Cp>\u003Cstrong>Premium Version.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Following features are available in Premium version only.\u003Ca href=\"https:\u002F\u002Fwww.crmperks.com\u002Fplugins\u002Fwoocommerce-plugins\u002Fwoocommerce-zoho-plugin\u002F?utm_source=wordpress&utm_medium=directory&utm_campaign=zoho_readme\" rel=\"nofollow ugc\">WooCommerce Zoho Integration\u003C\u002Fa>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Add WooCommerce Order Items to Zoho.\u003C\u002Fli>\n\u003Cli>All Zoho modules like Invoices, Customer Payments, Estimates, Credit Notes, Recurring Invoices, custom modules etc.\u003C\u002Fli>\n\u003Cli>Zoho Custom fields.\u003C\u002Fli>\n\u003Cli>Zoho Phone Number fields.\u003C\u002Fli>\n\u003Cli>Select Zoho Object Layout.\u003C\u002Fli>\n\u003Cli>Add a lead to campaign in Zoho CRM.\u003C\u002Fli>\n\u003Cli>Assign owner to any object(Contact, lead , account etc) in Zoho CRM.\u003C\u002Fli>\n\u003Cli>Assign object created\u002Fupdated\u002Ffound by one feed to other feed. For example assigning a contact to a custom Zoho object.\u003C\u002Fli>\n\u003Cli>Track Google Analytics Parameters and Geolocation of a WooCommerce customer.\u003C\u002Fli>\n\u003Cli>Lookup lead’s email and phone number using popular email and phone lookup services.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fblockquote>\n\u003Ch3>Premium Addons\u003C\u002Fh3>\n\u003Cp>We have 20+ premium addons and new ones being added regularly, it’s likely we have everything you’ll ever need.\u003Ca href=\"https:\u002F\u002Fwww.crmperks.com\u002Fadd-ons\u002F?utm_medium=referral&utm_source=wordpress&utm_campaign=WC+zoho+Readme&utm_content=WC\" rel=\"nofollow ugc\">View All Add-ons\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Need Zoho Plugin for Gravity Forms and Contact form 7 ?\u003C\u002Fh3>\n\u003Cp>We have Zoho add-on for Gravity Forms. \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fgf-zoho\u002F\" rel=\"ugc\">Gravity Forms Zoho\u003C\u002Fa>\u003Cbr \u002F>\nWe have Zoho add-on for Contact Form 7. \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcf7-zoho\u002F\" rel=\"ugc\">Contact Form 7 Zoho\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Want to send data to other crm\u003C\u002Fh3>\n\u003Cp>We have Premium Extensions for 20+ CRMs.\u003Ca href=\"https:\u002F\u002Fwww.crmperks.com\u002Fplugin-category\u002Fwoocommerce-plugins\u002F?utm_source=wordpress&utm_medium=directory&utm_campaign=zoho_readme\" rel=\"nofollow ugc\">View All CRM Extensions\u003C\u002Fa>\u003C\u002Fp>\n","WooCommerce Zoho Connector allows you to quickly integrate WooCommerce Orders with Zoho CRM, Books, Inventory and Invoice.",2000,110331,100,83,"2026-03-22T05:39:00.000Z","4.7",[202,203,204,205,206],"woocommerce-zoho","zoho","zoho-books","zoho-inventory","zoho-invoice","https:\u002F\u002Fwww.crmperks.com\u002Fplugins\u002Fwoocommerce-plugins\u002Fwoocommerce-zoho-plugin\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwoo-zoho.1.6.1.zip","2023-07-20 00:00:00",{"slug":211,"name":212,"version":213,"author":214,"author_profile":215,"description":216,"short_description":217,"active_installs":11,"downloaded":218,"rating":219,"num_ratings":85,"last_updated":220,"tested_up_to":16,"requires_at_least":221,"requires_php":222,"tags":223,"homepage":226,"download_link":227,"security_score":197,"vuln_count":70,"unpatched_count":70,"last_vuln_date":38,"fetched_at":30},"genesis-author-pro","Osom Author Pro","2.0","OsomPress","https:\u002F\u002Fprofiles.wordpress.org\u002Fosompress\u002F","\u003Cp>The Osom Author Pro plugin creates a library which allows you to add books to any WordPress theme.\u003C\u002Fp>\n\u003Cp>In WordPress themes using the Block Editor, you’ll be able to display the book details (Price, ISBN, author…) using native blocks and a dedicated block pattern. Additionally, in Genesis child themes it also provides layouts for a single and archive views.\u003C\u002Fp>\n\u003Ch4>WordPress Themes with Block Editor\u003C\u002Fh4>\n\u003Cp>The Osom Author Pro adds a new category called “Author Pro” containing a native block for each custom book information:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Featured Text\u003C\u002Fli>\n\u003Cli>Price\u003C\u002Fli>\n\u003Cli>ISBN\u003C\u002Fli>\n\u003Cli>Publisher\u003C\u002Fli>\n\u003Cli>Editor\u003C\u002Fli>\n\u003Cli>Edition\u003C\u002Fli>\n\u003Cli>Publish Date\u003C\u002Fli>\n\u003Cli>Available Editions\u003C\u002Fli>\n\u003Cli>Three custom buttons\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>More over, the plugin adds a dedicated block pattern including all these new native blocks.\u003C\u002Fp>\n\u003Cp>In addition to the custom book data, there are three taxonomies created: “Author,” “Series,” and “Tags.” These allow you and your site visitors to sort and organize the books in your library.\u003C\u002Fp>\n\u003Cp>The Author is handled via the custom taxonomy instead of following the post author. This allows you to have multiple book authors and put books in the library without creating new members on your site. Multiple authors should be output in the byline without the Oxford comma like:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>John Doe\u003C\u002Fli>\n\u003Cli>Jane Doe and John Doe\u003C\u002Fli>\n\u003Cli>Jane Doe, John Doe and John Smith\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The publish date is a text-aware date field that attempts to understand standard date formats such as:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>January 1, 1999\u003C\u002Fli>\n\u003Cli>1 Jan 1999\u003C\u002Fli>\n\u003Cli>1 1 1999\u003C\u002Fli>\n\u003Cli>1999 1 1\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>There are instances where the returned date may not correctly match. \u003Ccode>4 10 1999\u003C\u002Fcode> might be interpreted as \u003Ccode>April 10, 1999\u003C\u002Fcode> instead of the intended \u003Ccode>4 October 1999\u003C\u002Fcode>. Typing out the month or month abbreviation instead of numeric representation of the month should resolve any discrepancies.\u003C\u002Fp>\n\u003Cp>The date will be stored in a computer readable format and then output following the date format set in the WordPress options.\u003C\u002Fp>\n\u003Ch4>In Genesis Themes\u003C\u002Fh4>\n\u003Cp>The Osom Author Pro Featured Book widget will allow you to select a book from the library and feature it in any widgeted area of your website.\u003C\u002Fp>\n\u003Cp>Optional output from the widget includes:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Widget Title\u003C\u002Fli>\n\u003Cli>Book Title\u003C\u002Fli>\n\u003Cli>By Line\u003C\u002Fli>\n\u003Cli>Book Image\u003C\u002Fli>\n\u003Cli>Featured Text\u003C\u002Fli>\n\u003Cli>Content options including: Full content, limited content, and the excerpt for a custom synopsis.\u003C\u002Fli>\n\u003Cli>Price\u003C\u002Fli>\n\u003Cli>Custom link to the single book page\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>For Genesis child themes it also offer templates that are built into the plugin with default CSS to create the basic layout for all child themes. Templates follow standard WP template hierarchy so if the template is in the child theme, that will override the template in the plugin. Templates include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>single-books.php\u003C\u002Fli>\n\u003Cli>archive-books.php\u003C\u002Fli>\n\u003Cli>taxonomy-book-authors.php\u003C\u002Fli>\n\u003Cli>taxonomy-book-series.php\u003C\u002Fli>\n\u003Cli>taxonomy-book-tags.php\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Quick Setup Videos\u003C\u002Fh4>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FZlY-lx8nKtM?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>If you want more info about the setup and configuration you can check the tutorial below.\u003C\u002Fp>\n\u003Ch4>Tutorial\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fosompress.com\u002Fcreate-book-library-wordpress-block-theme\u002F\" rel=\"nofollow ugc\">Create Your Own Book Library in a WordPress Block Theme\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","The Osom Author Pro plugin creates a library which allows you to add books to any WordPress theme.",57978,98,"2025-12-03T17:04:00.000Z","5.0","",[224,22,225],"authors","genesis","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fgenesis-author-pro\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgenesis-author-pro.2.0.zip",{"slug":229,"name":230,"version":231,"author":232,"author_profile":233,"description":234,"short_description":235,"active_installs":11,"downloaded":236,"rating":197,"num_ratings":237,"last_updated":238,"tested_up_to":239,"requires_at_least":221,"requires_php":240,"tags":241,"homepage":245,"download_link":246,"security_score":219,"vuln_count":50,"unpatched_count":70,"last_vuln_date":247,"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.",30945,9,"2025-08-02T14:58:00.000Z","6.8.5","7.4",[224,22,242,243,244],"goodreads","publishing","writing","https:\u002F\u002Fnovelistplugin.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fnovelist.zip","2025-03-27 00:00:00",{"slug":249,"name":250,"version":251,"author":191,"author_profile":192,"description":252,"short_description":253,"active_installs":11,"downloaded":254,"rating":219,"num_ratings":255,"last_updated":256,"tested_up_to":257,"requires_at_least":200,"requires_php":174,"tags":258,"homepage":262,"download_link":263,"security_score":264,"vuln_count":50,"unpatched_count":70,"last_vuln_date":265,"fetched_at":30},"wp-woocommerce-quickbooks","Integration for WooCommerce and QuickBooks","1.2.7","\u003Cp>Easily create Invoice, customer or any object in QuickBooks Online when an order is placed via WooCommerce. Learn more at \u003Ca href=\"https:\u002F\u002Fwww.crmperks.com\u002Fplugins\u002Fwoocommerce-plugins\u002Fwoocommerce-quickbooks-integration\u002F?utm_source=wordpress&utm_medium=directory&utm_campaign=qbook+readme\" rel=\"nofollow ugc\">crmperks.com\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>WooCommerce Quickbooks integration Setup\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Go to WooCommerce -> Settings -> QuickBooks tab then add new account.\u003C\u002Fli>\n\u003Cli>Go to WooCommerce -> QuickBooks Feeds tab then create new feed.\u003C\u002Fli>\n\u003Cli>Map required QuickBooks fields to WooCommerce Order fields.\u003C\u002Fli>\n\u003Cli>Open any Woocommerce Order then click “Send to QuickBooks” button.\u003C\u002Fli>\n\u003Cli>Go to WooCommerce -> QuickBooks Logs and verify, if entry was sent to QuickBooks.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Connect QuickBooks Account\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>You can connect QuickBooks Account by Oauth 2.0. Also you can connect multiple QuickBooks accounts.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Fields Mapping\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Simply Select QuickBooks Object(Estimate,Invoice,Customer,SalesReceipt,payment etc) then map WooCommerce Order fields to QuickBooks Online Object fields.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Export Event\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Choose event, when WooCommerce Order data should be sent to QuickBooks. For example , send WooCommerce Order to QuickBooks when Order Status changes to “processing”.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Primary Key\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Instead of creating new Object(Estimate,Invoice,Customer,SalesReceipt,payment etc) in quickbooks, you can update old object by setting Primary Key field.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Error Reporting\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>If there is an error while sending data to QuickBooks Online, an email containing the error details will be sent to the specified email address.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>CRM Logs\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Plugin saves detailed log of each entry whether sent or not sent to to QuickBooks and easily resend an entry to QuickBooks Online.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Filter Orders\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>By default all orders are sent to QuickBooks, but you can apply filters & setup rules to limit the orders sent to QuickBooks. For example sending Orders from specific city to QuickBooks.\u003C\u002Fp>\n\u003Cblockquote>\u003Cp>\u003Cstrong>Premium Version.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Following features are available in Premium version only.\u003Ca href=\"https:\u002F\u002Fwww.crmperks.com\u002Fplugins\u002Fwoocommerce-plugins\u002Fwoocommerce-quickbooks-integration\u002F?utm_source=wordpress&utm_medium=directory&utm_campaign=QuickBooks_readme\" rel=\"nofollow ugc\">WP WooCommerce QuickBooks\u003C\u002Fa>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Create SalesReceipt, Estimate, Credit Memo, Payment in QuickBooks Online.\u003C\u002Fli>\n\u003Cli>Send all Shipping info , Custom Line description and Complete Tax detail from WooCommerce to Quickbooks.\u003C\u002Fli>\n\u003Cli>QuickBooks Phone Number fields and Custom fields.\u003C\u002Fli>\n\u003Cli>Send Invoice, SalesReceipt, Estimate, Credit Memo, Payment to customer email address.\u003C\u002Fli>\n\u003Cli>Create Refund Receipt in QuickBooks when Order is refunded in WooCommerce.\u003C\u002Fli>\n\u003Cli>Send Shipping and Discount info from WooCommerce to QuickBooks.\u003C\u002Fli>\n\u003Cli>Synchronize Inventory from QuickBooks to WooCommerce.\u003C\u002Fli>\n\u003Cli>Send WooCommerce Orders in bulk to QuickBooks Online.\u003C\u002Fli>\n\u003Cli>Track Google Analytics Parameters and Geolocation of a WooCommerce customer.\u003C\u002Fli>\n\u003Cli>Lookup lead’s email and phone number using popular email and phone lookup services.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fblockquote>\n\u003Ch3>Premium Addons\u003C\u002Fh3>\n\u003Cp>We have 20+ premium addons and new ones being added regularly, it’s likely we have everything you’ll ever need.\u003Ca href=\"https:\u002F\u002Fwww.crmperks.com\u002Fadd-ons\u002F?utm_medium=referral&utm_source=wordpress&utm_campaign=WC+quickbooks+Readme&utm_content=WC\" rel=\"nofollow ugc\">View All Add-ons\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Want to send data to other crm\u003C\u002Fh3>\n\u003Cp>We have Premium Extensions for 20+ CRMs.\u003Ca href=\"https:\u002F\u002Fwww.crmperks.com\u002Fplugin-category\u002Fwoocommerce-plugins\u002F?utm_source=wordpress&utm_medium=directory&utm_campaign=quickbooks_readme\" rel=\"nofollow ugc\">View All CRM Extensions\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>How to Create Quickbooks APP\u003C\u002Fh3>\n\u003Cp>You can find Screenshots for Creating Quickbooks APP at \u003Ca href=\"https:\u002F\u002Fwww.crmperks.com\u002Fwoocommerce-quickbooks\u002F?utm_source=wordpress&utm_medium=directory&utm_campaign=quickbooks_readme\" rel=\"nofollow ugc\">crmperks.com\u003C\u002Fa>\u003C\u002Fp>\n","WooCommerce QuickBooks Plugin allows you to quickly integrate WooCommerce Orders with QuickBooks Online.",42483,15,"2024-06-19T11:26:00.000Z","6.5.8",[259,177,260,180,261],"connect-woocommerce-to-quickbooks","quickbooks-online-and-woocommerce","woocommerce-quickbooks-integration","https:\u002F\u002Fwww.crmperks.com\u002Fplugins\u002Fwoocommerce-plugins\u002Fwoocommerce-quickbooks-integration\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-woocommerce-quickbooks.1.2.7.zip",90,"2025-04-16 00:00:00",{"attackSurface":267,"codeSignals":1151,"taintFlows":1270,"riskAssessment":1435,"analyzedAt":1448},{"hooks":268,"ajaxHandlers":1064,"restRoutes":1145,"shortcodes":1146,"cronEvents":1149,"entryPointCount":571,"unprotectedCount":70},[269,275,279,282,285,288,292,295,300,304,307,311,314,317,321,323,326,329,333,336,339,342,345,348,351,355,359,363,366,369,372,375,378,381,385,388,391,393,396,399,402,405,408,411,414,418,421,424,427,430,433,436,440,443,446,448,453,455,460,462,465,468,470,475,479,482,486,489,493,494,498,500,503,506,509,512,515,519,521,523,525,528,531,533,536,538,542,546,549,552,555,558,561,564,568,572,574,577,580,584,586,590,593,595,599,603,607,611,613,616,618,621,623,625,627,629,632,635,640,644,647,651,655,658,660,663,667,670,674,677,681,684,687,689,691,693,696,699,701,703,706,708,710,712,714,718,721,723,727,730,733,736,739,741,745,750,753,755,758,761,763,766,769,772,774,777,780,782,784,786,788,790,794,798,802,806,809,812,815,818,821,824,827,830,833,836,839,842,845,848,851,854,857,859,862,864,866,868,870,872,875,879,883,887,890,894,897,901,904,907,911,915,919,923,926,930,934,937,941,944,948,952,956,960,964,968,972,976,980,983,987,990,994,998,1002,1005,1008,1012,1016,1020,1024,1028,1032,1035,1038,1041,1043,1046,1048,1052,1054,1057,1060],{"type":270,"name":271,"callback":272,"priority":237,"file":273,"line":274},"action","admin_menu","mbt_add_admin_pages","includes\\admin_pages.php",6,{"type":270,"name":276,"callback":277,"file":273,"line":278},"admin_enqueue_scripts","mbt_enqueue_admin_resources",7,{"type":270,"name":280,"callback":281,"file":273,"line":85},"mbt_init","mbt_admin_pages_init",{"type":270,"name":283,"callback":284,"file":273,"line":171},"admin_init","mbt_save_settings_page",{"type":270,"name":280,"callback":286,"file":273,"line":287},"mbt_settings_page_init",96,{"type":270,"name":289,"callback":290,"file":273,"line":291},"mbt_integrate_settings_render","mbt_mailchimp_api_key_settings_render",662,{"type":270,"name":289,"callback":293,"file":273,"line":294},"mbt_genius_link_integration_general_settings_render",696,{"type":296,"name":297,"callback":298,"file":273,"line":299},"filter","wp101_get_custom_help_topics","mbt_add_wp101_help",959,{"type":296,"name":301,"callback":302,"priority":197,"file":273,"line":303},"install_plugin_complete_actions","__return_false",1203,{"type":270,"name":280,"callback":305,"file":273,"line":306},"mbt_import_page_init",1333,{"type":296,"name":308,"callback":309,"file":310,"line":237},"mbt_stores","mbt_add_basic_stores","includes\\buybuttons.php",{"type":270,"name":280,"callback":312,"file":310,"line":313},"mbt_buybuttons_init",11,{"type":270,"name":315,"callback":316,"file":310,"line":287},"mbt_affiliate_settings_render","mbt_itunes_affiliate_settings_render",{"type":270,"name":318,"callback":319,"file":310,"line":320},"mbt_settings_save","mbt_itunes_affiliate_settings_save",97,{"type":270,"name":280,"callback":322,"file":310,"line":197},"mbt_itunes_affiliate_settings_init",{"type":270,"name":315,"callback":324,"file":310,"line":325},"mbt_powells_affiliate_settings_render",170,{"type":270,"name":318,"callback":327,"file":310,"line":328},"mbt_powells_affiliate_settings_save",171,{"type":270,"name":330,"callback":331,"priority":85,"file":310,"line":332},"mbt_filter_buybutton_data","mbt_filter_powells_buybuttons_data",173,{"type":270,"name":280,"callback":334,"file":310,"line":335},"mbt_powells_affiliate_settings_init",175,{"type":270,"name":315,"callback":337,"file":310,"line":338},"mbt_indiebound_affiliate_settings_render",256,{"type":270,"name":318,"callback":340,"file":310,"line":341},"mbt_indiebound_affiliate_settings_save",257,{"type":270,"name":330,"callback":343,"priority":85,"file":310,"line":344},"mbt_filter_indiebound_buybuttons_data",259,{"type":270,"name":280,"callback":346,"file":310,"line":347},"mbt_indiebound_affiliate_settings_init",261,{"type":296,"name":315,"callback":349,"file":310,"line":350},"mbt_amazon_affiliate_settings_render",342,{"type":270,"name":318,"callback":352,"priority":353,"file":310,"line":354},"mbt_amazon_affiliate_settings_save",40,343,{"type":270,"name":318,"callback":356,"priority":357,"file":310,"line":358},"mbt_use_amazon_attribution_links_save",50,344,{"type":270,"name":360,"callback":361,"file":310,"line":362},"wp_footer","mbt_amazon_onelink_code_insert",347,{"type":270,"name":280,"callback":364,"file":310,"line":365},"mbt_amazon_affiliate_settings_init",349,{"type":270,"name":315,"callback":367,"file":310,"line":368},"mbt_linkshare_affiliate_settings_render",482,{"type":270,"name":280,"callback":370,"file":310,"line":371},"mbt_linkshare_affiliate_settings_init",484,{"type":270,"name":315,"callback":373,"file":310,"line":374},"mbt_cj_affiliate_settings_render",517,{"type":270,"name":280,"callback":376,"file":310,"line":377},"mbt_cj_affiliate_settings_init",519,{"type":296,"name":330,"callback":379,"priority":85,"file":310,"line":380},"mbt_filter_amazon_buybutton_data",584,{"type":270,"name":382,"callback":383,"priority":85,"file":310,"line":384},"mbt_buybutton_editor","mbt_amazon_buybutton_editor",586,{"type":270,"name":280,"callback":386,"file":310,"line":387},"mbt_amazon_buybuttons_init",589,{"type":270,"name":330,"callback":389,"priority":85,"file":310,"line":390},"mbt_filter_audible_buybutton_data",660,{"type":270,"name":382,"callback":392,"priority":85,"file":310,"line":291},"mbt_audible_buybutton_editor",{"type":270,"name":280,"callback":394,"file":310,"line":395},"mbt_audible_buybuttons_init",664,{"type":270,"name":330,"callback":397,"priority":85,"file":310,"line":398},"mbt_filter_bnn_buybutton_data",722,{"type":270,"name":382,"callback":400,"priority":85,"file":310,"line":401},"mbt_bnn_buybutton_editor",724,{"type":270,"name":280,"callback":403,"file":310,"line":404},"mbt_bnn_buybuttons_init",726,{"type":270,"name":330,"callback":406,"priority":85,"file":310,"line":407},"mbt_filter_kobo_buybutton_data",780,{"type":270,"name":280,"callback":409,"file":310,"line":410},"mbt_kobo_buybuttons_init",782,{"type":296,"name":382,"callback":412,"priority":85,"file":310,"line":413},"mbt_gumroad_buybutton_editor",798,{"type":296,"name":415,"callback":416,"priority":85,"file":310,"line":417},"mbt_format_buybutton","mbt_gumroad_buybutton_button",799,{"type":270,"name":280,"callback":419,"file":310,"line":420},"mbt_gumroad_buybutton_init",801,{"type":296,"name":382,"callback":422,"priority":85,"file":310,"line":423},"mbt_celery_buybutton_editor",832,{"type":270,"name":280,"callback":425,"file":310,"line":426},"mbt_celery_buybutton_init",834,{"type":296,"name":330,"callback":428,"priority":85,"file":310,"line":429},"mbt_filter_apple_buybuttons_data",851,{"type":270,"name":382,"callback":431,"priority":85,"file":310,"line":432},"mbt_apple_buybutton_editor",853,{"type":270,"name":280,"callback":434,"file":310,"line":435},"mbt_apple_buybuttons_init",856,{"type":270,"name":437,"callback":438,"file":439,"line":274},"init","mbt_register_blocks","includes\\extras\\blocks.php",{"type":270,"name":441,"callback":442,"file":439,"line":278},"enqueue_block_editor_assets","mbt_register_block_assets",{"type":296,"name":444,"callback":445,"file":439,"line":27},"block_categories","mbt_add_block_category",{"type":270,"name":280,"callback":447,"file":439,"line":313},"mbt_blocks_init",{"type":296,"name":449,"callback":450,"file":451,"line":452},"views_edit-mbt_book","mbt_add_sort_books_link","includes\\extras\\booksorting.php",5,{"type":270,"name":280,"callback":454,"file":451,"line":27},"mbt_booksorting_init",{"type":270,"name":456,"callback":457,"priority":458,"file":459,"line":452},"mbt_before_single_book","mbt_do_page_breadcrumbs",20,"includes\\extras\\breadcrumbs.php",{"type":270,"name":461,"callback":457,"priority":458,"file":459,"line":274},"mbt_before_book_archive",{"type":296,"name":463,"callback":464,"file":459,"line":278},"woo_breadcrumbs_trail","mbt_integrate_woo_breadcrumbs",{"type":296,"name":466,"callback":467,"priority":458,"file":459,"line":27},"genesis_page_crumb","mbt_integrate_genesis_breadcrumb_archive",{"type":270,"name":280,"callback":469,"file":459,"line":85},"mbt_breadcrumbs_init",{"type":270,"name":471,"callback":472,"priority":473,"file":474,"line":255},"pre_get_posts","mbt_compat_pre_get_posts",30,"includes\\extras\\compatibility.php",{"type":270,"name":476,"callback":477,"file":474,"line":478},"wp","mbt_compat_override_query_posts",16,{"type":296,"name":480,"callback":481,"file":474,"line":458},"template_include","mbt_compat_load_book_templates",{"type":270,"name":483,"callback":484,"file":474,"line":485},"wp_before_admin_bar_render","mbt_compat_remove_admin_bar_links",23,{"type":270,"name":280,"callback":487,"priority":313,"file":474,"line":488},"mbt_compat_init",26,{"type":296,"name":490,"callback":491,"priority":492,"file":474,"line":287},"the_content","mbt_compat_custom_page_content",999,{"type":296,"name":490,"callback":491,"priority":492,"file":474,"line":219},{"type":296,"name":495,"callback":496,"file":497,"line":237},"mbt_importers","mbt_add_custom_importer","includes\\extras\\customimport.php",{"type":270,"name":283,"callback":499,"file":497,"line":85},"mbt_detect_custom_export_download",{"type":296,"name":501,"callback":502,"priority":85,"file":497,"line":313},"mbt_pre_import_book","mbt_custom_importer_filter_book",{"type":270,"name":280,"callback":504,"file":497,"line":505},"mbt_custom_importer_init",13,{"type":296,"name":507,"callback":302,"file":508,"line":85},"mbt_is_compatability_mode_on","includes\\extras\\divi.php",{"type":270,"name":510,"callback":511,"file":508,"line":313},"add_meta_boxes","mbt_add_divi_meta_box",{"type":270,"name":280,"callback":513,"priority":85,"file":508,"line":514},"mbt_divi_init",14,{"type":270,"name":516,"callback":517,"priority":458,"file":518,"line":452},"after_setup_theme","mbt_getnoticed_compat","includes\\extras\\getnoticed.php",{"type":296,"name":495,"callback":520,"file":518,"line":274},"mbt_add_getnoticed_importer",{"type":270,"name":280,"callback":522,"file":518,"line":27},"mbt_getnoticed_init",{"type":296,"name":471,"callback":524,"priority":458,"file":518,"line":505},"mbt_getnoticed_post_types_unindex",{"type":270,"name":526,"callback":527,"file":518,"line":514},"wp_head","mbt_add_getnoticed_css",{"type":270,"name":289,"callback":529,"priority":237,"file":530,"line":452},"mbt_goodreads_settings_render","includes\\extras\\goodreads.php",{"type":270,"name":318,"callback":532,"file":530,"line":274},"mbt_goodreads_settings_save",{"type":296,"name":534,"callback":535,"file":530,"line":27},"mbt_reviews_types","mbt_add_goodreads_reviews_type",{"type":270,"name":280,"callback":537,"file":530,"line":85},"mbt_goodreads_init",{"type":296,"name":415,"callback":539,"priority":85,"file":540,"line":541},"mbt_buybutton_button_add_ga","includes\\extras\\googleanalytics.php",12,{"type":296,"name":543,"callback":544,"priority":85,"file":545,"line":313},"wpseo_defaults","mbt_filter_wpseo_defaults","includes\\extras\\seo.php",{"type":296,"name":547,"callback":548,"file":545,"line":505},"wpseo_canonical","mbt_filter_wpseo_canonical",{"type":296,"name":550,"callback":551,"file":545,"line":255},"wpseo_opengraph_type","mbt_filter_wpseo_opengraph_type",{"type":270,"name":553,"callback":554,"priority":255,"file":545,"line":478},"wpseo_opengraph","mbt_add_wpseo_opengraph_image",{"type":270,"name":553,"callback":556,"priority":473,"file":545,"line":557},"mbt_add_wpseo_opengraph_isbn",17,{"type":270,"name":559,"callback":560,"file":545,"line":458},"save_post","mbt_save_seo_metabox",{"type":270,"name":510,"callback":562,"priority":237,"file":545,"line":563},"mbt_add_seo_metabox",21,{"type":296,"name":565,"callback":566,"priority":492,"file":545,"line":567},"wp_title","mbt_seo_wp_title",24,{"type":296,"name":569,"callback":570,"priority":492,"file":545,"line":571},"woo_title","mbt_seo_woo_title",25,{"type":270,"name":526,"callback":573,"file":545,"line":488},"mbt_seo_add_metadesc",{"type":270,"name":526,"callback":575,"priority":492,"file":545,"line":576},"mbt_seo_add_opengraph",27,{"type":270,"name":280,"callback":578,"file":545,"line":579},"mbt_seo_init",31,{"type":296,"name":581,"callback":582,"file":583,"line":274},"authormedia_get_shortcodes","mbt_add_authormedia_shortcodes","includes\\extras\\shortcodes.php",{"type":270,"name":280,"callback":585,"file":583,"line":27},"mbt_shortcodes_init",{"type":296,"name":587,"callback":588,"priority":197,"file":583,"line":589},"mbtpro2_is_gridview_active","anonymous",154,{"type":270,"name":437,"callback":591,"file":583,"line":592},"load_authormedia_shortcode_inserter",393,{"type":270,"name":283,"callback":588,"file":583,"line":594},396,{"type":296,"name":596,"callback":597,"priority":185,"file":583,"line":598},"authormedia_shortcode_inserter_setup_func","mbt_authormedia_shortcode_inserter_setup_func",400,{"type":296,"name":600,"callback":601,"priority":473,"file":583,"line":602},"media_buttons","mbt_authormedia_shortcode_inserter_button",408,{"type":270,"name":604,"callback":605,"file":583,"line":606},"admin_footer","mbt_authormedia_shortcode_inserter_form",409,{"type":296,"name":608,"callback":609,"priority":458,"file":610,"line":452},"body_class","mbt_override_twentyseventeen_body_classes","includes\\extras\\themes.php",{"type":270,"name":280,"callback":612,"priority":313,"file":610,"line":278},"mbt_themes_init",{"type":296,"name":495,"callback":614,"file":615,"line":452},"mbt_add_totallybooked_importer","includes\\extras\\totallybooked.php",{"type":270,"name":280,"callback":617,"file":615,"line":278},"mbt_totallybooked_init",{"type":296,"name":308,"callback":619,"file":620,"line":237},"mbt_add_universal_buybutton","includes\\extras\\universalbuybutton.php",{"type":270,"name":526,"callback":622,"file":620,"line":85},"mbt_add_universal_buybutton_css",{"type":296,"name":382,"callback":624,"priority":85,"file":620,"line":313},"mbt_universal_buybutton_editor",{"type":296,"name":415,"callback":626,"priority":85,"file":620,"line":541},"mbt_universal_buybutton_button",{"type":270,"name":280,"callback":628,"file":620,"line":514},"mbt_universal_buybutton_init",{"type":270,"name":276,"callback":630,"file":631,"line":278},"mbt_enqueue_widget_admin_js","includes\\extras\\widgets.php",{"type":270,"name":633,"callback":634,"file":631,"line":237},"widgets_init","mbt_register_widgets",{"type":296,"name":636,"callback":637,"priority":85,"file":638,"line":639},"get_pages","mbt_add_book_pages_to_front_page_options","includes\\functions.php",272,{"type":296,"name":641,"callback":642,"file":638,"line":643},"mbt_display_modes","mbt_add_default_book_display_modes",325,{"type":270,"name":645,"callback":646,"file":638,"line":358},"admin_footer-edit.php","mbt_book_bulk_change_display_mode_admin_footer",{"type":270,"name":648,"callback":649,"file":638,"line":650},"load-edit.php","mbt_book_bulk_change_display_mode_action",362,{"type":270,"name":652,"callback":653,"file":638,"line":654},"admin_notices","mbt_book_bulk_change_display_mode_admin_notices",390,{"type":296,"name":495,"callback":656,"priority":237,"file":638,"line":657},"mbt_add_disabled_importers",462,{"type":270,"name":271,"callback":588,"priority":237,"file":638,"line":659},619,{"type":270,"name":661,"callback":588,"file":638,"line":662},"admin_head",620,{"type":296,"name":664,"callback":665,"priority":197,"file":638,"line":666},"mbt_style_folders","mbt_add_default_style_folder",729,{"type":296,"name":664,"callback":668,"priority":197,"file":638,"line":669},"mbt_add_uploaded_style_folder",736,{"type":270,"name":671,"callback":672,"file":638,"line":673},"mbt_periodic_api_key_check","mbt_verify_api_key",852,{"type":270,"name":280,"callback":675,"file":638,"line":676},"mbt_init_api_key_check",854,{"type":296,"name":678,"callback":679,"priority":357,"file":638,"line":680},"wp_kses_allowed_html","allow_admin_script_tags",997,{"type":296,"name":678,"callback":682,"priority":357,"file":638,"line":683},"allow_script_tags",1028,{"type":270,"name":276,"callback":685,"file":686,"line":505},"mbt_enqueue_metabox_js","includes\\metaboxes.php",{"type":270,"name":559,"callback":688,"file":686,"line":255},"mbt_save_book_blurb_metabox",{"type":270,"name":559,"callback":690,"file":686,"line":478},"mbt_save_metadata_metabox",{"type":270,"name":559,"callback":692,"file":686,"line":557},"mbt_save_buybuttons_metabox",{"type":270,"name":559,"callback":694,"file":686,"line":695},"mbt_save_series_order_metabox",18,{"type":270,"name":559,"callback":697,"file":686,"line":698},"mbt_save_endorsements_metabox",19,{"type":270,"name":559,"callback":700,"file":686,"line":458},"mbt_save_bookclub_metabox",{"type":270,"name":559,"callback":702,"file":686,"line":563},"mbt_save_audiobook_metabox",{"type":270,"name":559,"callback":704,"file":686,"line":705},"mbt_save_overview_metabox",22,{"type":270,"name":559,"callback":707,"file":686,"line":485},"mbt_save_display_mode_field",{"type":270,"name":559,"callback":709,"file":686,"line":567},"mbt_save_post_author_field",{"type":270,"name":559,"callback":711,"file":686,"line":571},"mbt_save_sectionsorting_metabox",{"type":270,"name":510,"callback":713,"priority":237,"file":686,"line":576},"mbt_add_metaboxes",{"type":270,"name":715,"callback":716,"file":686,"line":717},"post_submitbox_misc_actions","mbt_add_post_author_field",28,{"type":270,"name":715,"callback":719,"file":686,"line":720},"mbt_add_display_mode_field",29,{"type":270,"name":280,"callback":722,"file":686,"line":579},"mbt_metaboxes_init",{"type":296,"name":724,"callback":725,"file":686,"line":726},"postbox_classes_mbt_book_mbt_sectionsorting","mbt_minify_sectionsorting_metabox",43,{"type":270,"name":661,"callback":728,"file":686,"line":729},"mbt_override_authors_metabox",53,{"type":270,"name":437,"callback":731,"file":732,"line":237},"mbt_register_post_types","includes\\post_types.php",{"type":296,"name":734,"callback":735,"file":732,"line":85},"parent_file","mbt_override_post_types_parent_files",{"type":296,"name":737,"callback":738,"file":732,"line":313},"post_updated_messages","mbt_override_post_updated_messages",{"type":270,"name":280,"callback":740,"file":732,"line":505},"mbt_post_types_init",{"type":296,"name":742,"callback":743,"file":732,"line":744},"manage_mbt_book_posts_columns","mbt_modify_post_manager_columns",68,{"type":270,"name":746,"callback":747,"priority":492,"file":748,"line":749},"wp_loaded","mbt_rewrites_check","includes\\setup.php",164,{"type":270,"name":280,"callback":751,"file":748,"line":752},"mbt_rewrites_check_init",166,{"type":270,"name":652,"callback":754,"file":748,"line":328},"mbt_rewrites_check_admin_notice",{"type":270,"name":283,"callback":756,"priority":458,"file":748,"line":757},"mbt_add_admin_notices",242,{"type":270,"name":280,"callback":759,"file":748,"line":760},"mbt_admin_notices_init",244,{"type":270,"name":652,"callback":762,"file":748,"line":347},"mbt_admin_install_notice",{"type":270,"name":652,"callback":764,"file":748,"line":765},"mbt_admin_setup_api_key_notice",266,{"type":270,"name":652,"callback":767,"file":748,"line":768},"mbt_admin_setup_default_affiliates_notice",273,{"type":270,"name":652,"callback":770,"file":748,"line":771},"mbt_admin_installed_notice",283,{"type":270,"name":652,"callback":764,"file":748,"line":773},288,{"type":270,"name":652,"callback":775,"file":748,"line":776},"mbt_admin_enable_upgrade_notice",290,{"type":270,"name":437,"callback":778,"file":779,"line":237},"mbt_register_taxonomies","includes\\taxonomies.php",{"type":296,"name":734,"callback":781,"file":779,"line":85},"mbt_override_taxonomy_parent_files",{"type":270,"name":283,"callback":783,"file":779,"line":313},"mbt_taxonomy_images_init",{"type":270,"name":283,"callback":785,"file":779,"line":541},"mbt_author_priorities_init",{"type":270,"name":276,"callback":787,"file":779,"line":505},"mbt_enqueue_taxonomy_js",{"type":270,"name":280,"callback":789,"file":779,"line":255},"mbt_taxonomies_init",{"type":296,"name":791,"callback":792,"file":779,"line":793},"mbt_author_edit_form_fields","mbt_add_taxonomy_image_edit_form",133,{"type":296,"name":795,"callback":796,"file":779,"line":797},"mbt_author_add_form_fields","mbt_add_taxonomy_image_add_form",134,{"type":270,"name":799,"callback":800,"file":779,"line":801},"edited_mbt_author","mbt_save_taxonomy_image_edit_form",135,{"type":270,"name":803,"callback":804,"file":779,"line":805},"created_mbt_author","mbt_save_taxonomy_image_add_form",136,{"type":296,"name":807,"callback":792,"file":779,"line":808},"mbt_genre_edit_form_fields",138,{"type":296,"name":810,"callback":796,"file":779,"line":811},"mbt_genre_add_form_fields",139,{"type":270,"name":813,"callback":800,"file":779,"line":814},"edited_mbt_genre",140,{"type":270,"name":816,"callback":804,"file":779,"line":817},"created_mbt_genre",141,{"type":296,"name":819,"callback":792,"file":779,"line":820},"mbt_series_edit_form_fields",143,{"type":296,"name":822,"callback":796,"file":779,"line":823},"mbt_series_add_form_fields",144,{"type":270,"name":825,"callback":800,"file":779,"line":826},"edited_mbt_series",145,{"type":270,"name":828,"callback":804,"file":779,"line":829},"created_mbt_series",146,{"type":296,"name":831,"callback":792,"file":779,"line":832},"mbt_tag_edit_form_fields",148,{"type":296,"name":834,"callback":796,"file":779,"line":835},"mbt_tag_add_form_fields",149,{"type":270,"name":837,"callback":800,"file":779,"line":838},"edited_mbt_tag",150,{"type":270,"name":840,"callback":804,"file":779,"line":841},"created_mbt_tag",151,{"type":296,"name":791,"callback":843,"file":779,"line":844},"mbt_add_author_priority_edit_form",207,{"type":296,"name":795,"callback":846,"file":779,"line":847},"mbt_add_author_priority_add_form",208,{"type":270,"name":799,"callback":849,"file":779,"line":850},"mbt_save_author_priority_edit_form",209,{"type":270,"name":803,"callback":852,"file":779,"line":853},"mbt_save_author_priority_add_form",210,{"type":270,"name":855,"callback":855,"file":856,"line":313},"mbt_get_storefront_content_sections","includes\\templates.php",{"type":270,"name":858,"callback":858,"file":856,"line":541},"mbt_get_singlecolumn_content_sections",{"type":270,"name":860,"callback":861,"file":856,"line":478},"wp_enqueue_scripts","mbt_enqueue_resources",{"type":270,"name":526,"callback":863,"file":856,"line":557},"mbt_add_custom_css",{"type":270,"name":526,"callback":865,"file":856,"line":458},"mbt_enable_frontend_ajax",{"type":270,"name":471,"callback":867,"priority":458,"file":856,"line":485},"mbt_pre_get_posts",{"type":296,"name":480,"callback":869,"file":856,"line":488},"mbt_load_book_templates",{"type":296,"name":608,"callback":871,"file":856,"line":720},"mbt_body_class",{"type":270,"name":873,"callback":874,"file":856,"line":100},"mbt_content_wrapper_start","mbt_do_wrapper_start",{"type":270,"name":876,"callback":877,"file":856,"line":878},"mbt_content_wrapper_end","mbt_do_wrapper_end",33,{"type":270,"name":880,"callback":881,"file":856,"line":882},"mbt_book_excerpt","mbt_do_book_excerpt",34,{"type":270,"name":884,"callback":885,"file":856,"line":886},"mbt_book_archive_content","mbt_do_book_archive_content",37,{"type":270,"name":461,"callback":888,"priority":70,"file":856,"line":889},"mbt_do_before_book_archive",38,{"type":270,"name":891,"callback":892,"priority":197,"file":856,"line":893},"mbt_after_book_archive","mbt_do_after_book_archive",39,{"type":270,"name":895,"callback":896,"file":856,"line":353},"mbt_book_archive_header","mbt_do_book_archive_header",{"type":270,"name":898,"callback":899,"file":856,"line":900},"mbt_book_archive_header_image","mbt_do_book_archive_header_image",41,{"type":270,"name":902,"callback":903,"file":856,"line":14},"mbt_book_archive_header_title","mbt_do_book_archive_header_title",{"type":270,"name":905,"callback":906,"file":856,"line":726},"mbt_book_archive_header_description","mbt_do_book_archive_header_description",{"type":270,"name":908,"callback":909,"file":856,"line":910},"mbt_book_archive_loop","mbt_do_book_archive_loop",44,{"type":270,"name":912,"callback":913,"file":856,"line":914},"mbt_book_archive_no_results","mbt_do_book_archive_no_results",45,{"type":270,"name":916,"callback":917,"file":856,"line":918},"mbt_after_book_archive_loop","mbt_the_book_archive_pagination",46,{"type":270,"name":920,"callback":921,"file":856,"line":922},"mbt_single_book_storefront_content","mbt_do_single_book_storefront_content",49,{"type":270,"name":924,"callback":925,"priority":70,"file":856,"line":357},"mbt_before_single_book_storefront","mbt_do_before_single_book_storefront",{"type":270,"name":927,"callback":928,"priority":197,"file":856,"line":929},"mbt_after_single_book_storefront","mbt_do_after_single_book_storefront",51,{"type":270,"name":931,"callback":932,"file":856,"line":933},"mbt_single_book_storefront_summary","mbt_do_single_book_storefront_summary",52,{"type":270,"name":935,"callback":936,"file":856,"line":729},"mbt_single_book_storefront_images","mbt_do_single_book_storefront_images",{"type":270,"name":938,"callback":939,"file":856,"line":940},"mbt_single_book_storefront_title","mbt_do_single_book_storefront_title",54,{"type":270,"name":942,"callback":943,"file":856,"line":158},"mbt_single_book_storefront_price","mbt_do_single_book_storefront_price",{"type":270,"name":945,"callback":946,"file":856,"line":947},"mbt_single_book_storefront_meta","mbt_do_single_book_storefront_meta",56,{"type":270,"name":949,"callback":950,"file":856,"line":951},"mbt_single_book_storefront_blurb","mbt_do_single_book_storefront_blurb",57,{"type":270,"name":953,"callback":954,"file":856,"line":955},"mbt_single_book_storefront_buybuttons","mbt_do_single_book_storefront_buybuttons",58,{"type":270,"name":957,"callback":958,"file":856,"line":959},"mbt_single_book_storefront_overview","mbt_do_single_book_storefront_overview",59,{"type":296,"name":961,"callback":962,"priority":85,"file":856,"line":963},"mbt_book_section_title","mbt_single_book_storefront_book_reviews_section_title",60,{"type":270,"name":965,"callback":966,"file":856,"line":967},"mbt_single_book_singlecolumn_content","mbt_do_single_book_singlecolumn_content",62,{"type":270,"name":969,"callback":970,"priority":70,"file":856,"line":971},"mbt_before_single_book_singlecolumn","mbt_do_before_single_book_singlecolumn",63,{"type":270,"name":973,"callback":974,"priority":197,"file":856,"line":975},"mbt_after_single_book_singlecolumn","mbt_do_after_single_book_singlecolumn",64,{"type":270,"name":977,"callback":978,"file":856,"line":979},"mbt_single_book_singlecolumn_summary","mbt_do_single_book_singlecolumn_summary",65,{"type":270,"name":981,"callback":982,"file":856,"line":156},"mbt_single_book_singlecolumn_title","mbt_do_single_book_singlecolumn_title",{"type":270,"name":984,"callback":985,"file":856,"line":986},"mbt_single_book_singlecolumn_blurb","mbt_do_single_book_singlecolumn_blurb",67,{"type":270,"name":988,"callback":989,"file":856,"line":744},"mbt_single_book_singlecolumn_overview","mbt_do_single_book_singlecolumn_overview",{"type":270,"name":991,"callback":992,"file":856,"line":993},"mbt_single_book_singlecolumn_meta","mbt_do_single_book_singlecolumn_meta",69,{"type":270,"name":995,"callback":996,"priority":264,"file":856,"line":997},"mbt_after_single_book","mbt_the_domc_notice",71,{"type":270,"name":999,"callback":1000,"file":856,"line":1001},"mbt_book_excerpt_content","mbt_do_book_excerpt_content",74,{"type":270,"name":1003,"callback":1004,"priority":70,"file":856,"line":172},"mbt_before_book_excerpt","mbt_do_before_book_excerpt",{"type":270,"name":1006,"callback":1007,"priority":197,"file":856,"line":13},"mbt_after_book_excerpt","mbt_do_after_book_excerpt",{"type":270,"name":1009,"callback":1010,"file":856,"line":1011},"mbt_book_excerpt_images","mbt_do_book_excerpt_images",77,{"type":270,"name":1013,"callback":1014,"file":856,"line":1015},"mbt_book_excerpt_title","mbt_do_book_excerpt_title",78,{"type":270,"name":1017,"callback":1018,"file":856,"line":1019},"mbt_book_excerpt_price","mbt_do_book_excerpt_price",79,{"type":270,"name":1021,"callback":1022,"file":856,"line":1023},"mbt_book_excerpt_meta","mbt_do_book_excerpt_meta",80,{"type":270,"name":1025,"callback":1026,"file":856,"line":1027},"mbt_book_excerpt_blurb","mbt_do_book_excerpt_blurb",81,{"type":270,"name":1029,"callback":1030,"file":856,"line":1031},"mbt_book_excerpt_buybuttons","mbt_do_book_excerpt_buybuttons",82,{"type":270,"name":280,"callback":1033,"file":856,"line":1034},"mbt_templates_init",85,{"type":270,"name":461,"callback":1036,"file":856,"line":1037},"mbt_do_before_booktable_page",119,{"type":270,"name":891,"callback":1039,"file":856,"line":1040},"mbt_do_after_booktable_page",120,{"type":270,"name":360,"callback":1042,"file":856,"line":829},"mbt_enqueue_scripts",{"type":296,"name":1044,"callback":1045,"priority":197,"file":856,"line":749},"mbt_template_folders","mbt_add_default_template_folder",{"type":296,"name":1044,"callback":1047,"priority":357,"file":856,"line":328},"mbt_add_theme_template_folders",{"type":296,"name":1049,"callback":1050,"file":856,"line":1051},"jetpack_photon_override_image_downsize","__return_true",652,{"type":296,"name":1049,"callback":1050,"file":856,"line":1053},659,{"type":270,"name":652,"callback":1055,"file":1056,"line":353},"mbt_php_version_admin_notice","mybooktable.php",{"type":270,"name":1058,"callback":280,"file":1056,"line":1059},"plugins_loaded",103,{"type":296,"name":1061,"callback":1062,"priority":85,"file":1056,"line":1063},"plugin_row_meta","mbt_plugin_row_meta",122,[1065,1070,1074,1078,1081,1085,1088,1091,1095,1099,1103,1107,1110,1113,1116,1118,1121,1124,1127,1130,1133,1136,1139,1142],{"action":1066,"nopriv":49,"callback":1067,"hasNonce":1068,"hasCapCheck":1068,"file":273,"line":1069},"mbt_api_key_refresh","mbt_api_key_refresh_ajax",true,87,{"action":1071,"nopriv":49,"callback":1072,"hasNonce":1068,"hasCapCheck":49,"file":273,"line":1073},"mbt_style_pack_preview","mbt_style_pack_preview_ajax",88,{"action":1075,"nopriv":49,"callback":1076,"hasNonce":1068,"hasCapCheck":49,"file":273,"line":1077},"mbt_button_size_preview","mbt_button_size_preview_ajax",89,{"action":1079,"nopriv":49,"callback":1080,"hasNonce":1068,"hasCapCheck":49,"file":273,"line":264},"mbt_check_reviews","mbt_check_reviews_ajax",{"action":1082,"nopriv":49,"callback":1083,"hasNonce":1068,"hasCapCheck":49,"file":273,"line":1084},"mbt_google_api_key_refresh","mbt_google_api_key_refresh_ajax",91,{"action":1086,"nopriv":49,"callback":1086,"hasNonce":1068,"hasCapCheck":49,"file":273,"line":1087},"mbt_import_page_import_book",1331,{"action":1089,"nopriv":49,"callback":1090,"hasNonce":1068,"hasCapCheck":1068,"file":310,"line":219},"mbt_itunes_affiliate_token_refresh","mbt_itunes_affiliate_token_refresh_ajax",{"action":1092,"nopriv":49,"callback":1093,"hasNonce":1068,"hasCapCheck":1068,"file":310,"line":1094},"mbt_powells_partner_id_refresh","mbt_powells_partner_id_refresh_ajax",172,{"action":1096,"nopriv":49,"callback":1097,"hasNonce":1068,"hasCapCheck":1068,"file":310,"line":1098},"mbt_indiebound_affiliate_id_refresh","mbt_indiebound_affiliate_id_refresh_ajax",258,{"action":1100,"nopriv":49,"callback":1101,"hasNonce":1068,"hasCapCheck":1068,"file":310,"line":1102},"mbt_amazon_affiliate_code_refresh","mbt_amazon_affiliate_code_refresh_ajax",345,{"action":1104,"nopriv":49,"callback":1105,"hasNonce":1068,"hasCapCheck":1068,"file":310,"line":1106},"mbt_amazon_onelink_code_refresh","mbt_amazon_onelink_code_refresh_ajax",346,{"action":1108,"nopriv":49,"callback":1108,"hasNonce":1068,"hasCapCheck":49,"file":310,"line":1109},"mbt_amazon_buybutton_preview",585,{"action":1111,"nopriv":49,"callback":1111,"hasNonce":1068,"hasCapCheck":49,"file":310,"line":1112},"mbt_audible_buybutton_preview",661,{"action":1114,"nopriv":49,"callback":1114,"hasNonce":1068,"hasCapCheck":49,"file":310,"line":1115},"mbt_bnn_buybutton_preview",723,{"action":1117,"nopriv":49,"callback":1117,"hasNonce":1068,"hasCapCheck":49,"file":310,"line":673},"mbt_apple_buybutton_preview",{"action":1119,"nopriv":49,"callback":1120,"hasNonce":1068,"hasCapCheck":1068,"file":530,"line":278},"mbt_goodreads_developer_key_refresh","mbt_goodreads_developer_key_refresh_ajax",{"action":1122,"nopriv":49,"callback":1123,"hasNonce":1068,"hasCapCheck":49,"file":686,"line":452},"mbt_buybuttons_metabox","mbt_buybuttons_metabox_ajax",{"action":1125,"nopriv":49,"callback":1126,"hasNonce":1068,"hasCapCheck":49,"file":686,"line":274},"mbt_book_image_preview","mbt_book_image_preview_ajax",{"action":1128,"nopriv":49,"callback":1129,"hasNonce":1068,"hasCapCheck":49,"file":686,"line":278},"mbt_endorsement_image_preview","mbt_endorsement_image_preview_ajax",{"action":1131,"nopriv":49,"callback":1132,"hasNonce":1068,"hasCapCheck":49,"file":686,"line":27},"mbt_isbn_preview","mbt_isbn_preview_ajax",{"action":1134,"nopriv":49,"callback":1135,"hasNonce":1068,"hasCapCheck":49,"file":686,"line":237},"mbt_asin_preview","mbt_asin_preview_ajax",{"action":1137,"nopriv":49,"callback":1138,"hasNonce":1068,"hasCapCheck":49,"file":686,"line":85},"mbt_overview_image_preview","mbt_overview_image_preview_ajax",{"action":1140,"nopriv":49,"callback":1141,"hasNonce":1068,"hasCapCheck":49,"file":686,"line":313},"mbt_main_author_url","mbt_main_author_url_ajax",{"action":1143,"nopriv":49,"callback":1144,"hasNonce":1068,"hasCapCheck":49,"file":686,"line":541},"mbt_change_booksections_displaymode","mbt_change_booksections_displaymode_ajax",[],[1147],{"tag":4,"callback":1148,"file":583,"line":452},"mbt_mybooktable_shortcode",[1150],{"hook":671,"callback":671,"file":638,"line":429},{"dangerousFunctions":1152,"sqlUsage":1181,"outputEscaping":1191,"fileOperations":185,"externalRequests":274,"nonceChecks":947,"capabilityChecks":313,"bundledLibraries":1269},[1153,1157,1159,1161,1163,1164,1165,1167,1169,1170,1172,1174,1175,1177,1179],{"fn":1154,"file":1155,"line":576,"context":1156},"unserialize","includes\\examples.php","update_post_meta($post_id, 'mbt_buybuttons', unserialize('a:2:{i:0;a:3:{s:7:\"display\";s:6:\"button\";s",{"fn":1154,"file":1155,"line":473,"context":1158},"update_post_meta($post_id, 'mbt_endorsements', unserialize('a:1:{i:0;a:4:{s:8:\"image_id\";s:0:\"\";s:7:",{"fn":1154,"file":1155,"line":947,"context":1160},"update_post_meta($post_id, \"mbt_buybuttons\", unserialize('a:2:{i:0;a:3:{s:7:\"display\";s:6:\"button\";s",{"fn":1154,"file":1155,"line":959,"context":1162},"update_post_meta($post_id, 'mbt_endorsements', unserialize('a:3:{i:0;a:4:{s:8:\"image_id\";s:0:\"\";s:7:",{"fn":1154,"file":1155,"line":1034,"context":1160},{"fn":1154,"file":1155,"line":1073,"context":1162},{"fn":1154,"file":1155,"line":1166,"context":1160},114,{"fn":1154,"file":1155,"line":1168,"context":1162},117,{"fn":1154,"file":1155,"line":811,"context":1160},{"fn":1154,"file":1155,"line":1171,"context":1162},142,{"fn":1154,"file":1155,"line":1173,"context":1160},168,{"fn":1154,"file":1155,"line":328,"context":1162},{"fn":1154,"file":1155,"line":1176,"context":1160},193,{"fn":1154,"file":1155,"line":1178,"context":1162},196,{"fn":1154,"file":1155,"line":1180,"context":1160},222,{"prepared":274,"raw":1182,"locations":1183},4,[1184,1186,1187,1189],{"file":748,"line":886,"context":1185},"$wpdb->get_col() with variable interpolation",{"file":748,"line":922,"context":1185},{"file":748,"line":1188,"context":1185},95,{"file":748,"line":1190,"context":1185},113,{"escaped":1192,"rawEcho":353,"locations":1193},938,[1194,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1217,1219,1221,1223,1225,1227,1229,1231,1232,1233,1234,1235,1237,1239,1241,1242,1244,1246,1248,1250,1252,1254,1256,1258,1259,1261,1263,1265,1267],{"file":273,"line":1195,"context":1196},202,"raw output",{"file":273,"line":1198,"context":1196},308,{"file":273,"line":1200,"context":1196},360,{"file":273,"line":1202,"context":1196},441,{"file":273,"line":1204,"context":1196},518,{"file":273,"line":1206,"context":1196},521,{"file":273,"line":1208,"context":1196},628,{"file":273,"line":1210,"context":1196},1066,{"file":273,"line":1212,"context":1196},1141,{"file":273,"line":1214,"context":1196},1179,{"file":273,"line":1216,"context":1196},1180,{"file":273,"line":1218,"context":1196},1216,{"file":273,"line":1220,"context":1196},1357,{"file":273,"line":1222,"context":1196},1403,{"file":273,"line":1224,"context":1196},1466,{"file":273,"line":1226,"context":1196},1472,{"file":273,"line":1228,"context":1196},1473,{"file":273,"line":1230,"context":1196},1479,{"file":451,"line":835,"context":1196},{"file":451,"line":841,"context":1196},{"file":497,"line":850,"context":1196},{"file":530,"line":13,"context":1196},{"file":545,"line":1236,"context":1196},387,{"file":545,"line":1238,"context":1196},397,{"file":631,"line":1240,"context":1196},153,{"file":686,"line":335,"context":1196},{"file":686,"line":1243,"context":1196},567,{"file":686,"line":1245,"context":1196},577,{"file":686,"line":1247,"context":1196},578,{"file":686,"line":1249,"context":1196},595,{"file":686,"line":1251,"context":1196},604,{"file":748,"line":1253,"context":1196},313,{"file":748,"line":1255,"context":1196},323,{"file":748,"line":1257,"context":1196},333,{"file":748,"line":350,"context":1196},{"file":748,"line":1260,"context":1196},355,{"file":779,"line":1262,"context":1196},162,{"file":779,"line":1264,"context":1196},177,{"file":779,"line":1266,"context":1196},220,{"file":779,"line":1268,"context":1196},236,[],[1271,1287,1298,1311,1322,1333,1343,1353,1362,1371,1381,1399,1413,1424],{"entryPoint":1272,"graph":1273,"unsanitizedCount":70,"severity":1286},"mbt_style_pack_preview_ajax (includes\\admin_pages.php:207)",{"nodes":1274,"edges":1284},[1275,1279],{"id":1276,"type":1277,"label":1278,"file":273,"line":853},"n0","source","$_REQUEST['data']",{"id":1280,"type":1281,"label":1282,"file":273,"line":853,"wp_function":1283},"n1","sink","echo() [XSS]","echo",[1285],{"from":1276,"to":1280,"sanitized":1068},"low",{"entryPoint":1288,"graph":1289,"unsanitizedCount":70,"severity":1286},"mbt_render_import_page (includes\\admin_pages.php:1361)",{"nodes":1290,"edges":1296},[1291,1294],{"id":1276,"type":1277,"label":1292,"file":273,"line":1293},"$_GET",1368,{"id":1280,"type":1281,"label":1282,"file":273,"line":1295,"wp_function":1283},1462,[1297],{"from":1276,"to":1280,"sanitized":1068},{"entryPoint":1299,"graph":1300,"unsanitizedCount":70,"severity":1286},"\u003Cadmin_pages> (includes\\admin_pages.php:0)",{"nodes":1301,"edges":1308},[1302,1303,1304,1306],{"id":1276,"type":1277,"label":1278,"file":273,"line":853},{"id":1280,"type":1281,"label":1282,"file":273,"line":853,"wp_function":1283},{"id":1305,"type":1277,"label":1292,"file":273,"line":1293},"n2",{"id":1307,"type":1281,"label":1282,"file":273,"line":1295,"wp_function":1283},"n3",[1309,1310],{"from":1276,"to":1280,"sanitized":1068},{"from":1305,"to":1307,"sanitized":1068},{"entryPoint":1312,"graph":1313,"unsanitizedCount":70,"severity":1286},"mbt_parse_custom_importer_form (includes\\extras\\customimport.php:40)",{"nodes":1314,"edges":1320},[1315,1317],{"id":1276,"type":1277,"label":1316,"file":497,"line":910},"$_FILES",{"id":1280,"type":1281,"label":1318,"file":497,"line":947,"wp_function":1319},"update_option() [Settings Manipulation]","update_option",[1321],{"from":1276,"to":1280,"sanitized":1068},{"entryPoint":1323,"graph":1324,"unsanitizedCount":70,"severity":1286},"\u003Ccustomimport> (includes\\extras\\customimport.php:0)",{"nodes":1325,"edges":1330},[1326,1327,1328,1329],{"id":1276,"type":1277,"label":1316,"file":497,"line":910},{"id":1280,"type":1281,"label":1318,"file":497,"line":947,"wp_function":1319},{"id":1305,"type":1277,"label":1316,"file":497,"line":910},{"id":1307,"type":1281,"label":1282,"file":497,"line":850,"wp_function":1283},[1331,1332],{"from":1276,"to":1280,"sanitized":1068},{"from":1305,"to":1307,"sanitized":1068},{"entryPoint":1334,"graph":1335,"unsanitizedCount":70,"severity":1286},"mbt_main_author_url_ajax (includes\\metaboxes.php:82)",{"nodes":1336,"edges":1341},[1337,1339],{"id":1276,"type":1277,"label":1338,"file":686,"line":1073},"$_REQUEST",{"id":1280,"type":1281,"label":1282,"file":686,"line":1340,"wp_function":1283},102,[1342],{"from":1276,"to":1280,"sanitized":1068},{"entryPoint":1344,"graph":1345,"unsanitizedCount":70,"severity":1286},"mbt_overview_image_preview_ajax (includes\\metaboxes.php:222)",{"nodes":1346,"edges":1351},[1347,1350],{"id":1276,"type":1277,"label":1348,"file":686,"line":1349},"$_REQUEST['image_id']",224,{"id":1280,"type":1281,"label":1282,"file":686,"line":1349,"wp_function":1283},[1352],{"from":1276,"to":1280,"sanitized":1068},{"entryPoint":1354,"graph":1355,"unsanitizedCount":70,"severity":1286},"mbt_isbn_preview_ajax (includes\\metaboxes.php:244)",{"nodes":1356,"edges":1360},[1357,1359],{"id":1276,"type":1277,"label":1278,"file":686,"line":1358},247,{"id":1280,"type":1281,"label":1282,"file":686,"line":1358,"wp_function":1283},[1361],{"from":1276,"to":1280,"sanitized":1068},{"entryPoint":1363,"graph":1364,"unsanitizedCount":70,"severity":1286},"mbt_asin_preview_ajax (includes\\metaboxes.php:276)",{"nodes":1365,"edges":1369},[1366,1368],{"id":1276,"type":1277,"label":1278,"file":686,"line":1367},279,{"id":1280,"type":1281,"label":1282,"file":686,"line":1367,"wp_function":1283},[1370],{"from":1276,"to":1280,"sanitized":1068},{"entryPoint":1372,"graph":1373,"unsanitizedCount":70,"severity":1286},"mbt_change_booksections_displaymode_ajax (includes\\metaboxes.php:810)",{"nodes":1374,"edges":1379},[1375,1377],{"id":1276,"type":1277,"label":1338,"file":686,"line":1376},816,{"id":1280,"type":1281,"label":1282,"file":686,"line":1378,"wp_function":1283},817,[1380],{"from":1276,"to":1280,"sanitized":1068},{"entryPoint":1382,"graph":1383,"unsanitizedCount":70,"severity":1286},"\u003Cmetaboxes> (includes\\metaboxes.php:0)",{"nodes":1384,"edges":1395},[1385,1387,1388,1389,1390,1393],{"id":1276,"type":1277,"label":1386,"file":686,"line":1073},"$_REQUEST (x3)",{"id":1280,"type":1281,"label":1282,"file":686,"line":1340,"wp_function":1283},{"id":1305,"type":1277,"label":1348,"file":686,"line":1349},{"id":1307,"type":1281,"label":1282,"file":686,"line":1349,"wp_function":1283},{"id":1391,"type":1277,"label":1392,"file":686,"line":1358},"n4","$_REQUEST['data'] (x2)",{"id":1394,"type":1281,"label":1282,"file":686,"line":1358,"wp_function":1283},"n5",[1396,1397,1398],{"from":1276,"to":1280,"sanitized":1068},{"from":1305,"to":1307,"sanitized":1068},{"from":1391,"to":1394,"sanitized":1068},{"entryPoint":1400,"graph":1401,"unsanitizedCount":185,"severity":1286},"mbt_save_taxonomy_image_edit_form (includes\\taxonomies.php:184)",{"nodes":1402,"edges":1410},[1403,1406,1409],{"id":1276,"type":1277,"label":1404,"file":779,"line":1405},"$_REQUEST['taxonomy']",187,{"id":1280,"type":1407,"label":1408,"file":779,"line":1405},"transform","→ mbt_save_taxonomy_image()",{"id":1305,"type":1281,"label":1318,"file":638,"line":1001,"wp_function":1319},[1411,1412],{"from":1276,"to":1280,"sanitized":49},{"from":1280,"to":1305,"sanitized":49},{"entryPoint":1414,"graph":1415,"unsanitizedCount":185,"severity":1286},"mbt_save_taxonomy_image_add_form (includes\\taxonomies.php:192)",{"nodes":1416,"edges":1421},[1417,1419,1420],{"id":1276,"type":1277,"label":1404,"file":779,"line":1418},195,{"id":1280,"type":1407,"label":1408,"file":779,"line":1418},{"id":1305,"type":1281,"label":1318,"file":638,"line":1001,"wp_function":1319},[1422,1423],{"from":1276,"to":1280,"sanitized":49},{"from":1280,"to":1305,"sanitized":49},{"entryPoint":1425,"graph":1426,"unsanitizedCount":28,"severity":1286},"\u003Ctaxonomies> (includes\\taxonomies.php:0)",{"nodes":1427,"edges":1432},[1428,1430,1431],{"id":1276,"type":1277,"label":1429,"file":779,"line":1405},"$_REQUEST['taxonomy'] (x2)",{"id":1280,"type":1407,"label":1408,"file":779,"line":1405},{"id":1305,"type":1281,"label":1318,"file":638,"line":1001,"wp_function":1319},[1433,1434],{"from":1276,"to":1280,"sanitized":49},{"from":1280,"to":1305,"sanitized":49},{"summary":1436,"deductions":1437},"The mybooktable plugin v3.6.0 exhibits a mixed security posture. On the positive side, the plugin demonstrates good practices regarding input validation and output sanitization, with a very high percentage of properly escaped outputs and robust nonce and capability checks on its entry points. The limited attack surface, with no unprotected AJAX handlers or REST API routes, is also a positive indicator.\n\nHowever, significant concerns arise from the plugin's vulnerability history and static analysis findings. The presence of 7 known CVEs, with one high-severity unpatched vulnerability, is a major red flag. The common vulnerability types of Cross-site Scripting and CSRF suggest potential for attackers to manipulate user input or actions. The static analysis also flags the use of the dangerous `unserialize` function, which can be a vector for remote code execution if not handled with extreme care and proper input validation. While taint analysis shows no critical or high severity unsanitized flows, the three flows with unsanitized paths warrant further investigation.\n\nIn conclusion, while the plugin has strengths in its modern security practices for entry points and output handling, the substantial historical vulnerability count, particularly the unpatched high-severity issue, and the presence of the `unserialize` function introduce significant risks. Proactive patching of known vulnerabilities and a thorough audit of `unserialize` usage are paramount.",[1438,1440,1442,1444,1446],{"reason":1439,"points":695},"Currently unpatched high severity CVE",{"reason":1441,"points":85},"Use of dangerous unserialize function",{"reason":1443,"points":237},"Flows with unsanitized paths (3)",{"reason":1445,"points":278},"Total known CVEs (7)",{"reason":1447,"points":1182},"SQL queries using prepared statements below 100%","2026-03-16T18:42:48.610Z",{"wat":1450,"direct":1465},{"assetPaths":1451,"generatorPatterns":1457,"scriptPaths":1458,"versionParams":1459},[1452,1453,1454,1455,1456],"\u002Fwp-content\u002Fplugins\u002Fmybooktable\u002Fcss\u002Fadmin-global-style.css","\u002Fwp-content\u002Fplugins\u002Fmybooktable\u002Fjs\u002Fadmin-global.js","\u002Fwp-content\u002Fplugins\u002Fmybooktable\u002Fcss\u002Fadmin-style.css","\u002Fwp-content\u002Fplugins\u002Fmybooktable\u002Fcss\u002Fjquery-ui.css","\u002Fwp-content\u002Fplugins\u002Fmybooktable\u002Fjs\u002Fadmin.js",[],[1453,1456],[1460,1461,1462,1463,1464],"mybooktable\u002Fcss\u002Fadmin-global-style.css?ver=","mybooktable\u002Fjs\u002Fadmin-global.js?ver=","mybooktable\u002Fcss\u002Fadmin-style.css?ver=","mybooktable\u002Fcss\u002Fjquery-ui.css?ver=","mybooktable\u002Fjs\u002Fadmin.js?ver=",{"cssClasses":1466,"htmlComments":1468,"htmlAttributes":1469,"restEndpoints":1471,"jsGlobals":1472,"shortcodeOutput":1474},[1467],"mbt-admin-page",[],[1470],"data-mbt-options",[],[1473],"mbt_admin_pages_i18n",[],{"error":1068,"url":1476,"statusCode":1477,"statusMessage":1478,"message":1478},"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fmybooktable\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":70,"versions":1480},[]]