ฉันต้องการกำหนดค่าการเคลือบเงาบนเว็บไซต์หลายภาษา drupal 8 ของฉัน และฉันมีบล็อกที่ปรากฏบนหน้าเว็บที่มีเส้นทางเป็น /my-test ดังนั้นในภาษาฝรั่งเศส url จะเป็นดังนี้: /fr/my-test ในขณะที่ภาษาอังกฤษ /my-test ในบล็อกนี้ ฉันแค่ใช้:
$lang = \Drupal::languageManager()->getCurrentLanguage()->getId();
เพื่อตรวจหาภาษาแล้วแสดงข่าวขึ้นอยู่กับภาษานี้
ดังนั้นเมื่อ url เป็น /my-test > ภาษาเป็นภาษาอังกฤษ (default)> บล็อกจะแสดงข่าวที่เกี่ยวข้องกับโลก
เมื่อ url คือ /fr/my-test > ภาษาเป็นภาษาฝรั่งเศส > บล็อกจะแสดงข่าวที่เกี่ยวข้องกับฝรั่งเศส
คำถามของฉันคือถ้าใช้วานิชและหน้าอย่าง /my-test ถูกแคชไว้ หากเป็นที่แรก ผู้ใช้เข้าสู่ /my-test และบล็อกแสดงข่าวสารเกี่ยวกับโลก หลังจากนั้น ผู้ใช้รายอื่นจะเข้าชม /my-test/fr บล็อกจะแสดงข่าวเกี่ยวกับโลก (เพราะเพจถูกแคชไว้) แม้ว่าจะมี /fr ใน url หรือไม่ หรือจะแสดงเนื้อหาที่ถูกต้อง (ข่าวเกี่ยวกับฝรั่งเศส)?
ฉันคิดว่า $lang
ตรวจหาภาษาจากคำนำหน้า URL ไม่ใช่จากเบราว์เซอร์ของผู้ใช้