WPML
상태
개발자 대기 중
관련 플러그인/테마
WP User Manager
주제 태그
Compatibility

문제 개요

WP User Manager 플러그인을 사용할 때, 공개 사용자 프로필 페이지(예: /profile/username)에서 언어를 전환하면 번역된 특정 프로필(예: /fr/profil/username) 대신 메인 프로필 페이지(예: /fr/profil/)로 리디렉션됩니다.

임시 해결 방법

진행하기 전에 사이트의 전체 사이트 백업이 있는지 확인하세요.


  • 테마의 functions.php 파일을 편집하고 다음 함수를 추가하세요.
    // WPML Workaround for compsupp-8195
    // Preserve WPUM profile sub-path when switching languages with WPML.
    add_filter( 'icl_ls_languages', function( $languages ) {
        // Only run if WPUM
        if ( ! function_exists( 'wpum_get_core_page_id' ) ) {
            return $languages;
        }
     
        // Get profile info from query vars
        $queried_profile = get_query_var( 'profile', false );
        if ( ! $queried_profile ) {
            return $languages;
        }
     
        // Build the trailing path from query vars
        $trailing = '/' . rawurlencode( $queried_profile );
     
        // Add tab and pagination if present
        $tab = get_query_var( 'tab' );
        if ( $tab ) {
            $trailing .= '/' . rawurlencode( $tab );
        }
         
        $paged = get_query_var( 'paged' );
        if ( $paged ) {
            $trailing .= '/page/' . rawurlencode( $paged );
        }
     
        // Append to each language URL
        foreach ( $languages as $key => $lang ) {
            if ( empty( $lang['url'] ) ) {
                continue;
            }
            $languages[$key]['url'] = rtrim( $lang['url'], '/' ) . $trailing;
        }
     
        return $languages;
    } );

알려진 모든 문제 →