Как изменить формулировку

Что это такое: аккуратный способ переименовать любой текст, который появляется в 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 — ваши формулировки в безопасности. Две мелочи, на которые после стоит взглянуть:

  • Новые функции могут принести новый текст, который вы ещё не настроили — просто добавьте эти метки, когда заметите их.
  • Очень редко метку переименовывают в новой версии. Если одно из ваших переопределений вдруг как будто «перестало работать», скорее всего, исходную метку переименовали — найдите новую и обновите свой файл.

Смотрите также