x

Capítulos principais

  1. LimeSurvey Cloud vs LimeSurvey CE
  2. Guia de início rápido - LimeSurvey 3.0+
  3. Instalação - LimeSurvey CE
  4. Como criar um bom inquérito (guia)
  5. Começando
  6. Administração do LimeSurvey
  7. Inquéritos - introdução
  8. Configurações do inquérito
  9. Menu de inquérito
  10. Estrutura do inquérito
  11. Perguntas - introdução
  12. Grupos de perguntas - introdução
  13. Pesquisas - gestão
  14. Opções da barra de ferramentas do inquérito
  15. Inquérito multilingue
  16. ExpressionScript Engine - Guia de início rápido
  17. Recursos não categorizados e avançados
  18. Perguntas frequentes gerais
  19. Resolução de problemas
  20. Soluções alternativas
  21. Licença
  22. Registo de alterações das versões
  23. Plugins
 Actions

Tradução personalizada

From LimeSurvey Manual

Esta página pode ter sido traduzida automaticamente e conter erros. Ver o original em inglês · Melhorar esta tradução
This page is a translated version of the page Custom translation and the translation is 100% complete.

Introdução

Desde o LimeSurvey 5.4.0, pode ter a sua própria tradução para todas as cadeias de caracteres em todos os idiomas incluídos, com acesso direto à sua base de dados.

Este sistema pode ser utilizado se uma tradução existente não for compatível com as necessidades do seu negócio.

Deve ser reservado para casos específicos, uma vez que as modificações de texto no núcleo do LimeSurvey exigirão novamente uma modificação da sua base de dados.

Além disso, pode utilizar este método para traduzir cadeias de caracteres específicas de um tema do inquérito.

Como funcionam as traduções da base de dados

Para as traduções da base de dados, o LimeSurvey utiliza um método inspirado no CDbMessageSource do framework Yii.

  1. pesquisar a cadeia de caracteres na tabela SourceMessage lime_source_message->message e obter o id: lime_source_message->id
  2. se existir, pesquisar a tradução correspondente na tabela Message lime_message->translation para o idioma atual lime_message->language com o id atual lime_message->id

O LimeSurvey cria a tabela com as traduções do ficheiro po (consulte Traduzir o LimeSurvey para obter informações sobre como atualizar este ficheiro) e, depois, combina-a com todas as traduções da base de dados.

Em seguida, as traduções da base de dados são sempre devolvidas, caso existam.

Exemplo para o botão “Submeter” em inglês e francês

Pretende mostrar _Validar_ e não _Submeter_ no botão de submissão em todos os seus inquéritos (com um tema específico). Se apenas atualizar o tema e substituir gT('Submit') por gT('Validate'), será sempre apresentado _Validar_ em todos os idiomas.

Para todos os inquéritos com todos os temas

  1. Crie a mensagem de origem INSERT INTO lime_source_message (id, category, message) VALUES (NULL, '', 'Submit');
  2. Verifique o ID (se for a primeira, o ID é 1) e utilize-o na instrução seguinte
  3. Crie a tradução correspondente: INSERT INTO lime_message (id, language, translation) VALUES ('1', 'en', 'Validate'), ('1', 'fr', 'Valider');

Não substitua a cadeia de caracteres por uma cadeia vazia, caso contrário a tradução voltará à frase original em inglês. Tem de incluir pelo menos um espaço.

Utilizar o seu próprio tema (solução recomendada)

Este método utiliza uma solução com o seu próprio tema e atualiza também a cadeia de caracteres predefinida para todos os outros idiomas.

  1. No Editor de temas, selecione a parte Navigation
  2. Pesquise Template:GT("Submit") (em navigator.twig)
  3. Substitua por Template:GT("Validate")
  4. Crie a mensagem de origem INSERT INTO lime_source_message (id, category, message) VALUES (NULL, '', 'Validate');
  5. Verifique o ID (se for a primeira, o ID é 1) e utilize-o na instrução seguinte
  6. Crie a tradução correspondente: INSERT INTO lime_message (id, language, translation) VALUES ('1', 'fr', 'Valider');

Nota

O campo category em lime_source_message tem de ser uma cadeia de caracteres vazia ('') e não NULL. Se a categoria não corresponder exatamente, o gT() não encontrará a mensagem de origem e a sua tradução não será aplicada. Isto é especialmente importante ao adicionar traduções para cadeias de caracteres específicas de um tema.