How to show this year’s posts in Wordpress

Asked

Viewed 33 times

0

Hello I would like to know how I can change the code below, so that it only shows the posts of the year in which we are. So that when next year comes only show the posts of the year. Keeping in case the settings of meta_key and meta_value, why I need the items that are shown to have the data contained in these two fields.

<?php

if(get_option('dt_me_random_order2') =='true') {
    $rand = 'rand';
} else {
    $rand = '';
} 

// Desativa o modo de Slide Show da Index

if(get_option('dt_me_ativar_slider2') =='true') {
// Se não tiver ativado a ordem e modo slide apartece essas variavies que seram adicionadas nas verificações abaixo
    $ativarSlide = 'id="dt-episodes2"';
    $setasSlide = '<div class="nav_items_module">
  <a class="btn prevmg"><i class="icon-caret-left"></i></a>
  <a class="btn nextmg"><i class="icon-caret-right"></i></a>
</div>';
}
else {
// Se não tiver ativado a ordem e modo slide apartece essas variavies que seram adicionadas nas verificações abaixo
    $ativarSlide = '';
}
// Aplica as configurações no laço de repetição
    query_posts( array(
    'post_type' => array('episodes'),
    'showposts' => get_option('dt_me_number_items2','20'),
    'meta_key' => 'colocar_este_episodio_na_home',
    'meta_value' => 'Sim',
    'orderby' => $rand,
    'order' => 'desc'
));
?>
<header>
<h2><?php echo get_option('dt_me_title2','Mega Lançamentos'); ?></h2>
<?php if(get_option('dt_me_autoplay_slider2') <> 'true') { echo $setasSlide; } else { } ?>
<span><?php if($url = get_option('dt_episodes_slug','episodes')) { if(get_option('dt_me_todos_lancamentos') =='true') { ?><a href="<?php echo site_url().'/mega_lancamentos/'; ?>" class="see-all"><?php _d('Ver Mega Lançamentos'); ?> - Total (<?php echo $wp_query->found_posts; ?>)</a><a href="<?php echo esc_url( home_url() ) .'/'. $url .'/'; ?>" class="see-all"><?php _d('Ver Todos os Lançamentos'); ?> - Total (<?php echo doo_total_count('episodes'); ?>)</a><?php } else { ?><a href="<?php echo site_url().'/mega_lancamentos/'; ?>" class="see-all"><?php _d('Ver Mega Lançamentos'); ?> - Total (<?php echo $wp_query->found_posts; ?>)</a><? } } ?></span>
</header>
<div id="epiloadmg" class="load_modules"><?php _d('Loading..');?></div>
<div <?php echo $ativarSlide; ?> class="animation-2 items">
    <?php while ( have_posts() ) : the_post(); ?>
    <?php get_template_part('inc/parts/item_ep'); ?>
    <?php endwhile; ?>
</div>
<?php if(get_option('dt_me_ativar_slider2') <> 'true') { ?><header><span id="vertudobaixo"><span><?php if($url = get_option('dt_episodes_slug','episodes')) { if(get_option('dt_me_todos_lancamentos') =='true') { ?><a href="<?php echo site_url().'/mega_lancamentos/'; ?>" class="see-all"><?php _d('Ver Mega Lançamentos'); ?> - Total (<?php echo $wp_query->found_posts; ?>)</a><a href="<?php echo esc_url( home_url() ) .'/'. $url .'/'; ?>" class="see-all"><?php _d('Ver Todos os Lançamentos'); ?> - Total (<?php echo doo_total_count('episodes'); ?>)</a><?php } else { ?><a href="<?php echo site_url().'/mega_lancamentos/'; ?>" class="see-all"><?php _d('Ver Mega Lançamentos'); ?> - Total (<?php echo $wp_query->found_posts; ?>)</a><? } } ?></span></span></header><? } else { }

// Reseta os dados da query do while
wp_reset_query();  ?>

1 answer

1


You will achieve this by following the example below:

// O parâmetro "year" vai trazer somente posts do ano informado.
query_posts( array(
    'post_type'  => array('episodes'),
    'showposts'  => get_option('dt_me_number_items2','20'),
    'meta_key'   => 'colocar_este_episodio_na_home',
    'meta_value' => 'Sim',
    'orderby'    => $rand,
    'order'      => 'desc',
    'year'       => date( 'Y' ) // A função date com o parâmetro Y retorna o ano atual.
));

Browser other questions tagged

You are not signed in. Login or sign up in order to post.