2014-02-19 28 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=""/> 
相关问题