Avec les progrès de la mondialisation, divers sites Web ont émergé et le système de gestion de contenu (CMS) joue un rôle de base dans de nombreux sites Web. Afin de s'adapter aux besoins des différents utilisateurs, en particulier les besoins interrégionaux et transversaux, le support multilingue est devenu l'une des fonctions indispensables lors de la construction de systèmes CMS. Cet article implémentera une fonction de support multilingue CMS simple via PHP pour vous aider à atteindre rapidement cette exigence.
Tout d'abord, nous devons créer un fichier de package de langue pour chaque langue prise en charge afin que le système puisse charger le contenu de langue correspondant en fonction de la configuration actuelle. Supposons que nous voulons prendre en charge deux langues en anglais et en chinois, nous pouvons créer deux fichiers correspondant à ces deux langues:
Voici un exemple de code pour un fichier de package de langue:
// lang_en.php
$lang = array(
'welcome' => 'Welcome to our website!',
'about' => 'About Us',
'contact' => 'Contact Us',
);
// lang_cn.php
$lang = array(
'welcome' => 'Bienvenue sur notre site Web!',
'about' => 'à propos de nous',
'contact' => 'Contactez-nous',
);
Ensuite, nous devons fournir aux utilisateurs une fonction de commutation de langue afin qu'ils puissent choisir librement leur langue préférée. Nous pouvons implémenter cette fonction via des formulaires. Une fois que l'utilisateur a sélectionné la langue, il le soumet au serveur via la publication. Le serveur modifiera la langue actuelle en fonction du choix de l'utilisateur.
<form action="language.php" method="post">
<select name="language">
<option value="en">English</option>
<option value="cn">Chinois</option>
</select>
<input type="submit" value="Switch Language">
</form>
Lorsque l'utilisateur sélectionne une nouvelle langue et soumet le formulaire, nous devons traiter ces informations et mettre à jour les paramètres de la langue dans la session en cours. Vous pouvez enregistrer la sélection de la langue actuelle via la session PHP.
// language.php
session_start();
if (isset($_POST['language'])) {
$_SESSION['language'] = $_POST['language'];
}
Lorsque l'utilisateur sélectionne une langue, nous devons charger le pack de langues correspondant en haut de chaque page du site Web. En détectant les paramètres de la langue dans la session en cours, en chargeant le fichier de langue correspondant et en affichant dynamiquement le contenu.
session_start();
if (!isset($_SESSION['language'])) {
$_SESSION['language'] = 'en'; // La valeur par défaut est l'anglais
}
$language = $_SESSION['language'];
Lorsque la page doit afficher le texte, utilisez directement les variables de package de langue correspondantes:
echo $lang['welcome'];
Grâce à cet article, nous montrons comment implémenter des capacités de support multilingues d'un système CMS simple à l'aide de PHP. En créant des packs de langue, en mettant en œuvre des fonctions de commutation de langue, en chargeant des packs de langage, etc., vous pouvez fournir une prise en charge multi-langues pour votre site Web. Dans le développement réel, plus de détails et d'optimisations peuvent être nécessaires, mais cela fournit un cadre pour implémenter un système CMS multilingue de base sur lequel vous pouvez l'étendre.