ผู้เขียน หัวข้อ: วิธีทำเว็บ joomla3 แบบ 2ภาษา อย่างละเอียด  (อ่าน 25092 ครั้ง)

ออฟไลน์ We Love Thailand

  • เรารักประเทศไทย
  • Administrator
  • *
  • กระทู้: 1,229
  • ชอบกด Like+ 844
  • เพศ: ชาย
  • ใช้งานล่าสุด :12 มกราคม 2018, 12:54:45
  • รับบอกรักประเทศไทย
    • SprinklerThailand สปริงเกอร์ไทยแลนด์
วิธีทำเว็บ joomla 3.2.0 แบบ 2 ภาษา

โดยปกติ joomla รุ่นเก่าๆที่ต่ำกว่า 2.5 ลงไปการทำเว็บ 2 ภาษาต้องไปพึ่งพา Components ต่างๆของภายนอกมาเพิ่มเติม แต่ตั้งแต่ joomla 2.5 เป็นต้นไปจูมล่าได้พัฒนาสคริปต์ตนเองให้สามารถทำหลายๆภาษาได้เองโดยไม่ต้องไปพึ่งพาพวก Components ต่างๆจากภายนอกอีก เลยทำให้หลายๆเจ้าของ Components จากภายนอก อดสร้างรายได้กับจูมล่าไปเลย และบทความนี้เป็นการแนะนำเพื่อทำเว็บ joomla3.2.0 ให้เป็นแบบ 2 ภาษาด้วยตัวมันเอง ซึ่งผู้ใช้งานจำเป็นต้องมีความรู้เรื่องการสร้างบทความและการใช้โมดูลมาบ้างพอสมควรแล้ว ซึ่งหลังการติดตั้งจูมล่าเสร็จ หากผู้ใช้ต้องการสร้างเว็บไซต์แบบ 2 ภาษาหรือมากกว่านั้น อันดับแรกให้ติดตั้งภาษาไทยหรือภาษาอื่นๆที่ต้องการเพิ่มเติมเข้าไปก่อนดังนี้

วิธีเพิ่มภาษา
ไปที่เมนู Extensions/Language Manager แล้วคลิก Install Language


ค้นหารายชื่อประเทศที่ต้องการ ติ๊กเลือกแล้วคลิก Install ในที่นี้ผมทดสอบติดตั้งกับภาษาไทย (และได้ติดตั้งไปก่อนหน้านี้แล้วระบบจึงไม่โชว์ภาษาไทยซ้ำอีก)


หลังติดตั้งเสร็จจะได้ภาษาตามที่ต้องการดังนี้ (ตรงค่า Default ตรงนี้สำคัญ หากต้องการภาษาใดขึ้นโชว์ก่อนให้เลือกภาษานั้นเป็นค่า Default)


หลังจากนั้นคลิกที่ Content และคลิกที่ New เพื่อสร้างภาษาไทยเพิ่มขึ้นมาใหม่ (ภาษาอังกฤษระบบจะติดตั้งมาให้แล้ว)

ใส่ Title,  Title Native,  URL Language Code , Image Prefix(เลือกธงชาติ) , Language Tag ตามความเหมาะสม (ตามความพอใจ) แล้วกด Save & Close   


ก็จะได้ดังนี้ ตรงนี้เราสามารถคลิกลากสลับตำแหน่งเพื่อจัดลำดับของธงชาติ ก่อน-หลัง ซึ่งจะมีผลต่อลำดับของธงชาติที่หน้าเว็บด้วย


ไปที่การสร้างเมนู2ภาษา คลิกที่เมนู Menus/Menu Manager/Add New Menu
แล้วใส่ข้อมูลตามความเข้าใจของคุณ ทำแบบนี้ 2 ครั้ง กับเมนูภาษาอังกฤษด้วย แล้วเซฟ


ก็จะได้เมนูทั้งภาษาไทยและอังกฤษดังนี้


ต่อไปสร้างเมนูใหม่เริ่มจากภาษาไทยก่อน ไปที่ Menus/Menu-thai/Add New Menu


ใส่รายละเอียด
Menu Title : เป็นภาษาไทยเช่น หน้าหลัก,หน้าแรกฯล
Alias : หมายถึงตัว URL ให้ใส่ home-th
Menu Item Type : เลือก Featured Articles
Menu Location : เลือก Menu-thai หรือตามที่เราตั้งชื่อไว้
Default Page : Yes
Language : Thailand (TH)
แล้วกด Save & New เพื่อสร้างเมนูภาษาอังกฤษต่อเลย


ต่อไปสร้างเมนูใหม่ภาษาอังกฤษ ทำแบบเดียวกับเมนูภาษาไทย เพียงใช้ภาษาอังกฤษ
ใส่รายละเอียด
Menu Title : Home
Alias : หมายถึงตัว URL ให้ใส่ home-en
Menu Item Type : เลือก Featured Articles
Menu Location : เลือก Menu-Engrish หรือตามที่เราตั้งชื่อไว้
Default Page : Yes
Language : English (UK)
แล้วมองหาแท็บด้านบน คลิกที่แท็บ  Associations เพื่อเลือกให้ลิงค์กันกับ Thailand (TH) หน้าหลัก ของภาษาไทย (*ทำแบบเดียวกันในทุกๆ เมนู)
แล้วกด Save & Close
*กรณีที่ลิงค์กัน ยกตัวอย่างเช่น จะทำให้เวลาเราเปิดเนื้อหาของภาษาไทยไว้ แล้วหากต้องการกลับไปดูภาษาอังกฤษในเนื้อหาเดียวกันด้วย เมื่อกดสลับที่รูปธงชาติ ก็จะเปลี่ยนหน้าเป็นภาษาอังกฤษได้ทันที แต่หากเราไม่เลือกให้มันลิงค์ไว้ พอกดสลับธงชาติมันจะวิ่งกลับไปหน้าแรก Home ก่อนทุกครั้งโดยจะออกจากเนื้อหาที่เราดูอยู่ ณ ปัจจุบันไป


*กรณีที่ไม่สามารถเซฟให้เป็น Default Page ได้ให้ดูวิธีแก้ไขในบทต่อไป* คลิกดูวิธีแก้ >>>Warning
Warning
Save failed with the following error: The Language parameter for this menu item must be set to 'All'. At least one Default menu item must have Language set to All, even if the site is multilingual.

หลังจากนั้นไปเปิด Plugin System - Language Filter เพื่อใช้งาน ไปที่ Extensions/Plugin Manager
แล้วพิมพ์ในช่องค้นหาดังนี้  System - Language Filter เปิดใช้งานแล้ว Save & close



ไปเปิดการใช้งานโมดูล Language Switcher ที่ Extensions / Module Manager / New /


ในส่วนนี้เป็นส่วนที่จะนำธงชาติของภาษาต่างๆไปแสดงไว้ที่หน้าเว็บ
Title : Language Switcher ตั้งชื่อตามสะดวก
Show Title : จะให้โชว์ชื่อ Title หรือไม่ (ของผมเลือก Hide เพราะต้องการให้แสดงแค่ธงชาติเท่านั้น)
Position : ตำแหน่งที่ต้องการจะให้ ธงชาติของภาษาไปแสดง ตำแหน่งนี้ขึ้นอยู่กับ ธีม template ของแต่ละบุคคล
เอาเป็นอันว่าหากท่าน ต้องการวางธงชาติที่สื่อถึงการเลือกภาษาให้อยู่ ณ ตำแหน่งใดของเว็บท่าน ท่านก็เลือกตำแหน่งนั้นๆเองเถิด
Status :  Published
Language : All
Pre-text : ใส่คำกำกับไว้ก่อนธงชาติเช่น Choose A Language หรือ เลือกภาษา
Post-text : ใส่คำกำกับไว้หลังธงชาติเช่น English,Thailand หรืออยากใส่อะไรก็ใส่ๆไป ไม่อยากใส่ก็ปล่อยว่างๆไว้
Use Dropdown : ถ้าเลือก Yes ธงชาติจะอยู่ ในกล่องเรียงๆกัน เหมาะสำหรับมีหลายๆภาษามากกว่า5ขึ้นไป
Use Image Flags : จะใช้รูปภาพธงชาติแสดงหรือไม่ ถ้า No จะแสดงเพียงตัวอักษร Thailand (TH)  English (UK)
Horizontal Display : ถ้าจะให้รูปธงชาติเรียงตามยาวต่อๆกันไปเลือก Yes แต่ถ้าจะให้เรียงจากบนลงล่างเลือก No
Active Language : Yes จะแสดงทั้ง2ภาษา No เหลือภาษาเดียว
Languages Full Names : ตัวนี้จะมีผลต่อการที่เราไม่เลือกโชว์ Image Flags ในข้อข้างต้น Use Image Flags
หากในข้อ Use Image Flags เลือกเป็น No จะแสดงเพียงตัวอักษร Thailand (TH)  English (UK) แบบเต็ม
แต่ถ้าเราเลือก Languages Full Names : เป็น No มันจะแสดงเพียงตัวอักษรแบบสั้นๆ TH  EN
(แต่ถ้าเลือกใช้ Image Flags รูปธงในข้อ Use Image Flags แล้ว จะไม่มีผลต่อหัวข้อนี้)
แล้วกด Save & Close




ขั้นตอนต่อไปสร้างโมดูลเมนูขึ้นมาใหม่อีก 2 อัน ไปที่ Extensions / Module Manager / Menu


ใส่รายละเอียด
Title : ใส่เป็นภาษาไทย เช่น เมนูหลัก
Select Menu : Menu-thai
Position : เลือกตำแหน่งที่โมดูลของเมนูนี้จะไปแสดง
Status : Published
Language : Thailand (TH)
แล้วกด Save & New เพื่อสร้างเมนูภาษาอังกฤษต่อเลย


โมดูลภาษาอังกฤษให้ทำแบบเดียวกันกับภาษาไทย เพียงแต่ใช้ชื่อเป็น ภาษาอังกฤษและเลือก Title : Main Menu ,Select Menu : Menu-English , Language : English (UK)

ต่อไปเป็นการสร้างเนื้อหา Content ทั้ง2ภาษาไปที่เมนู Content /Article Manager/ Add new Article สร้างบทความใหม่ทั้งไทยและอังกฤษ
สิ่งที่สำคัญในบทนี้คือการตั้งหน้าของภาษา ถ้าภาษาไทยให้เลือก Language : Thailand (TH) และถ้าเป็นอังกฤษให้เลือก  Language : English (UK)
เป็นอันเสร็จเรียบร้อยการติดตั้งเว็บ2ภาษาหรือหลายๆภาษา


ภาพรวมของเมนูภาษาไทยที่ทำเสร็จแล้ว


ภาพรวมของเมนูภาษาอังกฤษที่ทำเสร็จแล้ว


ภาพรวมเว็บไซต์ที่ทดสอบทำจริงด้วย Joomla 3.2.0



« แก้ไขครั้งสุดท้าย: 2 กุมภาพันธ์ 2016, 01:18:34 โดย We Love Thailand »
สวัสดีคุณ...บุคคลทั่วไป กด Like ให้หรือยัง...
welovethailand.com welovethailand.net เรารักประเทศไทย.com