WordPress Получить ID вне петли

Я на странице поста и, кроме того, хочу отобразить миниатюру, заголовок и ссылку со всех постов в категории «спонсор». Мне удалось отобразить эскиз и заголовок:

 <a <?php echo ( !wp_is_mobile() )? 'target="_blank"' : '' ?> href="<?php _s( get_the_ID()) ?>">
<?php
query_posts( array( 'category_name' => 'sponsor' ) );
if ( have_posts() ) while ( have_posts() ) : the_post();
echo '<li>';
the_post_thumbnail( 'big-thumb', array( 'alt' => get_the_title(), 'class' => 'img-responsive post-cover' ) );
the_title();
echo '</li>';
endwhile;
wp_reset_query();
?>
</a>

НО не могу успешно получить нужные ссылки на посты в категории «спонсор». Я попытался использовать get_the_ID, но он использует ссылку со страницы сообщения, на которой я нахожусь. Из моих исследований я думаю, что это потому, что мне нужно получить идентификатор страницы за пределами цикла.

Я новичок, когда дело доходит до PHP, поэтому любая помощь будет принята с благодарностью.

0

Решение

Просто попробуйте сделать так, чтобы включить ссылку на пост по их идентификатору

 <?php
query_posts( array( 'category_name' => 'sponsor' ) );
if ( have_posts() ) while ( have_posts() ) : the_post(); ?>

<a <?php echo ( !wp_is_mobile() )? 'target="_blank"' : '' ?> href="<?php _s( get_the_ID()) ?>">
<?php
echo '<li>';
the_post_thumbnail( 'big-thumb', array( 'alt' => get_the_title(), 'class' => 'img-responsive post-cover' ) );
the_title();
echo '</li>';
echo '</a>';
endwhile;
wp_reset_query();
?>
0

Другие решения

Других решений пока нет …