Instale a tradução automática Linguise no Kirby CMS

Índice

Requisitos técnicos do Kirby CMS

A tradução neural automática a ser usada com Kirby CMS exigirá o uso do script PHP (pode ser baixado abaixo). Para instalar o script Linguise , você precisará dos seguintes requisitos:

  • Execute PHP 7+
  • Servidor Apache, IIS ou NGINX
  • Verifique se a regravação de URL está ativada em seu servidor

Gere a chave de API

Após sua conexão ou registro em seu painel Linguise , você precisará primeiro configurar um novo domínio e salvar suas configurações para obter a Chave de API.

Você pode selecionar a plataforma “Outro PHP” para prosseguir com o domínio de registro Linguise , como esta documentação e os idiomas de origem e destino.

Depois disso, você obterá:

  • A chave de API que valida sua associação
  • O link para o script Linguise para o seletor de idioma

A chave API é o que é necessário para ativar a tradução em seu site Kirby CMS. Basicamente, a chave API irá verificar qual idioma está ativado no seu domínio e permitir a tradução automática do conteúdo.

Por enquanto, você pode copiar a chave de API e mantê-la na área de transferência.

Carregue e conecte o script de tradução Linguise

O script de tradução Linguise precisa ser carregado no servidor onde o Kirby CMS está instalado. Baixe aqui.

Após o download do script, descompacte-o e carregue-o na pasta raiz onde o Kirby CMS está instalado.

  • Certifique-se de que ele esteja colocado no nível raiz do seu site (onde seus arquivos Kirby CMS estão localizados)
  • Certifique-se de que a pasta mantém seu nome padrão linguise
kirby-install-linguise

A Linguise precisará ser copiada para o Configuration.php que você carregou em seu servidor, edite o arquivo e copie sua chave da API entre as aspas simples, substitua o texto REPLACE_BY_TOUR TOKEN.

configuração-php
ENTENDEMOS QUE A CONFIGURAÇÃO DE URLS E O INTERRUPTOR DE IDIOMA SÃO UM POUCO TÉCNICOS DE CONFIGURAR; MAS BOAS NOTÍCIAS! OFERECEMOS INSTALAÇÃO GRATUITA

Configure a reescrita de URLs do Kirby CMS

Por padrão, a reescrita de URL está ativa no Kirby CMS. Se não for esse o caso, você pode ativá-lo no seu provedor de hospedagem.

A URL por idioma precisa ser configurada no .htaccess. Basta copiar o código abaixo após o código RewriteEngine on disponível no Kirby CMS .htaccess padrão.

				
					<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteRule ^(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ linguise/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]
</IfModule>
				
			

Agora você pode carregar todas as suas páginas traduzidas usando o URL, por exemplo: www.shop.com /fr/

Vamos agora carregar o seletor de idioma.

Ative o seletor de idioma

Carregue o Javascript Linguise

O link Linguise Javascript precisa ser carregado em todas as suas páginas Kirby CMS para exibir o alternador de idioma com sinalizadores e URLs alternativos em seus cabeçalhos HTML (para fins de SEO).

Para copiar o link do script, no painel Linguise , vá para as configurações do domínio e copie o link do script.

A maneira mais fácil de carregar este código no Kirby CMS é adicioná-lo dentro do header.php ou código.

Você pode configurar isso seguindo estas etapas: Acesse a pasta raiz e vá para Site > Snippets > arquivo header.php . Por padrão, você pode usar este método.

Edite o arquivo de script para incluir o link do script na seção de cabeçalho, como abaixo.

O seletor de idioma será exibido por padrão em uma posição flutuante no canto superior direito do seu site. Você pode personalizá-lo conforme explicado no próximo capítulo.

ExpressionEngine-cms-comutador de idioma

Observação importante de SEO: o número de idiomas que você configura tem um grande impacto no SEO. Ao configurar seus idiomas de tradução, se você tiver uma grande quantidade de páginas indexadas (>500), o mecanismo de pesquisa poderá demorar muito para processá-las. Isso pode afetar seu SEO em seu idioma original. É por isso que recomendamos adicionar inicialmente no máximo 5 idiomas, depois, quando estiver indexado, você pode adicionar idiomas em um lote de 3 por mês.

Configurar o seletor de idioma

O seletor de idioma pode ser personalizado no painel Linguise > Configurações > Exibição de sinalizadores de idioma. Cada modificação aqui será refletida no site.

No lado direito da tela, você tem a visualização do seletor de idioma. Aqui estão os elementos que você pode configurar:

  • 3 layouts: lado a lado, suspenso ou pop-up
  • A posição do seletor de idioma
  • O conteúdo do seletor de idioma
  • Nomes de idiomas em inglês ou idioma nativo
  • Formas e tamanhos das bandeiras
  • Cores e sombra da caixa

Carregue o seletor de idioma no conteúdo Kirby CMS

posição da bandeira no local

Para exibir o seletor de idioma em um local específico, no conteúdo do CMS, você deve definir a posição como “In place”.
Depois de definir a posição no Linguise , você pode adicionar o código de acesso abaixo para incluí-la. Clique no código abaixo para colocá-lo na área de transferência.

[linguise]

Depois de adicionado, no frontend você terá a bandeira e os nomes dos idiomas exibidos na área HTML onde você adicionou o código.

Ative a opção do sistema de cache local

Como opção, você pode ativar um sistema de cache local que armazena URLs e seu conteúdo multilíngue relacionado para servir as páginas mais rapidamente. O cache local salvará algumas transferências de dados entre o servidor Linguise e o servidor do seu site. O cache é usado apenas quando uma página já foi traduzida e não foi atualizada. O cache mantido em prioridade será o cache das páginas multilíngues mais visualizadas.

Para complementar, você pode definir a quantidade de cache armazenada em MB. No exemplo a seguir, o cache está ativado e a quantidade de cache a ser mantida é de 500 MB.

				
					    /** Basic configuration **/
    public $cache_enabled = true;
    public $cache_max_size = 500; // In megabyte
				
			

Tradução automática em servidores NGINX

Adicione a linha correspondente ao seu CMS no bloco de configuração do servidor NGINX.
Deve ser definido antes de qualquer outro redirecionamento, especialmente o redirecionamento no seu arquivo principal do PHP.
				
					rewrite ^/(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ /linguise/linguise.php?linguise_language=$1&original_url=$2 last;
				
			

Tradução automática em servidores Windows IIS

Adicione a linha correspondente ao seu construtor de sites no arquivo Web.config.
Deve ser definido antes de qualquer outro redirecionamento, especialmente o redirecionamento para o arquivo principal do PHP:

				
					<rule name="Linguise" stopProcessing="true">
<match url="^(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$" ignoreCase="false" />
        <conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
            <action type="Rewrite" url="linguise/linguise.php?linguise_language={R:1}&amp;original_url={R:2}" appendQueryString="true" />
</rule>
				
			

Do SQLite ao MySQL

Ainda no Configuration.php existe uma configuração para forçar o uso do MySQL ao invés do SQLite, caso o SQLite não esteja instalado no servidor.

Neste caso, você precisará preencher as informações do MySQL nesta parte do arquivo Configuration.php:

				
					    /** Advanced database configuration **/
    /*
     *  In case you don't want to use Sqlite, you can use MySQL
     *  To do so, you need to fill the following variables
     *  Linguise will create the tables for you
     */
    public static $db_host = '';
    public static $db_user = '';
    public static $db_password = '';
    public static $db_name = '';
    public static $db_prefix = '';