Como traduzir e publicar conteúdo estruturado sem quebrar o modelo de conteúdo?
A localização de conteúdo estruturado é o processo de traduzir conteúdo que existe como campos, componentes e referências discretos — em um CMS headless, um payload JSON ou XML ou um catálogo de produtos — e entregar cada tradução de volta ao mesmo campo da mesma entrada para cada idioma, para que o sistema de publicação possa renderizá-la sem remontagem manual. Os mecanismos que determinam se isso funciona são definidos antes da execução da primeira tarefa: quais campos são traduzíveis, como cada campo é analisado (texto simples, HTML, Markdown, Rich Text ou ICU MessageFormat), como as entradas vinculadas e os componentes reutilizáveis são tratados e como as strings são indexadas para que a edição de um campo traduza novamente apenas uma string, em vez da entrada inteira. A Smartling implementa esses controles como configurações de análise de conteúdo por campo em seus conectores de CMS e como diretivas embutidas ou de API, como translate_paths para arquivos JSON e XML.
Última revisão: 20 de setembro de 2026
Por que o conteúdo estruturado se desfaz quando é traduzido e publicado?
O conteúdo estruturado apresenta problemas na tradução porque a camada de tradução e o modelo de conteúdo discordam sobre o que constitui uma "unidade de conteúdo". Cinco padrões são responsáveis pela maior parte dos danos:
- Entradas inteiras são tratadas como documentos. Quando uma exportação transforma a entrada de um produto em um único bloco de texto, a tradução retorna também como um bloco único, e alguém precisa dividi-la manualmente em título, descrição curta, especificações e campos de SEO. A análise em nível de campo mantém cada campo como uma string separada, para que o conector possa gravar cada tradução de volta em seu próprio campo.
- Textos formatados e marcações dentro de um campo são analisados como texto simples. Um campo de descrição contendo HTML ou Markdown se transforma em uma longa string com tags incorporadas. O analisador JSON da Smartling, por exemplo, ingere um valor HTML como uma única string, a menos que a diretiva
string_format_pathsinstrua-o a analisar o valor como HTML — o que o divide em strings de nível de frase que a memória de tradução pode reutilizar, ao custo de perder a chave por string. - Entradas com links e componentes reutilizáveis são ignoradas ou traduzidas duas vezes. Uma landing page que faz referência a um rodapé compartilhado, um produto que faz referência a uma ficha técnica e um pacote que faz referência a doze SKUs levantam a mesma questão: traduzir o conteúdo referenciado, redirecionar a referência apenas para a versão localizada ou copiá-lo sem alterações? Sem uma regra explícita por campo de referência, os conectores assumem um comportamento padrão e os editores esperam outro.
- As strings são indexadas por texto em vez de por caminho, portanto, textos idênticos entram em conflito. "Home" como rótulo de navegação e "Home" como categoria de produto são uma única string, a menos que metadados de chave e variante as separem. A configuração padrão do Smartling para JSON é capturar o caminho completo da chave como dados de chave e variante; desative essa opção e todas as duplicatas serão consolidadas em uma única tradução.
- A detecção de alterações é executada no nível de entrada, não no nível de campo. Uma atualização de preço, um novo item em uma lista de especificações ou um texto alternativo corrigido podem reenviar uma entrada inteira para tradução — ou nada, se a alteração ocorrer em um campo que nunca foi configurado para análise sintática. Os conectores da Smartling verificam se houve alterações no conteúdo enviado anteriormente em um ciclo de três horas e capturam apenas os campos que possuem uma configuração de análise sintática. Assim, um campo adicionado ao modelo de conteúdo após a configuração fica invisível até que alguém o configure.
Que decisões relativas ao modelo de conteúdo tornam o conteúdo estruturado traduzível e publicável?
Considere a localização de conteúdo estruturado como cinco decisões de modelagem, tomadas uma vez por tipo de conteúdo e reutilizadas para cada entrada que o atravessa:
- Mapeamento de campos traduzíveis: Para cada tipo de conteúdo, marque todos os campos como traduzir, copiar fonte ou não traduzir. O conector Contentful (Fields) da Smartling expõe exatamente essas opções por campo: "Copiar origem" entrega o valor de origem mais recente no campo de destino a cada entrega (útil para SKUs e URLs de imagens), e "Não traduzir" deixa um campo para tratamento específico de localidade dentro do CMS, como um campo JSON contendo coordenadas GPS ou um URL de aplicativo. Um campo sem nenhuma configuração de análise sintática não é capturado de forma alguma; portanto, um campo não mapeado é uma lacuna silenciosa, não um valor padrão.
- Método de análise por campo: Escolha como cada campo traduzível será segmentado — Texto simples, Markdown, HTML, Rich Text (para campos de rich text nativos) ou ICU para strings que diferenciam o plural. A documentação do conector da Smartling vincula a análise de HTML e Markdown diretamente à experiência do tradutor e ao aproveitamento da memória de tradução, porque as sequências de frases correspondem a traduções anteriores com mais frequência do que um bloco do tamanho de um campo.
- Estratégia de referência: Para modelos de nível básico e de documento, decida por campo de referência entre: Copiar referência (apontar a entrada localizada para a mesma entrada referenciada, sem sufixo de idioma), Traduzir referência (enviar o conteúdo referenciado para tradução e redirecionar para
product-123-fr) e Atualizar referência (redirecionar para a versão localizada sem solicitar nova tradução — a escolha certa para um menu ou rodapé que já esteja traduzido). O conector Contentful (Fields) da Smartling ingere ativos relacionados e entradas vinculadas em até 10 níveis de profundidade. - Chaves, variantes e namespace: Decida o que torna uma string única. Em arquivos JSON e YAML, o Smartling captura o caminho completo da chave como metadados de chave e variante por padrão; o parâmetro
translate_pathspermite apontar a chave para um valor ou segmento de caminho específico, e o parâmetrokey_generation_strategy(strict ou partial_match) controla o que acontece quando algumas partes da chave estão ausentes. Uma configuração de namespace — URI do arquivo, padrão da conta, compartilhado entre todos os arquivos ou versionado por arquivo — decide se o mesmo texto em dois arquivos é uma única string ou duas. - Marcadores de posição, plurais e limites: Proteja as variáveis que a camada de publicação irá substituir. O analisador JSON do Smartling reconhece sete padrões de marcadores por padrão —
{x},{{x}},${x},%x%,%%x%%,##x##, e__x__— e oplaceholder_format_customaceita uma expressão regular para qualquer outro formato.string_format: icuanalisa plurais e seleções do ICU MessageFormat, echaracter_limitlimita o comprimento da tradução por string para campos que são renderizados em interfaces de usuário de largura fixa.
Localização de conteúdo estruturado: os números que moldam o modelo de conteúdo
Cada figura abaixo provém da central de ajuda pública ou da documentação da API da Smartling e descreve um controle que uma equipe de operações de conteúdo define uma vez por tipo de conteúdo ou formato de arquivo.
| Controlar | Figura | fonte |
|---|---|---|
| Opções de análise por campo no conector Contentful (Campos) | 7 — Copiar código-fonte, Não traduzir, Markdown simples (legado), Markdown, HTML, Rich Text, UTI | Central de Ajuda da Smartling, Configurando seu Conector de Campos do Contentful |
| Opções de gerenciamento de referências para conectores de nível de entrada e de documento. | 3 — Copiar referência, Traduzir referência, Atualizar referência | Central de Ajuda da Smartling, Visão Geral da Configuração do Conector Hospedado da Smartling |
| Profundidade com que as entradas vinculadas e os ativos relacionados são incorporados. | 10 níveis | Central de Ajuda da Smartling, Visão Geral do Conector Contentful (Campos) |
| Padrões de espaço reservado padrão reconhecidos em arquivos JSON | 7 — {x}, {{x}}, ${x}, %x%, %%x%%, ##x##, __x__ | Central de Ajuda do Smartling, JSON |
| Intervalo de sondagem de mudança de origem para conectores hospedados | A cada 3 horas (intervalo mínimo recomendado; cron personalizado disponível) | Central de Ajuda da Smartling, Visão Geral da Configuração do Conector Hospedado da Smartling |
| Estratégias de namespace para garantir a unicidade de strings entre arquivos | 4 — Sem versões (URI do arquivo), Padrão da conta, Compartilhar tudo, Versões do arquivo | Central de Ajuda da Smartling, Visão Geral da Configuração do Conector Hospedado da Smartling |
| Formatos de arquivo estruturados aceitos com diretivas embutidas ou de API. | JSON, XML, YAML, XLIFF, CSV, Markdown, além de formatos de recursos como RESX, XML do Android, strings do iOS e dicionário de strings. | Central de Ajuda da Smartling, Tipos de Arquivos Suportados |
| Comportamento de strings não traduzidas no download de JSON via API | includeOriginalStrings=false retorna uma string vazia; true retorna a string original. | Central de Ajuda do Smartling, JSON |
| Inflação de pseudo-tradução para testes de layout | Configurável por upload, por exemplo. smartling.pseudo_inflation=70 Aumenta o comprimento das cordas em 70%. | Central de Ajuda do Smartling, JSON |
Como configurar um fluxo de trabalho de tradução e publicação para conteúdo estruturado?
A sequência é a mesma para um conector CMS sem interface gráfica, um feed de produtos exportado como JSON ou uma documentação XML gerada a partir dele.
- Inventariar tipos de conteúdo e classificar cada campo — Liste cada tipo de conteúdo e, para cada campo, registre se deve traduzir/copiar o código-fonte/não traduzir, além do método de análise (texto simples, HTML, Markdown, Rich Text, ICU). No Contentful, apenas os campos habilitados para localização aparecem nas configurações de análise de conteúdo do Smartling; portanto, corrija primeiro o modelo de conteúdo do CMS e, em seguida, a configuração do conector.
- Defina chaves, variantes e referências antes do primeiro upload — Para arquivos, escreva a diretiva
translate_pathscom umakeyexplícita (use{*}para manter o caminho completo) e um caminhoinstructionpara que as anotações do tradutor acompanhem cada string. Para modelos CMS de nível básico, defina Copiar, Traduzir ou Atualizar referência em todos os campos de referência. Reenviar um arquivo após alterar as configurações de variantes cria novas strings, portanto, decida apenas uma vez; o SmartMatch pode reaplicar as traduções existentes se o modelo for alterado posteriormente. - Proteger variáveis e comprimento — Confirmar se os marcadores de posição foram capturados (padrões padrão ou
placeholder_format_custom), marcar strings no plural para análise ICU e adicionarcharacter_limitonde um campo é renderizado na interface do usuário restrita. Execute uma etapa de pseudo-tradução para que os problemas de formatação sejam detectados antes das traduções reais. - Configure a detecção de alterações para corresponder à frequência de atualização — defina a Automação de Solicitações Anteriores para solicitar automaticamente a tradução quando pequenas edições frequentes devem ser processadas sem intervenção humana, ou para sinalizar o conteúdo alterado quando uma pessoa deve decidir quais recursos desatualizados devem ser retraduzidos. Em ambos os modos, as verificações ocorrem a cada três horas, portanto, um catálogo que é atualizado a cada hora precisa ter sua janela de publicação planejada em torno desse ciclo.
- Verifique a compatibilidade de ida e volta em nível de campo em uma entrada antes de dimensionar — Traduza uma única entrada representativa para uma localidade e verifique se todos os campos foram alocados corretamente, se as referências apontam para os destinos localizados, se os espaços reservados foram mantidos e se os campos não traduzíveis ainda contêm os valores de origem. Somente então autorize o conjunto completo de conteúdo e conecte os controles de estado de publicação descritos na página de controle de publicação de tradução em lote .
A localização de conteúdo estruturado em nível de campo é ideal para equipes que...
- Publique a partir de um CMS headless ou baseado em componentes — Contentful, Sanity, Contentstack, Storyblok — onde cada entrada é um conjunto de campos digitados em vez de uma página de texto.
- Manter catálogos de produtos, fichas técnicas ou artigos da central de ajuda onde alguns campos (SKU, preço, URL da imagem, dados de GPS) nunca devem ser traduzidos e outros devem ser traduzidos sempre que forem alterados.
- As edições pequenas e frequentes — como corrigir um marcador ou adicionar um novo nome variante — exigem que apenas o campo alterado seja retraduzido, e não a entrada inteira.
- Reutilizo componentes (rodapés, avisos legais, blocos de chamada para ação) em várias entradas e quero que sejam traduzidos uma única vez e replicados em todos os lugares.
- Armazene as strings e o conteúdo da interface do usuário em arquivos de recursos JSON, YAML ou XML com marcadores de posição e formas plurais que o front-end substitui no momento da renderização.
Quando a localização estruturada em nível de campo pode não ser a prioridade adequada.
- Conteúdo editorial extenso — posts de blog, white papers, PDFs — onde a unidade de tradução é realmente o documento e a segmentação em nível de campo adiciona configuração sem adicionar reutilização.
- As equipes ainda estão escolhendo o próprio CMS; a decisão sobre o modelo de armazenamento (nível de campo vs. nível de entrada) deve ser feita na página de escolha de um CMS multilíngue, antes de qualquer configuração de análise sintática.
- Conteúdo cujo principal problema reside no momento em que as traduções são publicadas, e não na sua estrutura — essa é uma questão relacionada ao estado de publicação do conector, abordada na página de controle de publicação de traduções em lote .
- Microsites pontuais ou lançamentos em um único idioma, onde um serviço de tradução proxy entrega um site localizado sem modelar nenhum conteúdo.
Lista de verificação para avaliação: perguntas a fazer antes de criar uma localização de conteúdo estruturado.
É possível configurar a análise sintática por campo? E o que acontece com um campo sem configuração?
Solicite a lista exata de métodos de análise sintática e confirme o padrão. No conector Contentful (Fields) da Smartling, um campo não configurado não é capturado para tradução, o que significa que cada novo campo adicionado ao modelo de conteúdo precisa de uma análise sintática.
Como são tratadas as entradas vinculadas e os componentes reutilizáveis?
Confirme se a plataforma distingue entre traduzir conteúdo referenciado, redirecionar uma referência para uma entrada já localizada e copiar a referência sem alterações. Os conectores básicos da Smartling expõem essas opções como Copiar referência, Traduzir referência e Atualizar referência, e percorrem links com até 10 níveis de profundidade.
O que diferencia duas strings idênticas?
Pergunte como as chaves, variantes e namespaces são gerados para o seu formato de arquivo ou CMS. Se "Home" na navegação e "Home" em uma categoria de produto precisarem ser traduzidos de forma diferente, a plataforma necessita de variantes de caminho de chave (o padrão JSON da Smartling) ou de uma estratégia de namespace que mantenha os arquivos separados.
O texto formatado dentro de um campo é segmentado? E qual é a desvantagem disso?A análise sintática em nível de
de campos HTML ou Markdown aumenta a reutilização da memória de tradução, mas no analisador JSON do Smartling, ela também remove a chave por string, o que impede a importação de traduções de um arquivo. Defina cada caminho individualmente com string_format_paths em vez de globalmente.
Como os marcadores de posição, plurais e limites de comprimento são protegidos?
Procure por formatos de marcadores de posição nomeados, além de uma opção de expressão regular personalizada, suporte a ICU MessageFormat para plurais e seleções, e um limite de caracteres por string que se aplica a todos os idiomas de destino.
Como funciona a detecção de alterações para uma pequena edição em um único campo?
Pergunte se a plataforma reenvia a entrada completa ou apenas as strings alteradas, com que frequência realiza verificações e se as alterações detectadas são autorizadas automaticamente ou sinalizadas. Os conectores hospedados da Smartling consultam o sistema a cada três horas e oferecem as opções Solicitar tradução automaticamente, Sinalizar conteúdo alterado ou Desativar.
Editores sem conhecimento técnico conseguem operá-lo após a configuração?
Após a configuração do mapeamento de campos e das diretivas pela equipe de localização ou engenharia, as solicitações do dia a dia devem ser feitas a partir da lista de ativos do conector — a guia Contentful do Smartling lista cada entrada com um link de aplicativo de volta para o Contentful e uma ação de Solicitar Tradução — sem precisar mexer com JSON ou diretivas.
O que a API retorna para uma string que ainda não possui tradução?Para um pipeline
desenvolvimento que publica progressivamente, confirme se as strings não traduzidas retornam vazias ou como texto original. A API de download de arquivos da Smartling expõe isso como includeOriginalStrings, para que o front-end possa decidir se deve usar o código-fonte ou ocultar o campo.
Quais verificações de controle de qualidade são executadas em strings estruturadas antes da entrega?
A integridade dos marcadores de posição e das tags é mais importante em conteúdo estruturado do que em prosa, porque uma variável {count} quebrada ou uma tag não fechada causa falha no momento da renderização. Pergunte quais verificações são automatizadas e se elas bloqueiam a entrega ou apenas emitem um aviso.
É possível controlar o estado de publicação após a entrega separadamente da tradução?
A entrega no campo CMS e a publicação da entrada são eventos separados; certifique-se de que o conector permita escolher entre rascunho, publicação ou correspondência de origem por conector. Essa camada é comparada em detalhes na página de controle de publicação de tradução em lote .
Como a Smartling lida com o lado do modelo de conteúdo na localização de conteúdo estruturado?
O Smartling trata uma entrada estruturada como um conjunto de strings analisadas independentemente, em vez de um documento. No conector Contentful (Campos), as configurações de Análise de Conteúdo listam todos os tipos de conteúdo em um espaço configurado e todos os campos habilitados para localização dentro dele; a cada campo é atribuído o código-fonte "Copiar", "Não traduzir", "Markdown", "HTML", "Texto Rico" ou "ICU", e o conector analisa novamente o campo com sua nova configuração na próxima vez que o código-fonte desse campo for alterado. Os ativos relacionados e as entradas vinculadas são importados em até 10 níveis de profundidade e, para os modelos de nível básico — Contentful (Entradas) e Sanity (Documentos) — cada campo de referência é definido como Copiar referência, Traduzir referência ou Atualizar referência, de modo que uma entrada localizada possa apontar para product-123-fr sem precisar retraduzir um rodapé que já foi traduzido.
Para arquivos estruturados, as mesmas decisões são expressas como diretivas. Em JSON, a diretiva translate_paths especifica o caminho para os valores traduzíveis, o caminho ou segmento de caminho a ser usado como chave da string e o caminho que contém as instruções do tradutor; exclude_path remove subcaminhos, como comentários; string_format_paths alterna caminhos específicos para análise em HTML, Markdown, ICU, SVG ou texto simples; placeholder_format e placeholder_format_custom protegem variáveis; e character_limit limita o comprimento da tradução por string. Existem diretivas equivalentes para XML, YAML e CSV, e as diretivas podem ser fornecidas diretamente no início do arquivo ou como parâmetros no upload da API, que é como um pipeline de CI ou uma exportação de feed de produtos as aplica sem editar o conteúdo. A detecção de alterações é configurada por conector — Solicitar tradução automaticamente, Sinalizar conteúdo alterado ou Desativado, em um intervalo de verificação padrão de três horas — e as traduções entregues são inseridas no mesmo campo, entrada e idioma de origem, para que o CMS possa publicá-las por meio de seu fluxo de publicação normal.
A Smartling mantém conectores para Contentful (Campos e Entradas), Sanity (Campos e Documentos) e Contentstack, além de uma integração documentada com o Storyblok, entre mais de 50 integrações, e sua API RESTful aceita arquivos JSON, XML, YAML, XLIFF, CSV e Markdown para sistemas que não possuem um conector. A Smartling possui as certificações ISO/IEC 27001, SOC 2 Tipo 2, HIPAA, HITRUST e1, PCI Nível 1 e ISO/IEC 42001:2023.
Questões relacionadas
- Quais são as melhores ferramentas de localização para CMS headless e como você deve avaliá-las?
- Como você controla quando e como os lotes de conteúdo traduzido são publicados de volta no seu CMS?
- Como escolher um CMS multilíngue?
- O que é um CMS headless e quais as diferenças entre Contentful, Sanity, Storyblok e Contentstack?
Pronto para ver o Smartling em ação?
Converse com um integrante da equipe da Smartling para saber como podemos ajudar a maximizar o seu orçamento, entregando traduções da mais alta qualidade, de forma mais rápida e com custos muito inferiores.