Chuyển đến nội dung Chuyển đến thanh bên

Open

Reported for: WPML SEO 2.1.0.1

Topic Tags: Compatibility

Overview of the issue

When the Remove parent slugs option is enabled in the Rank Math SEO plugin with WooCommerce, it leads to a problem with the translation of product categories. If you switch to a secondary language from a product category page, it points to the untranslated category slug, leading to a 404 error page.

Workaround

Please, make sure of having a full backup of your site before proceeding.

  • Open …/wp-content/plugins/seo-by-rank-math/includes/modules/woocommerce/class-permalink-watcher.php file.
  • Look for line 124.
  • Replace this code:
    $permalink_structure  = wc_get_permalink_structure();
    $category_base        = trailingslashit( $permalink_structure['category_rewrite_slug'] );
    $is_language_switcher = ( class_exists( 'Sitepress' ) && strpos( $link, 'lang=' ) );
    
  • With:
    $permalink_structure  = wc_get_permalink_structure();
    
    // WPML Workaround for compsupp-6895
    if ( class_exists('Sitepress') ) {
    	$args = array('element_id' => $term->term_id, 'element_type' => $taxonomy );
    	$term_language_info = apply_filters( 'wpml_element_language_details', null, $args );
    	$permalink_structure['category_rewrite_slug'] = apply_filters('wpml_translate_single_string', $permalink_structure['category_rewrite_slug'], 'WordPress', 'URL '.$taxonomy.' tax slug', $term_language_info->language_code );
    }
    
    $category_base        = trailingslashit( $permalink_structure['category_rewrite_slug'] );
    $is_language_switcher = ( class_exists( 'Sitepress' ) && strpos( $link, 'lang=' ) );
    

4 phản hồi đến “Rank Math SEO - "Remove Parent Slugs" Option Causes Category Slug Translation Error (404)”

Để lại trả lời

Vui lòng giữ đúng chủ đề và tôn trọng người khác. Nếu bạn cần trợ giúp với các vấn đề không liên quan đến bài đăng này, hãy sử dụng Diễn đàn Hỗ trợ của chúng tôi để bắt đầu trò chuyện hoặc gửi vé hỗ trợ.

Bạn có thể sử dụng các thẻ này:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>