Получите заголовок исходной страницы на языке по умолчанию и добавьте его в качестве основного текста на переведенную страницу в WordPress с WPML - PullRequest
0 голосов
/ 06 ноября 2018

Вот моя проблема:

add_filter( 'body_class', 'wpml_body_class');
function wpml_body_class( $class ) {
    global $sitepress, $post;

    if( $sitepress->get_default_language() != ICL_LANGUAGE_CODE ) {
        $original_id = icl_object_id( $post->ID, get_post_type(), true, $sitepress->get_default_language() );
        $class[] = strtolower(get_the_title( $original_id ));
    }

    return $class;
}

Этот код работает нормально. По сути, я использую $ sitepress как глобальный, чтобы получить свой язык по умолчанию, а затем извлекаю идентификатор, чтобы сопоставить его с get_the_title, поэтому в конце дня я добавил заголовок в качестве имени класса в тело, чтобы я мог легко скопировать стиль исходной страницы, не добавляя строки в мой файл таблицы стилей CSS на переведенной странице, в данном случае на французском.

Пока все хорошо, за исключением оговорки:

Поскольку это заголовок, если у меня есть заголовок, такой как Наша команда, я должен добавить тире в стиль, и он будет меняться в зависимости от того, сколько слов у меня есть. Если вместо этого мне нужно использовать URL-адрес, процесс его извлечения с помощью WordPress будет более сложным, поэтому мне было интересно, можно ли добавить регулярное выражение для добавления тире, если у меня есть свободное место. Или, если бы все остальные знали, как извлечь URL вместо get_the_title, я не был бы более благодарен.

1 Ответ

0 голосов
/ 07 ноября 2018

, что вам нужно, это sanitize_title_with_dashes() для ваших целей :), который предоставляется WP. Ссылка https://codex.wordpress.org/Function_Reference/sanitize_title_with_dashes

...