Anasayfada sadece sabit yazıların görüntülenmesi

WordPress’in sabit yazılar (sticky post) özelliğini herkes önemli bir yazısı için en az mutlaka bir kere kullanmıştır. WordPress yönetiminden sabit seçtiğiniz yazı en üste duracak şekilde konumlanır. Geçtiğimiz haftalarda yapmış olduğum bir sitede müşteri ana sayfada sadece sabit olarak seçtiği 4 tane yazının görüntülenmesini istemişti. Ana sayfada query_post ile 4 yazıyı göster yaptığımızda 4 tane sabit yazıyı en üste taşıyor fakat o sabit yazılardan sonra eklenen (tarih olarak) yazıları da eklemeye devam ediyordu. Yani showpost=4 kodumuz sadece normal yazılar için geçerliydi, kaç tane sabit yazı varsa artı olarak da 4 tane normal yazı basıyordu. Aradığım kod ana sayfada sadece istediğim kadar sabit yazı özelliğini taşıyan yazıyı basmaktı. Google amca sağolsun aramanın gücüne biraz daha inancımızı arttırdı ve bu sorunumuzu da çözmüş olduk.

Anasayfada “sadece” ve istediğimiz kadar sabit yazının gösterilmesi için gereken kod:

<?php
$sticky = get_option( 'sticky_posts' );
query_posts( array( 'post__in' => $sticky, 'caller_get_posts' => 1, 'orderby' => ID, 'showposts' => 4 ) );
?>

Örnek;

<?php
$sticky = get_option( 'sticky_posts' );
query_posts( array( 'post__in' => $sticky, 'caller_get_posts' => 1, 'orderby' => ID, 'showposts' => 4 ) );
?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

<?php the_title(); ?>

<?php endwhile;?>
<?php endif; ?>

Yaptığımız zaman bu kodu eklediğimiz yerde sabit olarak seçilmiş sadece 4 tane yazının başlığını görüntüleyebiliyoruz.