x

Huvudkapitel

  1. LimeSurvey Cloud vs LimeSurvey CE
  2. Snabbstartsguide - LimeSurvey 3.0+
  3. Installation - LimeSurvey CE
  4. Så utformar du en bra enkät (guide)
  5. Komma igång
  6. Administrera LimeSurvey
  7. Enkäter - introduktion
  8. Enkätinställningar
  9. Enkätmeny
  10. Enkätens struktur
  11. Frågor - introduktion
  12. Frågegrupper - introduktion
  13. Enkäter - hantering
  14. Alternativ i enkätverktygsfältet
  15. Flerspråkig enkät
  16. ExpressionScript-motorn – Snabbstartsguide
  17. Okategoriserade och avancerade funktioner
  18. FAQ
  19. Felsökning
  20. Lösningar och genvägar
  21. Licens
  22. Ändringslogg för versioner
  23. Plugins
 Actions

Anpassad översättning

From LimeSurvey Manual

Den här sidan kan ha maskinöversatts och kan innehålla fel. Visa det engelska originalet · Förbättra den här översättningen
This page is a translated version of the page Custom translation and the translation is 100% complete.

Introduktion

Sedan LimeSurvey 5.4.0 kan du ha din egen översättning för alla textsträngar på alla inkluderade språk med direkt åtkomst till din databas.

Det här systemet kan användas om en befintlig översättning inte passar dina verksamhetsbehov.

Det bör reserveras för specifika fall, eftersom textändringar i själva kärnan av LimeSurvey återigen kräver en ändring i din databas.

Dessutom kan du använda den här metoden för att översätta textsträngar som är specifika för en enkätmall.

Så fungerar databasöversättningar

För databasöversättningar använder LimeSurvey en metod som är inspirerad av CDbMessageSource från ramverket Yii.

  1. Hitta textsträngen i tabellen SourceMessage lime_source_message->message och hämta id:t : lime_source_message->id
  2. Om den finns, hitta den relaterade översättningen i tabellen Message lime_message->translation för aktuellt språk lime_message->language med aktuellt id lime_message->id

LimeSurvey skapar samlingen med översättningar från po-filen (se Översätta LimeSurvey för information om hur du uppdaterar den filen) och slår därefter ihop den med alla översättningar från databasen.

Därefter returneras översättningarna från databasen alltid om de finns.

Exempel för knappen ”Skicka” på engelska och franska

Du vill visa _Validate_ och inte _Submit_ på knappen för att skicka in i alla dina enkäter (med ett specifikt tema). Om du bara uppdaterar temat och ersätter gT('Submit') med gT('Validate') visas alltid _Validate_ på alla språk.

För alla enkäter med alla teman

  1. Skapa källmeddelandet INSERT INTO lime_source_message (id, category, message) VALUES (NULL, '', 'Submit');
  2. Kontrollera ID:t (om det är det första: ID är 1) och använd det i nästa instruktion
  3. Skapa den relaterade översättningen : INSERT INTO lime_message (id, language, translation) VALUES ('1', 'en', 'Validate'), ('1', 'fr', 'Valider');

Ersätt inte textsträngen med en tom sträng, annars faller översättningen tillbaka på den ursprungliga engelska meningen. Du måste ange minst ett mellanslag.

Använda ditt eget tema (rekommenderad lösning)

Den här metoden använder en lösning med din egen mall och uppdaterar standardtexten för alla andra språk också.

  1. I Tema redigerare väljer du delen Navigation
  2. Sök efter Template:GT("Submit") (i navigator.twig)
  3. Ersätt med Template:GT("Validate")
  4. Skapa källmeddelandet INSERT INTO lime_source_message (id, category, message) VALUES (NULL, '', 'Validate');
  5. Kontrollera ID:t (om det är det första: ID är 1) och använd det i nästa instruktion
  6. Skapa den relaterade översättningen : INSERT INTO lime_message (id, language, translation) VALUES ('1', 'fr', 'Valider');

Observera

Fältet category i lime_source_message måste vara en tom sträng (''), inte NULL. Om kategorin inte stämmer exakt hittar gT() inte källmeddelandet och din översättning tillämpas inte. Det här är särskilt viktigt när du lägger till översättningar för temaspecifika textsträngar.