- Status
- Gelöst
- Gemeldet für
- WPML SEO 2.1.0
- Gelöst in
- 2.2.0
- Zugehöriges Plugin/Theme
- Rank Math SEO
- Themen-Tags
- Compatibility
Übersicht über das Problem
Wenn Sie das Rank Math SEO-Plugin verwenden, wird die primäre Kategorie, die für ein Produkt oder einen Beitrag in der Standardsprache festgelegt wurde, nicht mit den Übersetzungen synchronisiert. Dieses Problem besteht weiterhin, selbst wenn Sie das benutzerdefinierte Feld rank_math_primary_product_cat auf Kopieren setzen.
Problemumgehung
Bitte stellen Sie sicher, dass Sie über ein vollständiges Backup Ihrer Website verfügen, bevor Sie fortfahren.
- Öffnen Sie die Datei functions.php des Themes.
- Fügen Sie den folgenden Code hinzu:
// compsupp-6580: sync primary term and primary product terms for Rank Math add_filter('get_post_metadata', 'compsupp6580_filter_the_post_metadata', 20, 4); function compsupp6580_filter_the_post_metadata($value, $postId, $key, $single) { $meta_keys_mapping = array( 'rank_math_primary_category' => 'category', 'rank_math_primary_product_cat' => 'product_cat', ); if (in_array($key, array_keys($meta_keys_mapping), true)) { remove_filter('get_post_metadata', 'compsupp6580_filter_the_post_metadata', 20); $value = get_post_meta($postId, $key, true); add_filter('get_post_metadata', 'compsupp6580_filter_the_post_metadata', 20, 4); $args = [ 'element_id' => $postId, 'element_type' => get_post_type($postId), ]; $language = apply_filters('wpml_element_language_code', false, $args); $value = apply_filters('wpml_object_id', $value, $meta_keys_mapping[$key], true, $language); if (!$single) { $value = [$value]; } } return $value; }