Показать "Эта страница не переведена", если перевод не существует.WP и WPML - PullRequest
0 голосов
/ 06 июня 2018

Ну, у меня есть сайт WordPress с WPML.Не все мои страницы переведены на EN версию.И я знаю, чтобы понять следующее.Когда кто-то пытается перейти на URL, который не существует, я хочу показать ему / ей «Не переведенную страницу» (с рекомендацией просмотреть этот контент на другом языке).Как я могу это понять?Спасибо!

1 Ответ

0 голосов
/ 07 июня 2018
add_action('wp_head', 'wpml_custom');
function wpml_custom() {
    global $wp_query;
    $postId = $wp_query->post->ID;
    $postType = $wp_query->post->post_type;
    $args = [
        'element_id' => $postId, 'element_type' => $postType
    ];
    $translation = apply_filters( 'wpml_element_language_details', null, $args );
    $currentLang = apply_filters( 'wpml_current_language', null );

    if (preg_match('/^\/$/', $_SERVER['REQUEST_URI'])) {
        return;
    } elseif ($translation->language_code !== $currentLang) {
        require get_template_directory()  . '/no-translation.php';
        exit();
    }

}

...