加载具有依赖性的脚本就是卸载另一个脚本的依赖性
首先,我知道我的问题是在使用WooCommerce插件进行工作时发生的,这通常会使它脱离主题。但是,我认为我的问题与有关wp_enqueue_script,因此希望它仍然是话题。 因此,WooCommerce正在admin_enqueue_scripts挂钩上注册脚本。此脚本需要大量依赖项: wp_register_script( 'wc-admin-meta-boxes', WC()->plugin_url() . '/assets/js/admin/meta-boxes' . $suffix . '.js', array( 'jquery', 'jquery-ui-datepicker', 'jquery-ui-sortable', 'accounting', 'round', 'ajax-chosen', 'chosen', 'plupload-all' ), WC_VERSION ); (在代码的后面部分,它专门列在post.php和post-new.php页面上,用于产品发布类型) 在我编写的用于WooCommerce的自定义插件中,我还在同一钩子上加载了脚本。 wp_enqueue_script( 'My_Plugin_Metabox', My_Plugin_Class()->plugin_url() . '/assets/js/mnm-write-panel.js', array( 'jquery', 'wc-admin-meta-boxes'), My_Plugin_Class()->version, true ); 如果我将插件的脚本排入队列$in_footer,true然后将参数设置为,则无法解释,则不会加载jQuery UI Datepicker脚本(根本不在源代码中),并且控制台会显示相应的脚本错误。 如果我将脚本加载到标题中,这不是问题。如果我在没有wc-admin-meta-boxes依赖项的情况下加载脚本,那也可以解决问题 所以我想知道的是,为什么在页脚中加载我的脚本会影响核心datepicker脚本的加载?(我根本不在脚本中使用datepicker。)或者为什么不将Woo脚本作为依赖项也会影响datepicker脚本?在我看来,无论Woo metabox脚本的依赖项如何,都应加载datepicker脚本,但这没有发生。 根据Kaiser的评论,我创建了以下MU插件(由于$GLOBALS['wp_scripts']是对象,因此可以从评论中进行调整: /* Plugin Name: Dump jQUI Dp */ …