根据文字:https://codex.wordpress.org/Javascript_参考/厚盒
WordPress使用了最初由Cody创建的ThickBox jQuery库的修改版本。ThickBox为WordPress管理中使用的模式灯箱供电,包括post编辑器的“媒体”按钮(仅在WordPress 3.5之前)和插件“搜索结果”屏幕上的“详细信息”链接。
那么,如果这个东西是为Wordpress管理仪表板,那么为什么它加载在我的网站前端,即使我没有登录到仪表板?
有可能关掉它吗?我不想不必要地加载没有使用的JavaScript资源。
发布于 2016-08-29 22:47:50
您是完全正确的,ThickBox是旧的,它假设只存在于管理仪表板中,但是能够改变这种行为会使WordPress变得很棒(有时不会)。
每个主题或插件实际上都可以调用这个库来帮助
Wp_排队_脚本(“厚框”)函数或它可以将其用作如下所示的依赖项:
wp_enqueue_script( 'my_own_modal' , _URL_TO_FILE_, array('thickbox') );第三个参数的工作方式类似于依赖数组,其中的每个库都被加载。有时,开发人员也会误把它放在前端,或者当插件在前端创建图像上传器时,会故意错过。
那么,您可以尝试禁用每个插件,看看哪个插件可以这样做,或者您可以搜索所有wp-content文件夹中的thickbox键,并查看它的调用位置。
如果您找不到它,可以尝试使用wp_取消注册_脚本强制删除它。
<?php
function my_de_scripts_method() {
wp_deregister_script('thickbox');
}
add_action('wp_enqueue_scripts', 'my_de_scripts_method', 9999);
?>如果这仍然不起作用(可以是延迟调用,也可以是另一个钩子),那么您可以采用脏的方式,在thickbox使用和空路径之前注册WordPress,它将被忽略。
<?php
function my_over_register_scripts_method() {
wp_register_script( 'thickbox', '' );
}
add_action('wp_enqueue_scripts', 'my_over_register_scripts_method', 1);
?>编辑:如果您只想在前端删除它,只需使用is_admin条件。
<?php
function my_de_scripts_method() {
if ( ! is_admin() ) {
wp_deregister_script('thickbox');
}
}
add_action('wp_enqueue_scripts', 'my_de_scripts_method', 9999);
?>https://wordpress.stackexchange.com/questions/237535
复制相似问题