get_language_attributes()WP 4.3.0

Получает языковые атрибуты для HTML-тега <html>.

Формирует атрибуты:

  • dir="rtl" - для языков с письмом справа налево.
  • lang="..." - язык HTML-документа.
  • xml:lang="..." - язык XHTML-документа.

Язык определяется через get_bloginfo() с параметром language. Готовую строку можно изменить через фильтр language_attributes.

Для вывода атрибутов используйте функцию language_attributes().

Работает на основе: is_rtl(), get_bloginfo(), get_option()
Основа для: language_attributes()
1 раз — 0.0018239 сек (очень медленно) | 50000 раз — 0.40 сек (очень быстро)
Хуки из функции

Возвращает

Строку.

  • строку - атрибуты, разделённые пробелами.
  • '' - если ни один атрибут не сформирован.

Использование

get_language_attributes( $doctype );
$doctype(string)

Тип документа: html или xhtml.

По умолчанию: html

Примеры

0

#1 Получение языковых атрибутов

$attributes = get_language_attributes();

echo '<html ' . $attributes . '>';

Для русскоязычного сайта получится:

<html lang="ru-RU">

Для языка с направлением письма справа налево:

<html dir="rtl" lang="ar">

Список изменений

С версии 4.3.0 Введена.

Код get_language_attributes() WP 7.0.4

function get_language_attributes( $doctype = 'html' ) {
	$attributes = array();

	if ( function_exists( 'is_rtl' ) && is_rtl() ) {
		$attributes[] = 'dir="rtl"';
	}

	$lang = get_bloginfo( 'language' );
	if ( $lang ) {
		if ( 'text/html' === get_option( 'html_type' ) || 'html' === $doctype ) {
			$attributes[] = 'lang="' . esc_attr( $lang ) . '"';
		}

		if ( 'text/html' !== get_option( 'html_type' ) || 'xhtml' === $doctype ) {
			$attributes[] = 'xml:lang="' . esc_attr( $lang ) . '"';
		}
	}

	$output = implode( ' ', $attributes );

	/**
	 * Filters the language attributes for display in the 'html' tag.
	 *
	 * @since 2.5.0
	 * @since 4.3.0 Added the `$doctype` parameter.
	 *
	 * @param string $output A space-separated list of language attributes.
	 * @param string $doctype The type of HTML document (xhtml|html).
	 */
	return apply_filters( 'language_attributes', $output, $doctype );
}