[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fVRpa7BAFMEkRuMEvYwYZR6JbzhRn1js4s4IabQ0zoO0":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":37,"analysis":133,"fingerprints":314},"add-on-cf7-for-notion","CF7 to Notion","1.6.0","WP connect","https:\u002F\u002Fprofiles.wordpress.org\u002Fwpconnectco\u002F","\u003Cp>Connect the popular WordPress plugin Contact Form 7 to Notion. This add-on enables you to integrate Contact Form 7 forms so that when users submit a form entry, the entries get directly added to Notion. You can link any field type including custom fields and add information to your Notion database.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Ch4>Set up the connection with Notion\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Some simple steps to follow (only once)\u003C\u002Fli>\n\u003Cli>A new Notion tab shows up in your form settings\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Choose the destination database you want\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Make your Notion page visible to the integration\u003C\u002Fli>\n\u003Cli>For each form, select the database where you want to send data\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Map your Contact Form 7 fields with Notion\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>All major field types are supported\u003C\u002Fli>\n\u003Cli>Select the corresponding database field for each form field\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>User-friendly and helpful plugin interface\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Dropdown lists for instant visualization of mapped fields\u003C\u002Fli>\n\u003Cli>Many tooltips to make things easier\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>How does it work? How to use it?\u003C\u002Fh3>\n\u003Col>\n\u003Cli>\n\u003Cp>Create a form with at least an e-mail field (don’t forget the consent field)\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Go to Notion tab and check the box “Add form submissions to your database” to activate the connection\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Choose the Notion’s database in which the data should be added\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Map the fields of your Contact Form 7 form with your Notion’s columns\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Click on “Save settings”\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>If you need support, open a ticket on the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fadd-on-cf7-for-notion\u002F\" rel=\"ugc\">Support\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Troubleshooting\u003C\u002Fh3>\n\u003Cp>Make sure you have created your database and columns in Notion before linking them to your form fields. If you don’t see it, wait 1 minute. Your Notion elements are cached for 60 seconds for optimal performance.\u003Cbr \u002F>\n\u003Cstrong>Supported Fields: Title, Text, Number, URL, E-mail, Phone, Select, Multiple Select and Date\u003C\u002Fstrong>\u003C\u002Fp>\n","Connect Contact Form 7 to Notion. Sync form entries with Notion, including custom fields, for efficient data management.",400,6005,100,6,"2026-02-24T08:37:00.000Z","6.9.4","6.0","7.4",[20,21,22,23,24],"api","contactform7","forms","notion","wpconnect","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fadd-on-cf7-for-notion.1.6.0.zip",0,null,"2026-03-15T15:16:48.613Z",[],{"slug":32,"display_name":7,"profile_url":8,"plugin_count":14,"total_installs":33,"avg_security_score":13,"avg_patch_time_days":34,"trust_score":35,"computed_at":36},"wpconnectco",3820,12,94,"2026-04-04T07:36:32.055Z",[38,50,71,92,114],{"slug":39,"name":40,"version":41,"author":7,"author_profile":8,"description":42,"short_description":43,"active_installs":11,"downloaded":44,"rating":13,"num_ratings":45,"last_updated":46,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":47,"homepage":25,"download_link":49,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"add-on-cf7-for-airtable","CF7 to Airtable","2.5.0","\u003Cp>Connect the WordPress plugin Contact Form 7 to Airtable. This reliable add-on enables you to integrate your Contact Form 7 forms so that when users submit a form entry, the entries get directly added to Airtable. You can link any field type, including custom fields and add information to your Airtable table. Once the form is validated, the information entered will be added to the columns you have selected.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Ch4>Set up the connection with Airtable\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Enter your Airtable Access Token (only once)\u003C\u002Fli>\n\u003Cli>A new Airtable tab shows up in your form settings\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Choose the destination where you want to send data\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>The database and table linked to your Access Token are instantly detected\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Map your Contact Form 7 fields with Airtable\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>All major field types are supported\u003C\u002Fli>\n\u003Cli>Select the corresponding database field for each form field\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>User-friendly and helpful plugin interface\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Smart warnings to avoid mapping errors\u003C\u002Fli>\n\u003Cli>Many tooltips to make things easier\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FbLAzA5LqXX8?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch3>How does it work? How to use it?\u003C\u002Fh3>\n\u003Col>\n\u003Cli>\n\u003Cp>Create a form with at least an e-mail field (don’t forget the consent field)\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Go to Airtable tab and select your database and table\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Save your settings\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Map the fields of your Contact Form 7 form with your Airtable’s columns\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Click on “Save settings”\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>If you need support, open a ticket on the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fadd-on-cf7-for-airtable\u002F\" rel=\"ugc\">Support\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Troubleshooting\u003C\u002Fh3>\n\u003Cp>Make sure you have created your database and columns in Airtable before linking them to your form fields.\u003Cbr \u002F>\n\u003Cstrong>Supported Fields : Single line text, Email, URL, Phone number, Number, Date, Multiple select, Checkbox et Attachment\u003C\u002Fstrong>\u003C\u002Fp>\n","Connect Contact Form 7 to Airtable. Automatically sync form entries with Airtable, including custom fields, for seamless data management.",9250,8,"2026-02-24T08:39:00.000Z",[48,20,21,22,24],"airtable","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fadd-on-cf7-for-airtable.2.5.0.zip",{"slug":51,"name":52,"version":53,"author":7,"author_profile":8,"description":54,"short_description":55,"active_installs":56,"downloaded":57,"rating":58,"num_ratings":59,"last_updated":60,"tested_up_to":16,"requires_at_least":61,"requires_php":62,"tags":63,"homepage":66,"download_link":67,"security_score":68,"vuln_count":69,"unpatched_count":27,"last_vuln_date":70,"fetched_at":29},"wp-sync-for-notion","WP Sync for Notion – Notion to WordPress","1.7.1","\u003Cp>With our Notion to WordPress integration, WP Sync for Notion, you can publish content from Notion directly to your WordPress website and keep your pages in sync without Zapier or Make.\u003C\u002Fp>\n\u003Cp>The free version allows you to synchronize Notion pages to WordPress with their content and structure preserved.\u003C\u002Fp>\n\u003Cp>For advanced use cases, Notion WP Sync Pro+ unlocks powerful features such as database synchronization, field mapping, Custom Post Types, Advanced Custom Fields (ACF) support, and SEO integrations — ideal for professional and content-driven websites.\u003C\u002Fp>\n\u003Cp>Learn more and compare features with the\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwpconnect.co\u002Fnotion-wordpress-integration\u002F#compare-plans\" rel=\"nofollow ugc\">Notion WP Sync Pro+ version\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Ch4>Connect Notion pages\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Sync Notion pages to WordPress\u003C\u002Fli>\n\u003Cli>Keep page content and supported blocks in sync\u003C\u002Fli>\n\u003Cli>Manual or automatic synchronization\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Connect Notion databases (Pro+ only)\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Sync structured Notion databases to WordPress\u003C\u002Fli>\n\u003Cli>Map Notion database properties to WordPress fields\u003C\u002Fli>\n\u003Cli>Create content from databases instead of static pages\u003C\u002Fli>\n\u003Cli>Set up and publish unlimited connections\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Database synchronization and property mapping are available in the\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwpconnect.co\u002Fnotion-wordpress-integration\u002F#compare-plans\" rel=\"nofollow ugc\">Pro+ version\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Display Notion content in WordPress\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Publish content as Posts or Pages\u003C\u002Fli>\n\u003Cli>Display content in Custom Post Types (Pro+)\u003C\u002Fli>\n\u003Cli>Assign Post Status and Author (Pro+)\u003C\u002Fli>\n\u003Cli>Advanced Custom Fields (ACF) support (Pro+)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>These features make Pro+ ideal for headless CMS and editorial workflows.\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwpconnect.co\u002Fnotion-wordpress-integration\u002F#compare-plans\" rel=\"nofollow ugc\">See Pro+ features\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Keep your Notion design or customize it\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Supports most Notion blocks (text, lists, tables, images, columns…)\u003C\u002Fli>\n\u003Cli>Display content via Gutenberg block\u003C\u002Fli>\n\u003Cli>Use shortcodes with Elementor, Divi or any page builder (Pro+)\u003C\u002Fli>\n\u003Cli>Dedicated “Notion Content” Custom Post Type (Pro+ only)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Advanced synchronization & automation\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Manual or automatic synchronization\u003C\u002Fli>\n\u003Cli>Webhook-triggered synchronization (Pro+)\u003C\u002Fli>\n\u003Cli>Control sync behavior (add \u002F update \u002F delete)\u003C\u002Fli>\n\u003Cli>Designed for large-scale content imports (Pro+)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Advanced automation and scalability are available in the\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwpconnect.co\u002Fnotion-wordpress-integration\u002F#compare-plans\" rel=\"nofollow ugc\">Pro+ version\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F2EBm_q_isC0?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent&listType=playlist&list=PLVcMc55QQRBPnlOXfT3kN_7kRF5hwgtwt\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch3>How to unleash your plugin’s full potential?\u003C\u002Fh3>\n\u003Cp>WP Sync for Notion works great for syncing pages, but the Pro+ version unlocks its full power for professional use cases.\u003C\u002Fp>\n\u003Cp>With Pro+, you can:\u003Cbr \u002F>\n* Sync Notion databases instead of only pages\u003Cbr \u002F>\n* Map database properties to WordPress fields\u003Cbr \u002F>\n* Use Custom Post Types and Advanced Custom Fields\u003Cbr \u002F>\n* Improve SEO with Yoast and upcoming SEO integrations\u003Cbr \u002F>\n* Handle large imports and complex content structures\u003C\u002Fp>\n\u003Cp>Compare Free and Pro+ features on the\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwpconnect.co\u002Fnotion-wordpress-integration\u002F#compare-plans\" rel=\"nofollow ugc\">official comparison page\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Troubleshooting\u003C\u002Fh3>\n\u003Cp>If you don’t see your pages, make sure they are shared with your Notion integration.\u003Cbr \u002F>\nIf needed, logs are available via FTP in the following folder:\u003Cbr \u002F>\n\u002Fwp-content\u002Fuploads\u002Fnotionwpsync-logs\u003C\u002Fp>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>Open a ticket via the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fwp-sync-for-notion\u002F\" rel=\"ugc\">WordPress support forum\u003C\u002Fa>\u003C\u002Fp>\n","Connect Notion and send data to WordPress with the WP Sync for Notion plugin!",1000,21840,92,7,"2026-01-22T10:55:00.000Z","5.7","7.0",[20,64,23,65,24],"automation","synchronization","https:\u002F\u002Fwpconnect.co\u002Fnotion-wordpress-integration\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-sync-for-notion.zip",99,1,"2026-01-30 00:00:00",{"slug":72,"name":73,"version":74,"author":75,"author_profile":76,"description":77,"short_description":78,"active_installs":79,"downloaded":80,"rating":58,"num_ratings":81,"last_updated":82,"tested_up_to":83,"requires_at_least":84,"requires_php":25,"tags":85,"homepage":89,"download_link":90,"security_score":91,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"contact-form-7-signature-addon","Contact Form 7 Signature Addon","4.2.2","tameroski","https:\u002F\u002Fprofiles.wordpress.org\u002Ftameroski\u002F","\u003Ch3>Add a signature field to Contact Form 7\u003C\u002Fh3>\n\u003Cp>This plugin adds a new field type to the Contact Form 7 plugin and allows users to add an handwritten signature to the message via a signature pad. The plugin uses Szymon Nowak’s great Javascript library (https:\u002F\u002Fgithub.com\u002Fszimek\u002Fsignature_pad).\u003C\u002Fp>\n\u003Ch4>News\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Version 4 is out, with a major technical refactoring of the plugin. If you’re a theme developer, please review the FAQ to see what changed (specially if you were using the provided javascript functions).\u003C\u002Fli>\n\u003Cli>It is also now possible to use Base64 encoded inline images (at your own risk because of mail clients compatibility issues).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Compatibility\u003C\u002Fh4>\n\u003Cp>This plugin requires version 4.6 or higher of the “Contact Form 7” plugin.\u003Cbr \u002F>\nThe signature pad should work on almost every modern web and mobile browser (IE9+, …).\u003C\u002Fp>\n\u003Ch4>Installation \u002F Support\u003C\u002Fh4>\n\u003Cp>Please read the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcontact-form-7-signature-addon\u002F#faq\" rel=\"ugc\">FAQ\u003C\u002Fa> for details on how to setup your signature fields.\u003C\u002Fp>\n\u003Cp>You can ask for support \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fcontact-form-7-signature-addon\" rel=\"ugc\">here\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Be kind\u003C\u002Fh4>\n\u003Cp>This plugin is just sharing the result of something i needed once for a project, there’s nothing commercial in there. But i’ll listen to your requests and do my best to keep the plugin up to date anyway.\u003C\u002Fp>\n","Easily add an handwritten signature field to Contact Form 7",6000,79675,36,"2019-08-19T13:22:00.000Z","5.2.24","3.9",[86,87,21,88,22],"contact-form","contact-form-7","form","https:\u002F\u002Fgithub.com\u002FBreizhtorm\u002FContact-Form-7-Signature-Addon","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontact-form-7-signature-addon.4.2.2.zip",85,{"slug":93,"name":94,"version":95,"author":96,"author_profile":97,"description":98,"short_description":99,"active_installs":100,"downloaded":101,"rating":35,"num_ratings":59,"last_updated":102,"tested_up_to":103,"requires_at_least":104,"requires_php":105,"tags":106,"homepage":25,"download_link":112,"security_score":68,"vuln_count":69,"unpatched_count":27,"last_vuln_date":113,"fetched_at":29},"gf-google-address-autocomplete","Address Autocomplete via Google for Gravity Forms","1.3.6","PluginsCafe","https:\u002F\u002Fprofiles.wordpress.org\u002Fpluginscafe\u002F","\u003Cp>A simple and nice plugin to get auto suggestion from google place api in gravity form address field. If the installation is okay, go to gravity form menu called ‘Autocomplete API settings’. Input your google map api key and save it. Now create or edit a form, add or edit address field.\u003C\u002Fp>\n\u003Cp>You can see ‘Enable Autocomplete with Google Places API’, Just click on enable and save form. You’re done!\u003C\u002Fp>\n\u003Ch4>Requirements\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>PHP 5.6 or higher\u003C\u002Fli>\n\u003Cli>Gravity Forms 2.8.0 or higher\u003C\u002Fli>\n\u003C\u002Ful>\n","A simple and nice plugin to get auto suggestion from google place api in gravity form address field.",2000,26970,"2025-08-25T10:24:00.000Z","6.8.5","5.0","5.6",[107,108,109,110,111],"address","autocomplete","geolocation","google-place-api","gravityforms","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgf-google-address-autocomplete.1.3.6.zip","2025-06-27 00:00:00",{"slug":115,"name":116,"version":117,"author":118,"author_profile":119,"description":120,"short_description":121,"active_installs":56,"downloaded":122,"rating":13,"num_ratings":123,"last_updated":124,"tested_up_to":16,"requires_at_least":125,"requires_php":126,"tags":127,"homepage":131,"download_link":132,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"quform-zapier","Quform Zapier","1.1.1","ThemeCatcher","https:\u002F\u002Fprofiles.wordpress.org\u002Fthemecatcher\u002F","\u003Cp>Integrates with any of your Quform forms to automatically trigger Zaps when forms are submitted.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cp>Create unlimited integrations from Quform forms to Zapier.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Conditional logic\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Create rules to determine whether or not to run the integrations based on the values of form fields.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Additional fields\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Save extra data in addition to the submitted form data.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Permissions\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Allow other user roles to manage integrations.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>GDPR friendly\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Use conditional logic to only run the integration if the user has given consent.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>Note: this plugin is a free add-on for the \u003Ca href=\"https:\u002F\u002Fwww.quform.com\u002F\" rel=\"nofollow ugc\">Quform Premium WordPress Form Builder plugin\u003C\u002Fa>. Quform version 2.6.0 or later is required for this plugin to function.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n","Easily integrate Zapier with Quform forms.",11062,4,"2025-12-01T11:01:00.000Z","4.6","5.2.4",[128,22,129,130],"form-builder","quform","zapier","https:\u002F\u002Fwww.quform.com\u002Faddons\u002Fzapier","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fquform-zapier.1.1.1.zip",{"attackSurface":134,"codeSignals":264,"taintFlows":280,"riskAssessment":306,"analyzedAt":313},{"hooks":135,"ajaxHandlers":260,"restRoutes":261,"shortcodes":262,"cronEvents":263,"entryPointCount":27,"unprotectedCount":27},[136,142,145,149,153,156,161,166,169,172,175,178,182,185,189,194,198,202,206,210,214,217,220,223,226,229,232,235,238,241,244,247,250,253,256],{"type":137,"name":138,"callback":139,"file":140,"line":141},"action","admin_notices","anonymous","add-on-cf7-for-notion.php",38,{"type":137,"name":143,"callback":139,"file":140,"line":144},"plugins_loaded",55,{"type":137,"name":146,"callback":139,"priority":147,"file":140,"line":148},"activate_plugin",10,106,{"type":137,"name":150,"callback":139,"priority":151,"file":140,"line":152},"init",5,123,{"type":137,"name":154,"callback":139,"file":140,"line":155},"admin_enqueue_scripts",150,{"type":137,"name":150,"callback":157,"priority":158,"file":159,"line":160},"register_clean_translations_cache",9999,"includes\\classes\\class-wpcf7-notion-language-packs.php",61,{"type":162,"name":163,"callback":164,"priority":147,"file":159,"line":165},"filter","translations_api","closure",64,{"type":137,"name":167,"callback":139,"file":159,"line":168},"set_site_transient_update_plugins",142,{"type":137,"name":170,"callback":139,"file":159,"line":171},"delete_site_transient_update_plugins",143,{"type":137,"name":173,"callback":139,"file":159,"line":174},"set_site_transient_update_themes",144,{"type":137,"name":176,"callback":139,"file":159,"line":177},"delete_site_transient_update_themes",145,{"type":137,"name":138,"callback":179,"file":180,"line":181},"wpconnect_wpcf7_notion_admin_notice__info","includes\\functions.php",90,{"type":137,"name":183,"callback":184,"file":180,"line":148},"admin_init","wpconnect_wpcf7_notion_cf7_notice_dismissed",{"type":162,"name":186,"callback":187,"priority":147,"file":180,"line":188},"wpcf7_form_tag","wpconnect_wpcf7_notion_track_custom_cf7_tags",153,{"type":137,"name":190,"callback":191,"priority":147,"file":192,"line":193},"add-on-cf7-for-notion\u002Fplugin-activated","wpconnect_wpcf7_notion_save_plugin_version","includes\\hooks.php",18,{"type":137,"name":195,"callback":196,"priority":69,"file":192,"line":197},"wpcf7_init","wpconnect_wpcf7_notion_register_service",21,{"type":162,"name":199,"callback":200,"priority":147,"file":192,"line":201},"wpcf7_pre_construct_contact_form_properties","WPC_WPCF7_NTN\\CFP\\register_property",28,{"type":162,"name":203,"callback":204,"priority":147,"file":192,"line":205},"wpcf7_editor_panels","WPC_WPCF7_NTN\\CFP\\editor_panels",30,{"type":137,"name":207,"callback":208,"priority":147,"file":192,"line":209},"wpcf7_save_contact_form","WPC_WPCF7_NTN\\CFP\\save_contact_form",32,{"type":162,"name":211,"callback":212,"file":192,"line":213},"add-on-cf7-for-notion\u002Fwpcf7-field-mapper\u002Ffields","WPC_WPCF7_NTN\\Fields\\map_wpcf7_text",39,{"type":162,"name":211,"callback":215,"file":192,"line":216},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_email",40,{"type":162,"name":211,"callback":218,"file":192,"line":219},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_url",41,{"type":162,"name":211,"callback":221,"file":192,"line":222},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_tel",42,{"type":162,"name":211,"callback":224,"file":192,"line":225},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_number",43,{"type":162,"name":211,"callback":227,"file":192,"line":228},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_range",44,{"type":162,"name":211,"callback":230,"file":192,"line":231},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_textarea",45,{"type":162,"name":211,"callback":233,"file":192,"line":234},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_select",46,{"type":162,"name":211,"callback":236,"file":192,"line":237},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_checkbox",47,{"type":162,"name":211,"callback":239,"file":192,"line":240},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_radio",48,{"type":162,"name":211,"callback":242,"file":192,"line":243},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_acceptance",49,{"type":162,"name":211,"callback":245,"file":192,"line":246},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_date",50,{"type":162,"name":211,"callback":248,"file":192,"line":249},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_files",51,{"type":162,"name":211,"callback":251,"file":192,"line":252},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_hidden",52,{"type":162,"name":211,"callback":254,"file":192,"line":255},"WPC_WPCF7_NTN\\Fields\\map_wpcf7_custom",53,{"type":137,"name":257,"callback":258,"priority":147,"file":192,"line":259},"wpcf7_before_send_mail","WPC_WPCF7_NTN\\Entry\\save_wpcf7_entry_in_notion_database",60,[],[],[],[],{"dangerousFunctions":265,"sqlUsage":266,"outputEscaping":268,"fileOperations":278,"externalRequests":269,"nonceChecks":269,"capabilityChecks":27,"bundledLibraries":279},[],{"prepared":27,"raw":27,"locations":267},[],{"escaped":181,"rawEcho":269,"locations":270},2,[271,275],{"file":272,"line":273,"context":274},"includes\\classes\\class-wpcf7-notion-service.php",267,"raw output",{"file":276,"line":277,"context":274},"includes\\contact-form-properties.php",310,3,[],[281],{"entryPoint":282,"graph":283,"unsanitizedCount":69,"severity":305},"\u003Ccontact-form-properties> (includes\\contact-form-properties.php:0)",{"nodes":284,"edges":300},[285,289,295,297],{"id":286,"type":287,"label":288,"file":276,"line":252},"n0","source","$_POST",{"id":290,"type":291,"label":292,"file":276,"line":293,"wp_function":294},"n1","sink","echo() [XSS]",392,"echo",{"id":296,"type":287,"label":288,"file":276,"line":252},"n2",{"id":298,"type":291,"label":292,"file":276,"line":299,"wp_function":294},"n3",393,[301,303],{"from":286,"to":290,"sanitized":302},true,{"from":296,"to":298,"sanitized":304},false,"low",{"summary":307,"deductions":308},"The plugin 'add-on-cf7-for-notion' v1.6.0 presents a generally strong security posture with several good practices observed. The absence of known CVEs and a clean vulnerability history are significant positives, suggesting a mature and well-maintained codebase. The static analysis also reveals a robust approach to SQL queries, with 100% using prepared statements, and a very high percentage (98%) of output being properly escaped. The presence of nonce checks further indicates an awareness of common web security threats.\n\nHowever, there are some areas that warrant attention. The taint analysis identified one flow with unsanitized paths, which, while not flagged as critical or high severity, still represents a potential entry point for vulnerabilities if it involves user-supplied input that is not adequately validated or sanitized. Furthermore, the lack of capability checks on any of the identified entry points is a notable concern. While the attack surface appears minimal (0 AJAX, 0 REST API, etc.), any future expansion or an oversight in code development could expose sensitive operations without proper authorization checks. The file operations and external HTTP requests, while not directly flagged as problematic in the analysis, are always points of scrutiny in security reviews as they can be vectors for more complex attacks.\n\nOverall, the plugin is in a good state, with a low apparent risk. The strengths lie in its clean history and sound handling of common web vulnerabilities like SQL injection and output escaping. The primary weakness is the single identified unsanitized path and the complete absence of capability checks, which, though currently mitigating a low risk due to the limited attack surface, could become more significant if the plugin's functionality grows or is integrated in different contexts.",[309,311],{"reason":310,"points":59},"Unsanitized path in taint flow",{"reason":312,"points":147},"No capability checks on entry points","2026-03-16T19:48:54.635Z",{"wat":315,"direct":321},{"assetPaths":316,"generatorPatterns":318,"scriptPaths":319,"versionParams":320},[317],"\u002Fwp-content\u002Fplugins\u002Fadd-on-cf7-for-notion\u002Fassets\u002Fstyle\u002Fstyle.css",[],[],[],{"cssClasses":322,"htmlComments":323,"htmlAttributes":324,"restEndpoints":330,"jsGlobals":331,"shortcodeOutput":332},[],[],[325,326,327,328,329],"name=\"wpc-wpcf7-notion[enable_database]\"","name=\"wpc-wpcf7-notion[database_selected]\"","name=\"wpc-wpcf7-notion[mapping]\"","data-field-id","data-column-id",[],[],[]]