qTranslate obtener contenido por idioma
¿Cómo obtener el contenido por ID y por idioma específico?
Necesito mostrar contenido en dos idiomas específicos en una página, independientemente del idioma de la sesión. Hasta ahora, este es mi progreso: esto funciona bien para obtener el contenido por ID del idioma activo:
<?php
$id=47;
$post = get_page($id);
$content = apply_filters('the_content', $post->post_content);
echo $content;
?>
¿Cómo aplicar un idioma específico al filtro?
Gracias por la ayuda. Sziro

Debes utilizar las funciones nativas de qTranslate para realizar tu trabajo. Usa qtrans_use
, que es la función que hace todo el trabajo en qTranslate. Está definida en qtranslate_core.php, línea 747
function qtrans_use($lang, $text, $show_available=false)
¡Úsala en el contenido crudo de la publicación!
Prueba este código:
<?php
$id=47; $post = get_page($id);
$content = qtrans_use('en', $post->post_content,false);
echo $content;
?>
En este ejemplo, ¡devolverá la versión en inglés de tu texto! ¡Sustitúyelo con el identificador del idioma deseado para traducir a otro idioma!

Esto funciona perfectamente, pero me tomó varios intentos darme cuenta de que la parte de get_page($id)
es importante. Para cuando estás renderizando la vista, qTranslate ya ha modificado el contenido de $post
para que solo contenga el idioma actual, por lo que necesitas cargarlo nuevamente para obtener las opciones para todos los idiomas.

@keatch ¿puedes ayudarme con este plugin? Sigue mostrando siempre texto en inglés, lo he instalado correctamente, ¿necesito hacer algún otro cambio en el código? ¿O funcionará normalmente sin hacer nada?

Si aún necesitas ayuda, puedes contactarme personalmente o preguntar aquí. Estaré encantado de ayudarte. @Jack

@ShivanRaptor para obtener el identificador del idioma actual puedes usar varias formas, pero la más recomendada es: qtrans_getLanguage()
.

Error fatal: Llamada a función no definida qtrans_use() en el archivo index.php cuando usé el código anterior
