qTranslate言語によるコンテンツの取得[終了]


9

IDと特定の言語でコンテンツをどのように取得しますか?

セッションの言語に関係なく、ページに2つの特定の言語コンテンツを表示する必要があります。これまでのところ、これは私の進歩です:これは、アクティブな言語のIDでコンテンツを取得するためにうまく機能します。

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

特定の言語をフィルターに適用する方法は?

助けてくれてありがとう。シロ

回答:


15

qTranslateネイティブ関数を使用して作業を行う必要があります。qtrans_useqTranslateのすべてのジョブを実行する関数であるを使用します。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;  
?>

この例では、テキストの英語版が返されます!別の言語に翻訳するには、それを目的の言語識別子に置き換えてください!


はい、あなたを助けてくれてうれしいです!
キーッチ

これは完璧に機能しget_page($id)ますが、ビットが重要であることを理解するために数回の試行を要しました。ビューをレンダリングしているときまでに、qTranslateはのコンテンツを既に変更し$postて現在の言語のみを含むようにしています。そのため、すべての言語のオプションを取得するには、再度ロードする必要があります。
Marcus Downing、2007

@keatchこのプラグインを使用して、常に英語のテキストを表示し続けることができますか?私はそれを正しくインストールしましたが、コードに他の変更を加える必要がありますか?または、何もしなくても正常に動作します
Jack

それでもサポートが必要な場合は、私に直接連絡するか、こちらからお問い合わせください。お手伝いさせていただきます。@ジャック
レーニン

1
@ShivanRaptorは、現在の言語識別子を取得するためにさまざまな方法を使用できますが、最も推奨される方法は次のとおりqtrans_getLanguage()です。
レーニン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.