Crucible Scan provides several action hooks and filters that allow developers to extend or customize behavior.
Actions
crucible_scan_before_init
Fired before the plugin completes its initialization. Use this to register additional integrations or modify settings before the plugin is fully loaded.
crucible_scan_after_init
Fired after the plugin has completed initialization. All hooks and handlers are registered at this point.
crucible_scan_before_scan
Fired before a scan begins. Receives the scan configuration as a parameter.
crucible_scan_after_scan
Fired after a scan completes. Receives the scan ID, pages scanned, and total issues found. Use this to trigger notifications or external integrations.
crucible_scan_admin_menu_registered
Fired after all admin menu items are registered. Pro uses this hook to add additional menu items.
Filters
crucible_scan_license_tier
Override the detected license tier. Default: 'free'. Pro sets this to 'single', 'multi5', or 'agency25'.
add_filter( 'crucible_scan_license_tier', function() {
return 'single';
});
crucible_scan_feature_available
Gate feature availability. Receives $available (bool), $feature (string), and $tier (string).
crucible_scan_page_limit
Modify the maximum pages per scan. Default: 10 (free).
add_filter( 'crucible_scan_page_limit', function() {
return 50;
});
crucible_scan_export_formats
Add or remove export formats. Returns an associative array of format identifiers. Pro uses this to add PDF, CSV, and VPAT formats.
crucible_scan_urls_to_scan
Modify the list of URLs before scanning begins. Receives an array of URLs.
crucible_scan_dynamic_filter_enabled
Override the dynamic content filter master toggle. Returns boolean.
crucible_scan_available_standards
Modify the list of available compliance standards. Default: array('wcag22aa').