[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fnDbP8zUa3zhjrpY75uULZgyO1UAXVfC2zi-5LSMa4yw":3},{"slug":4,"display_name":5,"profile_url":6,"plugin_count":7,"total_installs":8,"avg_security_score":9,"avg_patch_time_days":10,"trust_score":11,"computed_at":12,"plugins":13},"blackswanlab","BlackSwanDev","https:\u002F\u002Fprofiles.wordpress.org\u002Fblackswanlab\u002F",1,10,100,30,94,"2026-04-04T22:47:31.293Z",[14],{"slug":15,"name":16,"version":17,"author":5,"author_profile":6,"description":18,"short_description":19,"active_installs":8,"downloaded":20,"rating":21,"num_ratings":21,"last_updated":22,"tested_up_to":23,"requires_at_least":24,"requires_php":25,"tags":26,"homepage":32,"download_link":33,"security_score":9,"vuln_count":21,"unpatched_count":21,"last_vuln_date":34,"fetched_at":35},"blackswan-block-external-request","BlackSwan | Block External Request","2.6.2","\u003Cp>\u003Cstrong>BlackSwan Block External Request\u003C\u002Fstrong> gives you granular control over every outgoing connection your WordPress site makes — both server-side PHP requests and browser-loaded JS\u002FCSS resources.\u003C\u002Fp>\n\u003Cp>WordPress, plugins, and themes constantly send background HTTP requests: update checks, license pings, analytics, font downloads, CDN calls, and more. On slow servers or restricted hosting environments, these requests can add \u003Cstrong>seconds\u003C\u002Fstrong> to every admin page load.\u003C\u002Fp>\n\u003Cp>This plugin lets you \u003Cstrong>block what you don’t need\u003C\u002Fstrong> and \u003Cstrong>keep what you do\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch4>What it does\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Server-side HTTP Blocking (PHP)\u003C\u002Fstrong>\u003Cbr \u002F>\nIntercepts outgoing \u003Ccode>wp_remote_get\u003C\u002Fcode> \u002F \u003Ccode>wp_remote_post\u003C\u002Fcode> calls via the \u003Ccode>pre_http_request\u003C\u002Fcode> filter. Add domains to the blacklist and they’ll be blocked before the request is even made. Whitelist specific URL patterns to let essential requests through (e.g. plugin update API).\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Browser-side Resource Blocking (JS\u002FCSS by Domain)\u003C\u002Fstrong>\u003Cbr \u002F>\nDeregisters enqueued JavaScript and CSS files loaded from blacklisted external domains. Toggle separately for admin panel and public frontend. Your own site’s assets are never touched.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Block Specific Resources (by URL)\u003C\u002Fstrong>\u003Cbr \u002F>\nBlock individual JS or CSS files by full URL, partial path, or even just a filename — works for both local and external resources. Per-item backend\u002Ffrontend toggle. Perfect for removing unwanted plugin assets without editing code.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Blacklist & whitelist with inline edit, delete, and delete-all\u003C\u002Fli>\n\u003Cli>Block external JS\u002FCSS by domain (backend, frontend, or both)\u003C\u002Fli>\n\u003Cli>Block specific resources by URL pattern (local or external)\u003C\u002Fli>\n\u003Cli>One-click pause\u002Fresume — instantly disable all blocking\u003C\u002Fli>\n\u003Cli>Safe mode via \u003Ccode>?bswan-safe=1\u003C\u002Fcode> — emergency bypass for any admin page\u003C\u002Fli>\n\u003Cli>Settings page auto-bypasses resource blocking so you never lock yourself out\u003C\u002Fli>\n\u003Cli>Export\u002Fimport all settings as a single JSON file\u003C\u002Fli>\n\u003Cli>AJAX-powered save — no page reloads\u003C\u002Fli>\n\u003Cli>Query Monitor integration — detect, activate, or install from settings\u003C\u002Fli>\n\u003Cli>All settings stored as a single JSON option with \u003Ccode>autoload=no\u003C\u002Fcode> for performance\u003C\u002Fli>\n\u003Cli>Fully standalone — zero external dependencies (inline Lucide SVG icons)\u003C\u002Fli>\n\u003Cli>Modern liquid glass UI with dot-grid background\u003C\u002Fli>\n\u003Cli>WordPress native postbox layout with collapsible sections\u003C\u002Fli>\n\u003Cli>Translation-ready with full text domain support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Who is this for?\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Sites on slow or restricted hosting where external calls cause timeouts\u003C\u002Fli>\n\u003Cli>Developers debugging performance issues\u003C\u002Fli>\n\u003Cli>Agencies managing client sites that don’t need update checks\u003C\u002Fli>\n\u003Cli>Anyone who wants a faster wp-admin experience\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Developer Hooks\u003C\u002Fh4>\n\u003Cp>Two filters are available for developers to customize blocking behavior programmatically. These run on every page load and merge with the values from the settings page.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>BlackSwan\\block_external_request\\block_url_list\u003C\u002Fcode>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Filter the array of blocked domain strings. Each entry is matched via \u003Ccode>strpos()\u003C\u002Fcode> against the full request URL.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter( 'BlackSwan\\block_external_request\\block_url_list', function( $domains ) {\n    $domains[] = 'analytics.example.com';\n    return $domains;\n});\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>\u003Ccode>BlackSwan\\block_external_request\\whitelist_urls\u003C\u002Fcode>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Filter the array of whitelisted URL patterns. If a blocked URL also matches a whitelist pattern (via \u003Ccode>strpos()\u003C\u002Fcode>), the request is allowed through.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter( 'BlackSwan\\block_external_request\\whitelist_urls', function( $patterns ) {\n    $patterns[] = '\u002F\u002Fapi.example.com\u002Fv2\u002Flicense';\n    return $patterns;\n});\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Whitelist patterns take priority over blacklist domains. Both filters accept and return a flat array of strings.\u003C\u002Fp>\n\u003Ch4>Links\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Famirhp.com\u002F\" rel=\"nofollow ugc\">Developer — AmirhpCom\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fblackswandev.com\u002F\" rel=\"nofollow ugc\">BlackSwan\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fblackswandevcom\u002Fblackswan-block-external-request\u002F\" rel=\"nofollow ugc\">Plugin GitHub Page\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fblackswan-block-external-request\u002Freviews\u002F#new-post\" rel=\"ugc\">Rate 5-Star\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fblackswan-block-external-request\u002F\" rel=\"ugc\">Support & Issues\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Copyright\u003C\u002Fh3>\n\u003Cp>BlackSwan Block External Request is free software distributed under the terms of the GNU General Public License v2 or later.\u003C\u002Fp>\n\u003Cp>Copyright (c) AmirhpCom — \u003Ca href=\"https:\u002F\u002Famirhp.com\u002F\" rel=\"nofollow ugc\">amirhp.com\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>This plugin is developed and maintained by \u003Ca href=\"https:\u002F\u002Fblackswandev.com\u002F\" rel=\"nofollow ugc\">BlackSwan Lab\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>You are free to use, modify, and distribute this plugin under the GPLv2 license. The developers are not responsible for any issues caused by misconfigured blocking rules. Always maintain proper backups before making changes to your site’s HTTP request behavior.\u003C\u002Fp>\n","Block unwanted external HTTP requests in WordPress. Blacklist\u002Fwhitelist management, resource blocking, and one-click pause.",1113,0,"2026-03-09T20:47:00.000Z","6.8.5","5.0","5.4",[27,28,29,30,31],"blacklist","block-http-requests","external-requests","performance","whitelist","https:\u002F\u002Fgithub.com\u002Fblackswandevcom\u002Fblackswan-block-external-request\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fblackswan-block-external-request.2.6.2.zip",null,"2026-03-15T15:16:48.613Z"]