- Status
- Gelöst
- Gemeldet für
- WPML SEO 2.2.4
- Gelöst in
- WPML SEO 2.2.5
- Zugehöriges Plugin/Theme
- Rank Math SEO
- Themen-Tags
- Compatibility
Übersicht über das Problem
Wenn Sie RankMath SEO mit WPML verwenden, kann ein Problem auftreten, bei dem die Startseiten-URLs im Quellcode der Sitemaps <xhtml:link rel="alternate" hreflang="..."> für Sekundärsprachen falsch sind. Anstatt die sprachspezifische Startseite anzuzeigen (z. B. domain.com/?lang=es), gibt die Sitemap eine vollständige Seiten-URL aus (z. B. domain.com/page-slug/?lang=es).
Problemumgehung
Bitte stellen Sie sicher, dass Sie über ein vollständiges Backup Ihrer Website verfügen, bevor Sie fortfahren.
- Öffnen Sie die Datei …/wp-content/plugins/wp-seo-multilingual/classes/Shared/Sitemap/BaseAlternateLangHooks.php.
- Suchen Sie nach Zeile 88.
- Ersetzen Sie:
$mapPermalink = function ( $id, $language ) use ( $getPermalink ) { return apply_filters( 'wpml_permalink', $getPermalink( $id ), $language ); };
- Durch:
$mapPermalink = function ( $id, $language ) use ( $getPermalink ) { // WPML Workaround for wpmlsupp-13368 $front_id = (int) get_option( 'page_on_front' ); if ( $front_id ) { $default_lang = apply_filters( 'wpml_default_language', null ); $id_in_default = (int) apply_filters( 'wpml_object_id', (int) $id, 'page', false, $default_lang ); if ( $id_in_default && $id_in_default === $front_id ) { return apply_filters( 'wpml_permalink', trailingslashit( home_url() ), $language ); } } return apply_filters( 'wpml_permalink', $getPermalink( $id ), $language ); };
- Sitemaps neu erstellen: Gehen Sie zu „Rank Math > Sitemap Settings“, ändern Sie den Wert für „Links per sitemap“ und speichern Sie.