Não sei por que, mas usei get_posts()
para consultar alguns dados. Então eu usei setup_postdata()
... Eu acho que é usado para que eu possa usar funções como the_permalink()
etc com os novos dados do post?
<?php foreach ($childPosts as $cp) : setup_postdata($cp); ?>
<article <?php post_class() ?> id="post-<?php the_ID(); ?>">
<h1><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h1>
<?php if (has_post_thumbnail()) : ?>
<a href="<?php the_permalink() ?>"><?php the_post_thumbnail(($hasOutputNotFeaturedDiv) ? 'thumb-small' : null) ?></a>
<?php endif; ?>
<?php the_excerpt(); ?>
<p class="more"><a href="<?php the_permalink() ?>">Read more ...</a></p>
<?php include (TEMPLATEPATH . '/inc/meta.php' ); ?>
</article>
<?php endforeach; ?>
mas parece que the_excerpt
contém apenas o novo valor dos dados de postagem, por que isso? Acho que se eu usá- echo get_the_permalink($cp)
lo funciona bem. Mas acho que a versão mais curta será melhor
Substitua o
com
Então você precisa usar a
$post
variável exata junto com osetup_postdata()
.fonte
setup_postdata()
?Dependendo de onde você estiver usando setup_postdata () (se não estiver no loop principal ou em um widget de função / barra lateral, por exemplo), também será necessário declarar -
fonte
global post;
não funcionasetup_postdata($post);
se você deseja usar athe_title()
família de comandos etc.Está em https://codex.wordpress.org/Function_Reference/setup_postdata
Em vez disso, use
... também verifique se você
$post_object
é um objeto WP_Post válido.fonte
Ao consultar posts, basta usar o loop normal com um conjunto de argumentos passados para ele. Em seguida, redefina a consulta no final.
fonte
setup_postdata()
que não parece funcionar? Eu usei errado?$post
vez de$cp
corrige o problema.