- Status
- Gelöst
Übersicht über das Problem
Wenn Sie die Funktion yoast_breadcrumb() verwenden, um Breadcrumbs anzuzeigen, zeigen einige Seiten-Links in übersetzten Sprachen möglicherweise den ursprünglichen Slug anstelle des übersetzten an.
Dies ist beabsichtigt, um die Performance weniger zu beeinträchtigen. Beachten Sie, dass der Link nach dem Anklicken auf die richtige Seite weiterleitet.
Problemumgehung
Es ist möglich, dieses Verhalten mithilfe der folgenden Problemumgehung zu ändern. Bitte erstellen Sie ein Backup Ihrer Website, bevor Sie Änderungen vornehmen.
/**
* 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 );