La publication personnalisée WordPress disparaît après une certaine date

Publié par Jean-Michel le

Je développe actuellement un site Web pour un client (actuellement hébergé sur mon propre domaine – http://jamiemcardle.com ) et nous avons ajouté une section sur la page d’accueil qui montre les événements à venir. Le site Web est un thème WordPress personnalisé et il existe deux types de publication sur le site Web : la publication WP standard et un type de publication personnalisé appelé « événements ». J’ai besoin que le type de publication des événements disparaisse / supprime automatiquement une fois leur date passée.

<?php $args = array( 'post_type' => 'event', 'posts_per_page' => 9 );$loop = new WP_Query( $args ); while ( $loop->have_posts() ) : $loop->the_post(); ?>
    <div class="text-center">
        <div class="feature">
            <i class="icon inline-block mb30 fade-0-4 fa fa-calendar-o" style="font-size: 38px !important;"></i>
            <h4 class="uppercase bold"><?php the_field('date'); ?></h4>
            <h5><?php the_field('description'); ?></h5>
        </div>
    </div>
<?php endwhile; ?>

Ainsi, chaque fois que la valeur du champ de date est dépassée, elle doit être exempte du code ci-dessus. J’espère que je me suis expliqué clairement et j’ai hâte d’apprendre de toutes les solutions possibles. Merci d’avance pour toute aide,

Jamie.

Solution n°1 trouvée

Il semble que vous utilisiez les champs personnalisés avancés avec votre type de publication personnalisé « Événements ». En supposant que c’est vrai et que vous utilisez le type ACF Date Picker, vous pouvez déclarer deux variables, l’une pour la date de l’événement, l’autre pour la date d’aujourd’hui, puis les comparer. Si la date de l’événement est la même date qu’aujourd’hui ou dans le futur, ajoutez-les au DOM, sinon ne l’ajoutez pas.

<?php $args = array( 'post_type' => 'event', 'posts_per_page' => 9 );$loop = new WP_Query( $args ); while ( $loop->have_posts() ) : $loop->the_post(); ?>
    <?php $event_date = get_field('date'); // Get the event's date ?>
    <?php $today = date('F j, Y'); // Get today's date ?>
    <?php if ($event_date >= $today) : ?>
        <div class="text-center">
            <div class="feature">
                <i class="icon inline-block mb30 fade-0-4 fa fa-calendar-o" style="font-size: 38px !important;"></i>
                <h4 class="uppercase bold"><?php the_field('date'); ?></h4>
                <h5><?php the_field('description'); ?></h5>
            </div>
        </div>
    <?php endif; ?>
<?php endwhile; ?>

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *