Я хочу, чтобы создавать пользовательские циклы с использованием query_posts или $ custom_query = new WP_Query() и иметь возможность делать липкие сообщения.Как заставить WordPress липкие сообщения работать в пользовательских циклах?
Например, у меня есть настраиваемый цикл на странице под названием «Новости», которая зацикливает сообщения в категории «новости» и создает из них красивую сетку масонства. Зацикленные элементы затем ссылаются на фактическую статью.
<?php $custom_query = new WP_Query('cat=8'); // boxes loop
while($custom_query->have_posts()) : $custom_query->the_post(); ?>
<div <?php post_class('newsbox box '); ?> id="post-<?php the_ID(); ?>">
<?php //if looplink exists, looplink
$looplink = get_post_meta(get_the_ID(), 'linkki', true);
if(! empty($looplink)) :?> <a class="looplink" target="_blank" href="<?php $linkki = get_post_meta($id, 'linkki', true); if(! empty($linkki)) { echo $linkki; } ?>"></a>
<?php endif; //end looplink ?>
<h3><?php the_title(); ?></h3>
<?php if (has_post_thumbnail()) {the_post_thumbnail();} ?>
<?php the_content(); ?>
</div>
<?php endwhile; ?>
<?php wp_reset_postdata(); // reset the query ?>
Я также использую эту петлю, чтобы отобразить то есть виджеты социальных медиа, поэтому они всегда должны быть первые несколько статей (= липким).
Одна идея, которой я не полностью удовлетворен, заключается в том, чтобы не указывать категорию для цикла, а указывать ненужные категории для исключения. Похоже, что Sticky Posts работает по какой-то причине. Есть ли способ сделать эту работу с помощью простой функции без необходимости
query_posts('cat=-1,-2,-3,-4');
и т. Д. Для всех петель?
Конечно, решение, которое сделало бы Sticky сообщениями всегда липкими, независимо от того, использую ли я их на домашней странице или пользовательский цикл, показывающий определенную категорию или где угодно.