Wie kann ich zwei Daten in der ACF-Datumsauswahl für Startdatum und Enddatum in WordPress einschränken?
Lesezeit: 3 Minuten
Jitendra Damor
Ich habe in WordPress einen Event-Post-Typ erstellt. Dafür habe ich Start- und Enddatum aus dem ACF-Datumspicker eingegeben.
Ich möchte, dass der Administrator das Enddatum größer als das Startdatum auswählen kann.
Gibt es eine Möglichkeit, das Start- und Enddatum einzuschränken?
Wenn der Administrator beispielsweise den 1. Januar 2016 als Startdatum auswählt, kann er nur das Enddatum 1. Januar oder höher als das ausgewählte Datum auswählen.
Es ist ein sehr wichtiges und notwendiges Feature in ACF, viele Leute wollen es. Ich habe viel Zeit damit verbracht, dies zu lösen und zu recherchieren, aber keine Lösung dafür gefunden. Es ist eine angeforderte Funktion von ACF, daher wird es mit der neuesten Version von ACF geliefert.
– Chandresch
19. Juni 2015 um 6:27 Uhr
Haben Sie eine Lösung?
– Ahsan Ali
8. Dezember 2017 um 10:53 Uhr
Habe immer noch keine Lösung.
– Jitendra Damor
11. Dezember 2017 um 9:57 Uhr
Ich habe auch das gleiche Problem, bekomme immer noch keine Antwort. Kann mir bitte jemand helfen? Ich lese auch support.advancedcustomfields.com/forums/topic/… diesen Link, aber keine Antwort
– Anand Choudhary
16. April 2018 um 12:53 Uhr
Hast du eine Lösung??
– Asfandyar Khan
5. März 2019 um 12:51 Uhr
Ich denke, wir können es mit Java-Skript tun und diesen Code verwenden, um das Limit des Enddatums festzulegen:
$( ".selector" ).datepicker({
minDate: new Date( )
});
Ich möchte das Start- und Enddatum im WordPress-Adminbereich einschränken. Wenn der Administrator ein Datum als Startdatum auswählt, sollte das Enddatum gleich oder größer als das Startdatum sein.
Ich hatte ein ähnliches Problem mit regulären Datumsfeldern. Ich hoffe, dieser JS-Code (mit der Moment-JS-Bibliothek) mit einigen Anpassungen wird Ihnen helfen.
$(document).ready(function() {
$("input[name="Arrival"]").change(function() {
var date_picked = $("input[name="Arrival"]").val();
var SpecialTo = moment(date_picked, "YYYY-MM-DD");
var today = new Date();
today.setDate(today.getDate() - 240);
var selectedDate = new Date(date_picked);
if (today <= selectedDate) {
//alert('Date is today or in future');
} else {
alert('Date is in the past');
$("input[name="Arrival"]").val('');
}
});
})
Wenn Sie den Quell-HTML der Datumseingabe mit einem Wert posten könnten, könnte ich ihn wahrscheinlich in das ändern, wonach Sie suchen.
Ich habe die ACF-Datumsauswahl im benutzerdefinierten Beitragstyp für Start- und Enddatum verwendet. Nicht am Frontend. Ich möchte auf der Backend-Seite einschränken.
– Jitendra Damor
17. Juni 2015 um 5:40 Uhr
wie kann ich für acf datepicker verwenden
– Anand Choudhary
17. April 2018 um 6:05 Uhr
Dragi Postolowski
Das funktioniert gut. Holen Sie sich einfach die Namensfelder mit dem Element inspect. Fügen Sie diesen Code in die hinzu Funktionen.php Datei.
add_action('acf/validate_save_post', 'my_acf_validate_save_post', 10, 0);
/**
* @throws Exception
*/
function my_acf_validate_save_post() {
$start = $_POST['acf']['field_61a7519a57d99'];
$end = $_POST['acf']['field_61a751d957d9a'];
// check custom $_POST data
if ($start > $end) {
acf_add_validation_error('acf[field_61a751d957d9a]', 'End date should be greater than or equal to start date.');
}
}
Wenn Sie Element prüfen öffnen, sollte das Eingabefeld wie folgt aussehen:
Es ist ein sehr wichtiges und notwendiges Feature in ACF, viele Leute wollen es. Ich habe viel Zeit damit verbracht, dies zu lösen und zu recherchieren, aber keine Lösung dafür gefunden. Es ist eine angeforderte Funktion von ACF, daher wird es mit der neuesten Version von ACF geliefert.
– Chandresch
19. Juni 2015 um 6:27 Uhr
Haben Sie eine Lösung?
– Ahsan Ali
8. Dezember 2017 um 10:53 Uhr
Habe immer noch keine Lösung.
– Jitendra Damor
11. Dezember 2017 um 9:57 Uhr
Ich habe auch das gleiche Problem, bekomme immer noch keine Antwort. Kann mir bitte jemand helfen? Ich lese auch support.advancedcustomfields.com/forums/topic/… diesen Link, aber keine Antwort
– Anand Choudhary
16. April 2018 um 12:53 Uhr
Hast du eine Lösung??
– Asfandyar Khan
5. März 2019 um 12:51 Uhr