WordPress,jQuery UI CSS文件?

Mer*_*kos 27 wordpress jquery jquery-ui wordpress-plugin jquery-ui-css-framework

我正在尝试创建一个WordPress插件,我想在我的一个设置页面中有jQuery UI选项卡.

我已经有了脚本代码集:

wp_enqueue_script('jquery');                    // Enque jQuery
wp_enqueue_script('jquery-ui-core');            // Enque jQuery UI Core
wp_enqueue_script('jquery-ui-tabs');            // Enque jQuery UI Tabs
Run Code Online (Sandbox Code Playgroud)

...我也创建了HTML和JavaScript.直到这里一切都很好.

问题是:

WordPress平台附带了一些已预先安装的脚本,就像我上面列出的脚本一样.我的脚本与选项卡运行良好,但它没有样式!那么我想问的是,WordPress平台是否预装了jQuery UI Theme?...如果是这样,我如何将样式排入我的插件?

Eko*_*oJR 54

听起来更像是在WordPress中为jquery-ui主题找到可用样式的问题.

回答你的问题.不,WordPress在平台本身中没有可用的样式.唯一可用的css位于\ wp-includes\jquery-ui-dialog.css中,仅此一点并不是很有用.

我也有同样的问题,我找到了两个选择.将其存储在CSS文件夹中并从那里加载,或通过URL(Google API)加载它.对于JQuery UI,我决定依赖Google的CDA,并添加了一种利用'主题滚轴'的方法.存储那些数量的css代码似乎并不开始,而且它太糟糕的WordPress不提供任何样式支持,就像它们使用jquery-ui脚本一样.

但是,WP确实提供了脚本,这将使CSS保持最新状态$wp_scripts->registered['jquery-ui-core']->ver.您可以使用wp_scripts();OR 访问它global $wp_scripts;.

静态主题

$wp_scripts = wp_scripts();
wp_enqueue_style('plugin_name-admin-ui-css',
                'http://ajax.googleapis.com/ajax/libs/jqueryui/' . $wp_scripts->registered['jquery-ui-core']->ver . '/themes/smoothness/jquery-ui.css',
                false,
                PLUGIN_VERSION,
                false);
Run Code Online (Sandbox Code Playgroud)

或动态主题

$wp_scripts = wp_scripts();
wp_enqueue_style('plugin_name-admin-ui-css',
                'http://ajax.googleapis.com/ajax/libs/jqueryui/' . $wp_scripts->registered['jquery-ui-core']->ver . '/themes/' . $pluginOptions['jquery_ui_theme'] . '/jquery-ui.css',
                false,
                PLUGIN_VERSION,
                false);
Run Code Online (Sandbox Code Playgroud)

以及本地存储它的一个例子

wp_enqueue_style('plugin_name-admin-ui-css',
                plugins_url() . '/plugin-folder-name/includes/css/jquery-ui-theme-name.css',
                false,
                PLUGIN_VERSION,
                false);
Run Code Online (Sandbox Code Playgroud)

  • 自动更新:`global $ wp_scripts; wp_enqueue_style("jquery-ui-css","http://ajax.googleapis.com/ajax/libs/jqueryui/{$wp_scripts->registered ['jquery-ui-core'] - > ver}/themes /ui-lightness/jquery-ui.min.css");`版本与WP中的版本相同(目前为1.10.3). (6认同)
  • 实际上,我只需要对话css.使用`wp_enqueue_style("wp-jquery-ui-dialog");` (5认同)
  • +1用于建议CDA而不是使用常见样式表混乱插件 (4认同)

Aru*_*Lal 6

自此以来 WordPress 发生的变化的更新。最近的 WordPress 软件包在包装盒中附带了 CSS。

您可以wp-includes\css使用 找到然后并入队wp_enqueue_style()

我认为 OP 的用例wp_enqueue_style( 'wp-jquery-ui-dialog' );就足够了。

希望这对将来的人有帮助。


Tim*_* S. 5

我不认为预先安装了UI主题.您需要将脚本添加到标头中.

我想你正在寻找这个功能.它允许您向标题添加脚本.只需将主题的css放在插件文件夹中的某个位置即可.

  • 如果多个插件开始包含单独的jQuery UI主题,你还可以评论是否存在问题?*叹气*这个来自WordPress团队的半心半意的措施让插件开发人员为jQuery UI捆绑了自己的主题,这是一个混乱和交叉插件兼容性很糟糕.WP团队应该:拥抱*一个主题*,并称之为"WP jQuery UI主题",就是这样,每个人都应该在他们的插件上使用它.(特别是在管理员!) (7认同)