O conteúdo desta página foi traduzido com uma IA.

    Veja a última versão do conteúdo original em inglês

    Intlayer Sistema de Gerenciamento de Conteúdo (CMS) Documentação

    O Intlayer CMS é um aplicativo que permite externalizar o conteúdo de um projeto Intlayer.

    Para isso, o Intlayer introduz o conceito de 'dicionários distantes'.

    Interface do Intlayer CMS

    Entendendo os dicionários distantes

    O Intlayer faz uma distinção entre dicionários 'locais' e 'distantes'.

    • Um dicionário 'local' é um dicionário declarado no seu projeto Intlayer. Como o arquivo de declaração de um botão ou sua barra de navegação. Externalizar seu conteúdo não faz sentido neste caso, pois este conteúdo não deve mudar frequentemente.

    • Um dicionário 'distante' é um dicionário gerenciado através do Intlayer CMS. Ele pode ser útil para permitir que sua equipe gerencie seu conteúdo diretamente no site e também tem como objetivo usar recursos de teste A/B e otimização automática de SEO.

    Editor visual vs CMS

    O Editor Visual Intlayer é uma ferramenta que permite gerenciar seu conteúdo em um editor visual para dicionários locais. Uma vez feita uma alteração, o conteúdo será substituído na base de código. Isso significa que o aplicativo será reconstruído e a página será recarregada para exibir o novo conteúdo.

    Em contraste, o Intlayer CMS é uma ferramenta que permite gerenciar seu conteúdo em um editor visual para dicionários distantes. Uma vez feita uma alteração, o conteúdo não impactará sua base de código. E o site exibirá automaticamente o conteúdo alterado.

    Integração

    Para mais detalhes sobre como instalar o pacote, veja a seção relevante abaixo:

    Integração com Next.js

    Para integração com Next.js, consulte o guia de configuração.

    Integração com Create React App

    Para integração com Create React App, consulte o guia de configuração.

    Integração com Vite + React

    Para integração com Vite + React, consulte o guia de configuração.

    Configuração

    No arquivo de configuração do Intlayer, você pode personalizar as configurações do CMS:

    intlayer.config.ts
    import type { IntlayerConfig } from "intlayer";
    
    const config: IntlayerConfig = {
      // ... outras configurações
      editor: {
        /**
         * Obrigatório
         *
         * A URL do aplicativo.
         * Esta é a URL direcionada pelo editor visual.
         */
        applicationURL: process.env.INTLAYER_APPLICATION_URL,
    
        /**
         * Obrigatório
         *
         * O ID do cliente e o segredo do cliente são necessários para habilitar o editor.
         * Eles permitem identificar o usuário que está editando o conteúdo.
         * Eles podem ser obtidos criando um novo cliente no Intlayer Dashboard - Projetos (https://intlayer.org/dashboard/projects).
         * clientId: process.env.INTLAYER_CLIENT_ID,
         * clientSecret: process.env.INTLAYER_CLIENT_SECRET,
         */
        clientId: process.env.INTLAYER_CLIENT_ID,
        clientSecret: process.env.INTLAYER_CLIENT_SECRET,
    
        /**
         * Opcional
         *
         * Caso você esteja hospedando o Intlayer CMS, pode definir a URL do CMS.
         *
         * A URL do Intlayer CMS.
         * Por padrão, está definido como https://intlayer.org
         */
        cmsURL: process.env.INTLAYER_CMS_URL,
    
        /**
         * Opcional
         *
         * Caso você esteja hospedando o Intlayer CMS, pode definir a URL do backend.
         *
         * A URL do backend do Intlayer CMS.
         * Por padrão, está definido como https://back.intlayer.org
         */
        backendURL: process.env.INTLAYER_BACKEND_URL,
      },
    };
    
    export default config;

    Se você não tiver um ID de cliente e um segredo de cliente, pode obtê-los criando um novo cliente no Intlayer Dashboard - Projetos.

    Para ver todos os parâmetros disponíveis, consulte a documentação de configuração.

    Usando o CMS

    Enviar sua configuração

    Para configurar o Intlayer CMS, você pode usar os comandos do intlayer CLI.

    bash
    npx intlayer config push

    Se você usar variáveis de ambiente no arquivo intlayer.config.ts, pode especificar o ambiente desejado usando o argumento --env:

    bash
    npx intlayer config push --env production

    Este comando carrega sua configuração para o Intlayer CMS.

    Enviar um dicionário

    Para transformar seus dicionários locais em um dicionário distante, você pode usar os comandos do intlayer CLI.

    bash
    npx intlayer dictionary push -d my-first-dictionary-key

    Se você usar variáveis de ambiente no arquivo intlayer.config.ts, pode especificar o ambiente desejado usando o argumento --env:

    bash
    npx intlayer dictionary push -d my-first-dictionary-key --env production

    Este comando carrega seus dicionários de conteúdo iniciais, tornando-os disponíveis para busca assíncrona e edição através da plataforma Intlayer.

    Editar o dicionário

    Então, você poderá ver e gerenciar seu dicionário no Intlayer CMS.

    Hot reloading

    O Intlayer CMS é capaz de recarregar os dicionários automaticamente quando uma alteração é detectada.

    Sem o hot reloading, será necessário um novo build do aplicativo para exibir o novo conteúdo.

    Ao ativar a configuração hotReload, o aplicativo substituirá automaticamente o conteúdo atualizado quando detectado.

    intlayer.config.ts
    import type { IntlayerConfig } from "intlayer";
    
    const config: IntlayerConfig = {
      // ... outras configurações
      editor: {
        // ... outras configurações
    
        /**
         * Indica se o aplicativo deve recarregar automaticamente as configurações de localidade quando uma alteração for detectada.
         * Por exemplo, quando um novo dicionário é adicionado ou atualizado, o aplicativo atualizará o conteúdo exibido na página.
         *
         * Como o hot reloading requer uma conexão contínua com o servidor, ele está disponível apenas para clientes do plano `enterprise`.
         *
         * Padrão: false
         */
        hotReload: true,
      },
    };
    
    export default config;

    O hot reloading substitui o conteúdo tanto no lado do servidor quanto no lado do cliente.

    • No lado do servidor, você deve garantir que o processo do aplicativo tenha acesso de gravação ao diretório .intlayer/dictionaries.
    • No lado do cliente, o hot reloading permite que o aplicativo recarregue o conteúdo no navegador, sem a necessidade de recarregar a página. No entanto, este recurso está disponível apenas para componentes clientes.

    Como o hot reloading requer uma conexão contínua com o servidor usando um EventListener, ele está disponível apenas para clientes do plano enterprise.

    Depuração

    Se você encontrar problemas com o CMS, verifique o seguinte:

    • O aplicativo está em execução.

    • As configurações do editor estão corretamente definidas no arquivo de configuração do Intlayer.

      • Campos obrigatórios:
        • A URL do aplicativo deve corresponder à que você definiu na configuração do editor (applicationURL).
        • A URL do CMS.
    • Certifique-se de que a configuração do projeto foi enviada para o Intlayer CMS.

    • O editor visual usa um iframe para exibir seu site. Certifique-se de que a Política de Segurança de Conteúdo (CSP) do seu site permite a URL do CMS como frame-ancestors ('https://intlayer.org' por padrão). Verifique o console do editor para quaisquer erros.

    Se você tiver uma ideia para melhorar esta documentação, sinta-se à vontade para contribuir enviando uma pull request no GitHub.

    Link do GitHub para a documentação