| Server IP : 87.229.120.60 / Your IP : 216.73.216.86 Web Server : Apache System : Linux outside 5.4.8_Algonet_ZeroMAC_0.9.4.8 #6 SMP Mon Feb 3 20:36:07 CET 2020 x86_64 User : server ( 1002) PHP Version : 8.3.20 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,curl_multi_exec,parse_ini_file,show_source MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/faktorteam/www/wp-includes/block-supports/ |
Upload File : |
<?php
/**
* Aria label block support flag.
*
* @package WordPress
* @since 6.8.0
*/
/**
* Registers the aria-label block attribute for block types that support it.
*
* @since 6.8.0
* @access private
*
* @param WP_Block_Type $block_type Block Type.
*/
function wp_register_aria_label_support( $block_type ) {
$has_aria_label_support = block_has_support( $block_type, array( 'ariaLabel' ), false );
if ( ! $has_aria_label_support ) {
return;
}
if ( ! $block_type->attributes ) {
$block_type->attributes = array();
}
if ( ! array_key_exists( 'ariaLabel', $block_type->attributes ) ) {
$block_type->attributes['ariaLabel'] = array(
'type' => 'string',
);
}
}
/**
* Add the aria-label to the output.
*
* @since 6.8.0
* @access private
*
* @param WP_Block_Type $block_type Block Type.
* @param array $block_attributes Block attributes.
*
* @return array Block aria-label.
*/
function wp_apply_aria_label_support( $block_type, $block_attributes ) {
if ( ! $block_attributes ) {
return array();
}
$has_aria_label_support = block_has_support( $block_type, array( 'ariaLabel' ), false );
if (
! $has_aria_label_support ||
wp_should_skip_block_supports_serialization( $block_type, 'ariaLabel' )
) {
return array();
}
$has_aria_label = array_key_exists( 'ariaLabel', $block_attributes );
if ( ! $has_aria_label ) {
return array();
}
return array( 'aria-label' => $block_attributes['ariaLabel'] );
}
// Register the block support.
WP_Block_Supports::get_instance()->register(
'aria-label',
array(
'register_attribute' => 'wp_register_aria_label_support',
'apply' => 'wp_apply_aria_label_support',
)
);