Installa la traduzione automatica Linguise su Concrete CMS

Indice dei contenuti

Requisiti tecnici Concrete CMS

Per utilizzare la traduzione automatica neurale con Concrete CMS sarà necessario utilizzare lo script PHP (scaricabile qui sotto). Per installare lo script Linguise , sono necessari i seguenti requisiti:

  • Esegui PHP 7.3+
  • Apache, server IIS, NGINX
  • Assicurati che la riscrittura degli URL sia attivata sul tuo server
  • Concrete CMS 9 e versioni successive

1. Generare la chiave API

Dopo la connessione o la registrazione alla dashboard Linguise , dovrai prima configurare un nuovo dominio e salvarne le impostazioni per ottenere la chiave API.

È possibile selezionare la piattaforma "Altro PHP" per procedere con la registrazione del dominio Linguise , come questa documentazione e le lingue di origine e di destinazione.

Impostazioni della piattaforma del sito web e della lingua di traduzione

Dopodiché otterrai:

  • La chiave API che convalida la tua iscrizione
  • Il collegamento allo script Linguise per il cambio lingua
Uno screenshot di una pagina web con un video sulla traduzione di un sito web

La chiave API è ciò che serve per attivare la traduzione sul tuo sito web Concrete CMS . In pratica, la chiave API verifica quale lingua è attiva sul tuo dominio e consente la traduzione automatica dei contenuti.

Per ora puoi copiare la chiave API e conservarla negli appunti.

2. Carica e collega lo script di traduzione Linguise

Lo script di traduzione Linguise deve essere caricato sul server su cui è installato Concrete CMS . Scaricalo qui.

Dopo aver scaricato lo script, decomprimilo e caricalo nella cartella principale in cui è installato Concrete CMS .

  • Assicurati che sia posizionato al livello principale del tuo sito web (dove si trovano i file Concrete CMS
  • Assicurati che la cartella mantenga il suo nome predefinito " linguise "

Come accedere all'interfaccia dello script Linguise ?

Dopo aver completato l' Linguise , puoi accedere alla dashboard visitando il tuo sito web con il seguente formato URL:
https://www.dominio.com/ linguise

Cambia l'indirizzo del dominio in base all'indirizzo del tuo sito web*
Assicurati che Linguise abbia i permessi di lettura e scrittura appropriati*

Imposta password e connessione al database

Una volta effettuato l'accesso all'interfaccia dello script, verrà visualizzata una schermata di configurazione in cui è possibile creare una password e connettersi al database preferito.

Puoi:

  • Imposta una password che sarà necessaria per i futuri accessi a questa interfaccia.
  • Scegli il tipo di database: MySQL o SQLite, a seconda della tua configurazione e delle tue preferenze.

Questa configurazione iniziale garantisce un accesso sicuro e consente di configurare lo script in base al proprio ambiente.

Connessione al database MySQL

Se si sceglie MySQL, verrà visualizzata un'interfaccia diversa che richiederà i seguenti dettagli di connessione dei campi di configurazione MySQL riportati di seguito:

Assicurati che le informazioni siano corrette per stabilire una connessione corretta al tuo database MySQL. 

MySQL vs SQLite: qual è la differenza?
MySQL e SQLite sono entrambi sistemi di database molto diffusi, utilizzati per archiviare e gestire dati per siti web e applicazioni. Tuttavia, sono progettati per casi d'uso diversi e presentano alcune differenze fondamentali:

CaratteristicaSQLiteMySQL
ImpostareMolto semplice (è richiesta l'installazione di SQLite)Richiede la configurazione del server
Archiviazionefila indianaGestito dal server MySQL
PrestazioniOttimo per app su piccola scalaIdeale per sistemi di grandi dimensioni e ad alto traffico
Caso d'usoApplicazioni locali, test, piccoli sitiApplicazioni web, eCommerce, sistemi aziendali

Interfaccia dello script Linguise : configurazione per la piattaforma PHP

La dashboard di traduzione Linguise , precedentemente disponibile solo per Joomla e WordPress, ora estende il supporto a PHP e ad altre piattaforme. Questo aggiornamento consente agli utenti di configurare senza problemi le impostazioni della lingua, come le opzioni di visualizzazione, gli stili dei flag e la personalizzazione dell'aspetto, direttamente da un'interfaccia unificata, indipendentemente dal CMS o dal framework in uso.

interfaccia API

Gli amministratori possono gestire le impostazioni Linguise in modo più efficiente, con funzionalità coerenti come popup di selezione della lingua, effetti ombra e varianti di scelta delle bandiere specifiche per regione. La dashboard mantiene il suo design intuitivo, offrendo al contempo una maggiore compatibilità con diversi ambienti web.

interfaccia di visualizzazione
aspetto-interfaccia
Sappiamo che la configurazione degli URL e il cambio di lingua sono un po' tecnici, ma c'è una buona notizia! Offriamo l'installazione gratuita

3. Imposta la riscrittura degli URL Concrete CMS

Di default, la riscrittura degli URL è attiva in Concrete CMS. In caso contrario, puoi attivarla tramite il tuo provider di hosting.

L'URL per lingua deve essere configurato nel file .htaccess. Basta copiare il codice sottostante dopo il codice " RewriteEngine on " disponibile nel Concrete CMS .htaccess.

				
					<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>
				
			

Infine , il tuo Concrete CMS dovrebbe apparire più o meno così:

				
					<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)(?:$|/)(.*)$ /concretee/linguise/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME}/index.html !-f
    RewriteCond %{REQUEST_FILENAME}/index.php !-f
    RewriteRule . /concretee/index.php [L]
</IfModule>

				
			

Ora puoi caricare tutte le tue pagine tradotte utilizzando l'URL, ad esempio: www.concretewebsite.com /fr/

Carichiamo ora il selettore di lingua.

Sappiamo che la configurazione degli URL e il cambio di lingua sono un po' tecnici, ma c'è una buona notizia! Offriamo l'installazione gratuita

4. Attiva il selettore di lingua

4.1 Caricare lo script Linguise JS

Il collegamento allo script Linguise JS deve essere caricato su tutte le pagine di Concrete CMS per visualizzare il selettore di lingua con flag e URL alternativi nelle intestazioni HTML (per scopi SEO).

Per copiare il collegamento allo script, dalla dashboard Linguise vai alle impostazioni del dominio e copia il collegamento allo script.

Un grafico che illustra i passaggi per installare un modulo. Il grafico mostra una linea tratteggiata blu che sale.

Il modo più semplice per caricare questo codice in Concrete CMS è aggiungerlo all'interno dell'header.php o codice.

Puoi configurarlo seguendo questi passaggi: accedi al pannello di amministrazione e poi, sul lato destro, vai su Sistema e impostazioni > SEO e statistiche > Codici di monitoraggio . Per impostazione predefinita, puoi utilizzare questo metodo.

Tuttavia, se stai utilizzando un tema diverso da quello predefinito, dovrai inserire il codice nel file header.php , che puoi trovare nella cartella dei temi .

Modifica il file di script per includere il collegamento allo script nella sezione dell'intestazione, come di seguito.

script-in-Concrete-cms

Il selettore di lingua verrà visualizzato per impostazione predefinita in alto a destra sul tuo sito web. Puoi personalizzarlo come spiegato nel prossimo capitolo.

Concrete-cms-language-switcher

Nota importante sulla SEO: il numero di lingue impostate ha un impatto significativo sulla SEO. Quando imposti le lingue di traduzione, se hai un numero elevato di pagine indicizzate (>500), il motore di ricerca potrebbe impiegare molto tempo per elaborarle. Questo potrebbe influire sulla SEO nella lingua originale. Ecco perché consigliamo di aggiungere inizialmente un massimo di 5 lingue, poi, una volta indicizzate, potrai aggiungerne 3 al mese.

Configura il selettore di lingua

Il selettore di lingua può essere personalizzato dalla dashboard Linguise > Impostazioni > Visualizzazione delle bandiere delle lingue. Ogni modifica apportata qui verrà riflessa sul sito web.

Uno screenshot che mostra un menu a discesa per selezionare le impostazioni della lingua con opzioni per l&#39;inglese.

Sul lato destro dello schermo è presente l'anteprima del selettore di lingua. Ecco gli elementi che puoi impostare:

  • 3 layout: affiancati, a discesa o popup
  • La posizione dello switcher di lingua
  • Il contenuto dello switcher di lingua
  • Nomi delle lingue in inglese o nella lingua madre
  • Forme e dimensioni delle bandiere
  • Colori e ombra della scatola

Carica il selettore di lingua nel contenuto Concrete CMS

posizione della bandiera in posizione

Per visualizzare il selettore di lingua in un punto specifico del Concrete CMS , è necessario impostare la posizione su "In posizione".
Una volta impostata la posizione nella Linguise , è possibile aggiungere lo shortcode qui sotto per includerla. Fare clic sul codice qui sotto per salvarlo negli appunti.

				
					<div>&#091;linguise&#093;</div>
				
			

Una volta aggiunto, sul frontend verranno visualizzati i nomi della bandiera e della lingua nell'area HTML in cui hai aggiunto il codice.

Attiva l'opzione del sistema di cache locale

In alternativa, puoi attivare un sistema di cache locale che memorizza gli URL e i relativi contenuti multilingue per servire le pagine più velocemente. La cache locale eviterà il trasferimento di dati tra il server Linguise e il server del tuo sito web. La cache viene utilizzata solo quando una pagina è già stata tradotta e non è stata aggiornata. La cache mantenuta in priorità sarà quella delle pagine multilingue più visualizzate.

Per completare questa operazione, è possibile definire la quantità di cache memorizzata in MB. Nell'esempio seguente, la cache è attivata e la quantità di cache da conservare è 500 MB.

Esempio di codice di configurazione della traduzione Laravel . Configurazione per impostare le traduzioni.
				
					    /** Basic configuration **/
    public $cache_enabled = true;
    public $cache_max_size = 500; // In megabyte
				
			

Traduzione automatica sui server NGINX

Aggiungi la riga corrispondente al tuo CMS nel blocco di configurazione del server NGINX.
Dovrebbe essere impostato prima di qualsiasi altro reindirizzamento, in particolare il reindirizzamento nel file principale 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;
				
			

Traduzione automatica sui server Windows IIS

Aggiungi la riga corrispondente al tuo generatore di siti web nel file Web.config.
Dovrebbe essere impostata prima di qualsiasi altro reindirizzamento, in particolare quello al file principale di 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>
				
			

Da SQLite a MySQL

Sempre nel file Configuration.php c'è un'impostazione per forzare l'utilizzo di MySQL invece di SQLite, nel caso in cui SQLite non sia installato sul server.

In questo caso, dovrai compilare le informazioni MySQL in questa parte del file 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 = '';