Support

Account

Home Forums Add-ons Repeater Field Repeater – order by date don't sort properly

Helping

Repeater – order by date don't sort properly

  • I’m using ACF plugin on my site. I want to sort my link containing date. So, in frontend I have something like that

    01.10.2017, News
    02.02.2018, News
    06.09.2017, News

    and I want it to be like that

    02.02.2018, News
    01.10.2017, News
    06.09.2017, News

    My code looks like this

    <?php
    
    $repeater = get_field('media');
    $order = array();
    
    foreach($repeater as $i => $row) {
        $order[$i] = $row['media_date'];
    }
    
    array_multisort($order, SORT_ASC, $repeater);
    
    if($repeater): ?>
    
    <ol>
        <?php foreach($repeater as $i => $row): ?>
            <li>
            <?php echo $row['media_date']; ?>, <a href="<?php echo 
    $row['media_link']; ?>" target="_blank"><?php echo $row['media_title']; ?>
    </a>
            </li>
    <?php endforeach; ?>
    </ol>
    <?php else: 
        echo '<p>No matching post!</p>';
    endif; ?>

    And it sort data but incorrect. Incorrect I mean like this

    01.10.2017, News
    02.02.2018, News
    06.09.2017, News

    What I’m missing? How to order li items by date?

  • Ok, I solved my error. Simply, I added strtotime and my line looks like this

    $order[$i] = strtotime($row['media_date']);

Viewing 2 posts - 1 through 2 (of 2 total)

The topic ‘Repeater – order by date don't sort properly’ is closed to new replies.