Hooks and extension points
Filters and actions found in current includes/ PHP. For use case registration, see use-cases-and-output-profiles.md.
Actions
Section titled “Actions”| Action | Source | Purpose |
|---|---|---|
coverkit_init | coverkit.php (fire_coverkit_init on init priority 15) | Register use case types (priority < 10); registry boots at priority 10 |
coverkit_generate_image | REST::__construct() | Async fetch of queued generation URLs |
coverkit_retry_screenshots | includes/functions.php | Retries templates flagged _coverkit_needs_retry |
coverkit_fs_loaded | includes/freemius.php | Fires when Freemius SDK is loaded |
Register custom use cases on coverkit_init:
add_action( 'coverkit_init', static function (): void { \CoverKit\coverkit_register_use_case( 'my_slug', array( 'label' => 'My use case', 'class' => \MyPlugin\My_Use_Case::class, ) ); }, 5);Filters — generation and images
Section titled “Filters — generation and images”| Filter | Source | Purpose |
|---|---|---|
coverkit_pre_generate | Renderer::generate() | Return non-null to short-circuit generation |
coverkit_after_generate | Renderer::generate() | Adjust generation result array |
coverkit_generation_options | Generator (canvas process) | Merge options before render |
coverkit_max_canvas_dimension | Generator | Max canvas edge (default 12000) |
coverkit_responsive_sizes | get_coverkit_responsive_sizes() | Allowed responsive widths |
coverkit_canvas_image_cache_time | REST::serve_canvas_image() | Cache-Control max-age (default 31536000) |
coverkit_autocompleter_options | REST::get_autocompleters() | Editor placeholder tags |
Filters — fields and use cases
Section titled “Filters — fields and use cases”| Filter | Source | Purpose |
|---|---|---|
coverkit_collect_field_raw | Field_Resolver::collect_raw() | Adjust raw field value after built-in resolution |
coverkit_preview_data | Field_Resolver::collect_preview_data() | Placeholder data when no post context |
coverkit_format_field_value | Use_Case::format_field_value() | Global formatter pass |
coverkit_use_case_{$slug}_format_field_value | Use_Case::format_field_value() | Per use case (also registered when subclass implements filter_format_field_value()) |
coverkit_use_case_settings_schema | Use_Case::get_settings_schema() | Settings fields for editor |
coverkit_use_case_{$slug}_settings_schema | same | Per-slug settings schema |
coverkit_use_case_mapping_sources | Use_Case::get_mapping_sources() | Mapping picker catalog |
coverkit_use_case_{$slug}_mapping_sources | same | Per-slug mapping sources |
Filters — Open Graph
Section titled “Filters — Open Graph”| Filter | Source | Purpose |
|---|---|---|
coverkit_opengraph_meta_enabled | Open_Graph_Image_Use_Case | Disable meta output for a request context |
coverkit_opengraph_request_post_id | same | Post ID embedded in image URL |
coverkit_opengraph_template_id | same | Template ID used for OG image |
Other integration filters
Section titled “Other integration filters”| Filter | Source | Purpose |
|---|---|---|
coverkit_screenshot_request_args | get_screenshot() in functions.php | mShots / screenshot HTTP args |
Block and pattern extension
Section titled “Block and pattern extension”- Block category:
Post_Type::block_categories()—coverkit - Patterns:
patterns/*.phpviaPatterns, categorycoverkit,postTypes→coverkit
Internal WordPress hooks (selected)
Section titled “Internal WordPress hooks (selected)”plugins_loaded— plugininit()rest_api_init— REST routesallowed_block_types_all— restrict template editor tocoverkit/*updated_post_meta/added_post_meta/deleted_post_meta— rebuild loader manifest when_coverkit_use_caseschangeswp_head— Open Graph tags fromOpen_Graph_Image_Use_Case