Skip Navigation
Первоначально написано
23 июля, 2020
Обновлено
23 июля, 2020

При установке WPML вам предоставляются 60 преднастроенных языков, готовых к использованию. Эту таблицу можно изменить через графический интерфейс пользователя WPML и добавить собственные языки.

Добавление собственных языков через графический интерфейс пользователя WPML

Смотрите инструкции в видео ниже или читайте подробности под ним.

Перейдите в WPML → Языки и щелкните ссылку Изменить языки.

Щелкните, чтобы изменить языки
Щелкните, чтобы изменить языки

Откроется список языков на вашем сайте. Он будет похож на то, что показано на снимке экрана ниже, но с языками своего сайта.

Языки на вашем сайте с техническими подробностями
Языки на вашем сайте с техническими подробностями

Для добавления собственных языков щелкните кнопку «Добавить языки». Будет вставлена новая строка, похожая на эту:

Добавление нового языка
Добавление нового языка

Добавляемому языку требуется информация ниже:

  • Название языка – название, которое будет отображаться в графическом интерфейсе пользователя WPML
  • Код – название этого языка в базе данных. После установки этого значения и добавления контента его никогда нельзя менять, иначе язык контента будет утерян. Это значение будет использоваться для URL-адресов языков. Например, http://wpml.org/es-mx/, http://wpml.org/?lang=es-mx, http://es-mx.wpml.org.
  • Перевод (язык) – способ отображения этого языка при отображении на сайте другого языка
  • Флаг – файл изображения с флагом страны. WPML будет использовать его в переключателях языка.
  • Регион по умолчанию – активный регион для конкретного языка и для загрузки переводов GetText.
  • Кодировать URL-адреса – да/нет, определяет закодированы ли URL-адреса на этом языке, либо же в них используются символы ASCII (оставьте «нет», если не уверены).
  • Тег языка – код конкретного языка, которого ожидает Google. Тег языка должен содержать ту же информацию, что и название региона, но в несколько ином формате. Если регион для канадского французского – fr_CA, соответствующий тег языка будет fr-ca. Используйте тире вместо подчеркивания, а все буквы должны быть строчными.

При сохранении языка могут отображаться сообщения проверки. У вас должно отображаться сообщение с подтверждением, и никаких сообщений об ошибках. Например, в таблицу WPML нельзя добавить новый язык с кодом существующего языка.


Редактирование языков непосредственно в базе данных

Cведения о языках WPML хранятся в двух таблицах:

  • wp_icl_languages – содержит список языков
  • wp_icl_languages_translations – содержит список переводов названий языков

Если вы меняете сведения о языке, убедитесь, что добавляемый в базу данных код языка еще не используется в этих таблицах.

wp_icl_languages

столбцы в значительной степени не нуждаются в объяснении:

  • code – ключ языка (используется в URL-адресах и во всех других местах)
  • major означает, что язык будет отображаться вверху панели выбора языка.
  • active означает, выбран ли язык как активный, или нет
  • default_locale – имя региона, которое будет использоваться, если пользователь его явно не указал

Каждая строка представляет собой язык.

wp_icl_languages_translations

Эта таблица содержит переводы названий языков, чтобы WPML мог отображать название языка в переключателе на правильном языке.

  • language_code – язык, на который мы ссылаемся
  • display_language_code – язык названия «language_code»
  • name – название для «language_code» на языке «display_language_code»

Для каждого сочетания language_code / display_language_code активных языков (включая переводы всех языков на эти же языки) должна быть строка.

Когда добавляется новый язык, в wp_icl_languages_translations необходимо вставить добавленные переводы соответствующего языка на активные языки, переводы активных языков на новый язык и перевод нового языка на новый язык.

wp_icl_flags

Указывает, какое изображение отображается в качестве флага языка.

  • lang_code – язык, которому задан флаг
  • flag – имя файла изображения флага
  • from_template – при значении 1 файл будет загружен из папки images/flags в папке темы (в противном случае загружается из папки флагов плагина).

Для каждого языка должна быть одна запись.

Примечание 1. После добавления записей в эти таблицы рекомендуем сохранить список языков.

Примечание 2. Также рекомендуем очистить внутренний кэш языков WPML. Для этого из wp_options необходимо удалить запись, которая соответствует option_name=’_icl_cache’.

Чтобы эти настройки не сбросились при обновлении плагина, добавьте этот фрагмент кода либо в wp-config.php, либо в свой файл functions.php в папке темы:

define('ICL_PRESERVE_LANGUAGES_TRANSLATIONS', true);