qTraslate ottenere contenuti per lingua [chiuso]


9

Come si ottengono i contenuti per ID e per lingua specifica?

Devo visualizzare due contenuti linguistici specifici in una pagina, indipendentemente dalla lingua della sessione. Finora, questo è il mio progresso: funziona benissimo per ottenere il contenuto in base all'ID della lingua attiva:

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

Come applicare una lingua specifica al filtro?

Grazie per l'aiuto. Sziro

Risposte:


15

È necessario utilizzare le funzioni native di qTranslate per svolgere il proprio lavoro. Utilizzare qtrans_use, questa è la funzione che fa tutto il lavoro in qTranslate. È definito in qtranslate_core.php, linea 747

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

Usalo sul contenuto non elaborato del post!

Prova questo codice:

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

In questo esempio, restituirà la versione inglese del tuo testo! Sostituiscilo con l'identificatore di lingua desiderato per tradurre in un'altra lingua!


Sì, felice di averti aiutato!
— Keatch,

Funziona perfettamente, ma ci sono voluti alcuni tentativi per rendermi conto che il get_page($id)bit è importante. Al momento del rendering della vista, qTranslate ha già modificato i contenuti in modo $postda contenere solo la lingua corrente, quindi è necessario caricarla di nuovo per ottenere le opzioni per tutte le lingue.
— Marcus Downing,

@keatch puoi aiutarmi con questo plugin che continua a mostrare sempre il testo in inglese, l'ho installato correttamente, devo apportare altre modifiche al codice? o funzionerà normalmente senza fare nulla
— Jack

Se hai ancora bisogno di aiuto puoi contattarmi personalmente o chiedere qui. Sarei felice di dare una mano. @Jack
— Lenin,

1
@ShivanRaptor per ottenere la lingua corrente identificatore è possibile utilizzare molti modi, ma più consigliato è: qtrans_getLanguage().
— Lenin,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.