Support

Account

Home › Forums › General Issues › How to sort by Year and then by Month? Repeater and Data Picker.

Unread

How to sort by Year and then by Month? Repeater and Data Picker.

  • 
    <?php if( have_rows('roadmap_repeater2') ): ?>
        <section class="roadmap">
            <div class="container">
                <?php
                $repeater = get_field('roadmap_repeater2');
                $roadmapBlock = array();
                foreach( $repeater as $key => $row ) :
                    $column_id = $row['roadmap_repeater2_date'];
                    $second_date_string = DateTime::createFromFormat('d/m/Y', $column_id );
                    $second_date = $second_date_string->format('m/Y');
                    $roadmapBlock[$key] = $second_date;
                endforeach;
                array_multisort( $roadmapBlock, SORT_DESC, $repeater );
    
                $currMonth = "start";
                foreach( $repeater as $row ): ?>
                    <?php $second_date = DateTime::createFromFormat('d/m/Y', $row['roadmap_repeater2_date']); ?>
                    <?php if ($currMonth != $second_date->format('Y')): ?>
                        <div class="roadmap__header">
                            <h2 class="roadmap__heading"><?php echo $second_date->format('Y'); ?></h2>
                        </div>
                        <?php $currMonth = $second_date->format('Y'); ?>
                        <div class="roadmap__item">
                            <time class="roadmap__time" datetime="<?php echo $row['roadmap_repeater2_date']; ?>">
                                <?php echo $second_date->format('m/Y'); ?>
                            </time>
                        </div>
                    <?php else: ?>
                        <div class="roadmap__item">
                            <time class="roadmap__time" datetime="<?php echo $row['roadmap_repeater2_date']; ?>">
                                <?php echo $second_date->format('m/Y'); ?>
                            </time>
                        </div>
                    <?php endif; ?>
                <?php endforeach; ?>
            </div>
        </section>
    
    <?php endif; ?>
    
Viewing 1 post (of 1 total)

You must be logged in to reply to this topic.