Installa la traduzione automatica Linguise su TYPO3 CMS

Sommario

Requisiti tecnici del CMS TYPO3

La traduzione automatica neurale da utilizzare con TYPO3 CMS richiederà l'utilizzo dello script PHP (scaricabile di seguito). Per installare lo script Linguise , avrai bisogno dei seguenti requisiti:

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

1. Genera la chiave API

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

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

La scelta della piattaforma CMS giusta è cruciale. Craft CMS offre flessibilità e scalabilità.

Dopodiché otterrai:

  • La chiave API che convalida la tua iscrizione
  • Il collegamento allo script Linguise per il selettore di lingua

 

Screenshot del plug -in Linguise dopo l'installazione. Facile da usare.

La chiave API è ciò che è necessario per attivare la traduzione sul tuo sito web TYPO3 CMS. In sostanza, la chiave API controllerà quale lingua è attivata sul tuo dominio e consentirà la traduzione automatica del contenuto.

Per ora, puoi copiare la chiave API e tenerla negli appunti.

2. Carica e collega lo script di traduzione Linguise

Lo script di traduzione Linguise deve essere caricato sul tuo server su cui è installato TYPO3 CMS:

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

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

Come accedere all'interfaccia di script Linguise ?

Dopo aver completato l' Linguise , è possibile accedere alla dashboard visitando il tuo sito Web con il seguente formato URL:
https://www.domain.com/ linguise

Modifica l'indirizzo di dominio in base all'indirizzo del tuo sito Web*
Assicurati che Linguise abbia un'adeguata autorizzazione di lettura e scrittura*

Setup password e connessione al database

Una volta accettato l'interfaccia di script, ti verrà presentata una schermata di configurazione in cui è possibile creare una password e connetterti al tuo database preferito.

Puoi:

  • Imposta una password, che sarà richiesta per l'accesso futuro a questa interfaccia.
  • Scegli il tipo di database: MySQL o SQLite, a seconda della configurazione e della preferenza.

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

Connessione del database MySQL

Se scegli MySQL, verrà visualizzata un'interfaccia diversa che richiede i seguenti dettagli di connessione dei campi di configurazione MySQL di seguito:

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

MySQL vs SQLite - Qual è la differenza?
Sia MySQL che SQLite sono sistemi di database popolari utilizzati per archiviare e gestire i dati per siti Web e applicazioni. Tuttavia, sono progettati per diversi casi d'uso e hanno alcune differenze chiave:

CaratteristicaSqliteMysql
ImpostareMolto semplice (installazione di sqlite richiesta)Richiede la configurazione del server
MagazzinaggioFile singoloGestito dal server MySQL
PrestazioneOttimo per le app su piccola scalaMeglio per sistemi grandi e ad alto traffico
Caso d'usoApp locali, test, piccoli sitiApp Web, eCommerce, Enterprise Systems

Interfaccia 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 piattaforme aggiuntive. Questo aggiornamento consente agli utenti di configurare perfettamente le impostazioni della lingua, come opzioni di visualizzazione, stili di flag e personalizzazione dell'aspetto, direttamente da un'interfaccia unificata, indipendentemente dal loro CMS o framework.

interfaccia API

Gli amministratori possono gestire le impostazioni Linguise in modo più efficiente, con funzionalità coerenti come popup di selezione delle lingue, effetti ombra e varianti delle scelte di bandiera specifiche della regione. La dashboard mantiene il suo design intuitivo offrendo una più ampia compatibilità per diversi ambienti Web.

display-interfaccia
Aspetto-interfaccia
COMPRENDIAMO CHE LA CONFIGURAZIONE DEGLI URL E IL CAMBIO DI LINGUA SONO UN PO' TECNICI DA CONFIGURARE; MA BUONE NOTIZIE! OFFRIAMO INSTALLAZIONE GRATUITA

3. Configura la riscrittura degli URL CMS TYPO3

Per impostazione predefinita, la riscrittura dell'URL è attiva nel CMS TYPO3 . In caso contrario, puoi attivarlo dal tuo provider di hosting.

L'URL per lingua deve essere configurato nel file .htaccess. Basta copiare il codice qui sotto dopo il codice RewriteEngine on disponibile nel CMS TYPO3 .htaccess.

				
					# Set PHP version to 7.4 >> Please Add this code before the Rewrite rules to ensure Linguise works in PHP v7.4
AddHandler application/x-httpd-php74 .php

<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 file TYPO3 CMS .htaccess dovrebbe assomigliare a questo:

				
					# Set PHP version to 7.4
AddHandler application/x-httpd-php74 .php

<IfModule mod_rewrite.c>

	# Enable URL rewriting
	RewriteEngine On
	RewriteBase /typo10/   # Set the RewriteBase to the subfolder

    # Add a condition to check if the request starts with the subfolder
    RewriteCond %{REQUEST_URI} !^/typo10/

    # Rewrite requests that don't start with the subfolder to include it
    RewriteRule ^(.*)$ /typo10/$1 [L]
    
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l

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

				
			

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

Carichiamo ora il selettore di lingua.

COMPRENDIAMO CHE LA CONFIGURAZIONE DEGLI URL E IL CAMBIO DI LINGUA SONO UN PO' TECNICI DA CONFIGURARE; MA BUONE NOTIZIE! OFFRIAMO INSTALLAZIONE GRATUITA

4. Attivare il selettore di lingua

4.1 Caricare lo script Linguise JS

Il collegamento allo script Linguise JS deve essere caricato su tutte le pagine CMS TYPO3 per visualizzare il cambio 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 link allo script sul sito web Linguise .

Il modo più semplice per caricare questo codice in TYPO3 CMS è aggiungerlo nell'intestazione del tuo sito web o codice. TYPO3 CMS viene fornito con un ambiente speciale e deve creare un file specifico per aggiungere uno script all'intestazione.

Puoi raggiungere questo obiettivo seguendo questi passaggi di seguito:

  1. Accedi a Typo3 Admin,
  2. Seleziona " Pagina " > " +Contenuto " > fai clic sulla scheda Elementi speciali > HTML normale

Modifica il file di script per includere il collegamento allo script nella sezione del codice HTML come di seguito.

Script-in-TYPO3-cms

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

TYPO3-Commutatore di lingua CMS

Nota importante sulla SEO: il numero di lingue impostate ha un grande impatto sulla SEO. Quando imposti le tue lingue di traduzione, se hai una grande quantità di pagine indicizzate (>500), il motore di ricerca potrebbe impiegare molto tempo per elaborarle. Potrebbe avere un impatto sulla tua SEO nella tua lingua originale. Ecco perché ti consigliamo di aggiungere all'inizio un massimo di 5 lingue, poi, una volta indicizzato, puoi aggiungere le lingue in un batch di 3 al mese.

Imposta il cambio di lingua in TYPO3 CMS

Il selettore di lingua può essere personalizzato dalla dashboard Linguise > Impostazioni > Visualizzazione flag lingua. Ogni modifica qui si rifletterà sul sito web.

Una barra del menu del sito Web con l&#39;opzione Switcher di lingua. Funzione di sito Web multilingue.

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

  • 3 layout: affiancati, a discesa o popup
  • La posizione del selettore di lingua
  • Il contenuto del selettore 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 CMS TYPO3

posizione della bandiera sul posto

Per visualizzare il commutatore di lingua in un punto specifico, nel TYPO3 , è necessario impostare la posizione su "Sul posto".
Una volta impostata la posizione nella Linguise , puoi aggiungere lo shortcode qui sotto per includerla. Clicca sul codice qui sotto per inserirlo negli appunti.

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

Una volta aggiunto, sul frontend avrai la bandiera e i nomi delle lingue visualizzati nell'area HTML in cui hai aggiunto il codice.

Attiva l'opzione del sistema cache locale

Come opzione, puoi attivare un sistema di cache locale che memorizza gli URL e il relativo contenuto multilingue per servire le pagine più velocemente. La cache locale salverà alcuni trasferimenti 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 prioritaria sarà la cache delle pagine multilingue più visualizzate.

Per completare ciò, puoi definire la quantità di cache archiviata in MB. Nell'esempio seguente, la cache è attivata e la quantità di cache da mantenere è di 500 MB.

Processo di attivazione della cache
				
					    /** 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 su server Windows IIS

Aggiungi la riga corrispondente al tuo costruttore di siti web nel file Web.config.
Dovrebbe essere impostato prima di qualsiasi altro reindirizzamento, in particolare il reindirizzamento al file principale 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 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 inserire 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 = '';