Если плагин рассчитан не только на один язык, локализацию надо закладывать сразу: потом переделка обходится дороже. Базовые правила простые — все строки выводите через gettext-функции, а не собирайте текст в PHP вручную.
Проверьте типовые места:
— заголовки, кнопки, подсказки, ошибки;
— строковые значения в настройках и письмах;
— множественное число через правильные функции, а не через if;
— динамические куски с подстановками через sprintf, чтобы переводчик видел цельную фразу.
Отдельно следите за контекстом: одно и то же слово может переводиться по-разному. Для этого используйте контекстные функции, а не один и тот же ключ везде. И не прячьте текст в JS без необходимости: если строка уходит в скрипт, она тоже должна быть доступна для перевода.
Еще одна частая ошибка — смешивать язык интерфейса и данные пользователя. Названия товаров, городов, имена брендов не переводят, а вот подписи, кнопки и системные сообщения — да. И не забывайте про текст домена перевода, иначе файлы .po/.mo просто не подхватятся.
Хорошая локализация начинается не с файла перевода, а с привычки писать код так, чтобы его можно было перевести без переписывания логики.
Создание плагинов для WordPress
@plugin_development_pro_ww
Локализация плагина: 5 вещей, которые ломают перевод даже у аккуратного кода
Этот пост опубликован в Telegram-канале Создание плагинов для WordPress. Подписаться можно по ссылке: @plugin_development_pro_ww.