ผู้เขียน หัวข้อ: สร้างลิ้งค์เมนู 2 ภาษา กรณี ไทย อังกฤษ ด้วย php อย่างง่าย  (อ่าน 1647 ครั้ง)

0 สมาชิก และ 2 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ clean

  • Administrator
  • Dev lnw
  • *****
  • กระทู้: 492
  • โดนถีบ +321/-0
    • ดูรายละเอียด
    • อีเมล์

สร้างลิ้งค์เมนู 2 ภาษา กรณี ไทย อังกฤษ ด้วย php อย่างง่าย

กรณีตัวอย่างนี้ อยู่ภายใต้ 2 เงื่อนไขต่อไปนี้
1.ชื่อไฟล์ทั้งสองภาษาเหมือนกัน ตัวอย่าง
http://www.example.com/profile.php ------ ภาษาไทย
http://www.example.com/en/profile.php ------- ภาษาอังกฤษ

2.หน้าหลักเป็นภาษาไทย ภาษาอังกฤษอยู่ในโฟลเดอร์ /en ตัวอย่าง
http://www.example.com ------ ภาษาไทย
http://www.example.com/en ------- ภาษาอังกฤษ
หรือจะประยุกต์ หน้าหลักเป็นภาษาอังกฤษ ภาษาไทยอยู่ในโฟลเดอร์ /th ก็ได้
การใช้งาน PHP Code สามารถสร้างเป็นไฟล์ lang-switch.php แล้วเรียกใช้งานด้วยการ include ในหน้าที่ต้องการ

อ้างจาก: สร้างลิ้งค์เมนู 2 ภาษา กรณี ไทย อังกฤษ ด้วย php อย่างง่าย
<?php 
$WebProtocal=($_SERVER['HTTPS']=="on")?"https://":"http://"; 
if(preg_match("/\/en\//",$_SERVER['REQUEST_URI'])){ // ตรวจสอบว่าอยู่ในโฟลเดอร์ภาษาอังกฤษหรือไม่ 
    $ThaiPath=$WebProtocal.$_SERVER['SERVER_NAME'].preg_replace("/\/en\//","/",$_SERVER['REQUEST_URI']);   
    $EnglishPath=$WebProtocal.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];   
}else{ //   
    $ThaiPath=$WebProtocal.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];   
    $EnglishPath=$WebProtocal.$_SERVER['SERVER_NAME']."/en".$_SERVER['REQUEST_URI'];   

?> 
<a id="ThFlag" href="<?=$ThaiPath?>">ภาษาไทย</a> 
<a id="EnFlag" href="<?=$EnglishPath?>">ภาษาอังกฤษ</a>

สำหรับรูปแบบการแสดง จะใช้เป็นลิ้งค์ข้อความธรรมดา หรือ กำหนดเป็นลิ้งค์แบบรูปภาพก็ได้

ขอบคุณเนื้อหาดีๆจาก ninenik.com

1 Tive Who's like!? [Click to Show!]

ออฟไลน์ tacc202

  • Dev Newbie
  • *
  • กระทู้: 1
  • โดนถีบ +2/-0
    • ดูรายละเอียด
Re: สร้างลิ้งค์เมนู 2 ภาษา กรณี ไทย อังกฤษ ด้วย php อย่างง่าย
« ตอบกลับ #1 เมื่อ: 2 มิถุนายน พ.ศ. 2011, 11:41:54 »

ขอบคุณมากๆครับ

2 Tive Who's like!? [Click to Show!]

ออฟไลน์ krittiya

  • Dev Newbie
  • *
  • กระทู้: 1
  • โดนถีบ +0/-0
    • ดูรายละเอียด
    • อีเมล์

ขอบคุณ

0 Tive Who's like!? [Click to Show!]