[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fgJu0whJYM1yyQ_itkntkNH1WyMOgUDv7oVL0pol-Rz8":3,"$fm6CxXf44sPQcaZEjaugRwORpwcc8DtbdhgqwN1K_0Gk":226,"$fVHp2iV9GOudki4BT-sqvDHQ-kn7tCh_RqTQoaadW0pI":231},{"slug":4,"name":5,"version":6,"author":4,"author_profile":7,"description":8,"short_description":9,"active_installs":10,"downloaded":11,"rating":12,"num_ratings":12,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":12,"unpatched_count":12,"last_vuln_date":26,"fetched_at":27,"discovery_status":28,"vulnerabilities":29,"developer":30,"crawl_stats":26,"alternatives":35,"analysis":125,"fingerprints":210},"wodhopper","WODHOPPER","1.0.6","https:\u002F\u002Fprofiles.wordpress.org\u002Fwodhopper\u002F","\u003Cp>The WODHOPPER plugin allows your site to leverage all the powers of WODHOPPER through your\u003Cbr \u002F>\nWordPress admin portal. This will allow you to things such as:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Place the WODHOPPER side-widget on your desktop and mobile site (for RSVP and Scoreboard)\u003C\u002Fli>\n\u003Cli>Auto embed scoreboards into posts (Coming Soon)\u003C\u002Fli>\n\u003Cli>Create\u002FModify the WOD in a post (past, present or future) (Coming Soon)\u003C\u002Fli>\n\u003Cli>Modify and configure the location and look of the scoreboard button (Coming Soon)\u003C\u002Fli>\n\u003Cli>View and edit your class schedule, as well as have it embedded into a post with RSVP links (Coming Soon)\u003C\u002Fli>\n\u003Cli>Modify and configure the lead generation contact form (Coming Soon)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Note: The WODHOPPER plugin will only function properly for current WODHOPPER clients. If you\u003Cbr \u002F>\nare not an affiliate with WODHOPPER this widget will not display properly.\u003C\u002Fp>\n\u003Cp>Interested in \u003Ca href=\"http:\u002F\u002Fwodhopper.com\" rel=\"nofollow ugc\">WODHOPPER\u003C\u002Fa>? \u003Ca href=\"mailto:betarequest@wodhopper.com\" rel=\"nofollow ugc\">Contact Us for a demo\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>External Links\u003C\u002Fh3>\n\u003Cp>WODHOPPER inserts javascript into your blog that contains links to external pages.\u003Cbr \u002F>\nBy installing this plugin, you give WODHOPPER permission to embed these external links.\u003C\u002Fp>\n","Easily embed, manage and configure WODHOPPER into WordPress.",10,2206,0,"2013-01-09T15:41:00.000Z","3.5.2","3.0","",[18,19,20,21,22],"affiliate","crossfit","embed","scoreboard","wod","http:\u002F\u002Fwodhopper.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwodhopper.1.0.6.zip",85,null,"2026-04-16T10:56:18.058Z","no_bundle",[],{"slug":4,"display_name":4,"profile_url":7,"plugin_count":31,"total_installs":10,"avg_security_score":25,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},1,30,84,"2026-05-19T21:15:52.090Z",[36,56,72,91,109],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":44,"downloaded":45,"rating":44,"num_ratings":46,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":50,"tags":51,"homepage":53,"download_link":54,"security_score":55,"vuln_count":12,"unpatched_count":12,"last_vuln_date":26,"fetched_at":27},"wp-wdfy-integration-of-wodify","WP WDFY Integration of Wodify","4.11","osti47","https:\u002F\u002Fprofiles.wordpress.org\u002Fosti47\u002F","\u003Cp>\u003Cstrong>WP-WDFY\u003C\u002Fstrong> integrates information from the online performance tracking software \u003Cstrong>Wodify\u003C\u002Fstrong> into your WordPress based web site.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Important update July 2024\u003C\u002Fstrong>\u003Cbr \u002F>\nPlease make sure to update a.s.a.p. – Wodify is updating the APIs that this plugin uses, any version \u003C4.0 of this plugin will stop working soon.\u003C\u002Fp>\n\u003Cp>DISCLAIMER: The plugin and its author are in no way associated with or endorsed by WODIFY. The plugin relies on the API provided by Wodify.\u003C\u002Fp>\n\u003Cp>I would still like to thank Wodify for acknowledging the plugin and supporting me to keep it working.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Automatic WOD posting\u003C\u002Fstrong>: Automatically create posts from Wodify WODs including images.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Upcoming Classes widget\u003C\u002Fstrong>: Displays the upcoming classes from Wodify for a selected number of days. \u003C\u002Fli>\n\u003Cli>\u003Cstrong>WOD Widget\u003C\u002Fstrong>: Displays the WOD of a selected day, program, and location.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WOD shortcode\u003C\u002Fstrong>:  Insert a selected WOD into a post, page, …\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WOD block\u003C\u002Fstrong>: Insert a selected WOD into a page or post using the block editor\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Wodify link shortcode\u003C\u002Fstrong>: Inserts responsive text or logo links to the Wodify web app into posts, pages, …\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Upcoming classes block\u003C\u002Fstrong>: Insert a list of upcoming classes into a page or post using the block editor\u003C\u002Fli>\n\u003Cli>\u003Cstrong>REST-API for speech output via Alexa\u002FSiri\u003C\u002Fstrong>: Use the REST-API in combination with your own Alexa Skill.\u003C\u002Fli>\n\u003C\u002Ful>\n","Display Wodify information directly within your Wordpress blog.",100,10464,3,"2025-04-30T08:30:00.000Z","6.8.5","4.6","5.6",[19,52],"wodify","http:\u002F\u002Famrap42.28a.de\u002Fwp-wdfy-integration-of-wodfiy-wordpress-plugin\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-wdfy-integration-of-wodify.zip",92,{"slug":57,"name":57,"version":58,"author":59,"author_profile":60,"description":61,"short_description":62,"active_installs":10,"downloaded":63,"rating":12,"num_ratings":12,"last_updated":64,"tested_up_to":14,"requires_at_least":65,"requires_php":16,"tags":66,"homepage":70,"download_link":71,"security_score":25,"vuln_count":12,"unpatched_count":12,"last_vuln_date":26,"fetched_at":27},"embedbolcom","0.1","swis","https:\u002F\u002Fprofiles.wordpress.org\u002Fswis\u002F","\u003Cp>Registers embedbol.com as an oEmbed provider allowing for easy embedding of products from bol.com.\u003C\u002Fp>\n","Registers embedbol.com as an oEmbed provider allowing for easy embedding of products from bol.com.",1383,"2017-05-17T08:02:00.000Z","3.5",[18,67,68,20,69],"bol","bol-com","oembed","https:\u002F\u002Fembedbol.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fembedbolcom.zip",{"slug":73,"name":74,"version":75,"author":76,"author_profile":77,"description":78,"short_description":79,"active_installs":10,"downloaded":80,"rating":12,"num_ratings":12,"last_updated":81,"tested_up_to":82,"requires_at_least":83,"requires_php":84,"tags":85,"homepage":16,"download_link":90,"security_score":55,"vuln_count":12,"unpatched_count":12,"last_vuln_date":26,"fetched_at":27},"katalys-shop","Katalys Shops Addon: Merchant Bridge","1.1.23","katalysdev","https:\u002F\u002Fprofiles.wordpress.org\u002Fkatalysdev\u002F","\u003Cp>Increase conversions and lower Customer Acquisition Cost. \u003Ca href=\"https:\u002F\u002Fkatalys.com\u002F\" rel=\"nofollow ugc\">Katalys\u003C\u002Fa> Our simplest plugin yet brings you the power of the Katalys Shop. The Katalys Shop is a frictionless, fully responsive e-commerce technology that allows product discovery and product purchase to take place anywhere on the web. In this case the plugin makes sure products can be imported into Katalys Shops directly from your products in WooCommerce, as well as pushing orders into your fulfillment flow automatically. All the while using your WooCommerce installation and your own payment gateways. The Katalys Shop allows you to sell more, in more places, through extending products in your WooCommerce installation to any content on the web and beyond.\u003Cbr \u002F>\nIn a couple of clicks you can get set up with the plugin and start creating Katalys Shops!\u003C\u002Fp>\n\u003Cp>Do you want more customers for your eCommerce brand? \u003Ca href=\"https:\u002F\u002Fkatalys.com\u002F\" rel=\"nofollow ugc\">Katalys\u003C\u002Fa> is the performance-based advertising network for transformational health products and brands — and our plugin opens the door to high-converting in-market traffic from the Advertiser Network.\u003Cbr \u002F>\nOur plugin enables technical integration in one, no-hassle step. It listens for order-related hooks within your WordPress \u002F WooCommerce installation and reports to the Katalys Attribution Engine when the order is complete. Our back-end system does the rest, analyzing and reporting on how much growth Katalys is driving for you, month after month.\u003C\u002Fp>\n\u003Ch3>Get started with Katalys Shops\u003C\u002Fh3>\n\u003Cp>Ready to drive more sales? It’s easy to get started:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Fill out our form to set up an account.\u003C\u002Fli>\n\u003Cli>We will review your application and may ask for verification before approving your account. Once it’s approved, we’ll activate your account on our platform.\u003C\u002Fli>\n\u003Cli>Finally, install our \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fkatalys-shop\u002F\" rel=\"ugc\">free WordPress plugin\u003C\u002Fa> to complete the required Technical Integration.  The plugin will automatically configure itself based on your approved domain.\u003C\u002Fli>\n\u003Cli>Questions? Contact us at \u003Ca href=\"support@katalys.com\" rel=\"nofollow ugc\">support@katalys.com\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Our pricing structure is built specifically for your business needs. You only pay when the Katalys Shop drives verified\u002Fpaid orders! Want to talk about other options? Reach out and talk to us about it.\u003C\u002Fp>\n\u003Ch3>Drive More Sales, Automatically\u003C\u002Fh3>\n\u003Cp>The Katalys Shop plugin for WordPress \u002F WooCommerce enables you to easily and automatically drive more eCommerce sales. It’s designed to help you succeed in:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Having product discovery and product purchase take place anywhere on the web\u003C\u002Fli>\n\u003Cli>Starting conversations and connections with prospective customers for your products\u002Fservices earlier\u003C\u002Fli>\n\u003Cli>Close sales faster at point of discovery when possible\u003C\u002Fli>\n\u003Cli>Generating more sales, every day\u003C\u002Fli>\n\u003Cli>Paying only for sales that really happen\u003C\u002Fli>\n\u003Cli>Driving more traffic to your website\u003C\u002Fli>\n\u003Cli>Making connections with prospective customers for your products\u002Fservices\u003C\u002Fli>\n\u003Cli>Attracting qualified leads to sign up for your mailing list\u003C\u002Fli>\n\u003Cli>Generating additional SEO-friendly links from publishers\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Feature Highlights\u003C\u002Fh3>\n\u003Ch3>Easily Create your Katalys Shops\u003C\u002Fh3>\n\u003Cp>The Katalys plugin for WordPress \u002F WooCommerce helps you collect data in support of an effective execution of campaigns:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Point of discovery sales vs. conversions coming later through your site (you’ll see both)\u003C\u002Fli>\n\u003Cli>What deployments and placements work best for you\u003C\u002Fli>\n\u003Cli>Special offers and product launches taken to another level\u003C\u002Fli>\n\u003Cli>Perfect for lowering your customer acquisition costs\u003C\u002Fli>\n\u003Cli>Create CPS, CPA, or CPL offers\u003C\u002Fli>\n\u003Cli>Track hits and sales across your eCommerce website\u003C\u002Fli>\n\u003Cli>Set up special business rules and conditions for custom offers\u003C\u002Fli>\n\u003Cli>End-to-end campaign management\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Plugin Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Easy import of products into Katalys Shops\u003C\u002Fli>\n\u003Cli>Orders go automatically into your normal fulfillment flow\u003C\u002Fli>\n\u003Cli>Use your own payment gateways\u003C\u002Fli>\n\u003Cli>Reporting is crystal clear and helps you improve campaigns\u003C\u002Fli>\n\u003Cli>Increase transparency through granular reporting and intelligent dashboards\u003C\u002Fli>\n\u003Cli>Industry’s only built-in fraud protection, which automatically detects and rejects click fraud for all Katalys customers.\u003C\u002Fli>\n\u003Cli>SOC 2 Type II certification, EU-U.S. Privacy Shield certification, GDPR privacy certification, and other measures.\u003C\u002Fli>\n\u003Cli>With 99.9% system uptime and the most extensive documentation in the industry, you can relax knowing the best team in the business has got your back.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Why Brands Love Katalys Shops\u003C\u002Fh3>\n\u003Ch3>Acquire new customers and extend your shops to anywhere!\u003C\u002Fh3>\n\u003Cp>You can use the shops in all of your existing relationships with publishers, marketers and influencers. Who drives the most sales? You’ll soon know for sure. Or talk to us about how we can acquire customers for you through our connections with hundreds of curated publishers, marketers, and influencers around the world. Katalys Shops can be deployed in content, in campaigns, in video and has even been used in ads. And you only pay when partners and publishers generate sales.\u003C\u002Fp>\n\u003Ch3>Ecommerce Industry Knowledge\u003C\u002Fh3>\n\u003Cp>Our publishers and advertisers are in experienced hands when it comes to structuring offers and driving performance. We can help get those deals across the line.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cem>Forward leaning\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>Let us help you grow your customer base and eCommerce revenue with our collective decades of experience.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cem>Your business is important to us\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>We only allow transparent, transformative brands and safe, quality, compliant traffic from our publishers.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cem>Long, Strong Relationships\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>We focus on building sustainable relationships with our Advertisers and Publishers, so everyone wins.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cem>Born to Grow\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>Driving results on performance is in our blood. Clicks and impressions are not enough if you want to grow a business.\u003C\u002Fp>\n\u003Ch3>Privacy Statement\u003C\u002Fh3>\n\u003Cp>Your customers are your customers! Collected data is only used to attribute your sales growth, where appropriate, in accordance with our Privacy Policy.  Katalys partners with brands to create strong relationships to help you drive performance — our focus is on your success!\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n","Provides automatic order fulfillment integration with Katalys Shop orders for WooCommerce.",1533,"2025-05-05T16:33:00.000Z","6.3.8","3.0.0","7.0",[18,86,87,88,89],"ecommerce","embedded-commerce","revoffers","shop","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fkatalys-shop.zip",{"slug":92,"name":93,"version":94,"author":95,"author_profile":96,"description":97,"short_description":98,"active_installs":10,"downloaded":99,"rating":12,"num_ratings":12,"last_updated":100,"tested_up_to":101,"requires_at_least":102,"requires_php":103,"tags":104,"homepage":107,"download_link":108,"security_score":44,"vuln_count":12,"unpatched_count":12,"last_vuln_date":26,"fetched_at":27},"rexultz-product-feeds","Rexultz Product Feeds","2.2.2","rexultz","https:\u002F\u002Fprofiles.wordpress.org\u002Frexultz\u002F","\u003Cp>Rexultz Product Feeds makes it easy to embed your Rexultz affiliate product feeds on your WordPress site. Display beautiful product cards, comparison tables, sliders, and grids with just a few clicks.\u003Cbr \u002F>\nRexultz fetches templates from app.rexultz.com – depending how you created the templates, javascript might be part of that and a un-escaped with wp-kses.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Server-Side Rendering\u003C\u002Fstrong> – Feed HTML is rendered on your server for better SEO and performance\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Live Editor Preview\u003C\u002Fstrong> – See your feed directly in the Gutenberg editor\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Gutenberg Block\u003C\u002Fstrong> – Add product feeds using the visual block editor with real-time preview\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shortcode Support\u003C\u002Fstrong> – Use \u003Ccode>[rexultz feed=\"123\"]\u003C\u002Fcode> or the legacy \u003Ccode>[REXULTZ id=\"123\" arguments]\u003C\u002Fcode> format\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Smart Caching\u003C\u002Fstrong> – Feed HTML is cached for 5 minutes to optimize performance\u003C\u002Fli>\n\u003Cli>\u003Cstrong>No JavaScript Required\u003C\u002Fstrong> – Feeds work even with JavaScript disabled\u003C\u002Fli>\n\u003Cli>\u003Cstrong>SEO Friendly\u003C\u002Fstrong> – Content is rendered server-side for search engine visibility\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How It Works\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Create your product feed in your \u003Ca href=\"https:\u002F\u002Fapp.rexultz.com\" rel=\"nofollow ugc\">Rexultz dashboard\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Copy your feed ID\u003C\u002Fli>\n\u003Cli>Add it using the Gutenberg block or shortcode\u003C\u002Fli>\n\u003Cli>The feed content is fetched from Rexultz API and rendered server-side\u003C\u002Fli>\n\u003Cli>The rendered HTML is cached for optimal performance\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Shortcode Examples\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>[rexultz feed=\"12345\"]\n\n[rexultz id=\"12345\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Legacy format (also supported):\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[REXULTZ id=\"12345\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Third-Party Service\u003C\u002Fh4>\n\u003Cp>This plugin connects to the Rexultz API (app.rexultz.com) to fetch pre-rendered feed HTML. This is required for the plugin to function.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Service URL: \u003Ca href=\"https:\u002F\u002Fapp.rexultz.com\" rel=\"nofollow ugc\">https:\u002F\u002Fapp.rexultz.com\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Terms of Service: \u003Ca href=\"https:\u002F\u002Frexultz.com\u002Fterms\" rel=\"nofollow ugc\">https:\u002F\u002Frexultz.com\u002Fterms\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Privacy Policy: \u003Ca href=\"https:\u002F\u002Frexultz.com\u002Fprivacy\" rel=\"nofollow ugc\">https:\u002F\u002Frexultz.com\u002Fprivacy\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Data transmitted: Feed ID only. No personal user data is collected or transmitted.\u003C\u002Fp>\n","Embed Rexultz product feeds using shortcodes or the Gutenberg block editor with server-side rendering.",147,"2026-02-08T08:51:00.000Z","6.9.4","6.9","8.0",[18,20,105,106],"product-cards","product-feed","https:\u002F\u002Frexultz.com\u002Fintegrations\u002Fwordpress","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Frexultz-product-feeds.zip",{"slug":110,"name":111,"version":112,"author":113,"author_profile":114,"description":115,"short_description":116,"active_installs":10,"downloaded":117,"rating":44,"num_ratings":31,"last_updated":118,"tested_up_to":119,"requires_at_least":15,"requires_php":16,"tags":120,"homepage":122,"download_link":123,"security_score":25,"vuln_count":12,"unpatched_count":12,"last_vuln_date":26,"fetched_at":124},"wodtogether-whiteboards","WODTogether Whiteboards","3.3.1","bholub","https:\u002F\u002Fprofiles.wordpress.org\u002Fbholub\u002F","\u003Cp>Allows embedding of WODTogether whiteboards into your blog posts automatically.\u003C\u002Fp>\n\u003Cp>Learn more about \u003Ca href=\"http:\u002F\u002Fwodtogether.com\u002F\" title=\"WODTogether.com\" rel=\"nofollow ugc\">WODTogether\u003C\u002Fa>\u003C\u002Fp>\n","Allows embedding of WODTogether whiteboards into your blog posts automatically.",2889,"2018-02-12T04:46:00.000Z","4.9.29",[19,20,121],"post","http:\u002F\u002Fwodtogether.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwodtogether-whiteboards.3.3.1.zip","2026-04-06T09:54:40.288Z",{"attackSurface":126,"codeSignals":169,"taintFlows":199,"riskAssessment":200,"analyzedAt":209},{"hooks":127,"ajaxHandlers":161,"restRoutes":162,"shortcodes":163,"cronEvents":168,"entryPointCount":31,"unprotectedCount":12},[128,134,138,144,148,153,157],{"type":129,"name":130,"callback":131,"file":132,"line":133},"action","admin_menu","wodhopper_create_menu","util\\wodhopper_options.php",16,{"type":129,"name":135,"callback":136,"file":132,"line":137},"admin_init","wodhopper_admin_init",17,{"type":139,"name":140,"callback":141,"file":142,"line":143},"filter","mce_external_plugins","add_wodhopper_tinymce_scoreboard_plugin","util\\wodhopper_tinymce.php",23,{"type":139,"name":145,"callback":146,"file":142,"line":147},"mce_buttons","register_wodhopper_tinymce_scoreboard_button",24,{"type":129,"name":149,"callback":150,"file":151,"line":152},"wp_head","introduce_wodhopper","wodhopper.php",43,{"type":139,"name":154,"callback":155,"file":151,"line":156},"wp_insert_post_data","save_post_add_wodhopper_scoreboard",52,{"type":129,"name":158,"callback":159,"file":151,"line":160},"init","wodhopper_add_tinymce_buttons",65,[],[],[164],{"tag":165,"callback":166,"file":151,"line":167},"wodhopper_scoreboard_button","wodhopper_scoreboard_button_shortcode_func",59,[],{"dangerousFunctions":170,"sqlUsage":171,"outputEscaping":173,"fileOperations":12,"externalRequests":12,"nonceChecks":12,"capabilityChecks":194,"bundledLibraries":195},[],{"prepared":12,"raw":12,"locations":172},[],{"escaped":12,"rawEcho":10,"locations":174},[175,179,181,183,185,186,187,189,190,192],{"file":176,"line":177,"context":178},"util\\wodhopper_settings_fields.php",26,"raw output",{"file":176,"line":180,"context":178},50,{"file":176,"line":182,"context":178},53,{"file":176,"line":184,"context":178},56,{"file":176,"line":167,"context":178},{"file":176,"line":33,"context":178},{"file":176,"line":188,"context":178},88,{"file":176,"line":55,"context":178},{"file":176,"line":191,"context":178},132,{"file":176,"line":193,"context":178},142,2,[196],{"name":197,"version":26,"knownCves":198},"TinyMCE",[],[],{"summary":201,"deductions":202},"The \"wodhopper\" plugin version 1.0.6 presents a mixed security posture. On the positive side, static analysis reveals no dangerous functions, file operations, or external HTTP requests, and all SQL queries utilize prepared statements. The plugin also demonstrates some good practices by including capability checks and bundling the TinyMCE library, which is standard. The absence of known vulnerabilities (CVEs) in its history is a strong indicator of past security diligence.\n\nHowever, a significant concern arises from the complete lack of output escaping across all identified output points. This means that any dynamic content generated by the plugin, if it originates from user-supplied input or external sources, is not being properly sanitized before being displayed. This creates a high risk for Cross-Site Scripting (XSS) vulnerabilities, allowing attackers to inject malicious scripts into the website that could then be executed by other users. The lack of nonce checks, while not directly tied to a specific entry point in this analysis, is generally a good practice for preventing Cross-Site Request Forgery (CSRF) attacks on AJAX actions.\n\nIn conclusion, while the plugin shows strength in its handling of SQL and absence of known vulnerabilities, the critical flaw of unescaped output represents a substantial risk that needs immediate attention. The plugin's attack surface is minimal, but the vulnerability within that surface is significant.",[203,206],{"reason":204,"points":205},"All identified outputs are unescaped",20,{"reason":207,"points":208},"No nonce checks on any entry points",5,"2026-03-17T01:44:11.294Z",{"wat":211,"direct":218},{"assetPaths":212,"generatorPatterns":214,"scriptPaths":215,"versionParams":217},[213],"\u002Fwp-content\u002Fplugins\u002Fwodhopper\u002Fassets\u002Fcss\u002Fwodhopper_scoreboard_styles.css",[],[216],"http:\u002F\u002Fapp.wodhopper.com\u002Fjs\u002Fwodhopper.js",[],{"cssClasses":219,"htmlComments":220,"htmlAttributes":221,"restEndpoints":222,"jsGlobals":223,"shortcodeOutput":224},[],[],[],[],[],[225],"[wodhopper_scoreboard_button placement=\"\" wod_date=\"\"]",{"error":227,"url":228,"statusCode":229,"statusMessage":230,"message":230},true,"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fwodhopper\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":232,"versions":233},6,[234,240,247,254,261,268],{"version":6,"download_url":24,"svn_tag_url":235,"released_at":26,"has_diff":236,"diff_files_changed":237,"diff_lines":26,"trac_diff_url":238,"vulnerabilities":239,"is_current":227},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwodhopper\u002Ftags\u002F1.0.6\u002F",false,[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwodhopper%2Ftags%2F1.0.5&new_path=%2Fwodhopper%2Ftags%2F1.0.6",[],{"version":241,"download_url":242,"svn_tag_url":243,"released_at":26,"has_diff":236,"diff_files_changed":244,"diff_lines":26,"trac_diff_url":245,"vulnerabilities":246,"is_current":236},"1.0.5","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwodhopper.1.0.5.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwodhopper\u002Ftags\u002F1.0.5\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwodhopper%2Ftags%2F1.0.4&new_path=%2Fwodhopper%2Ftags%2F1.0.5",[],{"version":248,"download_url":249,"svn_tag_url":250,"released_at":26,"has_diff":236,"diff_files_changed":251,"diff_lines":26,"trac_diff_url":252,"vulnerabilities":253,"is_current":236},"1.0.4","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwodhopper.1.0.4.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwodhopper\u002Ftags\u002F1.0.4\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwodhopper%2Ftags%2F1.0.3&new_path=%2Fwodhopper%2Ftags%2F1.0.4",[],{"version":255,"download_url":256,"svn_tag_url":257,"released_at":26,"has_diff":236,"diff_files_changed":258,"diff_lines":26,"trac_diff_url":259,"vulnerabilities":260,"is_current":236},"1.0.3","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwodhopper.1.0.3.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwodhopper\u002Ftags\u002F1.0.3\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwodhopper%2Ftags%2F1.0.2&new_path=%2Fwodhopper%2Ftags%2F1.0.3",[],{"version":262,"download_url":263,"svn_tag_url":264,"released_at":26,"has_diff":236,"diff_files_changed":265,"diff_lines":26,"trac_diff_url":266,"vulnerabilities":267,"is_current":236},"1.0.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwodhopper.1.0.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwodhopper\u002Ftags\u002F1.0.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwodhopper%2Ftags%2F1.0.1&new_path=%2Fwodhopper%2Ftags%2F1.0.2",[],{"version":269,"download_url":270,"svn_tag_url":271,"released_at":26,"has_diff":236,"diff_files_changed":272,"diff_lines":26,"trac_diff_url":26,"vulnerabilities":273,"is_current":236},"1.0.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwodhopper.1.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwodhopper\u002Ftags\u002F1.0.1\u002F",[],[]]