Maneira correta de obter o conteúdo da página


8

Preciso obter conteúdo específico da página (como a página (12))

Eu usei isso:

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

Funciona bem, execpt para compatibilidade com qtranslate, retorna texto em francês e inglês

Mas o loop está bom, retorne apenas a versão em bom idioma

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

Então a pergunta .... COMO obter um conteúdo de página específico dentro do loop ...


Isso foi muito útil! Obrigado! Tive dificuldade para procurar o que pensava ser um simples pedido.

Respostas:


6

Só para esclarecer:

Você misturou duas coisas aqui. qTranslate armazena os diferentes idiomas no mesmo post. Se você chamar get_content(), $post->contentou uma outra consulta direta, você vai ter todo o conteúdo com todos os idiomas diferentes do banco de dados.

O que o qTranslates faz, cria um gancho de filtro que é anexado ao the_contentgancho. Se alguém chamar the_content()um modelo de página, todos os outros idiomas serão filtrados.

Então você está certo. Para filtrar os outros idiomas, você deve aplicar o gancho de filtro the_contentà sua saída.


6

Aqui está a solução que eu tenho, que funciona bem ... o códice deve ser mais específico sobre o apply_filter ... usado sempre

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

Mas eu encontrei um ótimo lugar para fazer perguntas (AQUI)! obrigado rapazes !


5

Não é usado com frequência, mas eu gosto de get_post_field()função. É compacto, mas flexível para quando você precisar extrair um campo específico.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.