Почему плагины мультиязычности дублируют контент страниц?
Пытаюсь сделать мультиязычность на сайте с CMS Wordpress, но плагины дублируют контент на все переводы.
Установил плагин Polylang создаю 2 версии главной страницы на украинском и английском языках. При редактировании контента одной страницы например украинского языка эти изменения почему-то дублируются так же на другие локали. Т.е. при заходе на главную страницу других языков - там контент украинской версии. Так же все меняется в редактировании этих страниц.
Информация заполняется в кастомные поля плагина ACF. Получается дублируются значения полей ACF.
Пробовал ставить плагин WP Globus, WP Multilang - тоже самое.
В чем может быть проблема ? Такое происходит только с контеном, заполненным через кастомные поля. Контент заполенный через стандартные поля корректно переводится.
Почитал, вроде все плагины корретно работают с ACF, тогда в чем может быть причина ?
Ответы (2 шт):
Для перевода полей ACF нужен Polylang PRO или WPML с дополнительным плагином ACFML.
Нашел решение, все оказалось до безобразия просто:
Если до мультиязычности ACF выводились через конструкцию:
<? the_field('some-field', ID); ?>
Где ID - ID страницы, с которой берется значение.
То при переводе других страниц, у них другие ID (что логично). Конструкцию выше нужно было просто переделать в следующую:
<? the_field('some-field', pll_get_post(ID)); ?>
Где ID - та же страница (которая берется с основного языка).
Это позволит вывести для нужного языка связанную версию страницы, а так же необходимую нам информацию.