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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ещё хуки…

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

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

Обновление Inactive User Deleter - v 1.2

Март 29, 2017 г.

Взявшись за переделку собственных плагинов, я нашел время для обновления ещё одной своей древней поделки. Это был первый плагин, который я вообще делал для WP. Я собирал его только лишь с учебными целями - хотел сделать какой-то плагин и разместить его ...

Читать

Genzel Breadcrumbs плагин для WP

Июль 3, 2017 г.

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

Читать

Добавляем в редактор Wordpress дополнительные поля загрузки картинок

Август 2, 2019 г.

WP позволяет подключить одно изображение к статье, и обычно этого достаточно, чтобы оформить статьи в списке и саму статью. Если требуются дополнительные ...

Читать

Антиспам с использованием Javascipt для WordPress, обходимся без Captcha

Апрель 12, 2013 г.

О сути метода я рассказываю здесь - Бегство от спама. Для работы понадобится hook на новые комментарии - pre_comment_approved, который мы объявим в файле темы - function.php. Если в вашей теме нет такого файла - создайте :). Нужно модифицировать всего ...

Читать
 

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

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



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