- Stato
- Risolto
Panoramica del problema
Quando usi la funzione yoast_breadcrumb() per visualizzare i breadcrumb, alcuni link alle pagine nelle lingue tradotte potrebbero mostrare lo slug originale invece di quello tradotto.
Questo è intenzionale per avere un impatto minore sulle prestazioni. Nota che reindirizza alla pagina corretta dopo aver fatto clic sul link.
Soluzione alternativa
È possibile modificare questo comportamento utilizzando la seguente soluzione alternativa. Assicurati di eseguire il backup del tuo sito prima di apportare qualsiasi modifica.
/**
* Forces using the full resolution for all calls to `wpml_permalink` hook.
*
* @param string $url
* @param null|string $lang
* @param bool $absolute_url
*
* @return string
*/
function wpmlsupp_8689_force_full_permalink_conversion( $url, $lang = null, $absolute_url = false ) {
static $converting = false;
$lang = apply_filters( 'wpml_current_language', NULL );
if ( ! $converting ) {
$converting = true;
$url = apply_filters( 'wpml_permalink', $url, $lang, true );
$converting = false;
}
return $url;
}
// Hook with priority 5 to run before WPML Core filter.
add_filter( 'wpml_permalink', 'wpmlsupp_8689_force_full_permalink_conversion', 5, 3 );