我想通过使用wp_dequeue_script和wp_dequeue_style函数从WordPress中的模板中删除css和js文件,但我的代码无效。
Js File: <script type='text/javascript' src='http://localhost/worpress/wp-content/themes/goliath/theme/assets/js/vendor/jquery.hoverintent.min.js'></script>
Css File: <link rel='stylesheet' id='plsh-bbpress-css' href='http://www.smeadvisor.com/wp-content/themes/goliath/theme/assets/css/bbpress.css' type='text/css' media='all' />
我正在使用goliath主题,我在goliath-child主题functions.php文件中添加了以下代码
add_action('wp_print_scripts','example_dequeue_myscript');
function example_dequeue_myscript() {
wp_dequeue_script( 'jquery.hoverintent' );
}
add_action('wp_print_styles','example_dequeue_mystyle');
function example_dequeue_mystyle() {
wp_dequeue_style( 'bbpress' );
}
请帮助我!
答案 0 :(得分:3)
wp_dequeue_script()
和wp_dequeue_style()
仅在相关的CSS和JS文件由wp_enqueue_script()
包含在网站中时才有效。
wp_dequeue_script
和wp_dequeue_style
通过将句柄作为参数来工作。
您应该注册如下:
wp_register_style('pagination-style', plugins_url('style.css', __FILE__));
wp_enqueue_style('pagination-style');
和这样的脚本:
wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js');
wp_enqueue_script('jquery');
然后使用handle删除css和js,如下所示:
wp_dequeue_style('pagination-style');
wp_dequeue_script('jquery');
答案 1 :(得分:0)
尝试
add_action('wp_enqueue_scripts','example_dequeue_myscript', 30);
function example_dequeue_myscript()
{
wp_dequeue_script('jquery.hoverintent');
wp_dequeue_style('bbpress');
}
答案 2 :(得分:0)
您必须在页眉或页脚中排队这些文件,而不是直接在脚本或链接标记中写入正确的方法,然后将条件排入队列。像这样
add_action('wp_enqueue_scripts','example_dequeue_mystyle');
function example_dequeue_mystyle() {
if(!is_page('my-page-slug')){
wp_enqueue_style( 'bbpress' );
wp_enqueue_script( 'jquery.hoverintent' );
}
}
希望你能得到它。
答案 3 :(得分:0)
如果文件已入队(未在标题中硬编码),则问题可能是错误的脚本/样式名称。首先尝试在functios.php中使用它:
function remove_head_scripts() {
global $wp_styles;
var_dump($wp_styles);
global $wp_scripts;
var_dump($wp_scripts);
}
add_action( 'wp_enqueue_scripts', 'remove_head_scripts', 101 );
然后你就可以看到所有排队的风格&amp;在html中的某个地方打印各自的slus脚本(尝试在浏览器中使用ctrl + U)。查看该列表,您可以找到所需的脚本&amp;风格与找出它的slu ..如果您看不到它们,请尝试使用优先级(101)或挂钩(wp_enqueue_scripts)
在您知道脚本的确切段落之后样式,用新的代替上面的代码片段:
function remove_head_scripts() {
wp_dequeue_style( 'exact_style_slug' );
wp_dequeue_script( 'exact_script_slug' );
}
add_action( 'wp_enqueue_scripts', 'remove_head_scripts', 101 );
再次,你可以优先发挥&amp;钩。它在很大程度上取决于你的主题/插件将该脚本排入队列的位置。风格。