Automattic\WooCommerce\Blocks\Templates
ArchiveProductTemplatesCompatibility::set_hook_data()
The hook data to inject to the rendered content of blocks. This also contains hooked functions that will be removed by remove_default_hooks.
The array format: [ <hook-name> => [
block_name => <block-name>, position => before|after, hooked => [ <function-name> => <priority>, ... ], permanently_removed_actions => [ <function-name>
] ], ] Where:
- hook-name is the name of the hook that will be replaced.
- block-name is the name of the block that will replace the hook.
- position is the position of the block relative to the hook.
- hooked is an array of functions hooked to the hook that will be replaced. The key is the function name and the value is the priority.
- permanently_removed_actions is an array of functions that we do not want to re-add after they have been removed to avoid duplicate content with the Products block and its inner blocks.
Method of the class: ArchiveProductTemplatesCompatibility{}
No Hooks.
Return
null
. Nothing (null).
Usage
// protected - for code of main (parent) or child class $result = $this->set_hook_data();
ArchiveProductTemplatesCompatibility::set_hook_data() ArchiveProductTemplatesCompatibility::set hook data code WC 9.3.3
protected function set_hook_data() { $this->hook_data = array( 'woocommerce_before_main_content' => array( 'block_names' => array( 'core/query', 'woocommerce/product-collection' ), 'position' => 'before', 'hooked' => array( 'woocommerce_output_content_wrapper' => 10, 'woocommerce_breadcrumb' => 20, ), ), 'woocommerce_after_main_content' => array( 'block_names' => array( 'core/query', 'woocommerce/product-collection' ), 'position' => 'after', 'hooked' => array( 'woocommerce_output_content_wrapper_end' => 10, ), ), 'woocommerce_before_shop_loop_item_title' => array( 'block_names' => array( 'core/post-title' ), 'position' => 'before', 'hooked' => array( 'woocommerce_show_product_loop_sale_flash' => 10, 'woocommerce_template_loop_product_thumbnail' => 10, ), ), 'woocommerce_shop_loop_item_title' => array( 'block_names' => array( 'core/post-title' ), 'position' => 'after', 'hooked' => array( 'woocommerce_template_loop_product_title' => 10, ), ), 'woocommerce_after_shop_loop_item_title' => array( 'block_names' => array( 'core/post-title' ), 'position' => 'after', 'hooked' => array( 'woocommerce_template_loop_rating' => 5, 'woocommerce_template_loop_price' => 10, ), ), 'woocommerce_before_shop_loop_item' => array( 'block_names' => array( self::LOOP_ITEM_ID ), 'position' => 'before', 'hooked' => array( 'woocommerce_template_loop_product_link_open' => 10, ), ), 'woocommerce_after_shop_loop_item' => array( 'block_names' => array( self::LOOP_ITEM_ID ), 'position' => 'after', 'hooked' => array( 'woocommerce_template_loop_product_link_close' => 5, 'woocommerce_template_loop_add_to_cart' => 10, ), ), 'woocommerce_before_shop_loop' => array( 'block_names' => array( 'core/post-template', 'woocommerce/product-template' ), 'position' => 'before', 'hooked' => array( 'woocommerce_output_all_notices' => 10, 'woocommerce_result_count' => 20, 'woocommerce_catalog_ordering' => 30, ), 'permanently_removed_actions' => array( 'woocommerce_output_all_notices', 'woocommerce_result_count', 'woocommerce_catalog_ordering', ), ), 'woocommerce_after_shop_loop' => array( 'block_names' => array( 'core/post-template', 'woocommerce/product-template' ), 'position' => 'after', 'hooked' => array( 'woocommerce_pagination' => 10, ), 'permanently_removed_actions' => array( 'woocommerce_pagination', ), ), 'woocommerce_no_products_found' => array( 'block_names' => array( 'core/query-no-results' ), 'position' => 'before', 'hooked' => array( 'wc_no_products_found' => 10, ), 'permanently_removed_actions' => array( 'wc_no_products_found', ), ), 'woocommerce_archive_description' => array( 'block_names' => array( 'core/term-description' ), 'position' => 'before', 'hooked' => array( 'woocommerce_taxonomy_archive_description' => 10, 'woocommerce_product_archive_description' => 10, ), ), ); }