Я использую цикл на своем веб-сайте для отображения постоянных ссылок предыдущего сообщения.
<?php
global $post;
$current_post = $post;
for($i = 1; $i <= 30; $i++):
$post = get_previous_post();
setup_postdata($post); ?>
<?php if($post): ?>
<a href="<?php the_permalink(); ?>" title="post-<?php the_ID(); ?>" class="next_link">Next Posts</a>
<?php endif; ?>
<?php endfor;
wp_reset_postdata();
$post = $current_post;
?>
используя этот цикл, я в 30 раз получаю ссылку «следующие посты»
что я хочу сделать, это получить только последний результат этого цикла.
на данный момент я использую css и jquery для отображения только последней ссылки, используя этот css:
a.next_link {display:none}
a.next_link:last-child {display: block}
но, как вы можете себе представить, это не очень хорошее решение.
Я хотел бы запустить цикл и получить только последний пост $.
Есть ли способ добавить несколько php в мой цикл, чтобы получить только последний $ пост этого цикла?
Спасибо за вашу помощь,
Что вы хотите сделать, это пропустить предыдущие 29 записей, так как WP не предоставляет вам способ сделать это из коробки. использование continue
манипулировать вашей петлей.
<?php
global $post;
$current_post = $post;
for($i = 1; $i <= 30; $i++):
$post = get_previous_post();
if ($i != 30):
continue;
endif;
setup_postdata($post); ?>
<?php if($post): ?>
<a href="<?php the_permalink(); ?>" title="post-<?php the_ID(); ?>" class="next_link">Next Posts</a>
<?php endif; ?>
<?php endfor;
wp_reset_postdata();
$post = $current_post;
?>
Других решений пока нет …