Прикро, коли бракує слів, особливо, якщо мова йде про локалізацію Вашого сайту, а стандартні мовні пакети не передають всіх барв.
Всі програмісти з порядних сімей знають, що вивід написів у Вордпресі реалізовується не напряму, а такою магічною функцією:
__('Your words', '');
При цьому десь в недрах вордпресу знаходитимуться локалізаційні файли:
/wp-content/languages
Там, під Ваш “Your words“, має бути відведений запис, з перекладом та в ідеалі з адресою використання.
#: wp-comments-post.php:24 msgid "Your words" msgstr "Щось адекватне на потрібній мові"
Проте, якщо Ви просто відредагуєте один з наявних файлів та додасте слова, котрих бракує (чи відредагуєте щось з переліку), то при наступному оновленні Вас чекатиме неприємний сюрприз.
Замість пристойного перекладу на сторінках бованітиме Your words, а клієнти питатимуть як Ваше здоров’я.
Аби уникнути таких фейлів, індивідуальні файли локалізації теми пакують в саму ж тему. Ну, а для того, щоб система брала їх до уваги, в файл functions.php вставляють ось таку функцію:
// Your custom localisation function custom_lang_setup(){ load_theme_textdomain('customLang', get_template_directory() . '/newLang'); } add_action('after_setup_theme', 'custom_lang_setup');
Зауважте, що для того, аби система точно знала, який переклад використовувати, сам вивід локалізацій має відбуватись в дещо розширеному форматі
__('Your words', 'customLang');
Тобто, в другому параметрі мовленнєвої функції ми використовуємо назву “домену” customLang, який використовуємо у функції розширення мови custom_lang_setup.
Цей підхід є одним із засобів захисту даних при оновленнях системи, іншими словами, це складова Вашого ризик-менеджменту.