{"id":11005,"date":"2026-02-09T07:33:00","date_gmt":"2026-02-09T13:33:00","guid":{"rendered":"https:\/\/infiniteuploads.com\/?post_type=docs&#038;p=11005"},"modified":"2026-03-31T23:54:40","modified_gmt":"2026-04-01T04:54:40","password":"","slug":"exclusions-dont-appear-to-work","status":"publish","type":"docs","link":"https:\/\/infiniteuploads.com\/docs\/troubleshooting\/exclusions-dont-appear-to-work\/","title":{"rendered":"Exclusions don\u2019t appear to work"},"content":{"rendered":"<!DOCTYPE html PUBLIC \"-\/\/W3C\/\/DTD HTML 4.0 Transitional\/\/EN\" \"http:\/\/www.w3.org\/TR\/REC-html40\/loose.dtd\">\n<html><body><p>If your excluded files are not downloaded yet, the exclusions feature is likely working as designed&mdash;but it can take time to <em>show<\/em> the expected result. This is most common on sites with large or high-churn folders inside <code>wp-content\/uploads\/<\/code>.<\/p>\n\n\n\n<p>Two things drive this behavior:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Infinite Uploads processes sync work through <a href=\"https:\/\/actionscheduler.org\/\">Action Scheduler<\/a> (a background job queue).<\/li>\n\n\n\n<li>Exclusions can only be applied after the initial sync has completed, not before.<\/li>\n<\/ol>\n\n\n\n<p>Because of this, your media may not have returned to a non-cloud URL while the scheduled actions finish running and the system reconciles file state.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"symptoms\">Symptoms<\/h3>\n\n\n\n<p>You might be seeing one or more of the following:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You add an exclusion, but your file URL is still pointing to Infinite Uploads<\/li>\n\n\n\n<li>Excluding a large directory seems to &ldquo;do nothing&rdquo; for a long time.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img decoding=\"async\" src=\"https:\/\/infiniteuploads.com\/wp-content\/uploads\/2026\/02\/CloudURL-to-Site-URL.svg\" alt=\"\" class=\"wp-image-11009\" style=\"width:823px;height:auto\"><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"why-this-happens\">Why this happens<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">1) Infinite Uploads uses Action Scheduler (jobs run in the background)<\/h4>\n\n\n\n<p>Infinite Uploads relies on <strong>Action Scheduler<\/strong> to process large workloads in batches. This keeps operations stable on typical WordPress hosting, but it also means:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Work is queued in advance.<\/li>\n\n\n\n<li>Changing settings does not instantly process everything. <\/li>\n\n\n\n<li>Your host&rsquo;s scheduler speed directly affects how fast changes &ldquo;take effect.&rdquo;<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">2) Exclusions can trigger &ldquo;download\/reconcile&rdquo; work<\/h4>\n\n\n\n<p>When you exclude a directory after it has been managed by Infinite Uploads, the system may need to <strong>restore local copies<\/strong> of those files before it stops managing them. This prevents your site from ending up in a state where:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>WordPress expects a file locally, but<\/li>\n\n\n\n<li>Infinite Uploads is no longer managing that path<\/li>\n<\/ul>\n\n\n\n<p>If the excluded directory is large, this &ldquo;download\/reconcile&rdquo; phase can take time, especially when processed via Action Scheduler.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">3) You can&rsquo;t set exclusions before the initial sync<\/h4>\n\n\n\n<p>Exclusions are not a pre-sync &ldquo;ignore list.&rdquo; The intended workflow is:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Complete the initial sync.<\/li>\n\n\n\n<li>Then apply exclusions to remove specific paths from ongoing management.<\/li>\n<\/ol>\n\n\n\n<p>If you try to exclude folders before the initial sync is complete, you won&rsquo;t get the behavior you expect.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">4) Default exclusions already exist<\/h4>\n\n\n\n<p>Infinite Uploads includes <strong><a href=\"https:\/\/infiniteuploads.com\/docs\/uncategorized\/default-exclusions-files-skipped-automatically\/\">default exclusions<\/a><\/strong> for common non-media patterns. Custom exclusions are in addition to these defaults, and are most useful when your site has unique cache\/log\/temp folders inside <code>uploads\/<\/code>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"expected-behavior-what-working-looks-like-\">Expected behavior (what &ldquo;working&rdquo; looks like)<\/h3>\n\n\n\n<p>After you save exclusions:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You may see activity related to excluded paths in the media library as the system finishes queued work and\/or reconciles local files.<\/li>\n\n\n\n<li>Over time, excluded folders should stop being treated as cloud-managed media going forward.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-affects-how-long-it-takes\">What affects how long it takes<\/h3>\n\n\n\n<p>The &ldquo;settling&rdquo; time depends mostly on:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Folder size<\/strong> (number of files matters as much as total GB)<\/li>\n\n\n\n<li><strong>How quickly Action Scheduler runs on your host<\/strong><\/li>\n\n\n\n<li><strong>How many tasks were already queued<\/strong><\/li>\n\n\n\n<li>Site traffic and cron reliability (low traffic sites often process queued jobs more slowly)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-you-can-do\">What you can do<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">1) Let the queue finish<\/h4>\n\n\n\n<p>If you excluded a large directory, it may simply need time to process the queued actions and any reconciliation work.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">2) Make sure Action Scheduler can run reliably<\/h4>\n\n\n\n<p>If your site&rsquo;s cron is unreliable or isn&rsquo;t firing, Action Scheduler jobs may run slowly or sporadically. Ensuring WP-Cron is functioning properly (or using a real server cron if your host supports it) can dramatically improve progress.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">3) Avoid excluding real Media Library folders unless you mean it<\/h4>\n\n\n\n<p>Only exclude paths that truly should not be part of your media workflow (cache\/log\/temp output). Excluding real media directories can lead to confusion later, especially if you&rsquo;ve freed up local storage and some items are cloud-only. <\/p>\n<\/body><\/html>\n","protected":false},"excerpt":{"rendered":"<p>If your excluded files are not downloaded yet, the exclusions feature is likely working as designed&mdash;but it can take time to show the expected result. This is most common on sites with large or high-churn folders inside wp-content\/uploads\/. Two things drive this behavior: Because of this, your media may not have returned to a non-cloud [&hellip;]<\/p>\n","protected":false},"author":3787,"featured_media":11011,"template":"","meta":{"_acf_changed":false,"wds_primary_doc_category":0,"wds_primary_doc_tag":0,"footnotes":""},"doc_category":[164],"doc_tag":[],"class_list":["post-11005","docs","type-docs","status-publish","has-post-thumbnail","hentry","doc_category-troubleshooting"],"acf":[],"year_month":"2026-04","word_count":581,"total_views":"189","reactions":{"happy":"0","normal":"0","sad":"0"},"author_info":{"name":"Blake Whittle","author_nicename":"blakew","author_url":"https:\/\/infiniteuploads.com\/blog\/author\/blakew\/"},"doc_category_info":[{"term_name":"Troubleshooting","term_url":"https:\/\/infiniteuploads.com\/docs-category\/troubleshooting\/"}],"doc_tag_info":[],"knowledge_base_info":[],"knowledge_base_slug":[],"_links":{"self":[{"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/docs\/11005","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/users\/3787"}],"version-history":[{"count":0,"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/docs\/11005\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/media\/11011"}],"wp:attachment":[{"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/media?parent=11005"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/doc_category?post=11005"},{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/infiniteuploads.com\/api\/wp\/v2\/doc_tag?post=11005"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}