Intereting Posts
Есть ли способ изменить select-list для новой пользовательской таксономии? Манипулирование / просмотр postmeta удаленно Разбивка на пользовательскую таксономию Что происходит, когда два или более плагина используют один и тот же крючок? список всех категорий, имеющих определенное слово в заголовке Загружать скрипты только для выбранного шаблона Один обмен для нескольких типов сообщений Авансированный запрос отношений полей по запросу и запрос внутри Создавайте одноразовую запись динамически, добавляйте к основному запросу, не вставляйте сообщение (просмотр профиля пользователя) Использование настраиваемых полей для запуска конкретных действий при сохранении сообщения? WordPress: Показать сообщения по пользовательскому выбору запроса Как отображать недавно измененные сообщения в недавнем виджете post в wordpress Почему мой WP_Query не работает, когда термины tax_query являются массивом? Изменить По умолчанию wp_mail From, без влияния на формы тяжести Weird закодированная ошибка при использовании wp_generate_attachment_metadata ()

Как сделать, чтобы на моей главной странице отображался только последний липкий пост, а также обычные виджеты?

WP 3.3.1, Suffusion 4.0.2

Я пытаюсь понять, как сделать на моей первой странице только самую последнюю заметку, отмеченную липкой. Я не могу найти, как это сделать в документации.

Я пытаюсь использовать комбинацию будущих дат публикации и истечения срока действия (через плагин Atropos) для контроля того, что отображается на моей первой странице.

Какие-либо предложения? Есть ли плагин с коротким кодом, который позволяет мне вставить последнюю запись?

Если я правильно понимаю вас, вы хотите показать только последнюю заметку только на первой странице. У меня была такая же проблема месяц или два назад, и я получил отличную помощь от сообщества здесь, в WordPress Answers. Решение состоит в том, чтобы запустить два цикла в вашем файле index.php. Один, чтобы вытащить только последний липкий пост, а второй для отображения всех других сообщений.

Вот ссылка , но я также опубликую свой код для этой проблемы.

<?php get_header(); ?> <?php get_sidebar( 'left' ); ?> <?php if ( is_home() && !is_paged() ) : ?> <div id="post-wrapper"> <?php // Get IDs of sticky posts $sticky = get_option( 'sticky_posts' ); // first loop to display only my single, // MOST RECENT sticky post $most_recent_sticky_post = new WP_Query( array( // Only sticky posts 'post__in' => $sticky, // Treat them as sticky posts 'ignore_sticky_posts' => 1, // Order by date to get the most recently published sticky post 'orderby' => date, // Get only the one most recent 'posts_per_page' => 1 ) ); ?> <?php while ( $most_recent_sticky_post->have_posts() ) : $most_recent_sticky_post->the_post(); ?> <!-- your code to display most recent sticky --> <?php endwhile; wp_reset_query(); ?> <?php endif; ?> <?php $all_other_posts = array( 'post__not_in' => get_option( 'sticky_posts' ) ); global $wp_query; $merged_query_args = array_merge( $wp_query->query, $all_other_posts ); query_posts( $merged_query_args ); ?> <?php if( have_posts() ) : ?> <?php while( have_posts() ) : the_post(); ?> <!-- your code to display all other posts --> <?php endwhile; ?> <?php endif; ?> </div> <!-- end #post-wrapper --> 

Очевидно, что этот код не является копией и вставкой для всех. Это работало для меня в структуре кода, которую я имел в то время. Кроме того, простите противное форматирование: P

Большое спасибо за это! Это было очень полезно. Один комментарий: если вы хотите, чтобы последний пост был опубликован как опубликованная публикация (т. Е. Если сообщение не было сделано липким), и вы не хотите, чтобы этот пост дублировался в обычном списке, то в изменение первого цикла:

 while ( $most_recent_sticky_post->have_posts() ) : $most_recent_sticky_post->the_post(); 

чтобы:

 while ( $most_recent_sticky_post->have_posts() ) : $most_recent_sticky_post->the_post(); $do_not_duplicate = $post->ID; 

и во втором цикле измените:

 if( have_posts() ) : while( have_posts() ) : the_post(); 

в

 if( have_posts() ) : while( have_posts() ) : the_post(); if( $post->ID == $do_not_duplicate ) continue; 

Брюс