Automattic\WooCommerce\Blocks\BlockTypes
MiniCartCartButtonBlock::render
Render the markup for the Mini-Cart Contents block.
Метод класса: MiniCartCartButtonBlock{}
Хуков нет.
Возвращает
string. Rendered block type output.
Использование
// protected - в коде основоного (родительского) или дочернего класса $result = $this->render( $attributes, $content, $block );
- $attributes(массив) (обязательный)
- Block attributes.
- $content(строка) (обязательный)
- Block content.
- $block(WP_Block) (обязательный)
- Block instance.
Код MiniCartCartButtonBlock::render() MiniCartCartButtonBlock::render WC 11.1.1
<?php
protected function render( $attributes, $content, $block ) {
$default_view_cart_text = __( 'View my cart', 'woocommerce' );
$view_cart_text = $attributes['cartButtonLabel'] ? $attributes['cartButtonLabel'] : $default_view_cart_text;
$cart_page_id = wc_get_page_id( 'cart' );
$cart_page_url = get_permalink( $cart_page_id );
$classes = implode(
' ',
array_filter(
array(
'wc-block-components-button',
'wp-element-button wc-block-mini-cart__footer-cart',
// Default style class is not added by default, so it needs to be added manually if it doesn't exist.
( ! isset( $attributes['className'] ) || strpos( $attributes['className'], 'is-style-' ) === false ) ? 'is-style-outline' : '',
)
)
);
$wrapper_attributes = get_block_wrapper_attributes(
array(
'href' => esc_url( $cart_page_url ),
'class' => $classes,
)
);
ob_start();
?>
<a <?php echo $wrapper_attributes; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>>
<div class="wc-block-components-button__text">
<?php echo esc_html( $view_cart_text ); ?>
</div>
</a>
<?php
return (string) ob_get_clean();
}