Comment créer des itinéraires multilingues dans Laravel ?

DDD
Libérer: 2024-11-03 21:22:29
original
136 Les gens l'ont consulté

How to Create Multilingual Routes in Laravel?

Comment créer des itinéraires traduits multilingues dans Laravel

Introduction

La traduction d'itinéraires est essentielle pour créer des applications multilingues. Dans Laravel, il est possible d'avoir plusieurs langues et de changer dynamiquement de langue en fonction de l'URL. Cet article explique comment implémenter des itinéraires traduits multilingues dans Laravel en utilisant la première méthode décrite dans l'article de référence.

Étape 1 : Traduire les itinéraires

Créer trois fichiers routes.php dans le répertoire app/lang pour chaque langue (par exemple, pl/routes.php, en/routes.php et fr/routes.php). A l'intérieur de chaque fichier, traduisez l'itinéraire noms :

  • polonais :
<code class="php"><?php
// app/lang/pl/routes.php

return array(

    'contact' => 'kontakt',
    'about' => 'o-nas'
);</code>
Copier après la connexion
  • anglais h:
<code class="php"><?php
// app/lang/en/routes.php

return array(
    'contact' => 'contact',
    'about' => 'about-us'
);</code>
Copier après la connexion
  • Français:
<code class="php"><?php
// app/lang/fr/routes.php

return array(
    'contact' => 'contact-fr',
    'about' => 'about-fr'
);</code>
Copier après la connexion

Étape 2 : Configurer les paramètres de langue

Mettre à jour le fichier app/config/app.php :

  • Définir la langue principale :
<code class="php">'locale' => 'pl',</code>
Copier après la connexion
  • Listez les langues alternatives :
<code class="php">'alt_langs' => array('en', 'fr'),</code>
Copier après la connexion
  • Définissez les paramètres régionaux préfixe :
<code class="php">'locale_prefix' => '',</code>
Copier après la connexion

Étape 3 : Définir les modèles d'itinéraire

Dans app/routes.php, configurez les modèles d'itinéraire en fonction des traductions linguistiques :

<code class="php"><?php
// app/routes.php

foreach(Lang::get('routes') as $k => $v) {
    Route::pattern($k, $v);
}</code>
Copier après la connexion

Étape 4 : Regrouper les itinéraires par Paramètres régionaux

Créez un groupe de routes avec un préfixe égal aux paramètres régionaux sélectionnés :

<code class="php"><?php
Route::group(array('prefix' => Config::get('app.locale_prefix')), function() {

    Route::get(
        '/',
        function () {
            return "main page - " . App::getLocale();
        }
    );

    Route::get(
        '/{contact}/',
        function () {
            return "contact page " . App::getLocale();
        }
    );

    Route::get(
        '/{about}/',
        function () {
            return "about page " . App::getLocale();
        }
    );
});</code>
Copier après la connexion

Étape 5 : Gérer les redirections

Dans app/start/global.php, créez une redirection 301 pour les URL inconnues vers la bonne langue :

<code class="php"><?php
// app/start/global.php

App::missing(function() {
   return Redirect::to(Config::get('app.locale_prefix'), 301);
});</code>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!