[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fBdnZg4OnWTPAqchZFvYSyMz81cQ_t4hn7YjwryF-4-E":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":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":38,"analysis":132,"fingerprints":225},"ads-txt","Ads.txt Manager","1.4.6","10up","https:\u002F\u002Fprofiles.wordpress.org\u002F10up\u002F","\u003Cp>Create, manage, and validate your ads.txt and app-ads.txt from within WordPress, like any other content asset. Requires PHP 7.4+.\u003C\u002Fp>\n\u003Ch3>What is ads.txt?\u003C\u002Fh3>\n\u003Cp>Ads.txt is an initiative by the Interactive Advertising Bureau to enable publishers to take control over who can sell their ad inventory. Through our work at 10up with various publishers, we’ve created a way to manage and validate your ads.txt file from within WordPress, eliminating the need to upload a file. The validation baked into the plugin helps avoid malformed records, which can cause issues that end up cached for up to 24 hours and can lead to a drop in ad revenue.\u003C\u002Fp>\n\u003Ch3>Technical Notes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Requires PHP 7.4+.\u003C\u002Fli>\n\u003Cli>Ad blockers may break syntax highlighting and pre-save error checking on the edit screen.\u003C\u002Fli>\n\u003Cli>Rewrites need to be enabled. Without rewrites, WordPress cannot know to supply \u003Ccode>\u002Fads.txt\u003C\u002Fcode> when requested.\u003C\u002Fli>\n\u003Cli>Your site URL must not contain a path (e.g. \u003Ccode>https:\u002F\u002Fexample.com\u002Fsite\u002F\u003C\u002Fcode> or path-based multisite installs). While the plugin will appear to function in the admin, it will not display the contents at \u003Ccode>https:\u002F\u002Fexample.com\u002Fsite\u002Fads.txt\u003C\u002Fcode>. This is because the plugin follows the IAB spec, which requires that the ads.txt file be located at the root of a domain or subdomain.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>What about ads.cert?\u003C\u002Fh3>\n\u003Cp>We’re closely monitoring continued developments in the ad fraud space, and see this plugin as not only a way to create and manage your ads.txt file but also be prepared for future changes and upgrades to specifications. Ads.cert is still in the extremely early stages so we don’t see any immediate concerns with implementing ads.txt.\u003C\u002Fp>\n\u003Ch3>Can I use this with multisite?\u003C\u002Fh3>\n\u003Cp>Yes! However, if you are using a subfolder installation it will only work for the main site. This is because you can only have one ads.txt for a given domain or subdomain per the \u003Ca href=\"https:\u002F\u002Fiabtechlab.com\u002Fads-txt\u002F\" rel=\"nofollow ugc\">ads.txt spec\u003C\u002Fa>.  Our recommendation is to only activate Ads.txt Manager per-site.\u003C\u002Fp>\n","Create, manage, and validate your ads.txt and app-ads.txt from within WordPress, like any other content asset.",100000,1903612,92,14,"2026-01-04T21:09:00.000Z","6.9.4","6.6","7.4",[20,21,4,22,23],"ad-manager","ads","advertising","app-ads-txt","https:\u002F\u002Fgithub.com\u002F10up\u002Fads-txt","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fads-txt.1.4.6.zip",100,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":33,"avg_security_score":34,"avg_patch_time_days":35,"trust_score":36,"computed_at":37},23,1384530,98,546,78,"2026-04-03T20:04:46.658Z",[39,56,74,94,113],{"slug":40,"name":5,"version":41,"author":42,"author_profile":43,"description":44,"short_description":45,"active_installs":46,"downloaded":47,"rating":48,"num_ratings":49,"last_updated":50,"tested_up_to":51,"requires_at_least":52,"requires_php":53,"tags":54,"homepage":53,"download_link":55,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"ads-txt-manager","1.2.0","ezoic","https:\u002F\u002Fprofiles.wordpress.org\u002Fezoic\u002F","\u003Cp>Ads.txt Manager is a free way to manage, update, and easily maintain your ads.txt file.\u003Cbr \u002F>\nSave time by eliminating manual file updates and authorize sellers to ensure you have the most up to date file possible.\u003C\u002Fp>\n\u003Cp>Free, Simple, & Easy\u003Cbr \u002F>\nAds.Txt Manager is a free tool designed to help sites easily manage their ads.txt files by providing step-by-step ads.txt setup, management, and validation (and it will always be free).\u003C\u002Fp>\n\u003Cp>Easily authorize sellers, update files, and validate your ads.txt before publishing. Save time and ensure that Ads.txt implementation isn’t causing you to leave money on the table.\u003C\u002Fp>\n\u003Cp>Visit \u003Ca href=\"https:\u002F\u002Fadstxtmanager.com\u002F\" rel=\"nofollow ugc\">adstxtmanager.com\u003C\u002Fa> to create your account now!\u003C\u002Fp>\n","Ads.txt Manager is a plugin to help WordPress sites easily take advantage of the Ads.txt Manager service.",4000,85921,70,2,"2025-05-09T19:38:00.000Z","6.8.5","4.6","",[20,21,4,22],"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fads-txt-manager.zip",{"slug":57,"name":58,"version":59,"author":60,"author_profile":61,"description":62,"short_description":63,"active_installs":64,"downloaded":65,"rating":27,"num_ratings":27,"last_updated":66,"tested_up_to":67,"requires_at_least":68,"requires_php":53,"tags":69,"homepage":71,"download_link":72,"security_score":73,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"videoo-manager","Videoo.tv Manager","1.0.0","Digital Green SL","https:\u002F\u002Fprofiles.wordpress.org\u002Fdigitalgreensl\u002F","\u003Cp>Manage your ads.txt file. Includes automatic update of videoo.tv network lines. Insert videoo.tv tag code. Requires PHP 7.4+ and WordPress 5.7+.\u003C\u002Fp>\n\u003Ch3>ads.txt manager\u003C\u002Fh3>\n\u003Cp>Manage your ads.txt file in a simple and efficient way. Ads.txt is an IAB Tech Lab initiative that helps ensure that your digital ad inventory is only sold through sellers who you’ve identified as authorized.\u003Cbr \u002F>\nThis plugin implements:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Classification of lines into groups to simplify their management.\u003C\u002Fli>\n\u003Cli>Duplicate line detection.\u003C\u002Fli>\n\u003Cli>Line validation.\u003C\u002Fli>\n\u003Cli>Bulk insert tool.\u003C\u002Fli>\n\u003Cli>Automatic update of videoo.tv network lines.\u003C\u002Fli>\n\u003Cli>Multisite support: if you are using a subfolder installation, you must activate ads.txt manager in the main site: \u003Ca href=\"https:\u002F\u002Fiabtechlab.com\u002Fads-txt\u002F\" title=\"Ads.txt spec\" rel=\"nofollow ugc\">ads.txt spec\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>videoo.tv tag manager\u003C\u002Fh3>\n\u003Cp>Tool for inserting the videoo.tv tag.\u003C\u002Fp>\n\u003Col>\n\u003Cli>Insert your tag code (you need first a valid tag code).\u003C\u002Fli>\n\u003Cli>Select content’s paragraph to be displayed.\u003C\u002Fli>\n\u003Cli>Activate and start generating income.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>1. videoo.tv tag manager\u003C\u002Fh3>\n\u003C\u002Fp>\n\u003Ch3>2. Ads.txt manager\u003C\u002Fh3>\n\u003C\u002Fp>\n\u003Ch3>1.0.0\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Implements ads.txt manager.\u003C\u002Fli>\n\u003Cli>Implements videoo.tv tag manager.\u003C\u002Fli>\n\u003C\u002Ful>\n","Manage your ads.txt file. Includes automatic update of videoo.tv network lines. Insert videoo.tv tag code. Requires PHP 7.4+ and WordPress 5.7+.",10,773,"2023-06-01T14:48:00.000Z","6.2.9","5.7",[20,21,4,22,70],"display-ads","https:\u002F\u002Fvideoo.tv\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fvideoo-manager.1.0.0.zip",85,{"slug":75,"name":76,"version":77,"author":78,"author_profile":79,"description":80,"short_description":81,"active_installs":82,"downloaded":83,"rating":26,"num_ratings":84,"last_updated":85,"tested_up_to":16,"requires_at_least":86,"requires_php":87,"tags":88,"homepage":92,"download_link":93,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"ads-txt-by-magicbid","Ads.txt File Manager By Magicbid","2.2.0","Magicbid.ai","https:\u002F\u002Fprofiles.wordpress.org\u002Fratneshmagicbid\u002F","\u003Cp>\u003Cstrong>Ads.txt File Manager By Magicbid\u003C\u002Fstrong> allows publishers to manage both \u003Ccode>ads.txt\u003C\u002Fcode> and \u003Ccode>app-ads.txt\u003C\u002Fcode> file directly from the WordPress admin panel, without using FTP or file managers. It offers a safe and intuitive UI to help users edit, save, and back up their ads.txt file to comply with programmatic advertising requirements.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Live ads.txt editor\u003C\u002Fstrong> with line numbering and syntax highlighting\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automatic versioned backups\u003C\u002Fstrong> every time you save changes\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Restore previous versions\u003C\u002Fstrong> anytime from the backup list\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Create ads.txt file\u003C\u002Fstrong> instantly if it doesn’t exist\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Track changes by user\u003C\u002Fstrong>, showing which admin updated what and when\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Secure editing\u003C\u002Fstrong> – only admins can access and modify the file\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Lightweight and fast\u003C\u002Fstrong>, no bloated dependencies\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Why use this plugin?\u003C\u002Fh3>\n\u003Cp>If you’re monetizing your site with platforms like Google AdSense, OpenX, or other SSPs\u002FDSPs, you need to serve a valid \u003Ccode>ads.txt\u003C\u002Fcode> file at the root of your domain. This plugin simplifies that process by letting you manage the file without technical knowledge.\u003C\u002Fp>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Go to \u003Ccode>Ads.txt\u003C\u002Fcode> from the left admin menu.\u003C\u002Fli>\n\u003Cli>If the file doesn’t exist, click \u003Cstrong>Create ads.txt\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>Edit the file in the editor and click \u003Cstrong>Save\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>Every save creates a backup with timestamp and user info.\u003C\u002Fli>\n\u003Cli>You can restore any previous version from the \u003Cstrong>Backups\u003C\u002Fstrong> tab.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>Plugin developed by \u003Ca href=\"https:\u002F\u002Fmagicbid.ai\u002F?utm_source=wordpressplugin%09&utm_medium=wordpressplugin%09&utm_campaign=wordpressplugin%09traffic&utm_id=wordpressplugin%09\" rel=\"nofollow ugc\">Magicbid.ai\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>Need help or want to monetize your site?\u003Cbr \u002F>\nEmail us at: \u003Ccode>support@magicbid.ai\u003C\u002Fcode>\u003Cbr \u002F>\nOr visit: \u003Ca href=\"https:\u002F\u002Fmagicbid.ai\u002Fcontact-us\u002F?utm_source=wordpress-plugin%09&utm_medium=wordpress-plugin%09&utm_campaign=wordpress-plugin-traffic&utm_id=wordpress-plugin%09\" rel=\"nofollow ugc\">https:\u002F\u002Fmagicbid.ai\u002Fcontact-us\u002F\u003C\u002Fa>\u003C\u002Fp>\n","Easily manage ads.txt and app-ads.txt files from your WordPress dashboard with editing, backup, and restore options.",3000,13177,1,"2026-02-10T07:46:00.000Z","5.0","7.2",[4,23,89,90,91],"google-ads","monetization","publisher","https:\u002F\u002Fmagicbid.ai\u002Fcontact-us\u002F?utm_source=wordpress-plugin&utm_medium=wordpress-plugin&utm_campaign=wordpress-plugin-traffic&utm_id=wordpress-plugin","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fads-txt-by-magicbid.2.2.0.zip",{"slug":23,"name":95,"version":96,"author":97,"author_profile":98,"description":99,"short_description":100,"active_installs":101,"downloaded":102,"rating":34,"num_ratings":103,"last_updated":104,"tested_up_to":16,"requires_at_least":105,"requires_php":106,"tags":107,"homepage":53,"download_link":110,"security_score":111,"vuln_count":84,"unpatched_count":27,"last_vuln_date":112,"fetched_at":29},"Ads.txt & App-ads.txt Manager for WordPress","1.1.9","Pagup","https:\u002F\u002Fprofiles.wordpress.org\u002Fpagup\u002F","\u003Cp>Ad partners are frequently adding new demand sources to their Ads.txt & App-ads.txt lists of authorized sellers.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Create your Ads.txt & App-Ads.txt files with the same tool (all-in-one)\u003C\u002Fli>\n\u003Cli>Add manual entries (copy-paste) for « ready-to-use » code snippets. \u003C\u002Fli>\n\u003Cli>Edit & manage your files on demand\u003C\u002Fli>\n\u003Cli>View WordPress Ads.txt & App-ads.txt files before\u002Fafter publishing\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Note :\u003C\u002Fstrong> Google Ad Manager and AdMob, Google’s mobile ad network, now support app-ads.txt, the anti-ad fraud protocol for app publishers. \u003Cstrong>Why we should care?\u003C\u002Fstrong> Google said in April 2019 that its DSP Display & Video 360 would stop buying unauthorized in-app inventory starting in August 2019 (same with Centro). Given its market leadership position, Google’s support for app-ads.txt from both the buy and sell sides will help propel adoption of the standard by app publishers.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>How does WordPress Ads.txt & App-ads.txt Manager work\u003C\u002Fstrong> to implement app-ads.txt:\u003C\u002Fp>\n\u003Cp>Provide a developer website in your app store listings. Ensure that the proper developer website URL is accessible in the developer website section of the app store (advertising platforms will use this website to verify ads.txt or app-ads.txt files).\u003C\u002Fp>\n\u003Cp>In WordPress Ads.txt & App-ads.txt Manager, go to setting page.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Ad Source Domain\u003Cbr \u002F>\n— The canonical domain name of the SSP, Exchange, system that bidders connect to (they publishes a document detailing what domain name to use).\u003C\u002Fli>\n\u003Cli>Publisher ID\u003Cbr \u002F>\n— This must contain the same value used in transactions (i.e. OpenRTB bid requests) in the field specified by the SSP\u002Fexchange (For OpenRTB = publisher ID | For OpenDirect = publisher’s organization ID).\u003C\u002Fli>\n\u003Cli>Type of Relationship: (Direct, reseller)\u003Cbr \u002F>\n— Your direct demand partners should be listed as “direct.” If your partners are using third-party resellers to sell your inventory, such providers should be listed as “reseller.” In any case, you should not add any provider to your app-ads.txt file unless you or your partner have a direct relationship with them.\u003C\u002Fli>\n\u003Cli>Ad Source ID\u003Cbr \u002F>\n— An ID that uniquely identifies the advertising system within a certification authority. \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Do it for all your authorized digital sellers or resellers of your ad inventory.\u003C\u002Fp>\n\u003Cp>Click « Save changes » and WordPress Ads.txt & App-ads.txt Manager plugin will create a virtual .txt file in the root of your website; for example, www.mysite.com\u002Fads.txt OR www.mysite.com\u002Fapp-ads.txt. You can edit the content whenever you need.\u003C\u002Fp>\n\u003Cp>Make sure to clear your cache\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Note 1 :\u003C\u002Fstrong> Use of app-ads.txt is not mandatory, but is highly recommended, especially if you are concerned that others may be spoofing your app.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Note 2 :\u003C\u002Fstrong> It can take up to 24 hours to crawl and verify your app-ads.txt files. Please wait at least 24 hours for the app-ads.txt status to update.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Note 3 :\u003C\u002Fstrong>  Since ads.txt file is supposed to be in the root directory of a domain name, this plugin currently only works for root level domain like example.com. It does not work for WordPress installed in subdomain, subdirectory, or a single site in a multi-site network.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>What’s app-ads.txt?\u003C\u002Fstrong>\u003Cbr \u002F>\nIn June 2017, the \u003Ca href=\"https:\u002F\u002Fiabtechlab.com\u002Fads-txt\u002F\" rel=\"nofollow ugc\">IAB\u003C\u002Fa> (The Interactive Advertising Bureau Tech Lab) launched ads.txt, a file enabling web publishers to designate authorized digital sellers of their ad inventory. Ads.txt helped the industry distinguish real supply sources from fake ones, and after its immediate success and adoption, the next logical step was to extend the reach of ads.txt into the mobile app ecosystem. App-ads.txt is the mobile in-app equivalent of this specification, which mobile publishers can implement.\u003C\u002Fp>\n\u003Cp>The app-ads.txt file is the version of ads.txt for mobile in-app and \u003Ca href=\"https:\u002F\u002Fsmartyads.com\u002Fblog\u002Fwhat-is-ott-advertising\u002F\" rel=\"nofollow ugc\">OTT advertising\u003C\u002Fa>, to combat bad actors that disguise themselves as another company’s app in order to siphon the money that advertisers are spending on mobile and OTT advertising. App-ads.txt files are formatted the same as ads.txt files (\u003Ca href=\"https:\u002F\u002Fiabtechlab.com\u002Fwp-content\u002Fuploads\u002F2019\u002F03\u002FFAQ-for-ads.txt-and-app-ads.txt-UPDATED-March-4-2019.pdf\" rel=\"nofollow ugc\">view IAB FAQ for ads.txt and app-ads.txt\u003C\u002Fa>).\u003C\u002Fp>\n\u003Cp>Thanks to app-ads.txt file, Mobile and OTT app publishers can list the ad tech vendors that are authorized to sell or resell their ad inventory, and programmatic ad buyers can check these lists to make sure that a company claiming to offer an app’s inventory is actually able to sell the app’s inventory.\u003C\u002Fp>\n\u003Cp>This file opens the door for a new level of transparency.\u003C\u002Fp>\n","App-ads.txt & Ads.txt manager allows you to create, manage & publish your app-ads.txt & ads.txt file from your WordPress dashboard.",2000,69637,46,"2026-01-16T23:49:00.000Z","4.1","5.6",[21,4,108,22,109],"adstxt","app-adstxt","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fapp-ads-txt.zip",99,"2024-10-24 00:00:00",{"slug":114,"name":115,"version":116,"author":114,"author_profile":117,"description":118,"short_description":119,"active_installs":120,"downloaded":121,"rating":26,"num_ratings":122,"last_updated":123,"tested_up_to":124,"requires_at_least":125,"requires_php":18,"tags":126,"homepage":130,"download_link":131,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"adenergizer","Ads.txt and App-Ads.txt – AdEnergizer","0.1.1","https:\u002F\u002Fprofiles.wordpress.org\u002Fadenergizer\u002F","\u003Cp>Adenergizer helps you serve ads.txt and app-ads.txt for your WordPress website without much doing.\u003Cbr \u002F>\nIt helps you create and manage ads.txt, app-ads.txt from within WordPress admin area.\u003Cbr \u002F>\nBy installing and activating this plugin you’re ready to serve these files without much effort,\u003Cbr \u002F>\nas no need to manually create ads.txt and app-ads.txt on your server. Adenerngizer automatically\u003Cbr \u002F>\nserves these files for you and you can control what content is served.\u003C\u002Fp>\n\u003Cp>With Adenergizer you can specify clear instructions to web crawlers which part of your website they are allowed to\u003Cbr \u002F>\naccess and can improve transparency for your buyers. By serving ads.txt and app-ads.txt you can make sure that your\u003Cbr \u002F>\ncontent and products are known to search engines, so the user can easily find them. It also help protecting your data\u003Cbr \u002F>\nand content which is not meant to be visited by crawlers.\u003C\u002Fp>\n","Create and edit ads.txt, app-ads.txt files from the convenience of admin dashboard.",300,4144,3,"2024-11-24T16:54:00.000Z","6.7.5","5.3",[4,23,127,128,129],"google","search-engine","seo","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fadenergizer","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fadenergizer.0.1.1.zip",{"attackSurface":133,"codeSignals":201,"taintFlows":214,"riskAssessment":215,"analyzedAt":224},{"hooks":134,"ajaxHandlers":187,"restRoutes":198,"shortcodes":199,"cronEvents":200,"entryPointCount":122,"unprotectedCount":122},[135,141,146,148,151,155,158,161,164,166,170,172,175,177,181,184],{"type":136,"name":137,"callback":138,"file":139,"line":140},"action","admin_notices","closure","ads-txt.php",47,{"type":136,"name":142,"callback":143,"file":144,"line":145},"admin_enqueue_scripts","anonymous","inc\\admin.php",48,{"type":136,"name":147,"callback":143,"file":144,"line":48},"admin_head-settings_page_adstxt-settings",{"type":136,"name":149,"callback":143,"file":144,"line":150},"admin_head-settings_page_app-adstxt-settings",71,{"type":152,"name":153,"callback":143,"file":144,"line":154},"filter","get_edit_post_link",97,{"type":152,"name":156,"callback":143,"file":144,"line":157},"wp_prepare_revision_for_js",119,{"type":136,"name":159,"callback":143,"file":144,"line":160},"admin_head",148,{"type":136,"name":162,"callback":143,"file":144,"line":163},"admin_menu",172,{"type":136,"name":137,"callback":143,"file":144,"line":165},508,{"type":136,"name":167,"callback":143,"file":168,"line":169},"init","inc\\helpers.php",73,{"type":136,"name":171,"callback":143,"file":168,"line":13},"admin_init",{"type":152,"name":173,"callback":143,"file":168,"line":174},"query_vars",123,{"type":136,"name":167,"callback":143,"file":176,"line":48},"inc\\post-type.php",{"type":136,"name":178,"callback":143,"file":179,"line":180},"admin_post_adstxt-save","inc\\save.php",110,{"type":136,"name":182,"callback":143,"file":179,"line":183},"admin_post_app-adstxt-save",111,{"type":136,"name":185,"callback":143,"priority":64,"file":179,"line":186},"wp_restore_post_revision",264,[188,192,195],{"action":189,"nopriv":190,"callback":143,"hasNonce":190,"hasCapCheck":190,"file":144,"line":191},"adstxts_check_for_existing_file",false,587,{"action":193,"nopriv":190,"callback":143,"hasNonce":190,"hasCapCheck":190,"file":179,"line":194},"adstxt-save",112,{"action":196,"nopriv":190,"callback":143,"hasNonce":190,"hasCapCheck":190,"file":179,"line":197},"app-adstxt-save",113,[],[],[],{"dangerousFunctions":202,"sqlUsage":203,"outputEscaping":205,"fileOperations":27,"externalRequests":84,"nonceChecks":49,"capabilityChecks":49,"bundledLibraries":213},[],{"prepared":27,"raw":27,"locations":204},[],{"escaped":206,"rawEcho":49,"locations":207},50,[208,211],{"file":144,"line":209,"context":210},503,"raw output",{"file":179,"line":212,"context":210},103,[],[],{"summary":216,"deductions":217},"The 'ads-txt' plugin version 1.4.6 exhibits a mixed security posture. On the positive side, it demonstrates good practices by avoiding dangerous functions, using prepared statements for all SQL queries, and properly escaping the vast majority of its output. The absence of known vulnerabilities and CVEs is also a strong indicator of a generally well-maintained codebase. However, a significant concern arises from its attack surface, specifically the presence of three AJAX handlers that lack authentication checks. This means any user, regardless of their logged-in status or role, could potentially interact with these handlers, opening them up to unauthorized actions if they are not properly secured by other means. The lack of recorded vulnerability history, while positive, could also mean the plugin hasn't been extensively tested or analyzed for past vulnerabilities, or that it's a newer plugin without a significant track record. Overall, while the core code appears robust in certain areas, the unprotected AJAX endpoints present a notable risk that requires attention.",[218,221],{"reason":219,"points":220},"AJAX handlers without authentication checks",15,{"reason":222,"points":223},"Small attack surface, but all unprotected",5,"2026-03-16T17:06:13.856Z",{"wat":226,"direct":235},{"assetPaths":227,"generatorPatterns":230,"scriptPaths":231,"versionParams":232},[228,229],"\u002Fwp-content\u002Fplugins\u002Fads-txt\u002Fcss\u002Fadmin.css","\u002Fwp-content\u002Fplugins\u002Fads-txt\u002Fjs\u002Fadmin.js",[],[229],[233,234],"ads-txt\u002Fcss\u002Fadmin.css?ver=","ads-txt\u002Fjs\u002Fadmin.js?ver=",{"cssClasses":236,"htmlComments":238,"htmlAttributes":239,"restEndpoints":240,"jsGlobals":241,"shortcodeOutput":242},[237],"CodeMirror",[],[],[],[108],[]]