Code snippets

Een enkele sticky post tonen

Sticky posts zijn handig als je bijvoorbeeld op je homepage één post wilt tonen die blijft “plakken”, dus niet alleen de meest recente, maar een post of artikel die daar langere tijd moet blijven, ook al komen er nieuwere artikelen bij.

Je kan dit instellen bij het onderdeel “zichtbaarheid” van een post. Als je dit aanklikt, krijgt de post de eigenschap “sticky”.

We willen maar 1 post:

'posts_per_page' => 1,

Het is natuurlijk wel leuk als er ook iets komt te staan als er geen sticky posts zijn. Gewoon filteren op sticky posts gaat dan niet werken: dan zou je 0 resultaten kunnen krijgen.

Dus we vragen de sticky posts op, en als er wat in zit geven we dit mee aan de argumenten array:

$sticky = get_option('sticky_posts');
if ($sticky) $args['post__in'] = $sticky;

Je moet wel een kleine toevoeging doen die je misschien niet zou verwachten:  ignore_sticky_posts aan zetten. Doe je dat niet, dan krijg je alle sticky posts terug. Terwijl je (in dit geval) één resultaat wilt.

'ignore_sticky_posts' => 1,

Het eindresultaat wordt dan:

$args = array(
  'post_type' => 'post',
  'ignore_sticky_posts' => 1,
  'posts_per_page' => 1,
  'orderby' => 'date',
  'order' => 'desc');

$sticky = get_option('sticky_posts');
if ($sticky) $args['post__in'] = $sticky;
$loop = new WP_Query( $args );?>

 <?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
  <a href="<?php the_permalink(); ?>">
    <h3><?php the_title(); ?></h3>
    <p><?php the_content()?></p>
 </a>

 <?php endwhile; wp_reset_query(); ?>

Related Articles

  • Recent posts widget filteren op categorie

    Soms wil je in de recent posts widget alleen posts laten zien uit een bepaalde categorie. Dit is heel eenvoudig te doen met een paar regels code. Vul bij 6...
  • Emails sturen in WordPress

    Voor een eenvoudig contactformulier kan ja het beste een plugin gebruiken. Contact form 7 bijvoorbeeld. Maar soms wil je wat meer maatwerk: een met een cronjob gegenereerde email (bijvoorbeeld elke...
  • Bij vorige volgende posts binnen dezelfde categorie blijven

    WordPress heeft een hoop functionaliteiten ingebouwd, zoals ook bijvoorbeeld de get_previous_post(), get_next_post(), of get_previous_post_link() functies. Maar wat als je de vorige (of volgende) post wilt van dezelfde categorie? Dat lijkt...
  • Sorteren op custom taxonomie in WordPress

    Voor een project met eigen post types, maatwerk velden, en een maatwerk taxonomie structuur (Categorieën van tags zijn bijvoorbeeld een taxonomie), was het nodig om te kunnen sorteren op een...

Laat een reactie achter