Table des matières
Les pré-requis techniques
Pour exécuter le script de traduction Linguise , vous aurez besoin des éléments suivants :
- Exécutez PHP 7+ et Laravel
- Serveur Apache, LiteSpeed, NGINX, IIS
- Activez la réécriture d'URL dans la configuration de votre serveur
- Le dossier racine de Laravel public », assurez-vous d'installer Linguise dans ce dossier
1. Générez la clé API
La clé API est ce qui est nécessaire pour activer la traduction sur votre site web. En gros, la clé API vérifiera quelle langue est activée sur quel domaine et permettra de générer les pages de traduction neuronale.
Copiez la clé API et conservez-la dans votre presse-papiers.
Puis en cliquant sur l'onglet « Script PHP » vous obtiendrez les instructions d'installation que nous suivrons ici en détail.
2. Téléchargez et connectez le script de traduction Linguise
Le script de traduction Linguise doit être téléchargé sur votre serveur, dans le dossier où Laravel est installé, il peut être téléchargé ici :
Une fois le script téléchargé, décompressez-le et téléchargez-le dans le dossier racine où Laravel est installé.
- Assurez-vous qu'il se trouve au niveau racine de votre installation Laravel Laravel définit la racine sur le dossier « public », vous pouvez y installer Linguise )
- Assurez-vous que le dossier s'appelle « linguise » (le nom par défaut lorsque le dossier est décompressé)
La Linguise devra être copiée dans le dossier : …/ linguise /Configuration.php fichier 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. Configurez les URL de langue
L'URL par langue doit être configurée dans le fichier .htaccess, si vous avez un "RewriteBase /" dans votre fichier copiez juste après cela tout le code suivant :
RewriteEngine On
RewriteRule ^linguise/linguise.php$ - [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)(?:$|/)(.*)$ linguise/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]
4. Activez le sélecteur de langue sur Laravel
Le sélecteur de langue est la fenêtre contextuelle du drapeau pour sélectionner la langue souhaitée. Pour le charger, vous devrez copier le code donné à la fin de la configuration du site (tableau de bord Linguise ).
Le script doit être chargé dans l'en-tête de vos pages HTML gérées par Laravel . Le sélecteur de langue du drapeau sera alors chargé automatiquement.
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 à votre guise avec CSS.
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
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 Laravel
Pour afficher le sélecteur de langue à un endroit spécifique, dans le Laravel , 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.
Système de cache local pour les pages Laravel
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.
En option, 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
Paramètres spécifiques à la plateforme Laravel
Dans le fichier Configuration.php, nous avons également un paramètre qui permet de transmettre une configuration spécifique pour le CMS ou non-CMS. Par défaut, c'est automatique, mais l'équipe d'assistance peut vous demander de le personnaliser pour utiliser certains paramètres spéciaux.
Voici le code à ajouter pour Laravel , c'est le nom du CMS en minuscule :
/** Basic configuration **/
/*
* Update the CMS value according to your CMS
* Available CMS are: laravel, prestashop
*/
public static $cms = 'laravel';
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 = '';
Traduction automatique sur les serveurs Laravel + 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 :
Traduction automatique sur les serveurs Laravel + 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;