Forma adecuada de obtener contenido de la página

8

Tengo que obtener contenido de página específico (como página (12))

Yo usé eso:

  <?php $id=47; $post = get_page($id); echo $post->post_content;  ?>

Funciona bien execpt para compatibilidad con qtranslate, devuelve texto en francés e inglés

Pero el ciclo está bien, devuelve solo la versión de buen idioma

<?php if(have_posts()) : while(have_posts()) : the_post(); ?>
<div id="post">
<?php the_content(); ?>
</div> <!-- .post -->

Entonces la pregunta ... CÓMO obtener un contenido de página específico dentro del ciclo ...

Menardmam
fuente
Esto fue muy útil! ¡Gracias! Me costó mucho buscar lo que pensé que era una simple solicitud.

Respuestas:

6

Solo para aclarar:

Mezclaste dos cosas aquí. qTranslate almacena los diferentes idiomas en la misma publicación. Si llama get_content(), $post->contento un otro tipo de consulta directa, obtendrá todo el contenido con todos los diferentes idiomas de la base de datos.

Lo que hace qTranslates, crea un gancho de filtro que se adjunta al the_contentgancho. Si alguien llama the_content()a una plantilla de página, todos los demás idiomas se filtrarán.

Entonces tienes razón. Para filtrar los otros idiomas, debe aplicar el gancho de filtro the_contenta su salida.

rofflox
fuente
6

Aquí está la solución que tengo, que funciona bien ... el códice debería ser más específico sobre apply_filter ... lo usé todo el tiempo

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

¡Pero he encontrado un gran lugar para hacer preguntas (AQUÍ)! gracias chicos !

Menardmam
fuente
5

No se usa a menudo, pero a mí me gusta la get_post_field()función. Es compacto, pero flexible para cuando necesita extraer un campo específico.

Rarst
fuente