Table des matières
Exigences techniques du CMS TYPO3
La traduction automatique neuronale à utiliser avec le CMS TYPO3 nécessitera l'utilisation du script PHP (téléchargeable ci-dessous). Pour installer le script Linguise , vous aurez besoin des conditions suivantes :
- Exécutez PHP 7+
- Serveur Apache, LiteSpeed, NGINX, IIS
- Assurez-vous que la réécriture d'URL est activée sur votre serveur
- TYPO3 CMS 9 et supérieur
1. Générez la clé API
Après votre connexion ou votre inscription à votre tableau de bord Linguise , vous devrez d'abord configurer un nouveau domaine et enregistrer ses paramètres pour obtenir la clé API.
Vous pouvez sélectionner la plate-forme "Autre PHP" pour procéder à l'enregistrement du domaine Linguise , comme cette documentation et les langues source et de destination.
Après cela, vous obtiendrez :
- La clé API qui valide votre adhésion
- Le lien vers le script Linguise pour le sélecteur de langue
La clé API est ce qui est nécessaire pour activer la traduction sur votre site web TYPO3 CMS. Fondamentalement, la clé API vérifiera quelle langue est activée sur votre domaine et permettra la traduction automatique du contenu.
Pour l'instant, vous pouvez copier la clé API et la conserver dans votre presse-papiers.
2. Téléchargez et connectez le script de traduction Linguise
Le script de traduction Linguise doit être téléchargé sur votre serveur sur lequel TYPO3 CMS est installé :
Une fois le script téléchargé, décompressez-le et téléchargez-le dans le dossier racine où le CMS TYPO3 est installé.
- Assurez-vous qu'il se trouve au niveau racine de votre site Web (là où se trouvent vos fichiers CMS TYPO3
- Assurez-vous que le dossier garde son nom par défaut « linguise »
La Linguise devra être copiée dans le Configuration.php que vous avez téléchargé sur votre serveur, modifiez le fichier et copiez votre clé API entre les guillemets simples, remplacez le texte REPLACE_BY_TOUR TOKEN.
3. Configurer la réécriture des URL du CMS TYPO3
Par défaut, la réécriture d'URL est active dans le CMS TYPO3 . Si ce n'est pas le cas, vous pouvez l'activer auprès de votre hébergeur.
L'URL par langue doit être configurée dans le .htaccess. Copiez simplement le code ci-dessous après le code « RewriteEngine on » disponible dans le 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
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]
Enfin, votre fichier .htaccess TYPO3 CMS devrait ressembler à ceci :
# Set PHP version to 7.4
AddHandler application/x-httpd-php74 .php
# 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]
Vous pouvez désormais charger toutes vos pages traduites à l'aide de l'URL, par exemple : www.shop.com /fr/
Chargeons maintenant le sélecteur de langue.
4. Activez le sélecteur de langue
4.1 Charger le script Linguise JS
Le lien du script Linguise JS doit être chargé sur toutes vos pages CMS TYPO3 pour afficher le sélecteur de langue avec des indicateurs et des URL alternatives dans vos en-têtes HTML (à des fins de référencement).
Pour copier le lien du script, depuis le tableau de bord Linguise , accédez aux paramètres du domaine et copiez le lien du script.
Le moyen le plus simple de charger ce code dans TYPO3 CMS est de l'ajouter dans l'en-tête de votre site Web ou code. TYPO3 CMS est livré avec un environnement spécial et doit créer un fichier spécifique pour ajouter un script à l'en-tête.
Vous pouvez y parvenir en suivant les étapes ci-dessous :
- Connectez-vous à Typo3 ,
- Sélectionnez « Page » > « +Contenu » > cliquez sur l'onglet Éléments spéciaux > HTML brut
Modifiez le fichier de script pour inclure le lien de script dans la section de code HTML comme ci-dessous.
Le sélecteur de langue sera affiché par défaut dans une position flottante en haut à droite sur votre site web. Vous pouvez le personnaliser comme expliqué dans le chapitre suivant.
Remarque importante sur le référencement : le nombre de langues que vous configurez a un impact important sur le référencement. Lorsque vous configurez vos langues de traduction, si vous avez une grande quantité de pages indexées (> 500), le moteur de recherche peut prendre beaucoup de temps pour les traiter. Cela peut avoir un impact sur votre référencement dans votre langue d'origine. C'est pourquoi nous vous conseillons d'ajouter dans un premier temps un maximum de 5 langues, puis lorsque c'est indexé, vous pourrez ajouter des langues par lot de 3 par mois.
Configurer le sélecteur de langue dans TYPO3 CMS
Le sélecteur de langue peut être personnalisé à partir du tableau de bord Linguise > Paramètres > Affichage des indicateurs de langue. Chaque modification ici sera reflétée sur le site web.
Sur le côté droit de l'écran, vous avez l'aperçu du sélecteur de langue. Voici les éléments que vous pouvez paramétrer :
- 3 mises en page : côte à côte, déroulante ou popup
- La position du sélecteur de langue
- Le contenu du sélecteur de langue
- Noms de langue en anglais ou en langue maternelle
- Formes et taille des drapeaux
- Couleurs et ombre de boîte
Charger le sélecteur de langue dans le contenu du CMS TYPO3
Pour afficher le sélecteur de langue à un endroit spécifique, dans le TYPO3 , vous devez définir la position sur « En place ».
Une fois que vous avez défini la position dans le Linguise , vous pouvez ajouter le shortcode ci-dessous pour l'inclure. Cliquez sur le code ci-dessous pour le mettre dans votre presse-papier.
Une fois ajouté, sur le frontend, le drapeau et les noms de langue seront affichés dans la zone HTML dans laquelle vous avez ajouté le code.
Activer l'option du système de cache local
En option, vous pouvez activer un système de cache local qui stocke les URL et son contenu multilingue associé pour servir les pages plus rapidement. Le cache local permettra d'économiser une partie du transfert de données entre le serveur Linguise et le serveur de votre site web. Le cache n'est utilisé que lorsqu'une page a déjà été traduite et n'a pas été mise à jour. Le cache retenu en priorité sera le cache des pages multilingues les plus consultées.
Pour compléter cela, vous pouvez définir la quantité de cache stockée en Mo. Dans l'exemple suivant, le cache est activé et la quantité de cache à conserver est de 500 Mo.
/** Basic configuration **/
public $cache_enabled = true;
public $cache_max_size = 500; // In megabyte
Traduction automatique sur les serveurs NGINX
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;
Traduction automatique sur les serveurs Windows IIS
Ajoutez la ligne correspondant à votre constructeur de site Web dans votre fichier Web.config.
Il doit être défini avant toute autre redirection, notamment la redirection vers votre fichier principal PHP :
De SQLite à MySQL
Toujours dans Configuration.php, il existe un paramètre pour forcer l'utilisation de MySQL au lieu de SQLite, au cas où SQLite ne serait pas installé sur le serveur.
Dans ce cas, vous devrez renseigner les informations MySQL dans cette partie du fichier 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 = '';