Support » Plugins » Advanced Custom Fields – Date Picker für Gutscheine

  • Gelöst madmaxy

    (@madmaxy)


    Hi,

    versuche mit ACF Gutscheine darzustellen. Funktioniert auch soweit.

    Nun würde ich gerne das Feld ausblenden, wenn das aktuelle Datum erreicht wird.

    Z.B. Auf der Seite sieht man das Datum wie z.B: 31-08-2015. Nun würde ich gerne das Feld deaktivieren am 31-08-2015.

    Ich habe folgenden Code für den Date Picker eingebaut


    <?php
    $date = DateTime::createFromFormat('Ymd', get_field('gultigkeit'));
    $datum = $date->format('d-m-Y');
    if( get_field('gultigkeit') ){
    echo '<div><span class="shop-label">Gult:</span>' . '<span class="shop-value">' . $datum . '</span></div>';
    }
    ?>

Ansicht von 6 Antworten - 1 bis 6 (von insgesamt 6)
  • Mit if( get_field('gultigkeit') ) prüfst Du ja nur, ob das Feld einen Wert zugewiesen bekommen hat, nicht aber ob das aktuelle Datum überschritten wurde. Dazu musst Du dann ein if-Statement mit einem Vergleichsoperator verwenden.

    Thread-Starter madmaxy

    (@madmaxy)

    Hi Bego,

    danke für den Tipp.

    Leider bin ich nicht der php Experte.

    Hättest du eine Code Idee? Vermutlich wäre am besten, mit einem kleinergleich Operator (<=) oder ?

    23:37 Uhr … ich bin etwas faul und kopiere mal ein bisschen Code aus einem Support-Thread:

    <?php
    //Feld onsale gibt das Datum an, bis wann das Angebot läuft
    $onsale_date = strtotime(get_field(‘onsale’));
    // $now ist das aktuelle Datum
    $now = time();
    
    // solange das Angebots-Datum größer ist als das aktuelle Datum …
    if ($onsale_date > $now) {
    // … zeigen wir die Angebote an
    echo "Heute im Angebot";
    // wieso im Code-Beispiel jetzt das Datum ausgegeben wird, ist mir nicht ganz klar.
    // statt dessen sollte der reduzierte Preis ausgegeben werden … 
    // vielleicht ein anderes Custom Field?
    echo get_field( ‘onsale’ );
    }
    // und sonst halt der normale Preis, auch ein Custom Field
    else {
    echo get_field( ‘price’ );
    } ?>
    Thread-Starter madmaxy

    (@madmaxy)

    Danke Bego,

    du warst schneller als ich.

    Ich habe es so gelöst. Zur Info:

    <?php
    date_default_timezone_set('UTC');
    $date = DateTime::createFromFormat('Ymd', get_field('gultigkeit'));
    $datum = $date->format('d-m-Y');
    $heute = date('d-m-Y');
    if( $datum >= $heute ){
    echo '<div><span class="shop-label">Gult:</span>' . '<span class="shop-value">' . $datum . '</span></div>';
    echo $heute;

    }else {
    echo "hallo tets";
    }
    ?>

    Wobei noch zu klären wäre, was passiert, wenn das Feld gultigkeit nicht gesetzt wurde.

    Thread-Starter madmaxy

    (@madmaxy)

    Hi Bego,

    du hast recht, wenn das Feld

      gultigkeit

    nicht gesetzt wird zerschießt es mir die Seite.

    Ne Idee?

Ansicht von 6 Antworten - 1 bis 6 (von insgesamt 6)
  • Das Thema „Advanced Custom Fields – Date Picker für Gutscheine“ ist für neue Antworten geschlossen.