Hooks reference

Every action and filter in Siteryn Checkout and Pro, with exact signatures, checked against the code.

FreeProBuilder API 1

Lifecycle

HookTypeArguments · when
siteryn_checkout_loadedaction( Plugin $plugin ). Free has booted. Extensions start here.
siteryn_checkout_upgradeaction( string|false $old, string $new ). init (20) on a version change.
siteryn_checkout_builder_savedaction( string $page_type, array $layout, string $status ). After a valid save (draft or published).
siteryn_checkout_builder_unpublishedaction( string $page_type )

Registration & schemas

HookTypeArguments · purpose
siteryn_checkout_builder_register_blocksaction( BlockRegistry $registry ). Register, replace or unregister elements.
siteryn_checkout_builder_page_typesfilter( array $types )
siteryn_checkout_builder_modesfilter( array $modes, string $page_type ). Add layout modes.
siteryn_checkout_builder_limitsfilter( array $limits, string $page_type ). The 5 numeric limits only.
siteryn_checkout_builder_page_settings_schemafilter( array $schema, string $page_type ). Page settings fields.
siteryn_checkout_builder_node_settings_schemafilter( array $fields, string $node_type, string $page_type ). Section, row, column and element-wrapper fields.
siteryn_checkout_builder_block_settings_schemafilter( array $settings, string $block_name, string $page_type ). Add fields to an existing element.
siteryn_checkout_builder_breakpointsfilter( array{tablet:int, mobile:int} ). Default 1024 / 767.
siteryn_checkout_builder_richtext_allowed_htmlfilter( array $allowed ). The wp_kses allowlist for Text.
siteryn_checkout_builder_layout_presetsfilter( array $presets, string $page_type ). Layout picker entries.
siteryn_checkout_builder_starter_designsfilter( array $designs, string $page_type )
siteryn_checkout_builder_thumb_kindsfilter( array $kinds ). How elements are drawn in layout thumbnails.
siteryn_checkout_builder_schema_migrationsfilter( array $steps, string $page_type ). Callables ( array $layout, string $page_type ): array.
siteryn_checkout_builder_legacy_layoutfilter( array $layout, string $page_type, array $settings ). The settings-derived default design.

Validation & availability

HookTypeArguments · purpose
siteryn_checkout_builder_validate_layoutfilter( array $errors, array $layout, string $page_type ). Each error needs code and message, and optionally path (block:{id}).
siteryn_checkout_builder_storefront_readyfilter( bool $ready, string $page_type ). Whether a page may be published.
siteryn_checkout_builder_is_renderablefilter( bool $ok, string $page_type ). Final say on using the builder.
siteryn_checkout_builder_repositoryfilter( DesignRepository $repo ). Swap the design storage.

Rendering

HookTypeArguments · purpose
siteryn_checkout_builder_node_visiblefilter( bool $visible, array $node, RenderContext $context ). Conditional visibility.
siteryn_checkout_builder_node_attributesfilter( array $attrs, string $type, array $node, RenderContext $context ). Only data-*, aria-* and hidden.
siteryn_checkout_builder_render_blockfilter( string $html, array $block, RenderContext $context )
siteryn_checkout_builder_root_classesfilter( string[] $classes, array $layout, RenderContext $context )
siteryn_checkout_builder_node_declarationsfilter( array $css, string $node_type, array $settings ). Settings → CSS properties.
siteryn_checkout_builder_node_css_rulesfilter( array $rules, string $node_type, array $node, array $base ). Per-device rules [ [media, decls] ].
siteryn_checkout_builder_render_outputfilter( array{html, css} $result, array $layout, RenderContext $context ). Keep both keys.
siteryn_checkout_builder_checkout_fragmentsfilter( array $fragments, array $layout ). Extra checkout refresh fragments.
siteryn_checkout_builder_billing_lead_fieldsfilter( array{keys, title} $lead, array $settings, RenderContext $context, bool $has_contact )
siteryn_checkout_builder_shipping_calculator_blocksfilter( string[] $names ). Elements that act as a shipping calculator.
siteryn_checkout_builder_preview_field_labelsfilter( string[] $labels, string $block_name ). Sample labels in previews.
siteryn_checkout_builder_preview_stylesfilter( array $styles ). Stylesheets for the preview canvas ({href, media}).

Steps

HookTypeArguments · purpose
siteryn_checkout_builder_steps_progressfilter( array $progress ). Restyle the progress bar: classes, markers, extras, item_classes, titles, states, meta, settings.
siteryn_checkout_builder_step_script_datafilter( array $data, array $step ). Step data sent to the storefront script (default {id, title}; also reads next_label and validate, where false skips the required-field check).
siteryn_checkout_builder_step_nav_classesfilter( string[] $classes, array $layout ). Back / Continue bar classes.
siteryn_checkout_builder_sanitize_stepfilter( array $clean, array $raw, int $index ). One sanitized step on save. Free keeps only id and title (always Free's own values); add your own per-step keys sanitized from $raw.

Settings & admin

HookTypeArguments · purpose
siteryn_checkout_settings_sections · _settings_fieldsfilter( array ). Admin tabs and settings fields.
siteryn_checkout_settings_save_redirectfilter( false|array $redirect, string $option_name )
siteryn_checkout_settings_reset_actionsfilter( array $map )
siteryn_checkout_settings_nav_icon · _nav_sublabel · _nav_badge · _descriptionfilter( string $value, string $section )
siteryn_checkout_settings_panel_sidebar · _settings_after_formaction( string $section )
siteryn_checkout_system_status_cardsfilter( array $cards ): each {label, value, icon, variant}
siteryn_checkout_admin_iconsfilter( array $icons ): name → SVG markup
siteryn_checkout_locate_templatefilter( string $path, string $template_name ). Siteryn's own partials.
siteryn_checkout_before_template · _after_templateaction( string $template_name, array $args )
siteryn_dashboard_pluginsfilter( array $plugins ). Shared Siteryn Welcome page cards.
siteryn_deactivation_feedback_endpointfilter( string $url )

Buy Now

HookTypeArguments · purpose
siteryn_checkout_buy_now_visiblefilter( bool $show, WC_Product $product, string $context ). $context is single or loop.
siteryn_checkout_buy_now_buttonfilter( array{label, classes} $button, WC_Product $product, string $context )
siteryn_checkout_buy_now_redirectfilter( string $url ). One argument; default the Checkout URL.

Pro

HookTypeArguments · purpose
siteryn_checkout_pro_loadedaction( Plugin $plugin )
siteryn_checkout_pro_upgradeaction( string|false $installed, string $current )
siteryn_checkout_pro_license_activatedaction( ActivationOutcome $outcome )
siteryn_checkout_pro_license_deactivatedaction( bool $done )
siteryn_checkout_pro_free_plugin_loadedfilter( bool $loaded )
siteryn_checkout_pro_condition_protected_blocksfilter( string[] $blocks, string $page_type ). Elements conditions may not hide.
siteryn_checkout_pro_max_designsfilter( int $max = 20, string $page_type )
siteryn_checkout_pro_max_revisionsfilter( int $max = 15, string $page_type )