WPML
$translated_slug = apply_filters( 'wpml_get_translated_slug', string $slug, string $post_type, string $language_code, string $element_type );
Тип
filter
Версия WPML
3.2.3

Описание

  • Получает перевод слага типа записи или таксономии на определённом языке.
  • Значение перевода сохраняется в разделе WPMLНастройкиПеревод типов записей.

Аргументы

$slug
(string) (Обязательно) Значение задается в аргументе rewrite функции register_post_type.
$post_type
(string) (Обязательно) Значение первого параметра функции register_post_type или register_taxonomy.
$language_code
(string) (Необязательно) Возвращает перевод на этот язык. Значение по умолчанию — NULL, при котором возвращается текущий язык.
$element_type
(string) (Необязательно) Указывает, применяется ли переведенный слаг к произвольному типу записи или к произвольной таксономии. Допустимые значения: post или taxonomy. Значение по умолчанию — post.

Пример использования

Пример для типа записи
Зарегистрируйте тип записи book с произвольным слагом my-book.

В разделе WPMLНастройкиПеревод типов записей переведите этот произвольный слаг на испанский язык, указав значение mi-libro.

Используйте хук wpml_get_translated_slug, чтобы получить испанский перевод этого произвольного слага, то есть mi-libro.

Пример использования wpml_get_translated_slug.
Пример использования wpml_get_translated_slug.
// Register a "book" post type with the custom slug "my-book"
add_action( 'init', 'register_book_init' );
 
function register_book_init() {
    $labels = array(
        'name'               => _x( 'Books', 'post type general name', 'your-plugin-textdomain' ),
        'singular_name'      => _x( 'Book', 'post type singular name', 'your-plugin-textdomain' )
    );
 
    $args = array(
        'labels'             => $labels,
        'public'             => true,
        'publicly_queryable' => true,
        'show_ui'            => true,
        'show_in_menu'       => true,
        'rewrite'            => array( 'slug' => 'my-book' ),
    );
 
    register_post_type( 'book', $args ); 
}
 
// Get the Spanish translation of the post type slug "my-book" 
// This value is saved in WPML->Settings->Post Types Translation
$translated_slug = apply_filters( 'wpml_get_translated_slug', 'my-book', 'book' ,'es' , 'post');
// Return "mi-libro"
echo $translated_slug;

// Register a "genre" custom taxonomy to the "book" custom post type
add_action( 'init', 'register_genre_init', 0 );

function register_genre_init() {
	register_taxonomy( 'genre', 'book', array(
		'rewrite'      => array( 'slug' => 'genre' )
	) );
}
Пример для таксономии
Зарегистрируйте тип таксономии genre с произвольным слагом genre.

В разделе WPMLПеревод таксономии переведите термин таксономии на испанский язык, указав значение género.

Используйте хук wpml_get_translated_slug, чтобы получить испанский перевод этого произвольного слага, то есть género.

// Get the Spanish translation of the custom taxonomy slug "genre" 
// This value is saved in WPML->Settings->Taxonomies Translation
$translated_taxonomy_slug = apply_filters( 'wpml_get_translated_slug', 'genre', 'genre' ,'es', 'taxonomy' );
// Return "género"
echo $translated_taxonomy_slug;

wpml_media_url, wpml_media_id, force_suppress_filters, wpml_home_url, wpml_translate_single_string, wpml_translate_string, wpml_elements_without_translations, wpml_permalink, wpml_unfiltered_admin_string, wpml_element_link

Все хуки категории «Получение локализованного контента» (12) →