簡體   English   中英

更改多語言網站的 URL 中的路徑

[英]Changing the path in a URL for a multilingual website

我來找您是為了了解是否可以使用 PHP 變量更改 URL 中的路徑。 我的目標是用 2 個文件夾(每種語言一個)組織我的網站,在兩個文件夾之一的隨機頁面上選擇語言,並能夠通過修改 URL 來更改語言。

例如,我在http://truc.com/fr/test.php 上 我改變了語言,我得到了http://truc.com/en/test.php

我已經做了一個有效的測試,但我更喜歡更動態的東西,它適用於網站的所有頁面:fichier index.php

<?php
session_start();
if (!isset($_SESSION['lang']))
    if (!isset($_SESSION['lang']))
    $_SESSION['lang'] = "fr";
else if (isset($_GET['lang']) && $_SESSION['lang'] != $_GET['lang'] && !empty($_GET['lang'])) 
    {
        if ($_GET['lang'] == "fr")
            $_SESSION['lang'] = "fr";
        else if ($_GET['lang'] == "en")
            $_SESSION['lang'] = "en";
    }
if($_SESSION['lang']==fr)
    {
        header('Location: http://localhost/site/languages/fr/index.php');
    }
else if($_SESSION['lang']==en)
    {
        header('Location: http://localhost/site/languages/en/index.php');
    }
?>

調整了您的代碼並添加了一個新變量 $page_language 來處理頁面語言並重定向到各種語言的特定鏈接,在重定向到頁面之前,會話語言設置為在下一頁記住它。 祝你好運

if (isset($_SESSION['lang'])) {
  $page_language = $_SESSION['lang'];
} elseif (isset($_GET['lang']) && !empty($_GET['lang'])) {
  $page_language = $_GET['lang'] ;
} else {
  $page_language = "fr" ; //set default language if no session and url has language
}

if ($page_language == "fr") {
  $_SESSION['lang'] = "fr"; //set session language for later visits
  header('Location: http://localhost/site/languages/fr/index.php');
  exit;
} elseif ($page_language == "en") {
  $_SESSION['lang'] = "en"; //set session language for later visits
  header('Location: http://localhost/site/languages/fr/index.php');
  exit;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM