Переводим Ninja Forms в WP

Ninja Forms это крутой модуль-конструктор для создания пользовательских форм в WP. Это впечатление не покидает вас даже когда вы переходите к изучению API этого плагина. Сегодня я покажу приемы, как сделать ваши (ниндзя) формы мультиязычными.

О том, как устроена мультиязычность в WP, здесь я рассказывать не буду.

Один из способов:

Можно создать несколько форм для каждого из языков сайта и показывать их на соответствующих языковых страницах. Такой вариант не требует навыков программирования — нужно лишь аккуратно расставить шок-коды для вставки форм. Результаты ответов на разных языках будут храниться в соответствующих формах, и это может быть даже удобным :).

Но я расскажу о другом варианте, который мне кажется более верным.

Нашей задачей является применение ко всем строковым константам функции-обертки __(‘your string here’). Ninja form позволяет зацепиться и отфильтровать любые элементы создаваемых форм и полей.

Перевод меток и плейсхолдеров полей.

Здесь я хочу отметить два момента:

  • Укажите пространство имен переводов (в примере — mytheme-ninjaforms), чтобы выделить переводы связанные с вашей темой и ninja forms в отдельную группу или файл;
  • свойств у полей гораздо больше, изучайте что ещё можно перевести с помощью этого фильтра.

Перевод/исправление сообщений об ошибках и других строковых констант формы

Вообще-то эта часть не вызывает проблем, т.к. перевод уже сделан за нас (на многие-многие языки). Но если вам вдруг понадобиться что то поправить, то используйте следующих хук:

Этот пример я взял из офф руководства (там правда текст был для польского языка).

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

Зацепка к сообщениям, настройкам всей формы

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

Ещё хуки…

Это далеко не полный перечень зацепок, которые можно задействовать при переводе. Покопаться можно в /includes/Display/Render.php файле плагина, чтобы найти что то более специфичное.

Мало букафф? Читайте есчо !

Установка счетчиков на сайты на wordpress

Октябрь 5, 2015 г.

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

Читать

Удаление фильтра в WP, когда callback - метод класса плагина

Август 17, 2017 г.

При программировании в WP мы очень часто добавляем какие то фильтры и действия. А если посмотреть в код любого плагина - это сборники реализаций зацепок. Не всегда авторы дают возможность гибко управлять поведением их плагина через настройки. Тогда ...

Читать

Создание публикации по отправленным данным Contact form 7

Июнь 6, 2018 г.

Это продолжение статьи о сохранении данных формы WPCF7, где я рассказал о том зачем это может понадобиться и подходе к реализации. Здесь мы перейдем уже более техническим вещам, к коду. Итак, нам необходимо создать публикацию на основе данных, ...

Читать

Как добавить фильтр в список записей в админке Wordpress?

Апрель 21, 2016 г.

Выведя дополнительные столбцы в админке, хотелось бы иметь возможность фильтрации по этим полям. Как это делать, покажу на примере фильтрации по мета-полю публикации. Если вы читаете данный гайд, то уже знаете : Как добавить кастомный тип публикации ...

Читать
 

Комментарии к «Переводим Ninja Forms в WP»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: