我创建了这个使用 jQuery UI Datepicker 的 WP 插件。效果很好,完全按照我的意愿去做......除了任何已经运行 jQuery UI CSS 的 WP 安装将被我的覆盖。显然这是一个问题。
这是我的代码,非常标准。
function javascript_datepicker_booking() {
wp_enqueue_script('jquery-ui-datepicker');
wp_enqueue_style('jquery-ui-datepicker_style_redmond', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/themes/redmond/jquery-ui.min.css' );
}
我一直在寻找解决这个问题的两种方法:
选项 1:有没有一种方法可以仅在尚未加载 jquery CSS 的情况下加载 CSS?
选项 2:有没有办法将我的样式表仅应用于日期选择器(即不是标签等)?
感谢您的建议!
格雷格
最佳答案
你可以像这样改变优先级级联性质应该解决它:
add_action( $hook, $function_to_add, $priority, $accepted_args );
至于 css 解决方案,如果没有我们的 html 很难说,但请尝试更具体以仅影响您自己的标记。
这就像 section#your_wrapper > ul.your_classes.another_class
增加特异性。
注意 >
选择直接子元素和元素名称以仅选择具有这些类的元素
如果您想为所有元素添加一个特殊类,字符串类也可以增加特异性
但是 由于 jquery ui 已经默认与 wordpress 一起提供,您可以使用 wp_enqueue_script
function javascript_datepicker_booking() {
wp_enqueue_script('jquery-ui-datepicker');
wp_enqueue_style('jquery-ui-datepicker_style_redmond', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/themes/redmond/jquery-ui.min.css', 'jquery-ui` );
关于Wordpress 中的 jQuery CSS 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20315451/