qTranslate obține conținut după limbă
Cum poți obține conținutul după id și după o limbă specifică?
Am nevoie să afișez conținut în două limbi specifice într-o pagină, indiferent de limba sesiunii. Până acum, acesta este progresul meu: acest cod funcționează bine pentru obținerea conținutului după id în limba activă:
<?php $id=47; $post = get_page($id); $content = apply_filters('the_content', $post->post_content); echo $content; ?>
Cum pot aplica o limbă specifică la filtru?
Mulțumesc pentru ajutor. Sziro

Trebuie să utilizați funcțiile native ale qTranslate pentru a vă face treaba. Folosiți qtrans_use
, aceasta este funcția care face toată munca în qTranslate. Este definită în qtranslate_core.php, linia 747
function qtrans_use($lang, $text, $show_available=false)
Utilizați-o pe conținutul brut al articolului!
Încercați acest cod:
<?php
$id=47; $post = get_page($id);
$content = qtrans_use('en', $post->post_content,false);
echo $content;
?>
În acest exemplu, va returna versiunea în engleză a textului dumneavoastră! Înlocuiți-o cu identificatorul limbii dorite pentru a traduce în altă limbă!

Funcționează perfect, dar mi-a luat câteva încercări să realizez că partea cu get_page($id)
este importantă. Până când ajungi să afișezi conținutul, qTranslate a modificat deja conținutul lui $post
să conțină doar limba curentă, așa că trebuie să-l încarci din nou pentru a obține opțiunile pentru toate limbile.

@keatch poți să mă ajuți cu acest plugin? continuă să afișeze mereu text în engleză, l-am instalat corect, trebuie să fac alte modificări în cod? sau ar trebui să funcționeze normal fără alte interacțiuni?

Dacă încă ai nevoie de ajutor, poți să mă contactezi personal sau să întrebi aici. Cu plăcere te voi ajuta. @Jack

@ShivanRaptor pentru a obține identificatorul limbii curente poți folosi mai multe metode, dar cea mai recomandată este: qtrans_getLanguage()
.

Eroare fatală: Apel către funcția nedefinită qtrans_use() în fișierul idex.php când am folosit codul de mai sus
