• Hej,
    mam mały problem z ustawieniem wyświetlania wpisów przy użyciu Advanced Custom Fields, a dokładnie sortowanie po dacie Date Picker, na stronie którą właśnie tworzę mam imprezy, które są w kolejności rosnącej „Od najwcześniejszej do Najpóźniejszej”, mój problem polega na tym że dzięki poniższemu fragmentowi kodu, wyświetlają mi się tylko imprezy z jednego miesiąca, a nie ze wszystkich:

    http://pastebin.com/GJCQmmdD

    W bazie mam dodane daty: 15 luty 2014, 21 luty 2014, 24 luty 2014, 28 luty 2014, 3 marze, 27 marzec. Ponieważ 15 i 21 luty już za nami, te wpisy się nie wyświetlają, a aktualnie wyświetlają się 24 i 28 luty, natomiast marcowe Wpisy już nie, choć powinny, gdzie leży problem?

    Z góry dziękuję za wszelkie sugestie 🙂

Zobacz 9 odpowiedzi - od 1 do 9 (z 9 łącznie)
  • Spróbój zamienić swoją pętlę:

    if (have_posts()) : ?>
                    <?php
                        global $more;
                        $more = 0;
                        $pom = 0;
                        while (have_posts()) : the_post();
                        $pom++;
                ?>

    na moją

    <?php if ( have_posts() ) :while( $my_query->have_posts() ) : $my_query->the_post(); ?>
    <?php endwhile; else: ?>
    	<p>There are no posts</p>
    <?php endif; ?>
    Twórca wątku siwy19911

    (@siwy19911)

    Hej podmieniłem i niestety nadal to samo, pokazuje tylko daty z Lutego, format z ACF mam taki sam jak format w $today, jestem już bezradny 🙁

    <?php
                    $today = date('dd/mm/yy');
                    $args=array(
                        'post_type' => 'post',
                        'posts_per_page' => 6,
                        'meta_key' => 'start_date',
                        'meta_compare' => '>=',
                        'meta_value' => $today,
                        'orderby' => 'start_date',
                        'paged' => $paged,
                        'cat' => '16',
                        'order' => 'ASC',
                    );
                    $my_query = new WP_Query($args);
                ?>
                    <?php if ( have_posts() ) :while( $my_query->have_posts() ) : $my_query->the_post(); ?>

    A jak wywalisz

    'meta_key' => 'start_date',
     'meta_compare' => '>=',
     'meta_value' => $today,

    wyświetli Ci wszystkie?

    Twórca wątku siwy19911

    (@siwy19911)

    Tak, wówczas wyświetla wszystkie.

    Ok, a teraz zróbmy taki test:
    to daj z powrotem:

    'meta_key' => 'start_date',
    'meta_compare' => '>=',
    'meta_value' => $today,

    i zamień orderby na
    'orderby' => 'date'
    dodaj :
    'order' => 'ASC'

    Twórca wątku siwy19911

    (@siwy19911)

    To samo, pokazuje wszystkie posty z datami, bez żadnego sortowania (pomieszane)

    Spróbuj jeszcze to :

    'meta_key' => 'start_date',
    'orderby' => 'meta_value_num',
    'order'=> 'ASC'

    To jest z dokumentacji ACF

    to znaczy ustaw 'orderby' => 'meta_value_num',

    Twórca wątku siwy19911

    (@siwy19911)

    Udało się! Bardzo dziękuję Ci za pomoc, dla osób poszukujących rozwiązania w przyszłości:/

    1. Data musi być formatu w ACF – yyddmm (20140223), ten sam format musi być w PHP jako date(’Ymd’).

    2. Należy zastosować:

    <?php
                    $today = date('Ymd');
                    echo $today;
                    $args=array(
                        'post_type' => 'post',
                        'posts_per_page' => 6,
                        'meta_key' => 'start_date',
                        'meta_compare' => '>',
                        'meta_value' => $today,
                        'orderby' => 'start_date',
                        'order'=> 'ASC',
                        'paged' => $paged,
                        'cat' => '16',
                    );
                    $my_query = new WP_Query($args);
    
                    query_posts( $args );?>
                    <?php if ( have_posts() ) :while( $my_query->have_posts() ) : $my_query->the_post(); ?>

    3. Mając datę 20140223, należy ją przekonwertować na własny format 🙂
    Raz jeszcze dzięki mlis za pomoc

    Ta wiedza mi się też przyda:)

    Pozdrawiam

Zobacz 9 odpowiedzi - od 1 do 9 (z 9 łącznie)

Temat ‘advanced custom fields – Sortowanie Date Picker’ jest zamknięty na nowe odpowiedzi.