2014-02-19 4 views
8

Ich entwickle eine Plugin und im Admin wo ich ein Feld zur Verfügung stellen, die von Benutzern mit einem Datum gefüllt wird. Ich frage mich, ob es im WP Admin I einen nativen Datapicker gibt, der verfügbar ist.Bietet Wordpress Native Datepicker im Admin?

Ich normalerweise ein kleines jQuery datepicker Skript, das tut, aber wenn man bereits verfügbar ist, würde ich das aus offensichtlichen Gründen wie leichter Code, UI Konsistenz usw. bevorzugen. Das scheint wie etwas, das würde ich sollte/sollte aber ich Ich bin nicht in der Lage, eine solche Dokumentation darüber zu finden, welche jQuery-Sachen, wenn überhaupt, im Admin verfügbar sind.

+1

Haben Sie versucht, meine Frage vor dem Kommentieren zu lesen? Ich frage nicht, wie man einen Datepicker hinzufügt. Ich sagte, ich mache das schon. Ich habe gefragt, ob es einen im Wordpress Admin gibt. Wie eine Klasse kann ich ein Eingabefeld hinzufügen. Wenn Sie die Frage nicht verstehen, hinterlassen Sie bitte keinen Kommentar. – CChoma

+0

Ja, ich habe es getan. Die Antwort war einfache Suche oder sogar ausprobieren. Ein anderer Weg wäre, die Dateien zu betrachten, die in das Kontrollfeld von wp geladen werden. Die Antwort ist nein. Haben Sie darüber nachgedacht, stattdessen einige der html5-Tags (vielleicht http://dev.w3.org/html5/markup/input.date.html) zu verwenden? –

+0

btw meinte ich ist kein spezieller datepicker für wp beyound was jquery datepicker bietet. Dies kann in die Warteschlange eingereiht werden, ohne dass ein zusätzliches Datumsauswahl-Skript hinzugefügt werden muss. CSS dafür? Keine, die du einbeziehen müsstest. Letzte Sache für gute wp-Feedback in Betracht ziehen http://wordpress.stackexchange.com/ –

Antwort

10

Ja. Wordpress beinhaltet dies im Kern. Hier sind ein paar Artikel über sie:

WP Codex: Function Reference/wp enqueue script

Paul Underwood's Iris Color Picker Tutorial (gleichen Grundsätze gelten für picker)

+6

Hallo, danke für diesen Thread, es hilft mir. Auf Pauls Website ist Beispiel besonders für Datepicker, jetzt: http://www.paulund.co.uk/add-date-picker-to-wordpress-admin Aber ich denke, in WP ist kein Stylesheet für Jquery -ui-Datumsauswahl: wp_enqueue_style ('jquery-ui-datepicker'); Es ist notwendig, es von CDN zu laden oder lokal zu speichern, wie in diesem Beispiel: http://wordpress.stackexchange.com/questions/83322/inbuilt-style-for-jquery-ui-datepicker – fabian

11

Antwort bereits gegeben worden, aber ich würde es gerne ein bisschen erweitern CSS enthalten (Wordpress stellt keine Stylesheets für jQuery UI zur Verfügung, um jedem zu helfen, der versucht, diese Art von Skripten zu verwenden.

Grundsätzlich (und sehr einfach), müssen Sie zumindest diese drei Zeilen Code haben:

wp_enqueue_script('jquery-ui-datepicker'); 
    wp_register_style('jquery-ui', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css'); 
    wp_enqueue_style('jquery-ui'); 

Erläuterung Zeile für Zeile:

  1. laden jQuery UI Datepicker (Bibliothek bereits registriert durch Wordpress, nichts anderes erforderlich ist)
  2. Register Sheet mit Griff jquery-ui (I verwendet, um die eine von Google gehostet, können Sie verwenden, je nachdem, was Sie bevorzugen)
  3. Effizientes Stylesheet in die von Wordpress auf dieser Seite geladenen Bilder einfügen

Und jetzt werden Ihre Datypickers alle schön und bunt sein! :)

HTML5 Geschenk

Dies ist nicht das, was die OP fragt, aber es ist etwas im Zusammenhang mit der Frage: wenn Sie wollen nicht die Mühe machen die Datumsauswahl hinzufügen, könnten Sie versuchen, die HTML5 date Eingabetyp, ließ der Browser eine sehr schön (und Standard) picker erstellen:

<input type="date" name="the_date" /> 

Ja, nichts anderes benötigt wird (und es funktioniert in der back-End von Wordpress auch: https://jsfiddle.net/2jxdvea0/

Mehr Informationen zu MDN: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/date

Hinweis Wie @ Mark wiesen darauf hin, die Eingabe nicht für Firefox funktioniert (wie auch für anderen Browser). Dies ist in der MDN-Seite vermerkt, aber natürlich sollte es auch hier erwähnt werden. Es gibt natürlich Problemumgehungen für dieses Problem, aber es wäre nicht mehr möglich, über diese Frage zu schreiben.

aktualisieren 2017.03.11 Ab @ Kosso Kommentar, Firefox Unterstützung hierfür ist in Version kommenden 57

+1

Der HTML5-Typ = "Datum" funktioniert nicht in Firefox. – Mark

+0

Bemerken (+ 1'ed) und editierte Antwort, um darauf hinzuweisen. Danke –

+1

Vielen Dank für die Bestätigung. Ich finde es erstaunlich, dass es hier 2017 noch kein gemeinsames Datum/Uhrzeit-Picker-HTML-Element für alle Browser gibt. – Kosso

1

die folgende Codezeile Fügen Sie die jQuery UI Datepicker Bibliothek von Ihrem Plugin einzureihen:

wp_enqueue_script('jquery-ui-datepicker'); 

Sie können die Stylesheet-Datei von der Bibliothek jquery ui library herunterladen und in Ihr Plugin einbinden. Alternativ

wp_enqueue_style('jquery-ui-css', 'http://www.example.com/your-plugin-path/css/jquery-ui.css'); 

, Sie können die jQuery UI CSS von Google sind (Sie müssen mit Ihrem Plugin die CSS-Dateien nicht versenden, wenn Sie über diesen Weg gehen): Sie würden dann die CSS-Datei wie folgt einzureihen :

wp_enqueue_style('jquery-ui-css', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/smoothness/jquery-ui.css'); 

die folgende JQuery-Code in Ihre Javascript-Datei hinzufügen, damit es die Datepicker picker~~POS=HEADCOMP auf alle Felder mit einer Klasse von „custom_date“ legt:, können Sie jetzt

<script type="text/javascript"> 
jQuery(document).ready(function($) { 
$('.custom_date').datepicker({ 
dateFormat : 'yy-mm-dd' 
}); 
}); 
</script> 

fügen Sie den Datumsfeldern im HTML-Code einfach die Klasse "custom_date" hinzu und es wird ein Kalender für die Datumsauswahl angezeigt, wenn ein Benutzer auf dieses Feld klickt.

<input type="text" class="custom_date" name="start_date" value=""/> 
Verwandte Themen