CustomerAccount
extends AbstractBlock
in package
Uses
BlockHooksTrait
CustomerAccount class.
Table of Contents
- DISPLAY_ALT = 'alt'
- ICON_ONLY = 'icon_only'
- TEXT_ONLY = 'text_only'
- $asset_api : Api
- Instance of the asset API.
- $asset_data_registry : AssetDataRegistry
- Instance of the asset data registry.
- $block_name : string
- Block name.
- $enqueued_assets : bool
- Tracks if assets have been enqueued.
- $hooked_block_placements : array<string|int, mixed>
- Block Hook API placements.
- $integration_registry : IntegrationRegistry
- Instance of the integration registry.
- $namespace : string
- Block namespace.
- __construct() : mixed
- Constructor.
- enqueue_editor_assets() : mixed
- Enqueue assets used for rendering the block in editor context.
- modify_hooked_block_attributes() : array<string|int, mixed>|null
- Callback for the Block Hooks API to modify the attributes of the hooked block.
- register_hooked_block() : array<string|int, mixed>
- Callback for `hooked_block_types` to auto-inject the mini-cart block into headers after navigation.
- render_callback() : string
- The default render_callback for all blocks. This will ensure assets are enqueued just in time, then render the block (if applicable).
- enqueue_data() : mixed
- Data passed through from server to client for block.
- enqueue_scripts() : mixed
- Register/enqueue scripts used for this block on the frontend, during render.
- get_block_type() : string
- Get the block type.
- get_block_type_attributes() : array<string|int, mixed>
- Get block attributes.
- get_block_type_editor_script() : array<string|int, mixed>|string
- Get the editor script data for this block type.
- get_block_type_editor_style() : string|null
- Get the editor style handle for this block type.
- get_block_type_render_callback() : callable|null
- Get the render callback for this block type.
- get_block_type_script() : null
- Get the frontend script handle for this block type.
- get_block_type_style() : array<string|int, string>|null
- Get the frontend style handle for this block type.
- get_block_type_supports() : string
- Get the supports array for this block type.
- get_block_type_uses_context() : array<string|int, mixed>
- Get block usesContext.
- get_chunks_paths() : array<string|int, string>
- Generate an array of chunks paths for loading translation.
- get_context_content() : string
- Given a provided context, returns the content of the context.
- get_full_block_name() : string
- Get the interactivity namespace. Only used when utilizing the interactivity API.
- get_routes_from_namespace() : array<string|int, mixed>
- Get routes from a REST API namespace.
- has_block_in_content() : bool
- Checks if the provided context contains a the block already.
- initialize() : mixed
- Initialize this block type.
- is_target_area() : bool
- Given a provided context, returns whether the context refers to the target area and isn't marked as excluded.
- is_template_part_or_pattern() : bool
- Given a provided context, returns whether the context refers to header content.
- parse_render_callback_attributes() : array<string|int, mixed>
- Parses block attributes from the render_callback.
- pattern_is_excluded() : bool
- Returns whether the pattern is excluded or not
- register_block_type() : array<string|int, string>
- Registers the block type with WordPress.
- register_block_type_assets() : mixed
- Register script and style assets for the block type before it is registered.
- register_chunk_translations() : mixed
- Injects Chunk Translations into the page so translations work for lazy loaded components.
- render() : string
- Render the block.
- should_unhook_block() : array<string|int, mixed>
- Callback for the Block Hooks API to determine if the block should be auto-inserted.
- render_icon() : string
- Gets the icon to render depending on the iconStyle and displayStyle.
- render_label() : string
- Gets the label to render depending on the displayStyle.
Constants
DISPLAY_ALT
public
mixed
DISPLAY_ALT
= 'alt'
ICON_ONLY
public
mixed
ICON_ONLY
= 'icon_only'
TEXT_ONLY
public
mixed
TEXT_ONLY
= 'text_only'
Properties
$asset_api
Instance of the asset API.
protected
Api
$asset_api
$asset_data_registry
Instance of the asset data registry.
protected
AssetDataRegistry
$asset_data_registry
$block_name
Block name.
protected
string
$block_name
= 'customer-account'
$enqueued_assets
Tracks if assets have been enqueued.
protected
bool
$enqueued_assets
= false
$hooked_block_placements
Block Hook API placements.
protected
array<string|int, mixed>
$hooked_block_placements
= array(array('position' => 'after', 'anchor' => 'core/navigation', 'area' => 'header', 'callback' => 'should_unhook_block'))
$integration_registry
Instance of the integration registry.
protected
IntegrationRegistry
$integration_registry
$namespace
Block namespace.
protected
string
$namespace
= 'woocommerce'
Methods
__construct()
Constructor.
public
__construct(Api $asset_api, AssetDataRegistry $asset_data_registry, IntegrationRegistry $integration_registry[, string $block_name = '' ]) : mixed
Parameters
- $asset_api : Api
-
Instance of the asset API.
- $asset_data_registry : AssetDataRegistry
-
Instance of the asset data registry.
- $integration_registry : IntegrationRegistry
-
Instance of the integration registry.
- $block_name : string = ''
-
Optionally set block name during construct.
Return values
mixed —enqueue_editor_assets()
Enqueue assets used for rendering the block in editor context.
public
enqueue_editor_assets() : mixed
This is needed if a block is not yet within the post content--render
and enqueue_assets
may not have ran.
Return values
mixed —modify_hooked_block_attributes()
Callback for the Block Hooks API to modify the attributes of the hooked block.
public
modify_hooked_block_attributes(array<string|int, mixed>|null $parsed_hooked_block, string $hooked_block_type, string $relative_position, array<string|int, mixed> $parsed_anchor_block, WP_Block_Template|WP_Post|array<string|int, mixed> $context) : array<string|int, mixed>|null
Parameters
- $parsed_hooked_block : array<string|int, mixed>|null
-
The parsed block array for the given hooked block type, or null to suppress the block.
- $hooked_block_type : string
-
The hooked block type name.
- $relative_position : string
-
The relative position of the hooked block.
- $parsed_anchor_block : array<string|int, mixed>
-
The anchor block, in parsed block array format.
- $context : WP_Block_Template|WP_Post|array<string|int, mixed>
-
The block template, template part,
wp_navigation
post type, or pattern that the anchor block belongs to.
Return values
array<string|int, mixed>|null —register_hooked_block()
Callback for `hooked_block_types` to auto-inject the mini-cart block into headers after navigation.
public
register_hooked_block(array<string|int, mixed> $hooked_blocks, string $position, string $anchor_block, array<string|int, mixed>|WP_Post|WP_Block_Template $context) : array<string|int, mixed>
Parameters
- $hooked_blocks : array<string|int, mixed>
-
An array of block slugs hooked into a given context.
- $position : string
-
Position of the block insertion point.
- $anchor_block : string
-
The block acting as the anchor for the inserted block.
- $context : array<string|int, mixed>|WP_Post|WP_Block_Template
-
Where the block is embedded.
Tags
Return values
array<string|int, mixed> — An array of block slugs hooked into a given context.render_callback()
The default render_callback for all blocks. This will ensure assets are enqueued just in time, then render the block (if applicable).
public
render_callback([array<string|int, mixed>|WP_Block $attributes = [] ][, string $content = '' ][, WP_Block|null $block = null ]) : string
Parameters
- $attributes : array<string|int, mixed>|WP_Block = []
-
Block attributes, or an instance of a WP_Block. Defaults to an empty array.
- $content : string = ''
-
Block content. Default empty string.
- $block : WP_Block|null = null
-
Block instance.
Return values
string — Rendered block type output.enqueue_data()
Data passed through from server to client for block.
protected
enqueue_data([array<string|int, mixed> $attributes = [] ]) : mixed
Parameters
- $attributes : array<string|int, mixed> = []
-
Any attributes that currently are available from the block. Note, this will be empty in the editor context when the block is not in the post content on editor load.
Return values
mixed —enqueue_scripts()
Register/enqueue scripts used for this block on the frontend, during render.
protected
enqueue_scripts([array<string|int, mixed> $attributes = [] ]) : mixed
Parameters
- $attributes : array<string|int, mixed> = []
-
Any attributes that currently are available from the block.
Return values
mixed —get_block_type()
Get the block type.
protected
get_block_type() : string
Return values
string —get_block_type_attributes()
Get block attributes.
protected
get_block_type_attributes() : array<string|int, mixed>
Return values
array<string|int, mixed> —get_block_type_editor_script()
Get the editor script data for this block type.
protected
get_block_type_editor_script([string $key = null ]) : array<string|int, mixed>|string
Parameters
- $key : string = null
-
Data to get, or default to everything.
Tags
Return values
array<string|int, mixed>|string —get_block_type_editor_style()
Get the editor style handle for this block type.
protected
get_block_type_editor_style() : string|null
Tags
Return values
string|null —get_block_type_render_callback()
Get the render callback for this block type.
protected
get_block_type_render_callback() : callable|null
Dynamic blocks should return a callback, for example, return [ $this, 'render' ];
Tags
Return values
callable|null —get_block_type_script()
Get the frontend script handle for this block type.
protected
get_block_type_script([string $key = null ]) : null
Parameters
- $key : string = null
-
Data to get, or default to everything.
Return values
null — This block has no frontend script.get_block_type_style()
Get the frontend style handle for this block type.
protected
get_block_type_style() : array<string|int, string>|null
Return values
array<string|int, string>|null —get_block_type_supports()
Get the supports array for this block type.
protected
get_block_type_supports() : string
Tags
Return values
string —get_block_type_uses_context()
Get block usesContext.
protected
get_block_type_uses_context() : array<string|int, mixed>
Return values
array<string|int, mixed> —get_chunks_paths()
Generate an array of chunks paths for loading translation.
protected
get_chunks_paths(string $chunks_folder) : array<string|int, string>
Parameters
- $chunks_folder : string
-
The folder to iterate over.
Return values
array<string|int, string> — $chunks list of chunks to load.get_context_content()
Given a provided context, returns the content of the context.
protected
get_context_content(array<string|int, mixed>|WP_Post|WP_Block_Template $context) : string
Parameters
- $context : array<string|int, mixed>|WP_Post|WP_Block_Template
-
Where the block is embedded.
Tags
Return values
string —get_full_block_name()
Get the interactivity namespace. Only used when utilizing the interactivity API.
protected
get_full_block_name() : string
Return values
string — The interactivity namespace, used to namespace interactivity API actions and state.get_routes_from_namespace()
Get routes from a REST API namespace.
protected
get_routes_from_namespace(string $namespace) : array<string|int, mixed>
Parameters
- $namespace : string
-
Namespace to retrieve.
Return values
array<string|int, mixed> —has_block_in_content()
Checks if the provided context contains a the block already.
protected
has_block_in_content(array<string|int, mixed>|WP_Block_Template $context) : bool
Parameters
- $context : array<string|int, mixed>|WP_Block_Template
-
Where the block is embedded.
Return values
bool —initialize()
Initialize this block type.
protected
initialize() : mixed
Return values
mixed —is_target_area()
Given a provided context, returns whether the context refers to the target area and isn't marked as excluded.
protected
is_target_area(array<string|int, mixed>|WP_Post|WP_Block_Template $context, string $area) : bool
Parameters
- $context : array<string|int, mixed>|WP_Post|WP_Block_Template
-
the context to check.
- $area : string
-
The area to check against before inserting.
Tags
Return values
bool —is_template_part_or_pattern()
Given a provided context, returns whether the context refers to header content.
protected
is_template_part_or_pattern(array<string|int, mixed>|WP_Post|WP_Block_Template $context, string $area) : bool
Parameters
- $context : array<string|int, mixed>|WP_Post|WP_Block_Template
-
Where the block is embedded.
- $area : string
-
The area to check against before inserting.
Tags
Return values
bool —parse_render_callback_attributes()
Parses block attributes from the render_callback.
protected
parse_render_callback_attributes(array<string|int, mixed>|WP_Block $attributes) : array<string|int, mixed>
Parameters
- $attributes : array<string|int, mixed>|WP_Block
-
Block attributes, or an instance of a WP_Block. Defaults to an empty array.
Return values
array<string|int, mixed> —pattern_is_excluded()
Returns whether the pattern is excluded or not
protected
pattern_is_excluded(array<string|int, mixed>|WP_Block_Template $context) : bool
Parameters
- $context : array<string|int, mixed>|WP_Block_Template
-
Where the block is embedded.
Tags
Return values
bool —register_block_type()
Registers the block type with WordPress.
protected
register_block_type() : array<string|int, string>
Return values
array<string|int, string> — Chunks paths.register_block_type_assets()
Register script and style assets for the block type before it is registered.
protected
register_block_type_assets() : mixed
This registers the scripts; it does not enqueue them.
Return values
mixed —register_chunk_translations()
Injects Chunk Translations into the page so translations work for lazy loaded components.
protected
register_chunk_translations(array<string|int, string> $chunks) : mixed
The chunk names are defined when creating lazy loaded components using webpackChunkName.
Parameters
- $chunks : array<string|int, string>
-
Array of chunk names.
Return values
mixed —render()
Render the block.
protected
render(array<string|int, mixed> $attributes, string $content, WP_Block $block) : string
Parameters
- $attributes : array<string|int, mixed>
-
Block attributes.
- $content : string
-
Block content.
- $block : WP_Block
-
Block instance.
Return values
string — Rendered block output.should_unhook_block()
Callback for the Block Hooks API to determine if the block should be auto-inserted.
protected
should_unhook_block(array<string|int, mixed> $hooked_blocks, string $position, string $anchor_block, array<string|int, mixed>|WP_Post|WP_Block_Template $context) : array<string|int, mixed>
Parameters
- $hooked_blocks : array<string|int, mixed>
-
An array of block slugs hooked into a given context.
- $position : string
-
Position of the block insertion point.
- $anchor_block : string
-
The block acting as the anchor for the inserted block.
- $context : array<string|int, mixed>|WP_Post|WP_Block_Template
-
Where the block is embedded.
Return values
array<string|int, mixed> —render_icon()
Gets the icon to render depending on the iconStyle and displayStyle.
private
render_icon(array<string|int, mixed> $attributes) : string
Parameters
- $attributes : array<string|int, mixed>
-
Block attributes.
Return values
string — Label to render on the blockrender_label()
Gets the label to render depending on the displayStyle.
private
render_label() : string