x

Основни глави

  1. LimeSurvey Cloud срещу LimeSurvey CE
  2. Ръководство за бърз старт - LimeSurvey 3.0+
  3. Монтаж - LimeSurvey CE
  4. Как да проектираме добро проучване (ръководство)
  5. Приготвяме се да започнем
  6. Администриране на LimeSurvey
  7. Проучвания – въведение
  8. Настройки на анкетата
  9. Меню Анкета
  10. Структура на анкетата
  11. Въпроси – въведение
  12. Групи въпроси – въведение
  13. Проучвания - управление
  14. Опции на лентата с инструменти за проучване
  15. Многоезично проучване
  16. ExpressionScript Engine – Кратко ръководство за стартиране
  17. Некатегоризирани и разширени функции
  18. Общи ЧЗВ
  19. Отстраняване на неизправности
  20. Заобиколни решения
  21. Разрешително
  22. Дневник на промените на версията
  23. Плъгини - напреднали
 Actions

Персонализиран превод

From LimeSurvey Manual

Тази страница може да е преведена машинно и да съдържа грешки. Покажи английския оригинал · Подобри този превод
This page is a translated version of the page Custom translation and the translation is 100% complete.

Въведение

От LimeSurvey 5.4.0 насам можете да имате собствен превод на всички низове на всички включени езици чрез директен достъп до вашата база данни.

Тази система може да се използва, ако съществуващ превод не отговаря на нуждите на вашия бизнес.

Тя трябва да се използва само в специфични случаи, тъй като промените в текстовете в ядрото на LimeSurvey отново ще изискват промяна в базата данни.

Освен това можете да използвате този метод за превод на низове, специфични за темата на проучването.

Как работят преводите чрез базата данни

За преводите чрез базата данни LimeSurvey използва метод, вдъхновен от CDbMessageSource от фреймуърка Yii.

  1. намира се низът в таблицата SourceMessage lime_source_message->message и се взема id: lime_source_message->id
  2. ако съществува, се намира съответният превод в таблицата Message lime_message->translation за текущия език lime_message->language с текущото id lime_message->id

LimeSurvey създава масива с преводи от po файла (вижте Превод на LimeSurvey за информация как да актуализирате този файл) и след това го обединява с всички преводи от базата данни.

След това преводите от базата данни винаги се връщат, ако съществуват.

Пример за бутона „Изпрати“ на английски и френски

Искате да се показва _Validate_ вместо _Submit_ на бутона за изпращане във всички ваши проучвания (с определена тема). Ако просто актуализирате темата и замените gT('Submit') с gT('Validate'), ще се показва _Validate_ на всички езици.

За всички проучвания с всички теми

  1. Създайте изходното съобщение INSERT INTO lime_source_message (id, category, message) VALUES (NULL, '', 'Submit');
  2. Проверете ID (ако е първото: ID е 1) и го използвайте в следващата инструкция
  3. Създайте свързания превод: INSERT INTO lime_message (id, language, translation) VALUES ('1', 'en', 'Validate'), ('1', 'fr', 'Valider');

Не заменяйте низа с празен низ, иначе преводът ще се върне към оригиналното английско изречение. Трябва да включите поне един интервал.

Използване на собствена тема (препоръчително решение)

Този метод използва решение със собствен шаблон и актуализира низа по подразбиране и за всички останали езици.

  1. В редактора на теми изберете частта за навигация
  2. Потърсете Template:GT("Submit") (в navigator.twig)
  3. Заменете с Template:GT("Validate")
  4. Създайте изходното съобщение INSERT INTO lime_source_message (id, category, message) VALUES (NULL, '', 'Validate');
  5. Проверете ID (ако е първото: ID е 1) и го използвайте в следващата инструкция
  6. Създайте свързания превод: INSERT INTO lime_message (id, language, translation) VALUES ('1', 'fr', 'Valider');

Моля, обърнете внимание

Полето category в lime_source_message трябва да е празен низ (''), а не NULL. Ако категорията не съвпада точно, gT() няма да намери изходното съобщение и вашият превод няма да бъде приложен. Това е особено важно при добавяне на преводи за низове, специфични за теми.