
The Features page in the Greyd Plugin allows users to enable or disable individual functionalities of the plugin. Each feature is modular and can be controlled independently, depending on project requirements. This setup helps streamline the plugin’s footprint and allows for a customized feature set per site or multisite network.
Each feature is technically built like a small plugin, containing its own init.php
file. This file includes metadata such as the feature name, description, priority and whether it is required or optional. Based on this information, the Features page is generated automatically and provides a visual overview of all available modules.
When a feature is disabled, its functionality is not loaded in the frontend. Only the backend loads the metadata to render the overview page. This ensures that deactivated features do not affect performance or introduce unnecessary code. Features that are required or forced cannot be disabled and are always active.
Some features rely on others to function properly. For example, “Dynamic Templates” requires “Post Types” and “Query Features” to be active. The interface handles these dependencies and prevents invalid configurations by guiding users through the correct activation order. At the moment, enabling dependent features must be done manually. The interface does not yet support automatic or real-time activation via JavaScript.
The Features page is fully compatible with WordPress multisite installations. Network administrators can define a global configuration by forcing specific features to be active across all subsites. This is particularly useful for network-level tools like Greyd Hub or the Site Connector.
Developers can extend the system by adding their own features through filters. The plugin offers a greyd_features
filter that allows additional modules or sub-plugins, such as those from a child theme, to be registered into the Features API. These can also be marked as required or forced if needed.
Some features, like the license handler or cookie tools, are enforced by default and cannot be toggled. Others, like animations or layout triggers, are optional and can be disabled if they are not required.
This setup allows site owners and administrators to run a lean and focused version of the Greyd Plugin, tailored to their specific needs without loading unnecessary functionality.