В wordpress запрос для создания списка записей возможно фильтровать добавляя собственный фильтр к условию. Например, если надо показывать только липкие записи, то надо взять список всех таких страниц и добавить к условию WHERE дополнительный фильтр.
$sticky = get_option('sticky_posts'); $where .= ' AND wp_posts.ID IN ('.implode(',', $sticky).') ';
Если такое условие нужно только для главной страницы, то надо добавить проверку is_home(). В wordpress для изменения условия в запросе есть специальный фильтр posts_where, который возвращает текущее значение условия WHERE перед запросом к базе данных. Этот фильтр можно использовать для разработки плагинов, например показывать только липкие записи на главной странице:
<?php //Plugin Name: Forever Sticky //Description: Показывать на главной странице только липкие записи //Author: Polyetilen //Version: 1.0 function forever_sticky_condition ( $where ) { if(is_home()){ $sticky = get_option('sticky_posts'); if(count($sticky)>0){ return $where.' AND wp_posts.ID IN ('.implode(',', $sticky).') '; }else{ return $where; } }else{ return $where; } } add_filter('posts_where', 'forever_sticky_condition'); ?>
Скачать плагин Forever sticky.