[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f-gFRjqNGkr1AT6g3hxTEVP7e9GtRZnM-0KG69klqdSQ":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":22,"download_link":23,"security_score":24,"vuln_count":11,"unpatched_count":11,"last_vuln_date":25,"fetched_at":26,"vulnerabilities":27,"developer":28,"crawl_stats":25,"alternatives":34,"analysis":35,"fingerprints":788},"airy-frontend-forms","Airy Frontend Forms","1.0.0","airythemes","https:\u002F\u002Fprofiles.wordpress.org\u002Fairythemes\u002F","\u003Cp>\u003Cstrong>Airy Frontend Forms\u003C\u002Fstrong> Airy Frontend Forms allows you to create frontend submission forms that integrate with Advanced Custom Fields (ACF) and Secure Custom Fields (SCF). Users can submit posts from the frontend with custom fields, taxonomies, and file uploads.\u003C\u002Fp>\n\u003Ch4>✨ Key Features\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Form Management\u003C\u002Fstrong>\u003Cbr \u002F>\n* Create unlimited forms with unique configurations\u003Cbr \u002F>\n* Each form gets its own auto-generated shortcode\u003Cbr \u002F>\n* Works with \u003Cstrong>all WordPress post types\u003C\u002Fstrong> (posts, pages, custom post types)\u003Cbr \u002F>\n* Compatible with WooCommerce, BuddyPress, and other plugins\u003Cbr \u002F>\n* Works seamlessly with all major page builders (Gutenberg, Elementor, Breakdance, etc.)\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Field Control\u003C\u002Fstrong>\u003Cbr \u002F>\n* Choose exactly which ACF\u002FSCF fields to display\u003Cbr \u002F>\n* Support for \u003Cstrong>all ACF field types\u003C\u002Fstrong> including:\u003Cbr \u002F>\n  – Text, Textarea, Number, Email, URL\u003Cbr \u002F>\n  – Select, Checkbox, Radio, Toggle\u003Cbr \u002F>\n  – File Upload, Image, Gallery\u003Cbr \u002F>\n  – Date Picker, Time Picker, Color Picker\u003Cbr \u002F>\n  – WYSIWYG Editor\u003Cbr \u002F>\n  – \u003Cstrong>Repeater Fields\u003C\u002Fstrong> (add\u002Fremove rows dynamically)\u003Cbr \u002F>\n  – \u003Cstrong>Group Fields\u003C\u002Fstrong> (nested field structures)\u003Cbr \u002F>\n  – \u003Cstrong>Relationship Fields\u003C\u002Fstrong>\u003Cbr \u002F>\n  – \u003Cstrong>Taxonomy Fields\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Default WordPress Fields\u003C\u002Fstrong>\u003Cbr \u002F>\n* Include\u002Fexclude Post Title, Post Content, Post Excerpt\u003Cbr \u002F>\n* Featured Image upload with preview\u003Cbr \u002F>\n* Customize labels and validation for each field\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Taxonomy Management\u003C\u002Fstrong>\u003Cbr \u002F>\n* Support for categories, tags, and custom taxonomies\u003Cbr \u002F>\n* Multiple display types:\u003Cbr \u002F>\n  – Checkbox lists\u003Cbr \u002F>\n  – Radio buttons\u003Cbr \u002F>\n  – Single\u002FMultiple dropdowns\u003Cbr \u002F>\n  – Tag-style input with autocomplete\u003Cbr \u002F>\n* Allow users to create new taxonomy terms (optional)\u003Cbr \u002F>\n* Hierarchical taxonomy support (parent-child relationships)\u003C\u002Fp>\n\u003Cp>\u003Cstrong>User Dashboard\u003C\u002Fstrong>\u003Cbr \u002F>\n* Complete user submission dashboard\u003Cbr \u002F>\n* View all submitted posts with status indicators\u003Cbr \u002F>\n* Edit and resubmit posts\u003Cbr \u002F>\n* Delete drafts\u003Cbr \u002F>\n* Track submission history\u003Cbr \u002F>\n* Customizable dashboard page\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Security & Validation\u003C\u002Fstrong>\u003Cbr \u002F>\n* Google reCAPTCHA v3 integration\u003Cbr \u002F>\n* Honeypot spam protection\u003Cbr \u002F>\n* Rate limiting to prevent abuse\u003Cbr \u002F>\n* Server-side validation for all fields\u003Cbr \u002F>\n* Nonce verification\u003Cbr \u002F>\n* Capability checks\u003Cbr \u002F>\n* SQL injection prevention\u003Cbr \u002F>\n* XSS protection\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Auto-Save & Drafts\u003C\u002Fstrong>\u003Cbr \u002F>\n* Automatic draft saving (configurable interval)\u003Cbr \u002F>\n* Never lose work due to connection issues\u003Cbr \u002F>\n* Resume drafts from user dashboard\u003Cbr \u002F>\n* Auto-recovery on browser refresh\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Email Notifications\u003C\u002Fstrong>\u003Cbr \u002F>\n* Customizable email templates\u003Cbr \u002F>\n* Send notifications to:\u003Cbr \u002F>\n  – User (submission received, post published, post rejected)\u003Cbr \u002F>\n  – Admin (new submission)\u003Cbr \u002F>\n* Template variables for dynamic content\u003Cbr \u002F>\n* HTML email support\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Post Management\u003C\u002Fstrong>\u003Cbr \u002F>\n* Set default post status (pending, draft, publish)\u003Cbr \u002F>\n* Role-based direct publishing\u003Cbr \u002F>\n* Post rejection with reason tracking\u003Cbr \u002F>\n* Email notification on rejection\u003Cbr \u002F>\n* Submission count limits (per form, per user, time-based)\u003Cbr \u002F>\n* Duplicate title prevention (optional)\u003C\u002Fp>\n\u003Ch4>🎯 Perfect For\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Directory Websites\u003C\u002Fstrong> – Business listings, doctor directories, restaurant guides\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Job Boards\u003C\u002Fstrong> – Job postings, resume submissions\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Real Estate\u003C\u002Fstrong> – Property listings with photos and details\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Event Calendars\u003C\u002Fstrong> – User-submitted events with categories\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Classified Ads\u003C\u002Fstrong> – Product listings with images\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Review Sites\u003C\u002Fstrong> – User reviews with ratings and images\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Portfolio Sites\u003C\u002Fstrong> – Artist\u002Fdesigner submissions\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Community Platforms\u003C\u002Fstrong> – User-generated content with moderation\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Membership Sites\u003C\u002Fstrong> – Member profiles and submissions\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Educational Platforms\u003C\u002Fstrong> – Assignment submissions, course proposals\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>🔌 Integrations\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Works With:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Advanced Custom Fields (ACF) – Free and Pro versions\u003Cbr \u002F>\n* Secure Custom Fields (SCF)\u003Cbr \u002F>\n* All public custom post types\u003Cbr \u002F>\n* WordPress multisite\u003Cbr \u002F>\n* All major page builders:\u003Cbr \u002F>\n  – Gutenberg\u003Cbr \u002F>\n  – Elementor\u003Cbr \u002F>\n  – Breakdance\u003Cbr \u002F>\n  – Beaver Builder\u003Cbr \u002F>\n  – Divi Builder\u003C\u002Fp>\n\u003Ch4>🎨 Developer Friendly\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Clean, well-documented code\u003C\u002Fli>\n\u003Cli>WordPress coding standards compliant\u003C\u002Fli>\n\u003Cli>Extensive hooks and filters for customization\u003C\u002Fli>\n\u003Cli>PSR-4 autoloading\u003C\u002Fli>\n\u003Cli>Object-oriented architecture\u003C\u002Fli>\n\u003Cli>Translation ready (i18n)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>📋 Requirements\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>WordPress 6.8 or higher\u003C\u002Fli>\n\u003Cli>PHP 8.0 or higher\u003C\u002Fli>\n\u003Cli>Either ACF (Free\u002FPro) or SCF plugin installed\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>🌐 Translation Ready\u003C\u002Fh4>\n\u003Cp>Airy Frontend Forms is fully translation-ready with a complete .pot file included.\u003C\u002Fp>\n\u003Ch4>🆘 Support\u003C\u002Fh4>\n\u003Cp>Need help? We’re here for you!\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fairy-frontend-forms\u002F\" rel=\"ugc\">Support Forum\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin optionally connects to the following external service:\u003C\u002Fp>\n\u003Ch4>Google reCAPTCHA v3\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>What it is:\u003C\u002Fstrong> Google reCAPTCHA v3 is an anti-spam service provided by Google that helps protect your forms from automated bot submissions and spam.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>When it’s used:\u003C\u002Fstrong> This service is only used if you enable the reCAPTCHA feature in the plugin settings (Settings > Airy Forms > CAPTCHA). When enabled, it runs on every form submission to verify that the submission is from a real user and not a bot.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>What data is sent:\u003C\u002Fstrong> When reCAPTCHA is enabled and a user submits a form, the following data is sent to Google’s servers:\u003Cbr \u002F>\n* The reCAPTCHA response token (generated by Google’s JavaScript)\u003Cbr \u002F>\n* The user’s IP address\u003Cbr \u002F>\n* Browser and device information (user agent)\u003Cbr \u002F>\n* Interaction data with the form (mouse movements, clicks, etc.)\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Privacy & Terms:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Google reCAPTCHA Privacy Policy: \u003Ca href=\"https:\u002F\u002Fpolicies.google.com\u002Fprivacy\" rel=\"nofollow ugc\">https:\u002F\u002Fpolicies.google.com\u002Fprivacy\u003C\u002Fa>\u003Cbr \u002F>\n* Google reCAPTCHA Terms of Service: \u003Ca href=\"https:\u002F\u002Fpolicies.google.com\u002Fterms\" rel=\"nofollow ugc\">https:\u002F\u002Fpolicies.google.com\u002Fterms\u003C\u002Fa>\u003Cbr \u002F>\n* reCAPTCHA documentation: \u003Ca href=\"https:\u002F\u002Fdevelopers.google.com\u002Frecaptcha\" rel=\"nofollow ugc\">https:\u002F\u002Fdevelopers.google.com\u002Frecaptcha\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Important Notes:\u003C\u002Fstrong>\u003Cbr \u002F>\n* reCAPTCHA is \u003Cstrong>completely optional\u003C\u002Fstrong> – the plugin works perfectly without it\u003Cbr \u002F>\n* You must obtain your own reCAPTCHA API keys from Google and enter them in the plugin settings\u003Cbr \u002F>\n* Users will see a small reCAPTCHA badge in the bottom-right corner of pages with forms when enabled\u003Cbr \u002F>\n* We recommend reviewing Google’s privacy policy and ensuring compliance with GDPR, CCPA, and other privacy regulations in your jurisdiction\u003C\u002Fp>\n\u003Ch3>Privacy Policy\u003C\u002Fh3>\n\u003Cp>Airy Frontend Forms does not collect or transmit any user data outside of your WordPress installation. All form submissions are stored as WordPress posts in your database.\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Developed by NXlogy for AiryThemes\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Resources Used:\u003C\u002Fstrong>\u003Cbr \u002F>\n* WordPress Dashicons – https:\u002F\u002Fdeveloper.wordpress.org\u002Fresource\u002Fdashicons\u002F (GPLv2)\u003Cbr \u002F>\n* Advanced Custom Fields (ACF) – https:\u002F\u002Fwww.advancedcustomfields.com\u002F (External dependency, optional)\u003Cbr \u002F>\n* Secure Custom Fields (SCF) – https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsmart-custom-fields\u002F (External dependency, optional)\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Tested With:\u003C\u002Fstrong>\u003Cbr \u002F>\n* WordPress 6.8 – 6.9\u003Cbr \u002F>\n* PHP 8.0 – 8.3\u003Cbr \u002F>\n* ACF Free & Pro (6.0+)\u003Cbr \u002F>\n* Secure Custom Fields (4.0+)\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Special Thanks:\u003C\u002Fstrong>\u003Cbr \u002F>\n* WordPress Community\u003Cbr \u002F>\n* ACF Developer Community\u003C\u002Fp>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fairy-frontend-forms\u002F\" rel=\"ugc\">Support Forum\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fairy-frontend-forms\u002F\" rel=\"ugc\">Report Bugs\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Create powerful frontend submission forms for ACF and SCF with complete control over fields, taxonomies, and user submissions.",0,122,"2026-02-25T11:02:00.000Z","6.9.4","6.8","8.0",[18,19,20,21],"acf-forms","frontend-forms","scf-forms","user-fronted-post-submission","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fairy-frontend-forms.1.0.0.zip",100,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":29,"total_installs":30,"avg_security_score":24,"avg_patch_time_days":31,"trust_score":32,"computed_at":33},2,20,30,94,"2026-04-04T07:04:34.078Z",[],{"attackSurface":36,"codeSignals":197,"taintFlows":460,"riskAssessment":779,"analyzedAt":787},{"hooks":37,"ajaxHandlers":122,"restRoutes":183,"shortcodes":184,"cronEvents":196,"entryPointCount":30,"unprotectedCount":29},[38,44,49,53,57,62,66,71,75,78,82,87,90,92,96,100,105,109,114,118],{"type":39,"name":40,"callback":41,"file":42,"line":43},"action","plugins_loaded","affcf_init","airy-frontend-forms.php",85,{"type":39,"name":45,"callback":46,"file":47,"line":48},"admin_init","handle_admin_actions","includes\\admin\\class-affcf-admin.php",36,{"type":39,"name":50,"callback":51,"file":47,"line":52},"admin_enqueue_scripts","enqueue_assets",37,{"type":39,"name":54,"callback":55,"file":47,"line":56},"admin_notices","show_admin_notices",40,{"type":39,"name":58,"callback":59,"file":60,"line":61},"admin_menu","register_menu","includes\\admin\\class-affcf-menu.php",28,{"type":39,"name":63,"callback":64,"file":65,"line":31},"add_meta_boxes","add_meta_box","includes\\admin\\class-affcf-rejection-meta-box.php",{"type":39,"name":67,"callback":68,"priority":69,"file":65,"line":70},"save_post","save_meta_box",10,31,{"type":39,"name":72,"callback":73,"file":65,"line":74},"admin_post_affcf_reject_post","handle_rejection",32,{"type":39,"name":50,"callback":76,"file":65,"line":77},"enqueue_scripts",38,{"type":39,"name":45,"callback":79,"file":80,"line":81},"register_settings","includes\\admin\\class-affcf-settings.php",23,{"type":39,"name":83,"callback":84,"file":85,"line":86},"acf\u002Finit","acf_initialized","includes\\compatibility\\class-affcf-acf-compat.php",25,{"type":39,"name":54,"callback":88,"file":89,"line":81},"show_dependency_notice","includes\\compatibility\\class-affcf-plugin-checker.php",{"type":39,"name":50,"callback":50,"file":91,"line":48},"includes\\core\\class-affcf-hooks.php",{"type":39,"name":93,"callback":94,"priority":69,"file":91,"line":95},"transition_post_status","handle_post_status_change",39,{"type":39,"name":50,"callback":97,"priority":98,"file":91,"line":99},"ensure_datetime_picker_l10n",999,45,{"type":101,"name":102,"callback":103,"priority":69,"file":91,"line":104},"filter","acf\u002Fload_value\u002Ftype=icon_picker","fix_icon_picker_value",51,{"type":39,"name":106,"callback":51,"file":107,"line":108},"wp_enqueue_scripts","includes\\frontend\\class-affcf-frontend.php",59,{"type":39,"name":110,"callback":111,"priority":112,"file":107,"line":113},"wp_footer","enqueue_assets_footer",1,63,{"type":39,"name":115,"callback":116,"file":107,"line":117},"template_redirect","process_form_submission",66,{"type":39,"name":119,"callback":120,"file":107,"line":121},"admin_post_affcf_delete_post","handle_delete_post",72,[123,129,133,136,140,144,148,152,155,159,160,164,167,171,175,177,181],{"action":124,"nopriv":125,"callback":126,"hasNonce":127,"hasCapCheck":127,"file":47,"line":128},"affcf_save_form",false,"ajax_save_form",true,43,{"action":130,"nopriv":125,"callback":131,"hasNonce":127,"hasCapCheck":127,"file":47,"line":132},"affcf_delete_form","ajax_delete_form",44,{"action":134,"nopriv":125,"callback":135,"hasNonce":127,"hasCapCheck":127,"file":47,"line":99},"affcf_get_field_groups","ajax_get_field_groups",{"action":137,"nopriv":125,"callback":138,"hasNonce":127,"hasCapCheck":127,"file":47,"line":139},"affcf_get_taxonomies","ajax_get_taxonomies",46,{"action":141,"nopriv":125,"callback":142,"hasNonce":127,"hasCapCheck":127,"file":47,"line":143},"affcf_load_field_groups","ajax_load_field_groups",47,{"action":145,"nopriv":125,"callback":146,"hasNonce":127,"hasCapCheck":127,"file":47,"line":147},"affcf_load_taxonomies","ajax_load_taxonomies",48,{"action":149,"nopriv":125,"callback":150,"hasNonce":127,"hasCapCheck":127,"file":65,"line":151},"affcf_reject_post","ajax_handle_rejection",35,{"action":134,"nopriv":125,"callback":135,"hasNonce":127,"hasCapCheck":127,"file":153,"line":154},"includes\\admin\\forms\\class-affcf-admin-field-helper.php",26,{"action":156,"nopriv":125,"callback":157,"hasNonce":127,"hasCapCheck":127,"file":153,"line":158},"affcf_get_fields_for_group","ajax_get_fields_for_group",27,{"action":137,"nopriv":125,"callback":138,"hasNonce":127,"hasCapCheck":127,"file":153,"line":61},{"action":161,"nopriv":125,"callback":162,"hasNonce":127,"hasCapCheck":125,"file":163,"line":70},"affcf_auto_save","ajax_save_draft","includes\\frontend\\class-affcf-auto-save.php",{"action":165,"nopriv":125,"callback":166,"hasNonce":127,"hasCapCheck":125,"file":163,"line":74},"affcf_load_draft","ajax_load_draft",{"action":168,"nopriv":125,"callback":169,"hasNonce":127,"hasCapCheck":125,"file":163,"line":170},"affcf_delete_draft","ajax_delete_draft",33,{"action":172,"nopriv":125,"callback":173,"hasNonce":125,"hasCapCheck":125,"file":107,"line":174},"affcf_submit_form","ajax_submit_form",69,{"action":172,"nopriv":127,"callback":173,"hasNonce":125,"hasCapCheck":125,"file":107,"line":176},73,{"action":178,"nopriv":125,"callback":179,"hasNonce":127,"hasCapCheck":127,"file":107,"line":180},"affcf_upload_image","ajax_upload_image",76,{"action":178,"nopriv":127,"callback":179,"hasNonce":127,"hasCapCheck":127,"file":107,"line":182},77,[],[185,188,192],{"tag":186,"callback":187,"file":107,"line":104},"affcf_form","render_form_shortcode",{"tag":189,"callback":190,"file":107,"line":191},"affcf_dashboard","render_dashboard_shortcode",52,{"tag":193,"callback":194,"file":107,"line":195},"affcf_edit_form","render_edit_form_shortcode",53,[],{"dangerousFunctions":198,"sqlUsage":199,"outputEscaping":243,"fileOperations":112,"externalRequests":112,"nonceChecks":458,"capabilityChecks":158,"bundledLibraries":459},[],{"prepared":200,"raw":201,"locations":202},92,17,[203,206,209,212,214,216,218,219,221,225,228,230,232,235,237,239,242],{"file":60,"line":204,"context":205},148,"$wpdb->get_results() with variable interpolation",{"file":207,"line":208,"context":205},"includes\\admin\\views\\settings\\settings-page.php",747,{"file":210,"line":108,"context":211},"includes\\admin\\views\\submissions\\submissions-list.php","$wpdb->get_var() with variable interpolation",{"file":210,"line":213,"context":205},83,{"file":210,"line":215,"context":211},98,{"file":210,"line":217,"context":211},99,{"file":210,"line":24,"context":211},{"file":210,"line":220,"context":211},101,{"file":222,"line":223,"context":224},"includes\\core\\class-affcf-deactivator.php",42,"$wpdb->query() with variable interpolation",{"file":226,"line":227,"context":205},"includes\\database\\repositories\\class-affcf-form-repository.php",253,{"file":226,"line":229,"context":211},328,{"file":226,"line":231,"context":211},386,{"file":233,"line":234,"context":205},"includes\\database\\repositories\\class-affcf-submission-repository.php",125,{"file":233,"line":236,"context":211},210,{"file":238,"line":74,"context":211},"includes\\helpers\\class-affcf-helper.php",{"file":240,"line":241,"context":224},"uninstall.php",57,{"file":240,"line":108,"context":224},{"escaped":244,"rawEcho":245,"locations":246},926,104,[247,250,252,255,257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,311,313,315,317,319,321,323,325,327,329,331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,377,379,381,383,385,387,389,391,393,395,397,399,401,403,405,407,409,411,413,415,417,419,421,423,425,427,429,431,433,435,437,439,441,443,445,447,449,451,453,455],{"file":65,"line":248,"context":249},121,"raw output",{"file":207,"line":251,"context":249},62,{"file":253,"line":254,"context":249},"includes\\frontend\\class-affcf-form-renderer.php",107,{"file":253,"line":256,"context":249},324,{"file":253,"line":258,"context":249},325,{"file":253,"line":260,"context":249},847,{"file":253,"line":262,"context":249},1032,{"file":253,"line":264,"context":249},1051,{"file":253,"line":266,"context":249},1056,{"file":253,"line":268,"context":249},1083,{"file":253,"line":270,"context":249},1113,{"file":253,"line":272,"context":249},1133,{"file":253,"line":274,"context":249},1158,{"file":253,"line":276,"context":249},1265,{"file":253,"line":278,"context":249},1266,{"file":253,"line":280,"context":249},1331,{"file":253,"line":282,"context":249},1332,{"file":253,"line":284,"context":249},1413,{"file":253,"line":286,"context":249},1419,{"file":253,"line":288,"context":249},1420,{"file":253,"line":290,"context":249},1619,{"file":253,"line":292,"context":249},1620,{"file":253,"line":294,"context":249},1741,{"file":253,"line":296,"context":249},1743,{"file":253,"line":298,"context":249},1757,{"file":253,"line":300,"context":249},1770,{"file":253,"line":302,"context":249},1783,{"file":253,"line":304,"context":249},1816,{"file":253,"line":306,"context":249},1852,{"file":253,"line":308,"context":249},1853,{"file":253,"line":310,"context":249},1895,{"file":253,"line":312,"context":249},1899,{"file":253,"line":314,"context":249},1900,{"file":253,"line":316,"context":249},1954,{"file":253,"line":318,"context":249},1977,{"file":253,"line":320,"context":249},2010,{"file":253,"line":322,"context":249},2025,{"file":253,"line":324,"context":249},2026,{"file":253,"line":326,"context":249},2058,{"file":253,"line":328,"context":249},2059,{"file":253,"line":330,"context":249},2089,{"file":253,"line":332,"context":249},2149,{"file":253,"line":334,"context":249},2152,{"file":253,"line":336,"context":249},2153,{"file":253,"line":338,"context":249},2192,{"file":253,"line":340,"context":249},2197,{"file":253,"line":342,"context":249},2214,{"file":253,"line":344,"context":249},2234,{"file":253,"line":346,"context":249},2241,{"file":253,"line":348,"context":249},2248,{"file":253,"line":350,"context":249},2255,{"file":253,"line":352,"context":249},2259,{"file":253,"line":354,"context":249},2266,{"file":253,"line":356,"context":249},2303,{"file":253,"line":358,"context":249},2308,{"file":253,"line":360,"context":249},2336,{"file":253,"line":362,"context":249},2347,{"file":253,"line":364,"context":249},2350,{"file":253,"line":366,"context":249},2359,{"file":253,"line":368,"context":249},2383,{"file":253,"line":370,"context":249},2398,{"file":253,"line":372,"context":249},2425,{"file":253,"line":374,"context":249},2459,{"file":253,"line":376,"context":249},2478,{"file":253,"line":378,"context":249},2699,{"file":253,"line":380,"context":249},2739,{"file":253,"line":382,"context":249},2771,{"file":253,"line":384,"context":249},2785,{"file":253,"line":386,"context":249},2796,{"file":253,"line":388,"context":249},2800,{"file":253,"line":390,"context":249},2811,{"file":253,"line":392,"context":249},2825,{"file":253,"line":394,"context":249},2859,{"file":253,"line":396,"context":249},2865,{"file":253,"line":398,"context":249},2866,{"file":253,"line":400,"context":249},2872,{"file":253,"line":402,"context":249},2873,{"file":253,"line":404,"context":249},2934,{"file":253,"line":406,"context":249},2940,{"file":253,"line":408,"context":249},2980,{"file":253,"line":410,"context":249},3092,{"file":253,"line":412,"context":249},3177,{"file":253,"line":414,"context":249},3178,{"file":253,"line":416,"context":249},3233,{"file":253,"line":418,"context":249},3234,{"file":253,"line":420,"context":249},3285,{"file":253,"line":422,"context":249},3302,{"file":253,"line":424,"context":249},3307,{"file":253,"line":426,"context":249},3335,{"file":253,"line":428,"context":249},3338,{"file":253,"line":430,"context":249},3356,{"file":253,"line":432,"context":249},3357,{"file":253,"line":434,"context":249},3362,{"file":253,"line":436,"context":249},3384,{"file":253,"line":438,"context":249},3385,{"file":253,"line":440,"context":249},3746,{"file":253,"line":442,"context":249},3747,{"file":253,"line":444,"context":249},3792,{"file":253,"line":446,"context":249},3894,{"file":253,"line":448,"context":249},3942,{"file":253,"line":450,"context":249},3971,{"file":253,"line":452,"context":249},3998,{"file":253,"line":454,"context":249},4003,{"file":456,"line":457,"context":249},"includes\\frontend\\class-affcf-user-dashboard.php",84,24,[],[461,484,496,507,517,528,536,551,575,592,618,629,640,650,665,678,689,711,723,740,755,766],{"entryPoint":462,"graph":463,"unsanitizedCount":11,"severity":483},"handle_admin_actions (includes\\admin\\class-affcf-admin.php:72)",{"nodes":464,"edges":480},[465,470,474],{"id":466,"type":467,"label":468,"file":47,"line":469},"n0","source","$_GET['form_id']",102,{"id":471,"type":472,"label":473,"file":47,"line":469},"n1","transform","→ toggle_form_status()",{"id":475,"type":476,"label":477,"file":47,"line":478,"wp_function":479},"n2","sink","get_var() [SQLi]",183,"get_var",[481,482],{"from":466,"to":471,"sanitized":125},{"from":471,"to":475,"sanitized":127},"low",{"entryPoint":485,"graph":486,"unsanitizedCount":11,"severity":483},"\u003Cform-add> (includes\\admin\\views\\forms\\form-add.php:0)",{"nodes":487,"edges":494},[488,491],{"id":466,"type":467,"label":489,"file":490,"line":158},"$_GET","includes\\admin\\views\\forms\\form-add.php",{"id":471,"type":476,"label":492,"file":490,"line":151,"wp_function":493},"echo() [XSS]","echo",[495],{"from":466,"to":471,"sanitized":127},{"entryPoint":497,"graph":498,"unsanitizedCount":11,"severity":483},"\u003Csettings-page> (includes\\admin\\views\\settings\\settings-page.php:0)",{"nodes":499,"edges":505},[500,502],{"id":466,"type":467,"label":501,"file":207,"line":74},"$_POST (x7)",{"id":471,"type":476,"label":503,"file":207,"line":170,"wp_function":504},"update_option() [Settings Manipulation]","update_option",[506],{"from":466,"to":471,"sanitized":127},{"entryPoint":508,"graph":509,"unsanitizedCount":11,"severity":483},"\u003Csubmissions-list> (includes\\admin\\views\\submissions\\submissions-list.php:0)",{"nodes":510,"edges":515},[511,512],{"id":466,"type":467,"label":489,"file":210,"line":61},{"id":471,"type":476,"label":513,"file":210,"line":251,"wp_function":514},"get_results() [SQLi]","get_results",[516],{"from":466,"to":471,"sanitized":127},{"entryPoint":518,"graph":519,"unsanitizedCount":11,"severity":483},"render_pagination (includes\\frontend\\class-affcf-user-dashboard.php:564)",{"nodes":520,"edges":526},[521,524],{"id":466,"type":467,"label":522,"file":456,"line":523},"$_GET (x2)",566,{"id":471,"type":476,"label":492,"file":456,"line":525,"wp_function":493},578,[527],{"from":466,"to":471,"sanitized":127},{"entryPoint":529,"graph":530,"unsanitizedCount":11,"severity":483},"\u003Cclass-affcf-user-dashboard> (includes\\frontend\\class-affcf-user-dashboard.php:0)",{"nodes":531,"edges":534},[532,533],{"id":466,"type":467,"label":522,"file":456,"line":523},{"id":471,"type":476,"label":492,"file":456,"line":525,"wp_function":493},[535],{"from":466,"to":471,"sanitized":127},{"entryPoint":537,"graph":538,"unsanitizedCount":112,"severity":550},"handle_create_form (includes\\admin\\class-affcf-admin.php:209)",{"nodes":539,"edges":547},[540,543,545],{"id":466,"type":467,"label":541,"file":47,"line":542},"$_POST",280,{"id":471,"type":472,"label":544,"file":47,"line":542},"→ ensure_unique_slug()",{"id":475,"type":476,"label":477,"file":47,"line":546,"wp_function":479},1121,[548,549],{"from":466,"to":471,"sanitized":125},{"from":471,"to":475,"sanitized":125},"high",{"entryPoint":552,"graph":553,"unsanitizedCount":29,"severity":550},"handle_update_form (includes\\admin\\class-affcf-admin.php:337)",{"nodes":554,"edges":570},[555,557,559,563,566,568],{"id":466,"type":467,"label":541,"file":47,"line":556},348,{"id":471,"type":472,"label":558,"file":47,"line":556},"→ get_by_id()",{"id":475,"type":476,"label":560,"file":233,"line":561,"wp_function":562},"get_row() [SQLi]",87,"get_row",{"id":564,"type":467,"label":541,"file":47,"line":565},"n3",422,{"id":567,"type":472,"label":544,"file":47,"line":565},"n4",{"id":569,"type":476,"label":477,"file":47,"line":546,"wp_function":479},"n5",[571,572,573,574],{"from":466,"to":471,"sanitized":125},{"from":471,"to":475,"sanitized":125},{"from":564,"to":567,"sanitized":125},{"from":567,"to":569,"sanitized":125},{"entryPoint":576,"graph":577,"unsanitizedCount":29,"severity":550},"ajax_save_form (includes\\admin\\class-affcf-admin.php:767)",{"nodes":578,"edges":587},[579,581,582,583,585,586],{"id":466,"type":467,"label":541,"file":47,"line":580},808,{"id":471,"type":472,"label":558,"file":47,"line":580},{"id":475,"type":476,"label":560,"file":233,"line":561,"wp_function":562},{"id":564,"type":467,"label":541,"file":47,"line":584},838,{"id":567,"type":472,"label":544,"file":47,"line":584},{"id":569,"type":476,"label":477,"file":47,"line":546,"wp_function":479},[588,589,590,591],{"from":466,"to":471,"sanitized":125},{"from":471,"to":475,"sanitized":125},{"from":564,"to":567,"sanitized":125},{"from":567,"to":569,"sanitized":125},{"entryPoint":593,"graph":594,"unsanitizedCount":617,"severity":550},"\u003Cclass-affcf-admin> (includes\\admin\\class-affcf-admin.php:0)",{"nodes":595,"edges":610},[596,597,598,599,601,602,603,606,608],{"id":466,"type":467,"label":468,"file":47,"line":469},{"id":471,"type":472,"label":473,"file":47,"line":469},{"id":475,"type":476,"label":477,"file":47,"line":478,"wp_function":479},{"id":564,"type":467,"label":600,"file":47,"line":542},"$_POST (x3)",{"id":567,"type":472,"label":544,"file":47,"line":542},{"id":569,"type":476,"label":477,"file":47,"line":546,"wp_function":479},{"id":604,"type":467,"label":605,"file":47,"line":556},"n6","$_POST (x2)",{"id":607,"type":472,"label":558,"file":47,"line":556},"n7",{"id":609,"type":476,"label":560,"file":233,"line":561,"wp_function":562},"n8",[611,612,613,614,615,616],{"from":466,"to":471,"sanitized":125},{"from":471,"to":475,"sanitized":127},{"from":564,"to":567,"sanitized":125},{"from":567,"to":569,"sanitized":125},{"from":604,"to":607,"sanitized":125},{"from":607,"to":609,"sanitized":125},5,{"entryPoint":619,"graph":620,"unsanitizedCount":112,"severity":550},"handle_rejection (includes\\admin\\class-affcf-rejection-meta-box.php:254)",{"nodes":621,"edges":626},[622,624,625],{"id":466,"type":467,"label":541,"file":65,"line":623},284,{"id":471,"type":472,"label":558,"file":65,"line":623},{"id":475,"type":476,"label":560,"file":233,"line":561,"wp_function":562},[627,628],{"from":466,"to":471,"sanitized":125},{"from":471,"to":475,"sanitized":125},{"entryPoint":630,"graph":631,"unsanitizedCount":112,"severity":550},"ajax_handle_rejection (includes\\admin\\class-affcf-rejection-meta-box.php:352)",{"nodes":632,"edges":637},[633,635,636],{"id":466,"type":467,"label":541,"file":65,"line":634},388,{"id":471,"type":472,"label":558,"file":65,"line":634},{"id":475,"type":476,"label":560,"file":233,"line":561,"wp_function":562},[638,639],{"from":466,"to":471,"sanitized":125},{"from":471,"to":475,"sanitized":125},{"entryPoint":641,"graph":642,"unsanitizedCount":29,"severity":550},"\u003Cclass-affcf-rejection-meta-box> (includes\\admin\\class-affcf-rejection-meta-box.php:0)",{"nodes":643,"edges":647},[644,645,646],{"id":466,"type":467,"label":605,"file":65,"line":623},{"id":471,"type":472,"label":558,"file":65,"line":623},{"id":475,"type":476,"label":560,"file":233,"line":561,"wp_function":562},[648,649],{"from":466,"to":471,"sanitized":125},{"from":471,"to":475,"sanitized":125},{"entryPoint":651,"graph":652,"unsanitizedCount":112,"severity":550},"\u003Cform-edit> (includes\\admin\\views\\forms\\form-edit.php:0)",{"nodes":653,"edges":661},[654,657,658,659,660],{"id":466,"type":467,"label":655,"file":656,"line":74},"$_GET (x8)","includes\\admin\\views\\forms\\form-edit.php",{"id":471,"type":476,"label":492,"file":656,"line":95,"wp_function":493},{"id":475,"type":467,"label":489,"file":656,"line":154},{"id":564,"type":472,"label":558,"file":656,"line":154},{"id":567,"type":476,"label":560,"file":233,"line":561,"wp_function":562},[662,663,664],{"from":466,"to":471,"sanitized":127},{"from":475,"to":564,"sanitized":125},{"from":564,"to":567,"sanitized":125},{"entryPoint":666,"graph":667,"unsanitizedCount":112,"severity":550},"ajax_load_draft (includes\\frontend\\class-affcf-auto-save.php:102)",{"nodes":668,"edges":675},[669,671,673],{"id":466,"type":467,"label":541,"file":163,"line":670},129,{"id":471,"type":472,"label":672,"file":163,"line":670},"→ get_draft()",{"id":475,"type":476,"label":560,"file":163,"line":674,"wp_function":562},406,[676,677],{"from":466,"to":471,"sanitized":125},{"from":471,"to":475,"sanitized":125},{"entryPoint":679,"graph":680,"unsanitizedCount":112,"severity":550},"ajax_delete_draft (includes\\frontend\\class-affcf-auto-save.php:162)",{"nodes":681,"edges":686},[682,684,685],{"id":466,"type":467,"label":541,"file":163,"line":683},189,{"id":471,"type":472,"label":672,"file":163,"line":683},{"id":475,"type":476,"label":560,"file":163,"line":674,"wp_function":562},[687,688],{"from":466,"to":471,"sanitized":125},{"from":471,"to":475,"sanitized":125},{"entryPoint":690,"graph":691,"unsanitizedCount":29,"severity":550},"\u003Cclass-affcf-auto-save> (includes\\frontend\\class-affcf-auto-save.php:0)",{"nodes":692,"edges":705},[693,695,696,698,699,700,702,703,704],{"id":466,"type":467,"label":541,"file":163,"line":694},54,{"id":471,"type":476,"label":477,"file":163,"line":556,"wp_function":479},{"id":475,"type":467,"label":541,"file":163,"line":697},177,{"id":564,"type":476,"label":560,"file":163,"line":674,"wp_function":562},{"id":567,"type":467,"label":541,"file":163,"line":694},{"id":569,"type":476,"label":513,"file":163,"line":701,"wp_function":514},451,{"id":604,"type":467,"label":605,"file":163,"line":670},{"id":607,"type":472,"label":672,"file":163,"line":670},{"id":609,"type":476,"label":560,"file":163,"line":674,"wp_function":562},[706,707,708,709,710],{"from":466,"to":471,"sanitized":127},{"from":475,"to":564,"sanitized":127},{"from":567,"to":569,"sanitized":127},{"from":604,"to":607,"sanitized":125},{"from":607,"to":609,"sanitized":125},{"entryPoint":712,"graph":713,"unsanitizedCount":112,"severity":550},"get_form (includes\\frontend\\class-affcf-form-submission.php:218)",{"nodes":714,"edges":720},[715,718,719],{"id":466,"type":467,"label":541,"file":716,"line":717},"includes\\frontend\\class-affcf-form-submission.php",227,{"id":471,"type":472,"label":558,"file":716,"line":717},{"id":475,"type":476,"label":560,"file":233,"line":561,"wp_function":562},[721,722],{"from":466,"to":471,"sanitized":125},{"from":471,"to":475,"sanitized":125},{"entryPoint":724,"graph":725,"unsanitizedCount":112,"severity":550},"\u003Cclass-affcf-form-submission> (includes\\frontend\\class-affcf-form-submission.php:0)",{"nodes":726,"edges":736},[727,729,733,734,735],{"id":466,"type":467,"label":541,"file":716,"line":728},220,{"id":471,"type":476,"label":730,"file":716,"line":731,"wp_function":732},"query() [SQLi]",1735,"query",{"id":475,"type":467,"label":541,"file":716,"line":717},{"id":564,"type":472,"label":558,"file":716,"line":717},{"id":567,"type":476,"label":560,"file":233,"line":561,"wp_function":562},[737,738,739],{"from":466,"to":471,"sanitized":127},{"from":475,"to":564,"sanitized":125},{"from":564,"to":567,"sanitized":125},{"entryPoint":741,"graph":742,"unsanitizedCount":29,"severity":550},"render_form_shortcode (includes\\frontend\\class-affcf-frontend.php:86)",{"nodes":743,"edges":751},[744,745,747,749,750],{"id":466,"type":467,"label":489,"file":107,"line":469},{"id":471,"type":476,"label":560,"file":107,"line":746,"wp_function":562},111,{"id":475,"type":467,"label":489,"file":107,"line":748},134,{"id":564,"type":472,"label":558,"file":107,"line":748},{"id":567,"type":476,"label":560,"file":233,"line":561,"wp_function":562},[752,753,754],{"from":466,"to":471,"sanitized":125},{"from":475,"to":564,"sanitized":125},{"from":564,"to":567,"sanitized":125},{"entryPoint":756,"graph":757,"unsanitizedCount":112,"severity":550},"render_edit_form_shortcode (includes\\frontend\\class-affcf-frontend.php:183)",{"nodes":758,"edges":763},[759,761,762],{"id":466,"type":467,"label":489,"file":107,"line":760},223,{"id":471,"type":472,"label":558,"file":107,"line":760},{"id":475,"type":476,"label":560,"file":233,"line":561,"wp_function":562},[764,765],{"from":466,"to":471,"sanitized":125},{"from":471,"to":475,"sanitized":125},{"entryPoint":767,"graph":768,"unsanitizedCount":29,"severity":550},"\u003Cclass-affcf-frontend> (includes\\frontend\\class-affcf-frontend.php:0)",{"nodes":769,"edges":775},[770,771,772,773,774],{"id":466,"type":467,"label":489,"file":107,"line":469},{"id":471,"type":476,"label":560,"file":107,"line":746,"wp_function":562},{"id":475,"type":467,"label":522,"file":107,"line":748},{"id":564,"type":472,"label":558,"file":107,"line":748},{"id":567,"type":476,"label":560,"file":233,"line":561,"wp_function":562},[776,777,778],{"from":466,"to":471,"sanitized":127},{"from":475,"to":564,"sanitized":125},{"from":564,"to":567,"sanitized":125},{"summary":780,"deductions":781},"The \"airy-frontend-forms\" v1.0.0 plugin presents a mixed security posture.  On the positive side, it demonstrates good practices by extensively utilizing prepared statements for SQL queries and performing robust output escaping, with 84% and 90% respectively. The plugin also includes a healthy number of nonce and capability checks, indicating an awareness of common WordPress security mechanisms.  Furthermore, its vulnerability history is clean, with zero recorded CVEs, suggesting a stable and likely well-maintained codebase in terms of known past issues.\n\nHowever, significant concerns arise from the static analysis. The plugin exposes two AJAX handlers without any authentication checks, creating a direct entry point for unauthenticated users. This is exacerbated by the taint analysis, which reveals 16 high-severity flows with unsanitized paths. These flows, combined with the unprotected AJAX handlers, pose a substantial risk of arbitrary code execution or data manipulation if an attacker can leverage these unsanitized inputs. The presence of file operations and external HTTP requests, while not explicitly flagged as risky in this analysis, also warrants cautious monitoring given the unsanitized path issues.\n\nIn conclusion, while the plugin has a clean vulnerability history and good internal coding practices regarding SQL and output sanitization, the critical taint analysis results coupled with unprotected AJAX endpoints represent a significant and immediate security risk. Addressing these high-severity unsanitized path flows and securing the AJAX handlers should be the highest priority.",[782,784],{"reason":783,"points":69},"AJAX handlers without auth checks",{"reason":785,"points":786},"High severity taint flows with unsanitized paths",16,"2026-03-17T06:38:50.748Z",{"wat":789,"direct":804},{"assetPaths":790,"generatorPatterns":796,"scriptPaths":797,"versionParams":798},[791,792,793,794,795],"\u002Fwp-content\u002Fplugins\u002Fairy-frontend-forms\u002Fassets\u002Fcss\u002Fadmin-style.css","\u002Fwp-content\u002Fplugins\u002Fairy-frontend-forms\u002Fassets\u002Fcss\u002Ffrontend-style.css","\u002Fwp-content\u002Fplugins\u002Fairy-frontend-forms\u002Fassets\u002Fjs\u002Fadmin-script.js","\u002Fwp-content\u002Fplugins\u002Fairy-frontend-forms\u002Fassets\u002Fjs\u002Ffrontend-script.js","\u002Fwp-content\u002Fplugins\u002Fairy-frontend-forms\u002Fassets\u002Fjs\u002Fform-builder.js",[],[793,794,795],[799,800,801,802,803],"airy-frontend-forms\u002Fassets\u002Fcss\u002Fadmin-style.css?ver=","airy-frontend-forms\u002Fassets\u002Fcss\u002Ffrontend-style.css?ver=","airy-frontend-forms\u002Fassets\u002Fjs\u002Fadmin-script.js?ver=","airy-frontend-forms\u002Fassets\u002Fjs\u002Ffrontend-script.js?ver=","airy-frontend-forms\u002Fassets\u002Fjs\u002Fform-builder.js?ver=",{"cssClasses":805,"htmlComments":809,"htmlAttributes":828,"restEndpoints":831,"jsGlobals":837,"shortcodeOutput":840},[806,807,808],"affcf-form-wrapper","affcf-frontend-form","affcf-form-field",[810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827],"\u003C!-- Main Admin Class","\u003C!-- Exit if accessed directly.","\u003C!-- Initialize admin components.","\u003C!-- AJAX handlers for field groups.","\u003C!-- Post rejection meta box.","\u003C!-- Admin-specific hooks.","\u003C!-- Admin notices.","\u003C!-- AJAX handlers.","\u003C!-- Show rejection success notice.","\u003C!-- phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Reading GET parameter to display notice only","\u003C!-- Handle form creation.","\u003C!-- Handle form update.","\u003C!-- Handle form duplication.","\u003C!-- phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Nonce verified in duplicate_form()","\u003C!-- Handle form deletion.","\u003C!-- phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Nonce verified in delete_form()","\u003C!-- Handle form status toggle.","\u003C!-- phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Nonce verified in toggle_form_status()",[829,830],"data-affcf-form-id","data-affcf-field-id",[832,833,834,835,836],"\u002Fwp-json\u002Faffcf\u002Fv1\u002Fforms","\u002Fwp-json\u002Faffcf\u002Fv1\u002Fforms\u002F(?P\u003Cid>\\d+)","\u002Fwp-json\u002Faffcf\u002Fv1\u002Ffield-groups","\u002Fwp-json\u002Faffcf\u002Fv1\u002Ffield-groups\u002F(?P\u003Cid>\\d+)","\u002Fwp-json\u002Faffcf\u002Fv1\u002Ftaxonomies",[838,839],"AFFCF_Admin_Form_Builder","AFFCF_Frontend_Form",[841,842],"[airy-frontend-form id=\"","[affcf_frontend_form id=\""]