About this plugin
Links such as /, /about-us/ or /contact/ are handy because they work on any domain. com/demo/ — those links jump to the domain root and visitors land on the wrong page or a 404.
Subfolder Link Fixer detects your site’s subfolder from the Home URL and quietly fixes those links in the page sent to the browser:
- href="/" becomes href="/demo/"
- href="/about-us/" becomes href="/demo/about-us/"
- Form actions like action="/contact/" are fixed too.
Nothing is written to your content. Your posts, menus and page-builder data stay exactly as they were, so you can move the site back to a root domain, export it, or switch the plugin off at any time.
Features
- Automatic subfolder detection from the Home URL — nothing to configure.
- Choose what to fix: links ( href ), form actions ( action ), images and scripts ( src ) and responsive images ( srcset ).
- Excluded paths: keep links that should really leave the site, such as /shop/ on the same domain, untouched.
- Manual subfolder for sites served from a folder by a reverse proxy.
- Live link tester on the settings screen shows exactly what visitors get.
- Automatic page-cache clearing when settings change, for LiteSpeed Cache, WP Rocket, W3 Total Cache, WP Super Cache and SiteGround Optimizer.
- Debug comment for administrators with the number of links fixed on a page.
- Site Health section under Tools → Site Health → Info.
- WP-CLI: wp subfolder-links status and wp subfolder-links test / /about-us/.
Good for
- Theme and template-kit demo sites hosted side by side, e.g. example.com/kit-one/, example.com/kit-two/.
- Staging copies that live in a subfolder of the live domain.
- Subdirectory Multisite networks — every subsite gets its own folder automatically.
- Imported content or page-builder layouts that contain hard-coded / links.
What it leaves alone
- Protocol-relative links ( //cdn.example.com/... ) and full URLs.
- Links that already include the subfolder, and paths you exclude.
- data-* attributes.
- Admin screens, AJAX, REST API, feeds and the Elementor editor preview.
- Sites installed at the domain root — the plugin simply stays idle.
For developers
- vantorix_slf_attributes — array of attributes to rewrite.
- vantorix_slf_excluded_paths — array of path prefixes to skip.
- vantorix_slf_should_run — return false to skip the current request.
- vantorix_slf_purge_caches — action fired after settings change; purge your own cache here.
Example: skip rewriting on one page.
add_filter( 'vantorix_slf_should_run', function ( $run ) { return is_page( 'landing' )? false: $run; } );