lerni / folderindex
Silverstripe Extension to send noindex, nofollow for files in foldes that do not ShowInSearch.
Package info
Type:silverstripe-vendormodule
pkg:composer/lerni/folderindex
Requires
Suggests
- tractorcow/silverstripe-robots: robots.txt generation for Silverstripe
This package is auto-updated.
Last update: 2026-04-22 06:04:54 UTC
README
Silverstripe FolderIndex allows you to manage visibility of files for search engines on a parent folder basis by utilizing X-Robots header tags such as noindex, nofollow, noimageindex, noarchive, and nosnippet. By unchecking the ShowInSearch option in the Details tab of a folder, X-Robots headers will be applied to all files contained within, including those in sub-folders. If you have tractorcow/silverstripe-robots module installed, "unchecked folders" are also disallowed in robots.txt.
The module introduces NoFileIndex() function to File. This can be useful if for example an image should be included in XML sitemaps, schemas etc. And is used in CMS/Assets context to indicate whether a file has X-Robots-Tag headers set through its parent folder or any higher-level ancestor/folder. If set, the function returns the corresponding folder that prevents indexing; otherwise, it returns false. This module integrates with Apache .htaccess and also proved to work with Litespeed.
Requirements, Compatibility
- Version 0.x: Compatible with Silverstripe ^4 | ^5 (silverstripe/asset-admin ^1 | ^2)
- Version 1.x: Requires Silverstripe ^6 (silverstripe/asset-admin ^3)
Installation
Composer is the recommended method for installing Silverstripe modules.
composer require lerni/folderindex
Run dev/build
Getting Started / Usage
- Uncheck
Indexing child filescheckbox of a folder underPermissions, save and rules will automatically generate inassets/.htaccess.
Please note this module "overwrites" SilverStripe/Assets/Flysystem/PublicAssetAdapter_HTAccess.ss template.
Credits
Thanks to @zauberfisch and @digitall-it for inspiration and translation.
ToDo
- Implement a mechanism to write to
assets/.htaccessdirectly, rather than relying solely ondev/build. - Address issue where roles are erroneously assigned to sub-folders that are blocked through parent folders.
- Provide ability to configure X-Robots-Tag settings through yml-config.
- Display X-Robots-Tag warning (alert) in the file section, not just in the Details panel.

