从wordpress

时间:2016-03-14 05:40:00

标签: php wordpress wordpress-plugin

我想通过使用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' );
}

请帮助我!

4 个答案:

答案 0 :(得分:3)

wp_dequeue_script()wp_dequeue_style()仅在相关的CSS和JS文件由wp_enqueue_script()包含在网站中时才有效。

wp_dequeue_scriptwp_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');

希望Remove css and js

答案 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;钩。它在很大程度上取决于你的主题/插件将该脚本排入队列的位置。风格。