Как изменить формулировку
Что это такое: аккуратный способ переименовать любой текст, который появляется в TSync — кнопку, надпись, пункт меню — в формулировку, которая подходит вашему бизнесу. Например, вы можете предпочитать «Потенциальный клиент» везде, где TSync пишет «Лид».
Почему это важно: есть правильный способ сделать это и неправильный. Неправильный (редактировать встроенные текстовые файлы TSync) будет стёрт при следующем обновлении. Правильный кладёт вашу формулировку в отдельный маленький файл, который обновления не трогают — так ваши изменения остаются навсегда. Это руководство показывает правильный способ.
Вся хитрость — в одном особом файле под названием custom_lang.php. Всё, что вы туда положите, тихо переопределяет стандартные формулировки TSync и остаётся в целости при каждом обновлении.
Шаг за шагом
1. Найдите «имя» текста, который хотите изменить
За кулисами у каждого фрагмента текста есть короткая метка, по которой TSync его находит — для «New lead» метка new_lead. Эта метка нужна, чтобы ваше переопределение указывало на нужный текст.
Быстрее всего найти её, поискав в английском текстовом файле TSync те слова, что вы видите на экране:
# Узнать, откуда берётся "New lead"
grep -n "New lead" application/language/english/english_lang.php
Он покажет вам строку вроде такой:
429:$lang['new_lead'] = 'New lead';
То, что внутри скобок — new_lead — и есть нужная вам метка.
(Есть также встроенный помощник в разделе Инструменты → Find Missing Translations, который выводит список меток — это тоже может пригодиться.)
2. Создайте файл custom_lang.php
Это безопасный файл, где живут ваши формулировки. Создайте его (если его ещё нет) внутри папки вашего языка:
application/language/<language>/custom_lang.php
Для английского это:
application/language/english/custom_lang.php
3. Впишите свои новые формулировки
Внутри этого файла перечислите каждую метку и формулировку, которую хотите вместо стандартной. Метка слева остаётся прежней; текст в кавычках справа вы меняете на свой:
<?php
$lang['new_lead'] = 'New prospect';
$lang['leads'] = 'Prospects';
$lang['lead'] = 'Prospect';
$lang['lead_status'] = 'Prospect status';
4. Сохраните и посмотрите
Обновите страницу в браузере сочетанием Ctrl + Shift + R («жёсткое обновление», которое игнорирует сохранённую в кэше версию). Ваши новые формулировки должны появиться сразу же — перезапуск не нужен.
Почему это работает
TSync читает свои формулировки в определённом порядке: сначала встроенный текст, затем ваш custom_lang.php. Поскольку ваш читается последним, за ним остаётся последнее слово — ваша версия просто заменяет стандартную. В этом весь секрет, и именно поэтому обновления могут обновлять встроенный текст, ни разу не задев ваш.
Удобные примеры, которые можно скопировать
Переименовать «Lead» в «Prospect» везде
<?php
$lang['lead'] = 'Prospect';
$lang['leads'] = 'Prospects';
$lang['new_lead'] = 'New prospect';
$lang['lead_status'] = 'Prospect status';
$lang['lead_source'] = 'Prospect source';
$lang['leads_summary'] = 'Prospects summary';
$lang['lead_lowercase'] = 'prospect';
Переформулировать сообщения, которые видят ваши клиенты
<?php
$lang['client_invalid_username_or_password'] = 'Wrong email or password. Please try again.';
$lang['inactive_account'] = 'Account disabled. Contact your administrator.';
Переименовать поля форм
<?php
$lang['client_company'] = 'Company name';
$lang['client_vat_number'] = 'Tax ID';
$lang['clients_email'] = 'Contact email';
Несколько вещей, о которых стоит помнить
Они небольшие, простые в соблюдении и избавят вас от головной боли:
- Следите за аккуратностью пунктуации. Каждая строка должна заканчиваться точкой с запятой (
;). Одна-единственная пропущенная может привести к тому, что страницы перестанут загружаться — поэтому после правок просто обновите страницу, чтобы убедиться, что всё открывается. Если страница ведёт себя странно, первым делом проверьте, не пропущена ли;. - Будьте внимательны с апострофами. Текст обёрнут в одинарные кавычки. Если в вашей формулировке есть апостроф, поставьте перед ним обратную косую черту, чтобы он не оборвал строку раньше времени — например
'L\'utilisateur'. - Только добавляйте и заменяйте — не удаляйте строки TSync. Если вы вдруг хотите, чтобы метка не показывала вообще ничего, задайте ей пустые кавычки:
$lang['xxx'] = '';
После обновления TSync
Сначала хорошая новость: обновления никогда не перезаписывают custom_lang.php — ваши формулировки в безопасности. Две мелочи, на которые после стоит взглянуть:
- Новые функции могут принести новый текст, который вы ещё не настроили — просто добавьте эти метки, когда заметите их.
- Очень редко метку переименовывают в новой версии. Если одно из ваших переопределений вдруг как будто «перестало работать», скорее всего, исходную метку переименовали — найдите новую и обновите свой файл.