1.3 KiB
1.3 KiB
Individual template classes
Each WooCommerce template has its own individual PHP class, which are all registered in BlockTemplatesRegistry.
Overview
These classes have several purposes:
- define the template metadata like title and description
- hook into
template_redirect
to decide when to render the template (more on this below) - any other hook or logic specific to that template
render_block_template()
This method is applied to the filter template_redirect
and executed before WordPress determines which template to load.
This allows us to hook into WooCommerce core through the filter woocommerce_has_block_template
where we can determine if the block template should be loaded.
Typically executed when:
- A user loads a page on the front-end.
This method is responsible for:
- Determining if the block template has to be rendered in the current page. If so, we override the value through
woocommerce_has_block_template
to resolvetrue
. - Determining if the page that will be rendered contains a Legacy Template block, in which case we disable the compatibility layer through the
woocommerce_disable_compatibility_layer
filter.
Return value:
Void. This method does not return a value but rather sets up hooks to render block templates on the front-end.