qTranslate รับเนื้อหาตามภาษา [ปิด]


9

คุณจะได้รับเนื้อหาตาม ID และภาษาเฉพาะได้อย่างไร

ฉันต้องแสดงเนื้อหาภาษาสองภาษาในหน้าหนึ่งโดยไม่คำนึงถึงภาษาของเซสชัน จนถึงตอนนี้เป็นความคืบหน้าของฉัน: มันใช้งานได้ดีสำหรับการรับเนื้อหาโดยใช้ภาษาที่ใช้งาน

<?php $id=47; $post = get_page($id); $content = apply_filters('the_content', $post->post_content); echo $content;  ?>

จะใช้ภาษาเฉพาะกับตัวกรองได้อย่างไร

ขอบคุณสำหรับความช่วยเหลือ Sziro

คำตอบ:


15

คุณต้องใช้ฟังก์ชันดั้งเดิมของ qTranslate เพื่อทำงานของคุณ ใช้qtrans_useนั่นคือฟังก์ชันที่ทำงานทั้งหมดใน qTranslate มันกำหนดไว้ใน qtranslate_core.php บรรทัด 747

function qtrans_use($lang, $text, $show_available=false) 

ใช้กับเนื้อหาดิบของโพสต์!

ลองรหัสนี้:

<?php 
 $id=47; $post = get_page($id); 
 $content = qtrans_use('en', $post->post_content,false); 
 echo $content;  
?>

ในตัวอย่างนี้มันจะส่งคืนข้อความภาษาอังกฤษของคุณ! แทนที่ด้วยตัวระบุภาษาที่ต้องการเพื่อแปลเป็นภาษาอื่น!


ใช่ดีใจที่ได้ช่วยคุณ!
keatch

มันใช้งานได้อย่างสมบูรณ์แบบ แต่ฉันพยายามสักสองสามครั้งที่จะตระหนักว่าget_page($id)บิตนั้นสำคัญ เมื่อถึงเวลาที่คุณแสดงมุมมอง qTranslate ได้แก้ไขเนื้อหาของ$postให้มีเพียงภาษาปัจจุบันเท่านั้นดังนั้นคุณต้องโหลดอีกครั้งเพื่อรับตัวเลือกสำหรับทุกภาษา
Marcus Downing

@keatch คุณสามารถช่วยฉันด้วยปลั๊กอินนี้ในการแสดงข้อความภาษาอังกฤษได้เสมอฉันติดตั้งอย่างถูกต้องฉันต้องทำการเปลี่ยนแปลงอื่น ๆ ในรหัสหรือไม่? หรือมันจะทำงานได้ตามปกติโดยไม่ทำอะไรเลย
แจ็ค

หากคุณยังต้องการความช่วยเหลือคุณสามารถติดต่อฉันเป็นการส่วนตัวหรือถามที่นี่ ฉันยินดีที่จะช่วยออก @Jack
Lenin

1
@ShivanRaptor ที่จะได้รับภาษาปัจจุบันระบุคุณสามารถใช้หลายวิธี qtrans_getLanguage()แต่ขอแนะนำให้มากที่สุดคือ:
เลนิน
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.