[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f6Ij9mbVTIW160Re8mWSZAiIz1jIKiAzuZfaH35abNlI":3,"$fma-atcfc_LZ9cMRgK0ndZ-_FHOQ-WumZrnEWOVcrR7U":913,"$fPyicjAWACPZgfziiBvXSmVuLpYMP1_UhWBNf6aEFzIg":917},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":13,"last_vuln_date":28,"fetched_at":29,"discovery_status":30,"vulnerabilities":31,"developer":50,"crawl_stats":37,"alternatives":58,"analysis":166,"fingerprints":878},"cbxpetition","CBX Petition","2.0.14","Sabuj Kundu","https:\u002F\u002Fprofiles.wordpress.org\u002Fmanchumahara\u002F","\u003Cp>CBX Petition for WordPress makes it easy to create, manage, and showcase online petitions—right from your WordPress dashboard. Whether you’re driving change locally or globally, this plugin gives you the tools to build momentum, collect signatures, and inspire action.\u003C\u002Fp>\n\u003Ch3>CBX Petition by \u003Ca href=\"https:\u002F\u002Fcodeboxr.com\u002Fproduct\u002Fcbx-petition-for-wordpress\u002F\" rel=\"nofollow ugc\">Codeboxr\u003C\u002Fa>\u003C\u002Fh3>\n\u003Cblockquote>\n\u003Cp>🤴 \u003Ca href=\"https:\u002F\u002Fcodeboxr.net\u002Fwordpress\u002Fpetition\u002Fsave-the-green-park-stop-unplanned-commercial-construction\u002F\" rel=\"nofollow ugc\">Demo\u003C\u002Fa> | 📋 \u003Ca href=\"https:\u002F\u002Fcodeboxr.com\u002Fdoc\u002Fcbxpetition-doc\u002F\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa> | 🌟 \u003Ca href=\"https:\u002F\u002Fcodeboxr.com\u002Fproduct\u002Fcbx-petition-for-wordpress\u002F\" rel=\"nofollow ugc\">Upgrade to PRO\u003C\u002Fa> |  👨‍💻 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fcbxpetition\u002F\" rel=\"ugc\">Free Support\u003C\u002Fa> | 📱 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fcbxpetition\u002F\" rel=\"ugc\">Free Support\u003C\u002Fa> | 🤴 \u003Ca href=\"https:\u002F\u002Fcodeboxr.com\u002Fcontact-us\" rel=\"nofollow ugc\">Pro Support\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>Note: Full source code(including scss files) available at \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcodeboxrcodehub\u002Fcbxpetition\" rel=\"nofollow ugc\">Github Repo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>If you think any necessary feature is missing contact with us, we will add in new release. Best way to check the feature is install the free core version in any dev site and explore\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>Core Plugin Features\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Petition Backend\u002FPetition Properties\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Create Petition from admin panel\u003C\u002Fli>\n\u003Cli>Custom category adn tag taxonomy with petition\u003C\u002Fli>\n\u003Cli>Petition Title and Description using wordpress core\u003C\u002Fli>\n\u003Cli>\u003Cem>Petition Meta fields\u003C\u002Fem>\u003Cbr \u002F>\n— Signature Target (Required)\u003Cbr \u002F>\n— Expire Date\u003Cbr \u002F>\n— Petition Photos (Drag and drop photo upload to custom uploads dir, no wordpress media manager used)\u003Cbr \u002F>\n— Petition Banner (Drag and drop photo\u002Fbanner upload to custom uploads dir, no wordpress media manager used)\u003Cbr \u002F>\n— Youtube Video url, title, mini description\u003Cbr \u002F>\n— Petition Letter\u002FLetter Text Field\u003Cbr \u002F>\n— Petition Recipients (Name, Designation, Email)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Petition Frontend\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Petition Title, Description Using WordPress Theme Core feature\u003C\u002Fli>\n\u003Cli>\u003Cem>Extra information using Hooks(Configurable from Settings):\u003C\u002Fem>\u003Cbr \u002F>\n— Petition Video, Video Title, Video Text\u003Cbr \u002F>\n— Petition Photos\u003Cbr \u002F>\n— Petition Banner\u003Cbr \u002F>\n— Letter Text\u003Cbr \u002F>\n— Letter Recipients\u003Cbr \u002F>\n— Petition Sign Form\u003Cbr \u002F>\n— Petition Listing\u003Cbr \u002F>\n— Petition Statistics(Total Target, Sign Collected, Ratio\u002FBars)\u003Cbr \u002F>\n— Most of these features are available via shortcodes\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Petition Display Shortcodes\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Petition banner [cbxpetition_banner]\u003C\u002Fli>\n\u003Cli>Petition statistics [cbxpetition_stat]\u003C\u002Fli>\n\u003Cli>Petition video [cbxpetition_video]\u003C\u002Fli>\n\u003Cli>Petition photos [cbxpetition_photos]\u003C\u002Fli>\n\u003Cli>Petition letter [cbxpetition_letter]\u003C\u002Fli>\n\u003Cli>Petition signature form [cbxpetition_signform]\u003C\u002Fli>\n\u003Cli>Petition signature listing [cbxpetition_signatures]\u003C\u002Fli>\n\u003Cli>Petition Details [cbxpetition]  (New in V1.0.1) to display full petition inside any page or post\u003C\u002Fli>\n\u003Cli>Petition Summary [cbxpetition_summary]  (New in V1.0.1) to display petition summary inside any page or post\u003C\u002Fli>\n\u003Cli>Full Petition Display [cbxpetition]  (New in V1.0.1) to display full petition inside any page or post\u003C\u002Fli>\n\u003Cli>Any shortcode should have but missing? let us know\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Classic Widgets\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Petition Summary Classic Widget [New in V1.0.2]\u003C\u002Fli>\n\u003Cli>Petition Sign Form Classic Widget [New in V1.0.2]\u003C\u002Fli>\n\u003Cli>Latest Petitions Classic Widget [New in V1.0.2]\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Elementor Widgets(Pro)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Petition banner widget compatible with shortcode [cbxpetition_banner]\u003C\u002Fli>\n\u003Cli>Petition statistics widget compatible with shortcode [cbxpetition_stat]\u003C\u002Fli>\n\u003Cli>Petition photos widget compatible with shortcode  [cbxpetition_photos]\u003C\u002Fli>\n\u003Cli>Petition video widget compatible with shortcode [cbxpetition_video]\u003C\u002Fli>\n\u003Cli>Petition letter widget compatible with shortcode [cbxpetition_letter]\u003C\u002Fli>\n\u003Cli>Petition signature form widget compatible with shortcode [cbxpetition_signform]\u003Cbr \u002F>\n7.Petition signature listing widget compatible with shortcode [cbxpetition_signatures]\u003C\u002Fli>\n\u003Cli>Petition Details widget compatible with shortcode [cbxpetition]\u003C\u002Fli>\n\u003Cli>Petition Summary widget compatible with shortcode [cbxpetition_summary]\u003C\u002Fli>\n\u003Cli>Petition Latest Listing widget compatible with shortcode [cbxpetition_latest]\u003C\u002Fli>\n\u003Cli>Any elementor widget missing? let us know\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Block Widgets(Pro)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Petition banner widget compatible with shortcode [cbxpetition_banner]\u003C\u002Fli>\n\u003Cli>Petition statistics widget compatible with shortcode [cbxpetition_stat]\u003C\u002Fli>\n\u003Cli>Petition photos widget compatible with shortcode  [cbxpetition_photos]\u003C\u002Fli>\n\u003Cli>Petition video widget compatible with shortcode [cbxpetition_video]\u003C\u002Fli>\n\u003Cli>Petition letter widget compatible with shortcode [cbxpetition_letter]\u003C\u002Fli>\n\u003Cli>Petition signature form widget compatible with shortcode [cbxpetition_signform]\u003C\u002Fli>\n\u003Cli>Petition signature listing widget compatible with shortcode [cbxpetition_signatures]\u003C\u002Fli>\n\u003Cli>Petition Details widget compatible with shortcode [cbxpetition]\u003C\u002Fli>\n\u003Cli>Petition Summary widget compatible with shortcode [cbxpetition_summary]\u003C\u002Fli>\n\u003Cli>Petition Latest Listing widget compatible with shortcode [cbxpetition_latest]\u003C\u002Fli>\n\u003Cli>Any block widget missing? let us know\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Petition Backend Settings\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Basic Setting\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Enable Auto Integration\u003C\u002Fli>\n\u003Cli>Auto Integration Before Content\u003C\u002Fli>\n\u003Cli>Auto Integration After Content\u003C\u002Fli>\n\u003Cli>Default Sign Status(Unverified, Pending, Approved, Unapproved), possible to extend\u003C\u002Fli>\n\u003Cli>Guest Email Activation(Guest signature approval can be verified via email)\u003C\u002Fli>\n\u003Cli>Frontend Signature listing limit\u003C\u002Fli>\n\u003Cli>\u003Cem>Petition Photo(s) Configuration:\u003C\u002Fem>\u003Cbr \u002F>\n— Petition Photo Limit\u003Cbr \u002F>\n— Petition Photo Max File Size(MB)\u003Cbr \u002F>\n— Petition Photo Extensions\u003Cbr \u002F>\n— Petition Photo Thumbnail max width\u003Cbr \u002F>\n— Petition Photo Thumbnail max height\u003Cbr \u002F>\n— Petition Photo(s) max width\u003Cbr \u002F>\n— Petition Photo(s) max height\u003C\u002Fli>\n\u003Cli>\u003Cem>Petition Banner Configuration:\u003C\u002Fem>\u003Cbr \u002F>\n— Petition Banner Max File Size(MB)\u003Cbr \u002F>\n— Petition Banner Extensions\u003Cbr \u002F>\n— Petition Banner max width\u003Cbr \u002F>\n— Petition Banner max height\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Global Email Template\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Header Image\u003C\u002Fli>\n\u003Cli>Footer Text\u003C\u002Fli>\n\u003Cli>Base colors and other email template colors\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Admin Email Alert\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>New Sign Admin Email Alert\u003C\u002Fli>\n\u003Cli>Email enable\u002Fdisable\u003C\u002Fli>\n\u003Cli>Email Subject, Template Heading, Template, Template Syntax for dynamic parsing\u003C\u002Fli>\n\u003Cli>\u003Cstrong>User Email Alert\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>New Sign User Email Alert\u003C\u002Fli>\n\u003Cli>Sign Approve Email Alert\u003C\u002Fli>\n\u003Cli>Email enable\u002Fdisable\u003C\u002Fli>\n\u003Cli>Email Subject, Template Heading, Template, Template Syntax for dynamic parsing\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>On Uninstall delete plugin data\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Petition Signature\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Backend Signature listing\u003C\u002Fli>\n\u003Cli>Edit Signature, approve\u002Funapprove signature\u003C\u002Fli>\n\u003Cli>Delete Signature\u003C\u002Fli>\n\u003Cli>Search Signature\u003C\u002Fli>\n\u003Cli>User or guest both can sign\u003C\u002Fli>\n\u003Cli>Guest signature needs First Name, Last Name and Email\u003C\u002Fli>\n\u003Cli>Signature submit needs privacy confirmation in frontend\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Our Core plugin is free and will always be free. To extends the petition features we have Pro addon called \u003Cstrong>CBX Petition Pro Addon\u003C\u002Fstrong>\u003Cbr \u002F>\nUsing the pro addon we have added some cool features like frontend petition submit and user dashboard with some more controls everywhere.\u003C\u002Fp>\n\u003Ch4>CBX Petition Pro Addon Features\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Pro Addon Backend Setting\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Who Can Create Petition – Role Selection(s)\u003C\u002Fli>\n\u003Cli>Who Can Publish Petition – Role Selection(s)\u003C\u002Fli>\n\u003Cli>Who Can Delete Own petition – Role Selection(s)\u003C\u002Fli>\n\u003Cli>Maximum Petition Limit\u003C\u002Fli>\n\u003Cli>Petition Per Page\u003C\u002Fli>\n\u003Cli>User Front Dashboard Page – Page select dropdown\u003C\u002Fli>\n\u003Cli>Admin Email Alert for Petition Approval\u003C\u002Fli>\n\u003Cli>Enable\u002FDisable and Email Template\u003C\u002Fli>\n\u003Cli>User Email Alert for Petition Approval\u003C\u002Fli>\n\u003Cli>Enable\u002FDisable and Email Template\u003C\u002Fli>\n\u003Cli>Send signature to petition recipients\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Pro Addon Frontend and Other Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Frontend Dashboard shorcode [cbxpetition_dashboard]\u003C\u002Fli>\n\u003Cli>Frontend Petition listing\u003C\u002Fli>\n\u003Cli>Frontend Petition Create with same backend features(Title, Description, Photos, Banner, Video, Letter, Recipients)\u003C\u002Fli>\n\u003Cli>Frontend Petition Delete\u003C\u002Fli>\n\u003Cli>Frontend Petition Edit\u003C\u002Fli>\n\u003Cli>Frontend Per Petition Signature Listing\u003C\u002Fli>\n\u003Cli>Role based control and access\u003C\u002Fli>\n\u003Cli>Template\u002FTheme override features like core for pro addon\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Pro Addon Custom Integration\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Gamipress\u003C\u002Fli>\n\u003Cli>Uncanny Automator\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Get the \u003Ca href=\"https:\u002F\u002Fcodeboxr.com\u002Fproduct\u002Fcbx-petition-for-wordpress\u002F\" rel=\"nofollow ugc\">pro addon\u003C\u002Fa>\u003C\u002Fp>\n","A plugin to create, manage petition and collect signatures for petition inside WordPress environment.",80,4489,0,"2026-02-04T08:35:00.000Z","6.9.4","5.3","",[19,20,21,22,23],"activism","campaign","change","petition","signature","https:\u002F\u002Fcodeboxr.com\u002Fproduct\u002Fcbx-petition-for-wordpress\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.14.zip",98,1,"2022-12-27 00:00:00","2026-04-16T10:56:18.058Z","no_bundle",[32],{"id":33,"url_slug":34,"title":35,"description":36,"plugin_slug":4,"theme_slug":37,"affected_versions":38,"patched_in_version":39,"severity":40,"cvss_score":41,"cvss_vector":42,"vuln_type":43,"published_date":28,"updated_date":44,"references":45,"days_to_patch":47,"patch_diff_files":48,"patch_trac_url":37,"research_status":37,"research_verified":49,"research_rounds_completed":13,"research_plan":37,"research_summary":37,"research_vulnerable_code":37,"research_fix_diff":37,"research_exploit_outline":37,"research_model_used":37,"research_started_at":37,"research_completed_at":37,"research_error":37,"poc_status":37,"poc_video_id":37,"poc_summary":37,"poc_steps":37,"poc_tested_at":37,"poc_wp_version":37,"poc_php_version":37,"poc_playwright_script":37,"poc_exploit_code":37,"poc_has_trace":49,"poc_model_used":37,"poc_verification_depth":37},"CVE-2022-4383","cbx-petition-for-wordpress-unauthenticated-sql-injection","CBX Petition for WordPress \u003C= 1.0.3 - Unauthenticated SQL Injection","The CBX Petition for WordPress plugin for WordPress is vulnerable to SQL Injection via an unknown parameter in versions up to, and including, 1.0.3 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query.  This makes it possible for unauthenticated attackers to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database.",null,"\u003C=1.0.3","2.0.0","critical",9.8,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:N\u002FS:U\u002FC:H\u002FI:H\u002FA:H","Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')","2025-06-05 17:42:55",[46],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F7f380786-7fd8-4a01-b491-63a2c6098a9e?source=api-prod",892,[],false,{"slug":51,"display_name":7,"profile_url":8,"plugin_count":52,"total_installs":53,"avg_security_score":54,"avg_patch_time_days":55,"trust_score":56,"computed_at":57},"manchumahara",10,3340,93,204,74,"2026-05-19T21:16:36.629Z",[59,79,104,124,142],{"slug":60,"name":61,"version":62,"author":63,"author_profile":64,"description":65,"short_description":66,"active_installs":52,"downloaded":67,"rating":13,"num_ratings":13,"last_updated":68,"tested_up_to":69,"requires_at_least":70,"requires_php":17,"tags":71,"homepage":75,"download_link":76,"security_score":77,"vuln_count":13,"unpatched_count":13,"last_vuln_date":37,"fetched_at":78},"louder-petition","Louder petition","1.0 beta","Adam Sargant","https:\u002F\u002Fprofiles.wordpress.org\u002Fadamsargant\u002F","\u003Cp>The Louder Petition plugin will access the petition tool being used by a \u003Ca href=\"http:\u002F\u002Fwww.louder.org.uk\" rel=\"nofollow ugc\">Louder.org.uk\u003C\u002Fa> campaign page petition and display the title, description and petition form on your blog. If no petition is currently active for that campaign, the widget will not display on your blog and a message to that effect will be displayed in the widget configuration panel.\u003C\u002Fp>\n\u003Cp>Louder is the new home for e-campaigning. The site draws together a range of online activist tools enabling activists and campaigners to create and run their own campaigns and connect with others.\u003C\u002Fp>\n","A widget\u002Fplugin that uses the Louder.org.uk Developer's API to access a petition details and form from a Louder campaign",2094,"2010-04-14T17:25:00.000Z","2.9.2","2.0.2",[19,72,73,74,22],"campaigns","ecampaigning","louder","http:\u002F\u002Fwww.louder.org.uk\u002Fplugins_wp.php","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flouder-petition.zip",85,"2026-03-15T15:16:48.613Z",{"slug":80,"name":81,"version":82,"author":83,"author_profile":84,"description":85,"short_description":86,"active_installs":87,"downloaded":88,"rating":89,"num_ratings":90,"last_updated":91,"tested_up_to":92,"requires_at_least":93,"requires_php":94,"tags":95,"homepage":99,"download_link":100,"security_score":101,"vuln_count":102,"unpatched_count":13,"last_vuln_date":103,"fetched_at":29},"speakout","SpeakOut! Email Petitions","4.6.5.1","RopeSwingHld","https:\u002F\u002Fprofiles.wordpress.org\u002Fropeswinghld\u002F","\u003Cp>\u003Cstrong>SpeakOut! Email Petitions\u003C\u002Fstrong> allows you to easily create petition forms on your site.\u003C\u002Fp>\n\u003Cp>When visitors to your site submit the petition form, a copy of your message will be sent to the email address you specified e.g. your mayor. They can also choose to have the email BCC’d to themselves (default).  The petition message will be signed with the contact information provided by the form submitter. After signing the petition, visitors will have the option of sharing your petition page with their followers on Facebook or x.\u003C\u002Fp>\n\u003Cp>Signatures are stored in the WordPress database and can be easily exported to CSV format for further analysis (there is no import function). You may set a goal for the number of signatures you hope to collect and then watch as a progress bar tracks your petition’s advance toward it’s goal – the goal can even update automatically when a % of your goal is reached. Petitions may also be configured to stop accepting new signatures on a specified date.\u003C\u002Fp>\n\u003Cp>The free version includes the core features needed to run a successful petition. For those who need more, the \u003Cstrong>Pro version\u003C\u002Fstrong> unlocks the ability to run unlimited campaigns and provides additional tools, such as an email sharing option and expanded integration with third-party mailing services.\u003C\u002Fp>\n\u003Cp>More information about the plugin and how to upgrade to the fully featured Pro version can be found at the official \u003Ca href=\"https:\u002F\u002Fspeakoutpetitions.com\" rel=\"nofollow ugc\">SpeakOut! WordPress petition plugin website\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>4.6.5.1\u003C\u002Fh3>\n\u003Cp>This is a critical security patch. Please update immediately to protect your user data.\u003C\u002Fp>\n\u003Ch3>4.6.5\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Bugfix: address misc warnings.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.6.4\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Bugfix: fix anonmyous record keeping issue. \u003C\u002Fli>\n\u003Cli>Bugfix: fix nonce issue with some admin pages causing permision errors.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.6.3\u003C\u002Fh3>\n\u003Cp>Fix bad cache.\u003C\u002Fp>\n\u003Ch3>4.6.2\u003C\u002Fh3>\n\u003Cp>Fix php warning regarding missing options.\u003C\u002Fp>\n\u003Ch3>4.6.1\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Security: Added a secure AJAX endpoint with nonce and capability checks for dismissing admin notices.\u003C\u002Fli>\n\u003Cli>Improvement: Modernized admin script and style loading to improve performance and adhere to WordPress best practices.\u003C\u002Fli>\n\u003Cli>Improvement: Redesigned the the admin pages the petition settings page for a cleaner and more consistent user interface.\u003C\u002Fli>\n\u003Cli>Improvement: The GDPR (Privacy Policy) setting is now mandatory when enabled.\u003C\u002Fli>\n\u003Cli>Bug fix: Corrected an issue in an AJAX handler that could prevent petition emails from being sent correctly.\u003C\u002Fli>\n\u003Cli>Bug fix: Prevented a potential PHP warning by ensuring the petition message is always a string.\u003C\u002Fli>\n\u003Cli>Improvement: updated “tested up to” to WP version 6.8.3\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.6.0\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Security: Hardened the plugin by adding comprehensive data sanitization and output escaping across all forms, AJAX handlers, and admin pages to prevent XSS and other vulnerabilities.\u003C\u002Fli>\n\u003Cli>Security: Replaced direct use of \u003Ccode>$_POST\u003C\u002Fcode>, \u003Ccode>$_GET\u003C\u002Fcode>, and \u003Ccode>$_REQUEST\u003C\u002Fcode> variables with sanitized and validated data.\u003C\u002Fli>\n\u003Cli>Security: Ensured all URLs generated by the plugin are properly escaped using \u003Ccode>esc_url\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>Refactor: Completely overhauled the \u003Ccode>[emailpetition]\u003C\u002Fcode> shortcode rendering. The form HTML is now loaded from a separate template file ( \u003Ccode>includes\u002Femail-petition-form-template.php\u003C\u002Fcode>), improving code organization and making customization easier.\u003C\u002Fli>\n\u003Cli>Refactor: Consolidated all mailing list integration logic (ActiveCampaign, MailChimp, etc.) into a single, cleaner function call.\u003C\u002Fli>\n\u003Cli>Refactor: Improved custom field rendering by creating a dedicated helper function to reduce code duplication.\u003C\u002Fli>\n\u003Cli>Refactor: Updated AJAX handlers to securely process and validate all incoming data.\u003C\u002Fli>\n\u003Cli>Refactor: Switched to using WordPress best practices, such as \u003Ccode>has_shortcode()\u003C\u002Fcode> for content checking and \u003Ccode>admin_url()\u003C\u002Fcode> for creating admin links.\u003C\u002Fli>\n\u003Cli>Tweak: Improved pagination logic to be more robust and prevent potential errors.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.5.2\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>improvement: updated “tested up to” to WP version 6.8\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.5.1\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: CSV export was throwing an error – thanks Vegard B.\u003C\u002Fli>\n\u003Cli>improvement: updates to Swedish translations – thanks Magnus\u003C\u002Fli>\n\u003Cli>improvement: updated “test to” to WordPress 6.8\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.5.0\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>improvement: further refined bug fixed in 4.4.0 – thanks Darius S. @ patchstack.com\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.4.3\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>improvement: updated old changelog link at end of current changelog\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.4.2\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>improvement: updated “Tested up to” to 6.7\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.4.1\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: Export to CSV not working – thanks Vincent R & Shawn D\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.4.0\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: fixed XSS vulnerability in specially crafted shortcode – thanks Darius S. @ patchstack.com\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.3.6\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: wonky CSS setting in basic theme – thanks Jordan.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.3.5.2\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>improvement: updated “tested to” to version 6.6\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.3.5.1\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>improvement: changed CSV max_execution_time from 180 to 300 seconds and moved it so it is only applied if script is actually run.  Also reset it to system default at end of script – thanks @gideonlupine\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.3.4\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>improvement: updated compatibility to WordPress 6.5\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.3.3.1\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: debug code removed\u003C\u002Fli>\n\u003Cli>bug fix: new social icons missing in free version\u003C\u002Fli>\n\u003Cli>bug fix: in some circumstances an error was thrown in settings page – thanks Heiko\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.3.3\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: error being thrown by field that can’t be edited in free version – thanks Giuseppe\u003C\u002Fli>\n\u003Cli>bug fix: somehow above error wasn’t fixed in 4.3.2 – thanks Mayda\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.3.1\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>improvement: updated social icons in all style sheets\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.3.0\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>improvement: changed “twitter” to “X” – thanks Jos\u003C\u002Fli>\n\u003Cli>improvement: removed some superfluous code\u003C\u002Fli>\n\u003Cli>improvement: added Serbian language\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.2.6\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: no error if privacy policy box not checked – thanks Mika\u003C\u002Fli>\n\u003Cli>improvement: SpeakOut! now has its own domain SpeakOutPetitions.com\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.2.3\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: In certain languages if privacy was enabled to show only the first letter of the surname, it would display a \u003Ccode>?\u003C\u002Fcode> instead – thanks Niklas\u003C\u002Fli>\n\u003Cli>bug fix: signature list wouldn’t display if petition ID was greater than one.  This was implemented to limit free users, but it has unintended consequences for legacy users with multiple petitions.  Thanks Jim for letting me poke around.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.2.2\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>improvement: updated “tested to” to 6.3\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.2.1\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: multiple email addresses in Target Email or CC Email fields would be mashed together – thanks James and someone else who reported this\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.2.0\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: custom field 6 location wasn’t being saved\u003C\u002Fli>\n\u003Cli>bug fix: in admin signature list, “anonymous” icon was showing HTML instead of being superscript\u003C\u002Fli>\n\u003Cli>improvement: added several webhooks – see https:\u002F\u002Fspeakoutpetitions.com\u002Fwebhooks. Thanks for the idea Ben & Nick\u003C\u002Fli>\n\u003Cli>improvement: added email share icon to Pro version – thanks to whoever suggested it.\u003C\u002Fli>\n\u003Cli>improvement: displaying emails in the public signature list is now optional – with a warning that it might not be a wise idea\u003C\u002Fli>\n\u003Cli>improvement: translation updates\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.1.3.1\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: Somehow a stray character found its way into the code which was breaking petitions. – thanks Meagan\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.1.2\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: database creation error for new installs\u003C\u002Fli>\n\u003Cli>bug fix: if message was editable, formating was lost when sent to target (Pro only) – thanks Linda\u003C\u002Fli>\n\u003Cli>bug fix: language wasn’t bein passed via URL in confirmation emails\u003C\u002Fli>\n\u003Cli>improvement: eliminated php warning “ob_end_flush(): failed to send buffer of zlib output compression”\u003C\u002Fli>\n\u003Cli>improvement: added note to when “Do not send email (only collect signatures)” is checked\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.1.1\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: if the \u003Cem>petitionmessage\u003C\u002Fem> shortcode was used, any Markdown in the message wasn’t being displayed.  Thanks Michael.\u003C\u002Fli>\n\u003Cli>bug fix: if email confirmation was enabled, the numbering in the public signature list reflected the total number of signatures, not just the confirmed signtures.  Thanks Rene & Martin\u003C\u002Fli>\n\u003Cli>bug fix: if email confirmation was enabled and public signatures spanned more than one page, scrolling didn’t work as expected – thanks Rene\u003C\u002Fli>\n\u003Cli>bug fix: on one layout of the public signature list, the word \u003Cem>anonymous\u003C\u002Fem> wasn’t translated – thanks Myriam-Zaa\u003C\u002Fli>\n\u003Cli>bug fix: increased size of honorifics field in database – thanks Glen C.\u003C\u002Fli>\n\u003Cli>bug fix: following some actions in the admin signature list it wasn’t showing the signature count\u003C\u002Fli>\n\u003Cli>improvement: new installs will now use the utf8mb4_general_ci character set for database text fields, instead of just utf8 – down the track I will change the character set for existing installs\u003C\u002Fli>\n\u003Cli>improvement: database creation now makes fields NULL instead of NOT NULL to allow for not collecting some data – down the track I will change all fields to NULL in existing installs\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.1.0\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: Confirmation emails weren’t being sent if Email From field wasn’t set up properly, which was impossible.  Thanks Thomas and Rene\u003C\u002Fli>\n\u003Cli>bug fix: non-existant parameter being passed to function\u003C\u002Fli>\n\u003Cli>improvement: updated the contextual help – first time ever :o)\u003C\u002Fli>\n\u003Cli>improvement: clarified wording of “display signature count” and where it refers to.\u003C\u002Fli>\n\u003Cli>improvement: database updates so free version is ready to upgrade to Pro\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.0.10\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>improvement: changed a page title – thanks Debbie P\u003C\u002Fli>\n\u003Cli>bug fix: some required fields were not showing red border – thanks Debbie P\u003C\u002Fli>\n\u003Cli>bug fix: redirect after signing not working – thanks Debbie P\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.0.9\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: when clicking \u003Cem>next\u003C\u002Fem> in signature list it was displaying html – thanks Dan @tahninial\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.0.8\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: slashes added to any apostrophes in email subject or greeting\u003C\u002Fli>\n\u003Cli>bug fix: missing default value in free version\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.0.7\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: missing character would cause error in certain circumstances – thanks heiko\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.0.6.1\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: if WordPress was installed in a subfolder, some administrator links may not have worked.  Thanks Calvin\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.0.6\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: petition message kept adding slashes in editor when saved.  Thanks Calvin\u003C\u002Fli>\n\u003Cli>improvement: removed \u003Cem>%%Your Signature%%\u003C\u002Fem> from the petition message displayed on your site.  It was causing confusion.  Thanks Razvan\u003C\u002Fli>\n\u003Cli>improvement: minor typo fixed\u003C\u002Fli>\n\u003Cli>improvement: Dutch language imrovements – thanks Michiel\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.0.5\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: petition message losing formatting – thanks @dcbuffalo\u003C\u002Fli>\n\u003Cli>improvement: better data sanitization in signature list\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.0.4.6\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: html being displayed in admin signature list\u003C\u002Fli>\n\u003Cli>bug fix: file was being included twice\u003C\u002Fli>\n\u003Cli>bug fix: reconfirming selected signatures wasn’t working\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.0.4.5\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>bug fix: settings not saving due to incorrect input sanitize function\u003C\u002Fli>\n\u003Cli>improvement: German language update – thanks Mario\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>4.0.4.4\u003C\u002Fh3>\n\u003Cp>bug fix: in some circumstances an error was thrown in settings page – thanks Heiko\u003C\u002Fp>\n\u003Ch3>4.0.4.2\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Policy compliance: Version 3 of SpeakOut! included a method of upgrading that turned out to be a WordPress plugin policy breach (4 months later!) and some potential security issues (after 10+ years!).  This version remedies that and introduces a more cumbersome (for users), but compliant method of upgrading.\u003C\u002Fli>\n\u003Cli>bug fix: various fixes of things found while creating V4\u003C\u002Fli>\n\u003Cli>improvement: removed support for importing the original speakup plugin.  After 10 years, it’s time.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fspeakoutpetitions.com\u002Fspeakout-free-changelog\u002F\" title=\"SpeakOut! old Changelog\" rel=\"nofollow ugc\">Earlier Changelog\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Localizations\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Albanian \u003Cstrong>sq_AL\u003C\u002Fstrong> Incomplete\u003C\u002Fli>\n\u003Cli>Arabic \u003Cstrong>ar_AR\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Arabic \u003Cstrong>ar\u003C\u002Fstrong> (Faisal Kadri)\u003C\u002Fli>\n\u003Cli>Catalan \u003Cstrong>ca\u003C\u002Fstrong>  (Alberto Canals)\u003C\u002Fli>\n\u003Cli>Czech \u003Cstrong>cs_CZ\u003C\u002Fstrong> (Petr Å tepÃ¡n, Michal HradeckÃ½)\u003C\u002Fli>\n\u003Cli>Danish \u003Cstrong>da_DK\u003C\u002Fstrong> (A. L.)\u003C\u002Fli>\n\u003Cli>Dutch \u003Cstrong>nl_NL\u003C\u002Fstrong> (Kris Zanders, Petronella van Leusden)\u003C\u002Fli>\n\u003Cli>Finnish \u003Cstrong>fi_FI\u003C\u002Fstrong> \u003C\u002Fli>\n\u003Cli>French \u003Cstrong>fr_FR\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>German \u003Cstrong>de_DE\u003C\u002Fstrong> (Hannes Heller, Armin Vasilico, Andreas Kumlehn, Frank Jermann)\u003C\u002Fli>\n\u003Cli>Hebrew \u003Cstrong>he_IL\u003C\u002Fstrong> (Oren L)\u003C\u002Fli>\n\u003Cli>Korean \u003Cstrong>ko_KO\u003C\u002Fstrong> (Paul Lawley-Jones)\u003C\u002Fli>\n\u003Cli>Icelandic \u003Cstrong>is_IS\u003C\u002Fstrong> (Hildur Sif Thorarensen)\u003C\u002Fli>\n\u003Cli>Italian \u003Cstrong>it_IT\u003C\u002Fstrong> (\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fprofile\u002Fmacitaly\" rel=\"ugc\">MacItaly\u003C\u002Fa>, Davide Granti, Simone Apollo)\u003C\u002Fli>\n\u003Cli>Norwegian \u003Cstrong>nb_NO\u003C\u002Fstrong> (Howard Gittela)\u003C\u002Fli>\n\u003Cli>Polish \u003Cstrong>pl_PL\u003C\u002Fstrong> (Damian Dzieduch)\u003C\u002Fli>\n\u003Cli>Portuguese (Brazil) \u003Cstrong>pt_BR\u003C\u002Fstrong> (Tel Amiel)\u003C\u002Fli>\n\u003Cli>Romanian \u003Cstrong>ro_RO\u003C\u002Fstrong> (\u003Ca href=\"http:\u002F\u002Fwebhostinggeeks.com\" rel=\"nofollow ugc\">Web Hosting Geeks\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>Russian \u003Cstrong>ru_RU\u003C\u002Fstrong> (\u003Ca href=\"te-st.ru\" rel=\"nofollow ugc\">Teplitsa\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>Serbian \u003Cstrong>sr_RS\u003C\u002Fstrong> (Mikhailo Matovic)\u003C\u002Fli>\n\u003Cli>Slovak \u003Cstrong>sk_SK\u003C\u002Fstrong> (@Beata)\u003C\u002Fli>\n\u003Cli>Slovenian \u003Cstrong>sl_SI\u003C\u002Fstrong> (\u003Ca href=\"http:\u002F\u002Fma-seo.com\" rel=\"nofollow ugc\">MA-SEO\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>Spanish \u003Cstrong>es_ES\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Swedish \u003Cstrong>sv_SE\u003C\u002Fstrong> (Susanne Nyman FurugÃ¥rd @sunyfu)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>If you would like to request or contribute a specific translation not listed above, visit the \u003Ca href=\"http:\u002F\u002Fspeakoutpetitions.com\u002F\" rel=\"nofollow ugc\">SpeakOut! Email Petitions website\u003C\u002Fa> and use the contact form.\u003C\u002Fp>\n\u003Ch3>Emailpetition Shortcode Attributes\u003C\u002Fh3>\n\u003Cp>The following attributes may be applied when using the ‘[emailpetition]’ shortcode\u003C\u002Fp>\n\u003Ch4>id\u003C\u002Fh4>\n\u003Cp>The ID number of your petition (required). To display a basic petition, use this format:\u003Cbr \u002F>\n‘[emailpetition id=”1″]’\u003C\u002Fp>\n\u003Ch4>width\u003C\u002Fh4>\n\u003Cp>This sets the width of the wrapper “\u003C\u002Fp>\n\u003Cp>\u003C\u003C\u002Fp>\n\u003Cp>div>” that surrounds the petition form. Format as you would a width rule for any standard CSS selector. Values can be denominated in px, pt, em, % etc. The units marker (px, %) must be included.\u003C\u002Fp>\n\u003Cp>To set the petition from to display at 100% of it’s container, use:\u003Cbr \u002F>\n‘[emailpetition id=”1″ width=”100%”]’\u003C\u002Fp>\n\u003Cp>A petition set to display at 500 pixels wide can be achieved using:\u003Cbr \u002F>\n‘[emailpetition id=”1″ width=”500px”]’\u003C\u002Fp>\n\u003Ch4>height\u003C\u002Fh4>\n\u003Cp>This sets the height of the petition message box (rather than the height of the entire form). Format as you would a height rule for any standard CSS selector. Values can be denominated in px, pt, em, % etc. The units marker (px, %) must be included.\u003C\u002Fp>\n\u003Cp>A few notes on using percentages:\u003Cbr \u002F>\nUsing a % value only works when the “Allow messages to be edited” feature is turned offâ€”because the petition message will be displayed in a ‘\u003C\u002Fp>\n\u003Cp>\u003C\u003C\u002Fp>\n\u003Cp>div>’. When “Allow  messages to be edited” is turned on, the petition message is displayed in a ”, which cannot be styled with % heights. Use px to set the height on petitions that allow message customization.\u003C\u002Fp>\n\u003Cp>To set the message box to scale to 100% of the height of the message it contains, use any % value (setting this to 100%, 0%, 200% or any other % value has the same result). Use px if you want the box to scale to a specific height.\u003C\u002Fp>\n\u003Cp>Examples:\u003Cbr \u002F>\n‘[emailpetition id=”1″ height=”500px”]’\u003C\u002Fp>\n\u003Cp>‘[emailpetition id=”1″ height=”100%”]’\u003C\u002Fp>\n\u003Ch4>progresswidth\u003C\u002Fh4>\n\u003Cp>Sets the width of the outer progress bar. The filled area of the progress bar will automatically scale proportionally with the width of the outer prgress bar. Provide a numeric value in pixels only. Do not include the px unit marker.\u003C\u002Fp>\n\u003Cp>To display the progress bar at 300 pixels wide, use:\u003C\u002Fp>\n\u003Cp>‘[emailpetition id=”1″ progresswidth=”300″]’\u003C\u002Fp>\n\u003Ch4>class\u003C\u002Fh4>\n\u003Cp>Adds an arbitrary class name to the wrapper ‘\u003C\u002Fp>\n\u003Cp>\u003C\u003C\u002Fp>\n\u003Cp>div>’ that surrounds the petition form. Typically used to assign the alignright, alignleft or aligncenter classes to the petition in order to float the petition form to one side of its container. To assign multiple classes, separate the class names with spaces.\u003C\u002Fp>\n\u003Cp>Examples:\u003C\u002Fp>\n\u003Cp>‘[emailpetition id=”1″ class=”alignright”]’\u003C\u002Fp>\n\u003Cp>‘[emailpetition id=”1″ class=”style1 style2″]’\u003C\u002Fp>\n\u003Ch3>Signaturelist Shortcode Attributes\u003C\u002Fh3>\n\u003Ch4>id\u003C\u002Fh4>\n\u003Cp>The ID number of your petition (required). To display a basic signature list, use this format:\u003C\u002Fp>\n\u003Cp>‘[signaturelist id=”1″]’\u003C\u002Fp>\n\u003Ch4>rows\u003C\u002Fh4>\n\u003Cp>The number of signature rows to display in the table. This will override the default value provided on the Settings page. To display 10 rows, use:\u003C\u002Fp>\n\u003Cp>‘[signaturelist id=”1″ rows=”10″]’\u003C\u002Fp>\n\u003Ch4>dateformat\u003C\u002Fh4>\n\u003Cp>Format of values in the date column. Use any of the standard \u003Ca href=\"http:\u002F\u002Fphp.net\u002Fmanual\u002Fen\u002Ffunction.date.php\" rel=\"nofollow ugc\">PHP date formating characters\u003C\u002Fa>. Default is ‘M d, Y’. A date such as “Sunday October 14, 2012 @ 9:42 am” can be displayed using:\u003C\u002Fp>\n\u003Cp>‘[signaturelist id=”1″ dateformat=”l F d, Y @ g:i a”]’\u003C\u002Fp>\n\u003Ch4>prevbuttontext\u003C\u002Fh4>\n\u003Cp>The text that displays in the previous signatures pagination button. Default is \u003C.\u003C\u002Fp>\n\u003Ch4>nextbuttontext\u003C\u002Fh4>\n\u003Cp>The text that displays in the next signatures pagination button. Default is >.\u003C\u002Fp>\n\u003Ch3>signaturecount Shortcode\u003C\u002Fh3>\n\u003Cp>Display the number (as text) of signatures collected for a given petition:\u003C\u002Fp>\n\u003Ch4>id\u003C\u002Fh4>\n\u003Cp>The ID number of your petition (required).\u003C\u002Fp>\n\u003Cp>‘[signaturecount id=”3″]’\u003C\u002Fp>\n\u003Ch3>signaturegoal Shortcode\u003C\u002Fh3>\n\u003Cp>Display the number (as text) of goal for a given petition:\u003C\u002Fp>\n\u003Ch4>id\u003C\u002Fh4>\n\u003Cp>The ID number of your petition (required).\u003C\u002Fp>\n\u003Cp>‘[signaturegoal id=”3″]’\u003C\u002Fp>\n","SpeakOut! Email Petitions makes it easy to add petitions to your website and rally your community to Speak Out about a cause by using direct action.",3000,326725,96,43,"2026-03-04T20:12:00.000Z","6.8.5","5.0","7.4",[19,96,97,22,98],"community","email","social-media","https:\u002F\u002Fspeakoutpetitions.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fspeakout.4.6.5.1.zip",87,5,"2026-04-13 00:00:00",{"slug":105,"name":106,"version":107,"author":108,"author_profile":109,"description":110,"short_description":111,"active_installs":112,"downloaded":113,"rating":114,"num_ratings":115,"last_updated":116,"tested_up_to":15,"requires_at_least":117,"requires_php":118,"tags":119,"homepage":17,"download_link":122,"security_score":123,"vuln_count":13,"unpatched_count":13,"last_vuln_date":37,"fetched_at":29},"civist","Civist – Petitions and Fundraising","7.9.0","Civist","https:\u002F\u002Fprofiles.wordpress.org\u002Fcivist\u002F","\u003Cp>Create and configure your petition directly in your own WordPress. Publish them in a page or post and you are ready to go! Your supporters sign the petition right there, embedded in your website.\u003C\u002Fp>\n\u003Cp>Just add a donation form to your petitions to collect SEPA and credit card donations in compliance with EU legislation.\u003C\u002Fp>\n\u003Cp>With Civist, you manage your supporters directly in WordPress. Contacts are automatically saved in your mailing list manager. Simple!\u003C\u002Fp>\n\u003Cp>Export your contacts and signatures as CSV-files for further processing.\u003C\u002Fp>\n","With Civist you create petitions directly in WordPress, raise funds and build strong supporter networks.",1000,29684,92,19,"2025-12-18T11:51:00.000Z","4.4","7.1",[19,120,121,22],"donation","fundraising","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcivist.zip",100,{"slug":125,"name":126,"version":127,"author":128,"author_profile":129,"description":130,"short_description":131,"active_installs":123,"downloaded":132,"rating":26,"num_ratings":133,"last_updated":134,"tested_up_to":15,"requires_at_least":135,"requires_php":136,"tags":137,"homepage":17,"download_link":139,"security_score":140,"vuln_count":27,"unpatched_count":13,"last_vuln_date":141,"fetched_at":29},"petitioner","Petitioner","0.8.1","Anton Voytenko","https:\u002F\u002Fprofiles.wordpress.org\u002Favoytenko\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fgetpetitioner.com\" rel=\"nofollow ugc\">Plugin homepage & demo\u003C\u002Fa>.\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fgetpetitioner.com\u002Fdocs\u002F\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa>.\u003Cbr \u002F>\nPetitioner pairs unlimited, drag-and-drop petition forms with advanced targeting and export tools, everything you expect from premium petition builders, available free in the plugin directory.\u003Cbr \u002F>\nIt’s built for advocacy teams, nonprofits, campaigns, and publishers who need high-volume petitions with reliable delivery, flexible layouts, and clear reporting without SaaS lock-in.\u003C\u002Fp>\n\u003Ch3>Quick start\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Install Petitioner and create your first petition under Petitioner -> Add New.\u003C\u002Fli>\n\u003Cli>Configure delivery (target email, confirmations, approval defaults) and design under the Settings tabs.\u003C\u002Fli>\n\u003Cli>Drop the Gutenberg block or shortcode into any page, collect signatures, and export or display submissions as needed.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Highlights\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Unlimited petitions powered by a drag-and-drop builder with 10+ specialized fields.\u003C\u002Fli>\n\u003Cli>Automated decision-maker delivery plus optional double opt-in and manual moderation.\u003C\u002Fli>\n\u003Cli>Frontend submission showcases (grid, list, ticker) with privacy-friendly options.\u003C\u002Fli>\n\u003Cli>CSV exports with advanced filtering for accurate reporting and CRM imports.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Features:\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Unlimited petitions\u003C\u002Fstrong>\u003Cbr \u002F>\nCreate and manage an unlimited number of petitions.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Drag and drop form builder\u003C\u002Fstrong>\u003Cbr \u002F>\n– Add\u002Fremove\u002Freorder fields based on your needs\u003Cbr \u002F>\n– Supports over ten field types: text, email, phone, address, date of birth, newsletter opt-in, anonymous signature, terms acceptance, and more\u003Cbr \u002F>\n– Add rich text to the form for disclaimers and legal text\u003Cbr \u002F>\n– Edit each field’s label, placeholder, and required state\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Control submission behaviour\u003C\u002Fstrong>\u003Cbr \u002F>\n– Show submissions on the frontend in a few different styles\u003Cbr \u002F>\n– Email functionality: Automatically send petition letters to representatives via email.\u003Cbr \u002F>\n– Ability to store submissions without sending emails to the rep.\u003Cbr \u002F>\n– Ability to manually approve\u002Fdeny petitions and set the default approval behavior (approved by default or declined)\u003Cbr \u002F>\n– Option to confirm emails via email\u003Cbr \u002F>\n– Customize email confirmations, petition letters, and thank you emails\u003Cbr \u002F>\n– Option to edit and delete submissions\u003Cbr \u002F>\n– Form submissions export: export petition signups and submission data to a CSV file for easy reporting.\u003Cbr \u002F>\n– Preview data, rename columns, and map values (e.g., “1” to “Yes” or dynamic values like {{field_name}}) before downloading CRM-ready files.\u003Cbr \u002F>\n– Filter out unwanted submissions before exporting by targeting any form field\u003Cbr \u002F>\n– Goal milestones: set incremental signature targets (e.g., 100, 500, 1000) to keep momentum high.\u003Cbr \u002F>\n– Custom redirects: redirect users to custom “Thank You” or “Action” pages after signing or confirming their email.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Design & layout features\u003C\u002Fstrong>\u003Cbr \u002F>\n– The plugin features a modern, mobile-friendly design for a seamless user experience.\u003Cbr \u002F>\n– Color customizations & custom CSS options\u003Cbr \u002F>\n– WYSIWYG editor: Easily edit petition letters and confirmation emails using a modern WYSIWYG editor.\u003Cbr \u002F>\n– Gutenberg integration with a custom petition block!\u003Cbr \u002F>\n– Several shortcodes to take your petitions to the next level:\u003Cbr \u002F>\n  – Form shortcode – embed the entire petition anywhere shortcodes are supported.\u003Cbr \u002F>\n  – Petition goal – surface your signature target dynamically.\u003Cbr \u002F>\n  – Progress bar – visualize progress toward the goal in real time.\u003Cbr \u002F>\n  – Petition letter popup – open the full letter in a modal.\u003Cbr \u002F>\n  – Submission count – show live signature totals.\u003Cbr \u002F>\n  – Submissions display – list, grid, and ticker layouts with privacy controls.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Spam protection features\u003C\u002Fstrong>\u003Cbr \u002F>\n– Captcha integrations: reCAPTCHA, hCaptcha, and Cloudflare Turnstile\u003Cbr \u002F>\n– Akismet integration – handle spam seamlessly without adding any js libraries\u003Cbr \u002F>\n– Honeypot field\u003Cbr \u002F>\n– Email confirmations\u003Cbr \u002F>\n– Compatible with all of the popular SMTP plugins (uses wp_mail behind the scenes)\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Extremely lightweight and modern\u003C\u002Fstrong>\u003Cbr \u002F>\n– Vanilla JavaScript bundle weighs in at ~4KB gzipped\u003Cbr \u002F>\n– Theme-friendly CSS variables let you match any brand quickly\u003Cbr \u002F>\n– Rich hooks and filters make third-party integrations effortless\u003C\u002Fp>\n\u003Ch3>Development and Source Code\u003C\u002Fh3>\n\u003Cp>The source code for this plugin is publicly available on GitHub:\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Favoy18\u002Fpetitioner\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Favoy18\u002Fpetitioner\u003C\u002Fa>\u003C\u002Fp>\n","Create, target, and track high-impact petitions with Petitioner: automate delivery to decision-makers, manage approvals, and export rich submission da &hellip;",5100,7,"2026-03-29T00:59:00.000Z","5.9","8.0",[19,96,97,138,22],"form","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpetitioner.0.8.1.zip",99,"2026-03-27 00:00:00",{"slug":143,"name":144,"version":145,"author":146,"author_profile":147,"description":148,"short_description":149,"active_installs":150,"downloaded":151,"rating":152,"num_ratings":153,"last_updated":154,"tested_up_to":15,"requires_at_least":155,"requires_php":156,"tags":157,"homepage":163,"download_link":164,"security_score":114,"vuln_count":133,"unpatched_count":13,"last_vuln_date":165,"fetched_at":29},"enable-media-replace","Enable Media Replace","4.1.8","ShortPixel","https:\u002F\u002Fprofiles.wordpress.org\u002Fshortpixel\u002F","\u003Cp>\u003Cstrong>A free, lightweight and easy to use plugin that allows you to seamlessly replace an image or file in your Media Library by uploading a new file in its place. No more deleting, renaming and re-uploading files! Now fully compatible with \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Famazon-s3-and-cloudfront\u002F\" rel=\"ugc\">WP Offload Media!\u003C\u002Fa>\u003Cbr \u002F>\nNew beta feature! You can now remove the background of your images for better integration with eCommerce solutions!\u003Cbr \u002F>\nSupported by the friendly team that created \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fshortpixel-image-optimiser\u002F\" rel=\"ugc\">ShortPixel\u003C\u002Fa>  🙂\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>A real timesaver\u003C\u002Fh4>\n\u003Cp>Don’t you find it tedious and complicated to first delete a file and then upload another one with the exact same name every time you want to update an image or other uploaded file in the WordPress media library?\u003C\u002Fp>\n\u003Cp>Well, no longer!\u003C\u002Fp>\n\u003Cp>Now you can replace any uploaded file in the Edit Media view, where it should be. Replacing Media can be done in two ways:\u003C\u002Fp>\n\u003Ch4>It’s simple to replace a file\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Simply replace the file. This option requires you to upload a file of the same type as the file you want to replace. The attachment name remains the same regardless of what the file you upload is called.\u003C\u002Fli>\n\u003Cli>Replace the file, use the new file name, and update all links. If you check this option, the old file will be replaced with the name and type of the file you are uploading. All links pointing to the current file will be updated to point to the new file name. Additional options for the folder to put the new file in or the date of the new file are also available on the replace screen.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>This plugin is very powerful and a must-have for all major websites built with WordPress. It also offers a preview of the replaced image!\u003C\u002Fp>\n\u003Ch4>New beta feature: You can now remove the background of any image!\u003C\u002Fh4>\n\u003Cp>Similar to replacing media, you can also remove the background of the images from the Media Library! The background removal feature sends the images to ShortPixel’s API, removes the background and sends them back in a preview window. If everything looks good, just replace the image with the one that has the background removed! If the source image is a PNG file, you will get a transparent background, while the other images default to a solid white background. You also have the option to choose a different color with an embedded color picker.\u003Cbr \u002F>\nThe background removal feature is still in beta and will be free of charge for a reasonable usage.\u003C\u002Fp>\n\u003Cp>If you don’t want to use the background removal feature, add this line to your theme’s functions.php file, or use a plugin like \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcode-snippets\u002F\" rel=\"ugc\">Code Snippets\u003C\u002Fa>:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`add_filter( 'emr\u002Ffeature\u002Fbackground', '__return_false' );```\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>A similar filter, for the remote notification system is:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`add_filter( 'emr\u002Ffeature\u002Fremote_notice', '__return_false' );```\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>To shorten the wait time before redirecting to the media editing screen, use the following filter and specify the wait time in seconds (0 means that redirection is immediate, but may cause problems in certain configurations):\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`add_filter('emr\u002Fsuccess\u002Ftimeout', function () { return 3; });```\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Show file modification time\u003C\u002Fh4>\n\u003Cp>There is a shortcode that takes the file modification date and displays it in a post or on a page. The code is:\u003Cbr \u002F>\n    [file_modified id=XX format=XXXX] where the “id” is required and the “format” is optional and defaults to your current WordPress settings for date and time format.\u003C\u002Fp>\n\u003Cp>So \u003Ccode>[file_modified id=870]\u003C\u002Fcode> would show the last time the file with ID 870 was updated on your site. To get the ID for a file, check the URL when editing a file in the media library (see screenshot #4)\u003C\u002Fp>\n\u003Cp>If you want more control over the format in which the time is shown, you can use the format option. So \u003Ccode>[file_modified id=870 format=Y-m-d]\u003C\u002Fcode> would show the date the file was modified but not the time. The format string uses \u003Ca href=\"http:\u002F\u002Fphp.net\u002Fmanual\u002Fen\u002Ffunction.date.php\" rel=\"nofollow ugc\">the standard PHP date() formatting tags\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Other plugins by \u003Ca href=\"https:\u002F\u002Fshortpixel.com\" rel=\"nofollow ugc\">ShortPixel\u003C\u002Fa>:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ffastpixel-website-accelerator\u002F\" rel=\"ugc\">FastPixel Caching\u003C\u002Fa> – WP Optimization made easy\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fshortpixel-image-optimiser\u002F\" rel=\"ugc\">ShortPixel Image Optimizer\u003C\u002Fa> – Image optimization & compression for all the images on your website, including WebP & AVIF delivery\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fshortpixel-adaptive-images\u002F\" rel=\"ugc\">ShortPixel Adaptive Images\u003C\u002Fa> – On-the-fly image optimization & CDN delivery\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fresize-image-after-upload\u002F\" rel=\"ugc\">Resize Image After Upload\u003C\u002Fa> – Automatically resize each uploaded image\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fregenerate-thumbnails-advanced\u002F\" rel=\"ugc\">reGenerate Thumbnails Advanced\u003C\u002Fa> – Easily regenerate thumbnails\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-svg-images\u002F\" rel=\"ugc\">WP SVG Images\u003C\u002Fa> – Secure upload of SVG files to Media Library\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Get in touch!\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Email \u003Ca href=\"https:\u002F\u002Fshortpixel.com\u002Fcontact\" rel=\"nofollow ugc\">https:\u002F\u002Fshortpixel.com\u002Fcontact\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Twitter \u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fshortpixel\" rel=\"nofollow ugc\">https:\u002F\u002Ftwitter.com\u002Fshortpixel\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Facebook \u003Ca href=\"https:\u002F\u002Fwww.facebook.com\u002FShortPixel\" rel=\"nofollow ugc\">https:\u002F\u002Fwww.facebook.com\u002FShortPixel\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>LinkedIn \u003Ca href=\"https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Fshortpixel\" rel=\"nofollow ugc\">https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Fshortpixel\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Wishlist \u002F Coming attractions\u003C\u002Fh3>\n\u003Cp>Do you have suggestions? Feel free to contact ShortPixel \u003Ca href=\"https:\u002F\u002Fshortpixel.com\u002Fcontact\" rel=\"nofollow ugc\">here\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Contribute\u003C\u002Fh3>\n\u003Cp>Want to help us improve the plugin feel free to submit PRs via GitHub \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fshort-pixel-optimizer\u002Fenable-media-replace\" rel=\"nofollow ugc\">here\u003C\u002Fa>.\u003C\u002Fp>\n","Easily replace any attached image\u002Ffile by simply uploading a new file in the Media Library edit view - a real time saver!",600000,12623975,88,300,"2026-03-03T10:21:00.000Z","4.9.7","5.6",[158,159,160,161,162],"change-media","remove-background","replace","replace-image","replace-jpg","https:\u002F\u002Fshortpixel.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fenable-media-replace.4.1.8.zip","2026-03-03 18:17:08",{"attackSurface":167,"codeSignals":451,"taintFlows":794,"riskAssessment":866,"analyzedAt":877},{"hooks":168,"ajaxHandlers":355,"restRoutes":407,"shortcodes":408,"cronEvents":449,"entryPointCount":420,"unprotectedCount":450},[169,175,179,182,186,189,193,198,202,206,210,214,218,222,226,229,233,237,241,244,248,252,254,258,261,264,268,272,275,279,282,285,287,291,295,299,302,306,309,313,316,321,325,329,332,336,340,344,349,352],{"type":170,"name":171,"callback":172,"file":173,"line":174},"action","admin_notices","php_version_notice","includes\\CBXPetition.php",78,{"type":170,"name":176,"callback":177,"file":173,"line":178},"init","load_mailer",158,{"type":170,"name":176,"callback":180,"file":173,"line":181},"post_type_init",168,{"type":170,"name":183,"callback":184,"file":173,"line":185},"admin_init","admin_init_misc",169,{"type":170,"name":183,"callback":187,"file":173,"line":188},"setting_init",170,{"type":170,"name":190,"callback":191,"file":173,"line":192},"admin_menu","admin_menus",173,{"type":194,"name":195,"callback":196,"priority":52,"file":173,"line":197},"filter","set-screen-option","cbxpetition_sign_results_per_page",174,{"type":170,"name":199,"callback":200,"file":173,"line":201},"add_meta_boxes","meta_boxes_display",178,{"type":170,"name":203,"callback":204,"priority":52,"file":173,"line":205},"save_post","petition_meta_save",179,{"type":194,"name":207,"callback":208,"file":173,"line":209},"manage_cbxpetition_posts_columns","columns_header",183,{"type":170,"name":211,"callback":212,"priority":52,"file":173,"line":213},"manage_cbxpetition_posts_custom_column","custom_column_row",187,{"type":194,"name":215,"callback":216,"file":173,"line":217},"manage_edit-cbxpetition_sortable_columns","custom_column_sortable",191,{"type":194,"name":219,"callback":220,"priority":52,"file":173,"line":221},"post_row_actions","row_actions_petition_listing",192,{"type":170,"name":223,"callback":224,"file":173,"line":225},"admin_enqueue_scripts","enqueue_styles",195,{"type":170,"name":223,"callback":227,"file":173,"line":228},"enqueue_scripts",196,{"type":194,"name":230,"callback":231,"file":173,"line":232},"manage_cbxpetition_page_cbxpetitionsigns_columns","signature_listing_screen_cols",208,{"type":170,"name":234,"callback":235,"file":173,"line":236},"delete_user","on_user_delete_sign_delete",212,{"type":170,"name":238,"callback":239,"file":173,"line":240},"plugins_loaded","plugin_upgrader_process_complete",216,{"type":170,"name":171,"callback":242,"file":173,"line":243},"plugin_activate_upgrade_notices",217,{"type":194,"name":245,"callback":246,"priority":52,"file":173,"line":247},"plugin_row_meta","custom_plugin_row_meta",219,{"type":170,"name":249,"callback":250,"file":173,"line":251},"activated_plugin","check_pro_addon",220,{"type":170,"name":176,"callback":250,"file":173,"line":253},221,{"type":170,"name":255,"callback":256,"priority":52,"file":173,"line":257},"after_plugin_row_cbxpetitionproaddon\u002Fcbxpetitionproaddon.php","custom_message_after_plugin_row_proaddon",222,{"type":170,"name":183,"callback":259,"file":173,"line":260},"save_email_setting",229,{"type":170,"name":183,"callback":262,"file":173,"line":263},"create_default_category",232,{"type":194,"name":265,"callback":266,"file":173,"line":267},"the_content","auto_integration",242,{"type":194,"name":269,"callback":270,"file":173,"line":271},"query_vars","add_query_vars",245,{"type":170,"name":176,"callback":273,"file":173,"line":274},"rewrite_rules",246,{"type":170,"name":276,"callback":277,"file":173,"line":278},"template_redirect","guest_email_validation",247,{"type":170,"name":276,"callback":280,"file":173,"line":281},"signature_delete_handler",248,{"type":170,"name":283,"callback":224,"file":173,"line":284},"wp_enqueue_scripts",259,{"type":170,"name":283,"callback":227,"file":173,"line":286},260,{"type":170,"name":288,"callback":289,"file":173,"line":290},"widgets_init","init_widgets",263,{"type":170,"name":292,"callback":293,"file":173,"line":294},"template_include","include_custom_templates",266,{"type":170,"name":296,"callback":297,"file":173,"line":298},"cbxpetition_single_content_after_title","category_display_after_title",268,{"type":170,"name":300,"callback":297,"file":173,"line":301},"cbxpetition_archive_loop_item_content_inside_start",269,{"type":170,"name":303,"callback":304,"file":173,"line":305},"cbxpetition_single_content_after_details","tag_display_after_title",270,{"type":170,"name":176,"callback":307,"file":173,"line":308},"init_shortcodes",281,{"type":170,"name":310,"callback":311,"priority":52,"file":312,"line":286},"delete_post","signature_delete_after_delete_post","includes\\CBXPetitionAdmin.php",{"type":170,"name":176,"callback":314,"file":312,"line":315},"plugin_upgrader_process_complete_partial",1549,{"type":170,"name":317,"callback":318,"file":319,"line":320},"cbxpetition_email_header","email_header","includes\\CBXPetitionEmails.php",62,{"type":170,"name":322,"callback":323,"file":319,"line":324},"cbxpetition_email_footer","email_footer",63,{"type":170,"name":326,"callback":327,"file":328,"line":274},"phpmailer_init","handle_multipart","includes\\Emails\\CBXPetitionEmail.php",{"type":194,"name":330,"callback":331,"file":328,"line":278},"cbxpetition_email_footer_text","footer_text_format",{"type":194,"name":333,"callback":334,"file":328,"line":335},"wp_mail_from","get_from_email",447,{"type":194,"name":337,"callback":338,"file":328,"line":339},"wp_mail_from_name","get_from_name",448,{"type":194,"name":341,"callback":342,"file":328,"line":343},"wp_mail_content_type","get_content_type",449,{"type":170,"name":345,"callback":346,"priority":52,"file":347,"line":348},"cbxpetition_sign_submit_after_insert","trigger","includes\\Emails\\CBXPetitionNewSignAdminAlertEmail.php",45,{"type":170,"name":345,"callback":346,"priority":52,"file":350,"line":351},"includes\\Emails\\CBXPetitionNewSignUserAlertEmail.php",47,{"type":170,"name":353,"callback":346,"priority":52,"file":354,"line":348},"cbxpetition_sign_approved","includes\\Emails\\CBXPetitionSignApproveUserEmail.php",[356,360,364,367,370,373,376,378,382,386,390,394,397,401,403],{"action":357,"nopriv":49,"callback":358,"hasNonce":49,"hasCapCheck":49,"file":173,"line":359},"cbxpetition_settings_reset_load","settings_reset_load",180,{"action":361,"nopriv":49,"callback":362,"hasNonce":49,"hasCapCheck":49,"file":173,"line":363},"cbxpetition_settings_reset","plugin_options_reset",181,{"action":365,"nopriv":49,"callback":365,"hasNonce":49,"hasCapCheck":49,"file":173,"line":366},"petition_admin_photo_upload",199,{"action":368,"nopriv":49,"callback":368,"hasNonce":49,"hasCapCheck":49,"file":173,"line":369},"petition_admin_photo_delete",200,{"action":371,"nopriv":49,"callback":371,"hasNonce":49,"hasCapCheck":49,"file":173,"line":372},"petition_admin_photos_delete",201,{"action":374,"nopriv":49,"callback":374,"hasNonce":49,"hasCapCheck":49,"file":173,"line":375},"petition_admin_banner_upload",203,{"action":377,"nopriv":49,"callback":377,"hasNonce":49,"hasCapCheck":49,"file":173,"line":55},"petition_admin_banner_delete",{"action":379,"nopriv":49,"callback":380,"hasNonce":49,"hasCapCheck":49,"file":173,"line":381},"cbxpetition_sign_edit","petition_sign_edit",209,{"action":383,"nopriv":49,"callback":384,"hasNonce":49,"hasCapCheck":49,"file":173,"line":385},"cbxpetition_sign_delete","petition_sign_delete",210,{"action":387,"nopriv":49,"callback":388,"hasNonce":49,"hasCapCheck":49,"file":173,"line":389},"cbxpetition_permalink_cache_clear","permalink_cache_clear",228,{"action":391,"nopriv":49,"callback":392,"hasNonce":49,"hasCapCheck":49,"file":173,"line":393},"cbxpetition_sign_submit","petition_sign_submit",250,{"action":391,"nopriv":395,"callback":392,"hasNonce":49,"hasCapCheck":49,"file":173,"line":396},true,251,{"action":398,"nopriv":49,"callback":399,"hasNonce":49,"hasCapCheck":49,"file":173,"line":400},"cbxpetition_load_more_signs","petition_load_more_signs",253,{"action":398,"nopriv":395,"callback":399,"hasNonce":49,"hasCapCheck":49,"file":173,"line":402},254,{"action":404,"nopriv":49,"callback":405,"hasNonce":49,"hasCapCheck":49,"file":173,"line":406},"cbxpetition_front_sign_delete","petition_sign_delete_front",257,[],[409,413,417,421,425,429,433,437,441,445],{"tag":4,"callback":410,"file":411,"line":412},"cbxpetition_display","includes\\CBXPetitionShortCodes.php",22,{"tag":414,"callback":415,"file":411,"line":416},"cbxpetition_summary","cbxpetition_summary_display",24,{"tag":418,"callback":419,"file":411,"line":420},"cbxpetition_signform","cbxpetition_signform_display",25,{"tag":422,"callback":423,"file":411,"line":424},"cbxpetition_video","cbxpetition_video_display",27,{"tag":426,"callback":427,"file":411,"line":428},"cbxpetition_photos","cbxpetition_photos_display",28,{"tag":430,"callback":431,"file":411,"line":432},"cbxpetition_letter","cbxpetition_letter_display",29,{"tag":434,"callback":435,"file":411,"line":436},"cbxpetition_banner","cbxpetition_banner_display",30,{"tag":438,"callback":439,"file":411,"line":440},"cbxpetition_signatures","cbxpetition_signature_display",31,{"tag":442,"callback":443,"file":411,"line":444},"cbxpetition_stat","cbxpetition_stat_display",32,{"tag":446,"callback":447,"file":411,"line":448},"cbxpetition_latest","cbxpetition_latest_display",35,[],15,{"dangerousFunctions":452,"sqlUsage":453,"outputEscaping":468,"fileOperations":13,"externalRequests":13,"nonceChecks":726,"capabilityChecks":786,"bundledLibraries":787},[],{"prepared":351,"raw":454,"locations":455},4,[456,459,463,466],{"file":457,"line":114,"context":458},"includes\\CBXPetitionUninstall.php","$wpdb->query() with variable interpolation",{"file":460,"line":461,"context":462},"includes\\Helpers\\PetitionHelper.php",744,"$wpdb->get_results() with variable interpolation",{"file":460,"line":464,"context":465},800,"$wpdb->get_var() with variable interpolation",{"file":460,"line":467,"context":465},1106,{"escaped":469,"rawEcho":470,"locations":471},768,177,[472,475,477,479,480,481,482,483,484,486,488,490,492,494,496,498,500,502,504,506,508,510,513,514,516,517,518,520,522,524,526,529,531,533,535,537,539,541,543,545,547,549,551,553,555,557,559,561,563,565,567,569,571,573,575,578,580,583,585,588,590,592,594,596,597,599,601,603,606,608,609,610,612,614,616,618,621,622,624,625,626,627,629,631,632,634,635,637,639,641,644,646,648,650,651,652,655,657,659,661,663,665,667,669,671,672,674,675,677,678,679,681,684,687,689,691,692,694,695,697,698,699,700,702,705,707,709,710,711,712,713,714,715,716,718,719,720,723,725,727,728,729,730,731,733,734,735,736,737,739,741,743,744,746,747,750,753,754,756,758,759,761,762,764,765,767,768,770,771,772,773,775,777,778,780,782,784],{"file":173,"line":473,"context":474},292,"raw output",{"file":312,"line":476,"context":474},143,{"file":312,"line":478,"context":474},162,{"file":312,"line":197,"context":474},{"file":312,"line":363,"context":474},{"file":312,"line":257,"context":474},{"file":312,"line":263,"context":474},{"file":312,"line":278,"context":474},{"file":312,"line":485,"context":474},695,{"file":312,"line":487,"context":474},699,{"file":312,"line":489,"context":474},1602,{"file":312,"line":491,"context":474},1608,{"file":312,"line":493,"context":474},1633,{"file":312,"line":495,"context":474},1642,{"file":312,"line":497,"context":474},2135,{"file":312,"line":499,"context":474},2153,{"file":312,"line":501,"context":474},2172,{"file":312,"line":503,"context":474},2174,{"file":319,"line":505,"context":474},91,{"file":319,"line":507,"context":474},103,{"file":319,"line":509,"context":474},139,{"file":511,"line":512,"context":474},"includes\\CBXPetitionPublic.php",165,{"file":511,"line":470,"context":474},{"file":511,"line":515,"context":474},238,{"file":511,"line":393,"context":474},{"file":511,"line":308,"context":474},{"file":511,"line":519,"context":474},314,{"file":511,"line":521,"context":474},349,{"file":511,"line":523,"context":474},360,{"file":511,"line":525,"context":474},626,{"file":527,"line":528,"context":474},"includes\\CBXSetting.php",138,{"file":527,"line":530,"context":474},274,{"file":527,"line":532,"context":474},288,{"file":527,"line":534,"context":474},313,{"file":527,"line":536,"context":474},352,{"file":527,"line":538,"context":474},390,{"file":527,"line":540,"context":474},416,{"file":527,"line":542,"context":474},482,{"file":527,"line":544,"context":474},547,{"file":527,"line":546,"context":474},629,{"file":527,"line":548,"context":474},653,{"file":527,"line":550,"context":474},689,{"file":527,"line":552,"context":474},717,{"file":527,"line":554,"context":474},752,{"file":527,"line":556,"context":474},782,{"file":527,"line":558,"context":474},799,{"file":527,"line":560,"context":474},819,{"file":527,"line":562,"context":474},852,{"file":527,"line":564,"context":474},880,{"file":527,"line":566,"context":474},1097,{"file":527,"line":568,"context":474},1098,{"file":527,"line":570,"context":474},1123,{"file":527,"line":572,"context":474},1163,{"file":328,"line":574,"context":474},833,{"file":576,"line":577,"context":474},"includes\\PetitionSignListTable.php",475,{"file":576,"line":579,"context":474},623,{"file":581,"line":582,"context":474},"includes\\Widgets\\Classic\\CBXPetitionLatestWidget.php",101,{"file":581,"line":584,"context":474},120,{"file":586,"line":587,"context":474},"includes\\Widgets\\Classic\\CBXPetitionSignformWidget.php",50,{"file":586,"line":589,"context":474},56,{"file":586,"line":591,"context":474},64,{"file":586,"line":593,"context":474},71,{"file":586,"line":595,"context":474},83,{"file":586,"line":26,"context":474},{"file":586,"line":598,"context":474},102,{"file":586,"line":600,"context":474},130,{"file":586,"line":602,"context":474},132,{"file":604,"line":605,"context":474},"includes\\Widgets\\Classic\\CBXPetitionSummaryWidget.php",51,{"file":604,"line":607,"context":474},57,{"file":604,"line":591,"context":474},{"file":604,"line":174,"context":474},{"file":604,"line":611,"context":474},119,{"file":604,"line":613,"context":474},122,{"file":604,"line":615,"context":474},133,{"file":604,"line":617,"context":474},135,{"file":619,"line":620,"context":474},"templates\\admin\\admin-metabox.php",128,{"file":619,"line":602,"context":474},{"file":619,"line":623,"context":474},148,{"file":619,"line":205,"context":474},{"file":619,"line":363,"context":474},{"file":619,"line":209,"context":474},{"file":619,"line":628,"context":474},186,{"file":619,"line":630,"context":474},215,{"file":619,"line":251,"context":474},{"file":619,"line":633,"context":474},226,{"file":619,"line":271,"context":474},{"file":619,"line":636,"context":474},279,{"file":619,"line":638,"context":474},290,{"file":619,"line":640,"context":474},296,{"file":642,"line":643,"context":474},"templates\\admin\\admin-sign-edit.php",39,{"file":642,"line":645,"context":474},59,{"file":642,"line":647,"context":474},70,{"file":642,"line":649,"context":474},114,{"file":642,"line":613,"context":474},{"file":642,"line":366,"context":474},{"file":653,"line":654,"context":474},"templates\\admin\\admin-signs-listing.php",66,{"file":653,"line":656,"context":474},69,{"file":653,"line":658,"context":474},75,{"file":653,"line":660,"context":474},76,{"file":653,"line":662,"context":474},104,{"file":664,"line":607,"context":474},"templates\\admin\\email_manager.php",{"file":664,"line":666,"context":474},61,{"file":668,"line":448,"context":474},"templates\\admin\\email_manager_edit.php",{"file":668,"line":670,"context":474},46,{"file":668,"line":11,"context":474},{"file":668,"line":673,"context":474},82,{"file":668,"line":152,"context":474},{"file":668,"line":676,"context":474},94,{"file":668,"line":582,"context":474},{"file":668,"line":662,"context":474},{"file":680,"line":658,"context":474},"templates\\admin\\email_manager_list.php",{"file":682,"line":683,"context":474},"templates\\admin\\settings.php",38,{"file":685,"line":686,"context":474},"templates\\admin\\support.php",302,{"file":688,"line":428,"context":474},"templates\\emails\\email-header.php",{"file":690,"line":115,"context":474},"templates\\emails\\new_sign_admin_alert.php",{"file":690,"line":412,"context":474},{"file":690,"line":693,"context":474},23,{"file":690,"line":420,"context":474},{"file":690,"line":696,"context":474},26,{"file":690,"line":424,"context":474},{"file":690,"line":428,"context":474},{"file":690,"line":432,"context":474},{"file":690,"line":701,"context":474},33,{"file":703,"line":704,"context":474},"templates\\emails\\new_sign_user_alert.php",17,{"file":703,"line":706,"context":474},18,{"file":703,"line":708,"context":474},21,{"file":703,"line":412,"context":474},{"file":703,"line":693,"context":474},{"file":703,"line":428,"context":474},{"file":703,"line":432,"context":474},{"file":703,"line":436,"context":474},{"file":703,"line":440,"context":474},{"file":703,"line":444,"context":474},{"file":703,"line":717,"context":474},40,{"file":703,"line":670,"context":474},{"file":703,"line":351,"context":474},{"file":721,"line":722,"context":474},"templates\\emails\\sign_approve_user_email.php",11,{"file":721,"line":724,"context":474},12,{"file":721,"line":726,"context":474},14,{"file":721,"line":450,"context":474},{"file":721,"line":704,"context":474},{"file":721,"line":706,"context":474},{"file":721,"line":115,"context":474},{"file":721,"line":732,"context":474},20,{"file":721,"line":708,"context":474},{"file":721,"line":432,"context":474},{"file":721,"line":436,"context":474},{"file":721,"line":440,"context":474},{"file":738,"line":670,"context":474},"templates\\global\\login_form.php",{"file":740,"line":52,"context":474},"templates\\global\\login_off.php",{"file":742,"line":693,"context":474},"templates\\petition\\archive-loop.php",{"file":742,"line":643,"context":474},{"file":745,"line":732,"context":474},"templates\\petition\\details-shortcode.php",{"file":745,"line":424,"context":474},{"file":748,"line":749,"context":474},"templates\\petition\\letter.php",34,{"file":751,"line":752,"context":474},"templates\\petition\\sign-form.php",111,{"file":751,"line":611,"context":474},{"file":751,"line":755,"context":474},127,{"file":751,"line":757,"context":474},136,{"file":751,"line":509,"context":474},{"file":751,"line":760,"context":474},153,{"file":751,"line":381,"context":474},{"file":751,"line":763,"context":474},225,{"file":751,"line":281,"context":474},{"file":766,"line":90,"context":474},"templates\\petition\\signature.php",{"file":766,"line":660,"context":474},{"file":769,"line":436,"context":474},"templates\\petition\\signatures.php",{"file":769,"line":444,"context":474},{"file":769,"line":683,"context":474},{"file":769,"line":587,"context":474},{"file":774,"line":683,"context":474},"templates\\petition\\stat.php",{"file":776,"line":348,"context":474},"templates\\petition\\video.php",{"file":776,"line":320,"context":474},{"file":779,"line":424,"context":474},"templates\\petition_delete.php",{"file":781,"line":416,"context":474},"templates\\single-cbxpetition.php",{"file":783,"line":412,"context":474},"templates\\taxonomy-cbxpetition.php",{"file":785,"line":428,"context":474},"templates\\verification.php",16,[788,791],{"name":789,"version":37,"knownCves":790},"Select2",[],{"name":792,"version":37,"knownCves":793},"Guzzle",[],[795,833,851],{"entryPoint":796,"graph":797,"unsanitizedCount":454,"severity":832},"search_box (includes\\PetitionSignListTable.php:635)",{"nodes":798,"edges":827},[799,804,809,813,815,819,821,825],{"id":800,"type":801,"label":802,"file":576,"line":803},"n0","source","$_REQUEST['orderby']",643,{"id":805,"type":806,"label":807,"file":576,"line":803,"wp_function":808},"n1","sink","echo() [XSS]","echo",{"id":810,"type":801,"label":811,"file":576,"line":812},"n2","$_REQUEST['order']",646,{"id":814,"type":806,"label":807,"file":576,"line":812,"wp_function":808},"n3",{"id":816,"type":801,"label":817,"file":576,"line":818},"n4","$_REQUEST['post_mime_type']",649,{"id":820,"type":806,"label":807,"file":576,"line":818,"wp_function":808},"n5",{"id":822,"type":801,"label":823,"file":576,"line":824},"n6","$_REQUEST['detached']",652,{"id":826,"type":806,"label":807,"file":576,"line":824,"wp_function":808},"n7",[828,829,830,831],{"from":800,"to":805,"sanitized":49},{"from":810,"to":814,"sanitized":49},{"from":816,"to":820,"sanitized":49},{"from":822,"to":826,"sanitized":49},"medium",{"entryPoint":834,"graph":835,"unsanitizedCount":13,"severity":850},"\u003CPetitionSignListTable> (includes\\PetitionSignListTable.php:0)",{"nodes":836,"edges":845},[837,838,839,840,841,842,843,844],{"id":800,"type":801,"label":802,"file":576,"line":803},{"id":805,"type":806,"label":807,"file":576,"line":803,"wp_function":808},{"id":810,"type":801,"label":811,"file":576,"line":812},{"id":814,"type":806,"label":807,"file":576,"line":812,"wp_function":808},{"id":816,"type":801,"label":817,"file":576,"line":818},{"id":820,"type":806,"label":807,"file":576,"line":818,"wp_function":808},{"id":822,"type":801,"label":823,"file":576,"line":824},{"id":826,"type":806,"label":807,"file":576,"line":824,"wp_function":808},[846,847,848,849],{"from":800,"to":805,"sanitized":395},{"from":810,"to":814,"sanitized":395},{"from":816,"to":820,"sanitized":395},{"from":822,"to":826,"sanitized":395},"low",{"entryPoint":852,"graph":853,"unsanitizedCount":865,"severity":850},"\u003Cadmin-signs-listing> (templates\\admin\\admin-signs-listing.php:0)",{"nodes":854,"edges":862},[855,857,858,861],{"id":800,"type":801,"label":856,"file":653,"line":115},"$_GET (x2)",{"id":805,"type":806,"label":807,"file":653,"line":654,"wp_function":808},{"id":810,"type":801,"label":859,"file":653,"line":860},"$_REQUEST",97,{"id":814,"type":806,"label":807,"file":653,"line":662,"wp_function":808},[863,864],{"from":800,"to":805,"sanitized":49},{"from":810,"to":814,"sanitized":49},3,{"summary":867,"deductions":868},"The \"cbxpetition\" plugin v2.0.14 exhibits a mixed security posture. While it demonstrates good practices like a high percentage of prepared SQL statements and proper output escaping, significant concerns arise from its attack surface and historical vulnerability patterns.  A substantial number of AJAX handlers (15 out of 15) lack authentication checks, creating an immediate and significant risk of unauthorized actions.  Taint analysis, though limited, identified flows with unsanitized paths, hinting at potential vulnerabilities that could be exploited.  The plugin's history includes a critical SQL injection vulnerability, suggesting a past weakness in handling user-supplied data, and the fact that this was a critical vulnerability is a strong indicator of how sensitive data handling has been in the past.  Although there are no currently unpatched vulnerabilities and the code generally follows secure coding principles in many areas, the unprotected AJAX endpoints and historical critical vulnerabilities necessitate caution.  The presence of bundled libraries like Select2 and Guzzle also introduces a potential risk if they are outdated or have known vulnerabilities themselves.",[869,871,873,875],{"reason":870,"points":52},"15 AJAX handlers without auth checks",{"reason":872,"points":52},"2 flows with unsanitized paths",{"reason":874,"points":732},"1 critical CVE in history",{"reason":876,"points":865},"Bundled libraries (Select2, Guzzle)","2026-03-16T21:31:41.246Z",{"wat":879,"direct":896},{"assetPaths":880,"generatorPatterns":887,"scriptPaths":888,"versionParams":889},[881,882,883,884,885,886],"\u002Fwp-content\u002Fplugins\u002Fcbxpetition\u002Fassets\u002Fcss\u002Fcbx-petition-public.css","\u002Fwp-content\u002Fplugins\u002Fcbxpetition\u002Fassets\u002Fcss\u002Fcbx-petition-admin.css","\u002Fwp-content\u002Fplugins\u002Fcbxpetition\u002Fassets\u002Fjs\u002Fcbx-petition-public.js","\u002Fwp-content\u002Fplugins\u002Fcbxpetition\u002Fassets\u002Fjs\u002Fcbx-petition-admin.js","\u002Fwp-content\u002Fplugins\u002Fcbxpetition\u002Fassets\u002Fjs\u002Fjquery.validate.min.js","\u002Fwp-content\u002Fplugins\u002Fcbxpetition\u002Fassets\u002Fjs\u002Fcbx-petition.js",[],[883,885,886,884],[890,891,892,893,894,895],"cbxpetition\u002Fassets\u002Fcss\u002Fcbx-petition-public.css?ver=","cbxpetition\u002Fassets\u002Fcss\u002Fcbx-petition-admin.css?ver=","cbxpetition\u002Fassets\u002Fjs\u002Fcbx-petition-public.js?ver=","cbxpetition\u002Fassets\u002Fjs\u002Fjquery.validate.min.js?ver=","cbxpetition\u002Fassets\u002Fjs\u002Fcbx-petition.js?ver=","cbxpetition\u002Fassets\u002Fjs\u002Fcbx-petition-admin.js?ver=",{"cssClasses":897,"htmlComments":902,"htmlAttributes":903,"restEndpoints":905,"jsGlobals":907,"shortcodeOutput":909},[898,899,900,901],"cbx-petition-form","cbx-petition-list","cbx-petition-single","cbx-petition-admin",[],[904],"data-cbx-petition-id",[906],"\u002Fwp-json\u002Fcbxpetition\u002Fv1\u002Fpetition",[908],"cbxpetition_ajax_object",[910,911,912],"[cbx_petition]","[cbx_petition_list]","[cbx_petition_single]",{"error":395,"url":914,"statusCode":915,"statusMessage":916,"message":916},"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fcbxpetition\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":706,"versions":918},[919,924,931,938,945,952,959,966,973,980,987,994,1001,1008,1014,1022,1030,1038],{"version":6,"download_url":25,"svn_tag_url":920,"released_at":37,"has_diff":49,"diff_files_changed":921,"diff_lines":37,"trac_diff_url":922,"vulnerabilities":923,"is_current":395},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.14\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.13&new_path=%2Fcbxpetition%2Ftags%2F2.0.14",[],{"version":925,"download_url":926,"svn_tag_url":927,"released_at":37,"has_diff":49,"diff_files_changed":928,"diff_lines":37,"trac_diff_url":929,"vulnerabilities":930,"is_current":49},"2.0.13","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.13.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.13\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.12&new_path=%2Fcbxpetition%2Ftags%2F2.0.13",[],{"version":932,"download_url":933,"svn_tag_url":934,"released_at":37,"has_diff":49,"diff_files_changed":935,"diff_lines":37,"trac_diff_url":936,"vulnerabilities":937,"is_current":49},"2.0.12","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.12.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.12\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.11&new_path=%2Fcbxpetition%2Ftags%2F2.0.12",[],{"version":939,"download_url":940,"svn_tag_url":941,"released_at":37,"has_diff":49,"diff_files_changed":942,"diff_lines":37,"trac_diff_url":943,"vulnerabilities":944,"is_current":49},"2.0.11","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.11.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.11\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.10&new_path=%2Fcbxpetition%2Ftags%2F2.0.11",[],{"version":946,"download_url":947,"svn_tag_url":948,"released_at":37,"has_diff":49,"diff_files_changed":949,"diff_lines":37,"trac_diff_url":950,"vulnerabilities":951,"is_current":49},"2.0.10","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.10.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.10\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.9&new_path=%2Fcbxpetition%2Ftags%2F2.0.10",[],{"version":953,"download_url":954,"svn_tag_url":955,"released_at":37,"has_diff":49,"diff_files_changed":956,"diff_lines":37,"trac_diff_url":957,"vulnerabilities":958,"is_current":49},"2.0.9","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.9.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.9\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.8&new_path=%2Fcbxpetition%2Ftags%2F2.0.9",[],{"version":960,"download_url":961,"svn_tag_url":962,"released_at":37,"has_diff":49,"diff_files_changed":963,"diff_lines":37,"trac_diff_url":964,"vulnerabilities":965,"is_current":49},"2.0.8","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.8.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.8\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.7&new_path=%2Fcbxpetition%2Ftags%2F2.0.8",[],{"version":967,"download_url":968,"svn_tag_url":969,"released_at":37,"has_diff":49,"diff_files_changed":970,"diff_lines":37,"trac_diff_url":971,"vulnerabilities":972,"is_current":49},"2.0.7","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.7.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.7\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.6&new_path=%2Fcbxpetition%2Ftags%2F2.0.7",[],{"version":974,"download_url":975,"svn_tag_url":976,"released_at":37,"has_diff":49,"diff_files_changed":977,"diff_lines":37,"trac_diff_url":978,"vulnerabilities":979,"is_current":49},"2.0.6","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.6.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.6\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.5&new_path=%2Fcbxpetition%2Ftags%2F2.0.6",[],{"version":981,"download_url":982,"svn_tag_url":983,"released_at":37,"has_diff":49,"diff_files_changed":984,"diff_lines":37,"trac_diff_url":985,"vulnerabilities":986,"is_current":49},"2.0.5","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.5.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.5\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.4&new_path=%2Fcbxpetition%2Ftags%2F2.0.5",[],{"version":988,"download_url":989,"svn_tag_url":990,"released_at":37,"has_diff":49,"diff_files_changed":991,"diff_lines":37,"trac_diff_url":992,"vulnerabilities":993,"is_current":49},"2.0.4","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.4.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.4\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.3&new_path=%2Fcbxpetition%2Ftags%2F2.0.4",[],{"version":995,"download_url":996,"svn_tag_url":997,"released_at":37,"has_diff":49,"diff_files_changed":998,"diff_lines":37,"trac_diff_url":999,"vulnerabilities":1000,"is_current":49},"2.0.3","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.3.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.3\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.1&new_path=%2Fcbxpetition%2Ftags%2F2.0.3",[],{"version":1002,"download_url":1003,"svn_tag_url":1004,"released_at":37,"has_diff":49,"diff_files_changed":1005,"diff_lines":37,"trac_diff_url":1006,"vulnerabilities":1007,"is_current":49},"2.0.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F2.0.0&new_path=%2Fcbxpetition%2Ftags%2F2.0.1",[],{"version":39,"download_url":1009,"svn_tag_url":1010,"released_at":37,"has_diff":49,"diff_files_changed":1011,"diff_lines":37,"trac_diff_url":1012,"vulnerabilities":1013,"is_current":49},"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.2.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F2.0.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F1.0.3&new_path=%2Fcbxpetition%2Ftags%2F2.0.0",[],{"version":1015,"download_url":1016,"svn_tag_url":1017,"released_at":37,"has_diff":49,"diff_files_changed":1018,"diff_lines":37,"trac_diff_url":1019,"vulnerabilities":1020,"is_current":49},"1.0.3","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.1.0.3.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F1.0.3\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F1.0.2&new_path=%2Fcbxpetition%2Ftags%2F1.0.3",[1021],{"id":33,"url_slug":34,"title":35,"severity":40,"cvss_score":41,"vuln_type":43,"patched_in_version":39},{"version":1023,"download_url":1024,"svn_tag_url":1025,"released_at":37,"has_diff":49,"diff_files_changed":1026,"diff_lines":37,"trac_diff_url":1027,"vulnerabilities":1028,"is_current":49},"1.0.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.1.0.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F1.0.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F1.0.1&new_path=%2Fcbxpetition%2Ftags%2F1.0.2",[1029],{"id":33,"url_slug":34,"title":35,"severity":40,"cvss_score":41,"vuln_type":43,"patched_in_version":39},{"version":1031,"download_url":1032,"svn_tag_url":1033,"released_at":37,"has_diff":49,"diff_files_changed":1034,"diff_lines":37,"trac_diff_url":1035,"vulnerabilities":1036,"is_current":49},"1.0.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.1.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F1.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fcbxpetition%2Ftags%2F1.0.0&new_path=%2Fcbxpetition%2Ftags%2F1.0.1",[1037],{"id":33,"url_slug":34,"title":35,"severity":40,"cvss_score":41,"vuln_type":43,"patched_in_version":39},{"version":1039,"download_url":1040,"svn_tag_url":1041,"released_at":37,"has_diff":49,"diff_files_changed":1042,"diff_lines":37,"trac_diff_url":37,"vulnerabilities":1043,"is_current":49},"1.0.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcbxpetition.1.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fcbxpetition\u002Ftags\u002F1.0.0\u002F",[],[1044],{"id":33,"url_slug":34,"title":35,"severity":40,"cvss_score":41,"vuln_type":43,"patched_in_version":39}]