Automattic\WooCommerce\Blocks\BlockTypes
FeaturedItem::update_context
Update context for inner blocks to provide postId and postType.
Method of the class: FeaturedItem{}
No Hooks.
Returns
Array. Updated block context.
Usage
$FeaturedItem = new FeaturedItem(); $FeaturedItem->update_context( $context, $parsed_block, $parent_block );
- $context(array) (required)
- Block context.
- $parsed_block(array) (required)
- Block attributes.
- $parent_block(WP_Block) (required)
- Block instance.
FeaturedItem::update_context() FeaturedItem::update context code WC 10.8.1
public function update_context( $context, $parsed_block, $parent_block ) {
// Check if this is a featured item block and extract all inner block names.
if ( ( 'woocommerce/featured-product' === $parsed_block['blockName'] || 'woocommerce/featured-category' === $parsed_block['blockName'] )
&& isset( $parsed_block['attrs'] ) ) {
$item = $this->get_item( $parsed_block['attrs'] );
if ( $item instanceof \WC_Product ) {
$this->featured_item_id = $item->get_id();
$this->featured_item_inner_blocks_names = array_reverse(
$this->extract_featured_item_inner_block_names( $parsed_block )
);
}
}
// Replace post context for featured item inner blocks.
$this->replace_post_for_featured_item_inner_block( $parsed_block, $context );
return $context;
}