2014-02-19 29 views
8

我正在開發一個插件,並在管理員中提供用戶填入日期的字段。我想知道是否有可用的WP Admin I中的本地日期選擇器。Wordpress是否提供管理員的本地日期選擇器?

我通常會包含一個小型的jQuery datepicker腳本來完成它,但如果一個已經可用,我寧願那些顯而易見的原因,比如更輕的代碼,UI一致性等等。這看起來像是/應該包含的東西,但我在Admin中沒有找到jQuery提供的文檔(如果有的話)。

+1

您在評論之前是否嘗試閱讀我的問題?我不問如何添加日期選擇器。我說我已經這樣做了。我問是否在Wordpress Admin中提供了一個。就像我可以添加到輸入字段的類一樣。如果你不明白這個問題,那麼請不要發表評論。 – CChoma

+0

是的,我做到了。答案很簡單,甚至可以試用。另一種方法是查看在wp的控制面板中加載的文件。答案是不。你有沒有考慮過使用一些幻想(也許http://dev.w3.org/html5/markup/input.date.html)html5標籤呢? –

+0

順便說一句我的意思是沒有特別的日期選擇器的Wp​​ beyound jquery datepicker提供了什麼。這可以排隊,不需要添加額外的日期選擇器腳本。 CSS爲它?沒有,你必須包括。爲獲得良好的wp反饋最後一件事考慮http://wordpress.stackexchange.com/ –

回答

10

是的。 WordPress的核心包括這個。下面是關於它的一對夫婦的文章:

WP Codex: Function Reference/wp enqueue script

Paul Underwood's Iris Color Picker Tutorial(原則同樣適用於日期選擇器)

+6

嗨,感謝這個線程,它幫助我。 關於Paul的網站是datepicker的例子especialy,現在:http://www.paulund.co.uk/add-date-picker-to-wordpress-admin 但我認爲,在WP中沒有jQuery的樣式表-ui-datepicker:wp_enqueue_style('jquery-ui-datepicker'); 有必要從CDN加載它或保存在本地,如下例所示:http://wordpress.stackexchange.com/questions/83322/inbuilt-style-for-jquery-ui-datepicker – fabian

11

答案已經給出,但我希望把它擴大一點包括CSS(WordPress的不提供jQuery UI的樣式表),以幫助任何人通過試圖使用這種腳本。

基本上(非常簡單),你需要有一個代碼,至少這三條線:由線

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'); 

說明行:

  1. 加載jQuery UI的日期選擇器(已被註冊庫WordPress的,沒有別的是必要的)
  2. 註冊樣式表與句柄jquery-ui(我使用了谷歌託管的那個,你可以使用任何你喜歡的)
  3. 有效地將樣式表包含到Wordpress在此頁面加載的樣式表中

現在,您的日期選擇器將會很好,色彩鮮豔! :)

HTML5禮物

這不是什麼OP問的,但它是有點關係的問題:如果你不想打擾添加日期選擇器,你可以嘗試HTML5 date輸入類型,讓瀏覽器創建一個非常好的(缺省)的日期選擇器:

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

是的,沒有別的需要(和它的作品中的WordPress的後端,太:https://jsfiddle.net/2jxdvea0/

上MDN更多信息:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/date

注意 正如@馬克指出,輸入不用於Firefox(適用於其他瀏覽器以及)工作。這在MDN頁面中有記錄,但當然這裏也應該提及。當然,解決這個問題的辦法很多,但寫出這些問題不在於這個問題。

更新2017年3月11日 作爲@ KOSSO的評論,對於這個Firefox的支持即將在版本57

+1

HTML5 type =「date」在Firefox中不起作用。 – Mark

+0

註明(+ 1'ed)和編輯回答指出。謝謝 –

+1

感謝您的確認。我發現在這裏,在2017年,所有瀏覽器中仍然沒有常見的日期/時間選擇器HTML元素。 – Kosso

1

添加下面的代碼行從您的插件排隊的jQuery UI的日期選擇器庫:

wp_enqueue_script('jquery-ui-datepicker'); 

您可以從jquery ui庫站點下載樣式表文件並將其包含在您的插件中。這樣,你會像排隊以下CSS文件:

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

或者,您可以包括從谷歌jQuery UI的CSS(你不需要,如果你通過這條路線去附帶插件的CSS文件) :

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

以下JQuery的代碼添加到您的JavaScript文件,以便其附着的日期選擇器的任何字段與類「CUSTOM_DATE」的:

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

現在,你可以只需將類「custom_date」添加到HTML代碼中的日期字段中,並在用戶單擊該字段時顯示日期選擇器日曆。

<input type="text" class="custom_date" name="start_date" value=""/> 
相關問題