0
210
2019-03-25

WordPress - WPML и импорт записей при помощи WP All Import

Данная запись пригодится всем администратором у которых система мультиязычности работает под управлением плагина и WPML, ну а сам сайт базируется на cms WordPress. Мы рассмотрим импортирование записей при помощи плагина WP All Import, у которых имеются переводы созданные благодаря плагину WPML.
Понравилась страница? Поставь свою оценку!
PLUGIN_STAR_RATINGS.SCORE_TEXTPLUGIN_STAR_RATINGS.VOTES_TEXT

И так, имеется сайт под управлением системы WordPress на котором реализована система мультиязычности благодаря плагину WPML.

Задача заключается в том чтобы импортировать записи без наличия переводов, и создать переводы локально (отдельно на компьютере в программе Excel). Для решения задачи нам потребуются плагины установленные на WordPress сайт:

WPML Multilingual CMS Версия 4.2.4.1

WPML All Import Версия 2.1

WP All Import Pro Версия 4.5.6-beta-3.5

+ Крепкий кофе, открытые глаза, хорошее настроение, и около 20ти минут личного времени.

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

Экспорт автономных записей

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

В общих чертах данная инструкция получилась выстраданной, так как все тестировалось на пользовательском типе записей, ну а кастомный тип записей просто так не поддавался импортированию, и можно сказать мне это удалось только жестко поставленной задаче. Скажу честно, у меня тоже наступают моменты когда я чувствую свое “руконеплечье”.

Для примера будем иметь ввиду что у нас есть только русскоязычный csv файл с названием RU_import.csv. Импортируем CSV файл в Excel (как это сделать описано здесь:

https://www.extendoffice.com/ru/documents/excel/2478-convert-csv-to-xls-or-excel.html , далее сделаем у файла следующую структуру заголовков и столбцов:

Структура столбцов

Title - Название записи (формат значения в ячейке ‘Название записи’)

Content - Контент записи (формат значения в ячейке ‘Всякого рода контент’)

WPML Language Code - язык записи (формат значения в ячейке ‘ru’)

Connector - Уникальный идентификатор при помощи которого будем коннектить переводы (формат значения в ячейке ‘445645’)

Вид таблицы

В итоге получаем следующую таблицу:

Теперь сохраняем на Excel документ в CSV формате.

Далее нам необходимо сменить кодировку на “UTF-8 без BOM” сохраненного CSV, о том как это сделать правильно написал товарищ по цеху здесь:

http://lumpics.ru/how-to-change-encoding-in-excel/

Или просто открываем наш CSV в Notepad++ и там все это делаем.

Импорт WP All Import CSV файла RU

Переходим в админку и начинаем новый импорт:

WPML and WP All Import settings - запускаем импорт

Далее загружаем CSV файл:

WPML and WP All Import settings - импортируем файл

На данном шаге сразу жмем далее:

WPML and WP All Import settings - импорт и содержимое файла

А вот теперь важная часть, необходимо разместить шорт коды вывода как указано на скрине ниже (поле “Connector“ пока не трогаем, оно нам понадобиться позже):

WPML and WP All Import settings - настройка импорта шаг 1

На этой же странице, укажите оригинальный язык контента (за данную опцию отвечает плагин “WPML All Import”, и без него не как):

WPML and WP All Import settings - настройка импорта шаг 2 Настройки именно мультиязычности

После того как настройки указали, жмем “Continue to Step 4”:

WPML and WP All Import settings - настройка импорта

На следующей странице указываем “Connector” как основной идентификатор записи:

WPML and WP All Import settings - настройка импорта

И переходим к самому импорту контента на следующей странице:

WPML and WP All Import settings - настройка импорта

Немного ожидания и все готово, наш пост импортировался:

WPML and WP All Import settings - настройка импорта

Смотрим в посты на сайте, и видим что русский пост героически опубликовался на нашем WordPress сайте:

WPML and WP All Import settings - настройка импорта

Смотрим контент поста:

WPML and WP All Import settings - настройка импорта

И видим что вся информация была импортирована верно, теперь перейдем к созданию EN версии контента.

Импорт WP All Import CSV файла EN

Структура столбцов

Структура столбцов точно такая же как и для RU файла (смотрим выше).

Вид таблицы

Вид таблицы будет таким:

WPML and WP All Import settings

Ну а название файла будет соответственно “EN_import.xlsx”. Далее экспортируем данный файл в CSV и делаем все те же операции по изменению кодировки на UTF-8 без Bom (ссылки давал выше).

После всех манипуляций у нас должен получиться файлик “EN_import.csv” что ж приступим к его импортированию в WordPress при помощи WP All Import.

Шаги касаемо загрузки файла и нажатия кнопок “Далее” я пропущу, все действия абсолютно идентичны как и при импортировании RU файла. Я начну с основных и важных моментов. А особенно важным моментом является шаг, связанный с настройками контента и языка нашего поста. Особенно важными являются настройки языка (как не странно. Касаемо тайтла и контента делаем настройки идентично RU импорту).

WPML and WP All Import settings

Как видно из скриншота выше, нужно не ошибиться с файлом RU версии импорта, так как данный EN импорт привязывается именно к ранее импортируемому “RU_import.csv”файлу. Так же необходимо перетянуть шорткод “Connector” в поле уникального идентификатора.

Нам осталось совсем немного, еще буквально чуть чуть…

Переходим к импорту нашего англоязычного перевода, и здесь очень, очень важно снова указать в качестве уникального идентификатора “Connector”.:

WPML and WP All Import settings

Снова жмем “зеленую кнопку” и дожидаемся импорта нашего перевода.

WPML and WP All Import settings

И если все было сделано верно, Мы должны увидеть заветную “зеленую” страничку:

WPML and WP All Import settings

Переходим в свои англоязычные посты, и видим магию:

WPML and WP All Import settings

Откроем пост:

WPML and WP All Import settings

Да все верно, пост был импортирован правильно, и его RU перевод подвязался именно так как нам и требовалось.

Полезные ссылки

Официальная инструкция о импортировании мультиязычного контента WPML, от содателей плагина WPML:

https://wpml.org/documentation/related-projects/wpml-all-import-plugin-website-import-with-wpml/

Официальная инструкция о экспортировании мультиязычного контента, от создателей плагина WPML:

https://wpml.org/documentation/plugins-compatibility/export-multilingual-websites-using-wp-all-export-wpml/

Файлы используемые в примере, при напиании ппоста

Спасибо за внимание, надеюсь данная инструкция пригодится не только мне.