qTranslate отримати вміст за мовою [закрито]


9

Як ви отримуєте вміст за id та за певною мовою?

Мені потрібно відображати два певні мовні вмісти на сторінці, незалежно від мови сеансу. Поки що це мій прогрес: це чудово працює для отримання вмісту за ідентифікацією активної мови:

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

Як застосувати конкретну мову до фільтра?

Дякую за допомогу. Сіро

Відповіді:


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;  
?>

У цьому прикладі він поверне англійську версію вашого тексту! Замініть його потрібним ідентифікатором мови для перекладу на іншу мову!


Так, рада, що допомогла вам!
— кеч

Це прекрасно працює, але мені знадобилося кілька спроб зрозуміти, що get_page($id)біт важливий. На той час, коли ви надаєте подання, qTranslate вже змінив вміст, $postщоб він містив лише поточну мову, тому вам потрібно завантажити його знову, щоб отримати параметри для всіх мов.
— Marcus Downing

@keatch чи можете ви допомогти мені з цим плагіном, щоб він постійно показував англійський текст, я правильно його встановив, чи потрібно вносити будь-які інші зміни в код? або це буде працювати нормально, нічого не роблячи
— Джек

Якщо вам все-таки потрібна допомога, зв’яжіться зі мною особисто або попросіть тут. Я б радий допомогти. @Jack
— Ленін

1
@ShivanRaptor , щоб отримати поточний ідентифікатор мови можна використовувати багато способів , але найбільш рекомендований: qtrans_getLanguage().
— Ленін
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.