Ciao a tutti, ho bisogno di aggiungere l'attributo title al blocco social.link di Wp.
Il blocco si trova /wp-includes/blocks/social-link.php
Se modifico direttamente la funzione in questo file ottengo quello che voglio, ma quando aggiornerò WP perderò tutto il lavoro fatto. Quindi necessito di capire come scrivere la funzione nel tema child nel suo functions. Copiarla non funziona perché giustamente di dice che è stata già dichiarata in wp-includes.
La funzione è questa:
Codice PHP:
function render_block_core_social_link( $attributes, $content, $block ) {
$open_in_new_tab = isset( $block->context['openInNewTab'] ) ? $block->context['openInNewTab'] : false;

$service = ( isset( $attributes['service'] ) ) ? $attributes['service'] : 'Icon';
$url = ( isset( $attributes['url'] ) ) ? $attributes['url'] : false;
$label = ( isset( $attributes['label'] ) ) ? $attributes['label'] : sprintf(
/* translators: %1$s: Social-network name. %2$s: URL. */
__( '%1$s: %2$s' ),
block_core_social_link_get_name( $service ),
$url
);
$title = ( isset( $attributes['title'] ) ) ? $attributes['title'] : sprintf(
/* translators: %1$s: Social-network name. %2$s: URL.*/
__( '%1$s' ),
block_core_social_link_get_name( $service ),

);

$class_name = isset( $attributes['className'] ) ? ' ' . $attributes['className'] : false;

// Don't render a link if there is no URL set.
if ( ! $url ) {
return
'';
}

$attribute = '';
if (
$open_in_new_tab ) {
$attribute = 'rel="noopener nofollow" target="_blank"';
}

$icon = block_core_social_link_get_icon( $service );
$wrapper_attributes = get_block_wrapper_attributes(
array(
'class' => 'wp-social-link wp-social-link-' . $service . $class_name,
'style' => block_core_social_link_get_color_styles( $block->context ),
)
);

return
'<li ' . $wrapper_attributes . '><a href="' . esc_url( $url ) . '" aria-label="' . esc_attr( $label ) . '" title="' . esc_attr( $title ) . '" ' . $attribute . ' class="wp-block-social-link-anchor"> ' . $icon . '</a></li>';
}
mentre nello specifico la riga aggiunta da me è questa:
Codice PHP:
$title = ( isset( $attributes['title'] ) ) ? $attributes['title'] : sprintf(
/* translators: %1$s: Social-network name. %2$s: URL.*/
__( '%1$s' ),
block_core_social_link_get_name( $service ),

);