lerni / folderindex
Silverstripe Extension to send noindex, nofollow for files in foldes that do not ShowInSearch.
Installs: 1 933
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 2
Forks: 1
Open Issues: 0
Type:silverstripe-vendormodule
pkg:composer/lerni/folderindex
Requires
- silverstripe/asset-admin: ^1 || ^2
 
Suggests
- tractorcow/silverstripe-robots: robots.txt generation for Silverstripe
 
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 a 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
- silverstripe/asset-admin: ^1 | ^2
 
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.
 

