在某些wordpress页面中禁用样式表

时间:2017-11-18 09:25:40

标签: css wordpress

我的样式表加载在我的wordpress主题中的所有页面上。我想在landing.php中禁用它。 该文件位于以下地址:http://example.com/wp-content/uploads/fusion-styles/fusion-22528.css 我到目前为止尝试过这些代码:

function themeslug_enqueue_style() {
if (is_page_template( 'landing.php' )) {
wp_enqueue_style( 'stylesheet', 'http://example.com/wp-
content/uploads/fusion-styles/fusion-22528.css', false );
}
}
add_action( 'wp_enqueue_scripts', 'themeslug_enqueue_style' );

和这一个:

function se_remove_styles() {
if ( is_page_template( 'landing.php' ) ) {
wp_dequeue_style( 'http://example.com/wp-content/uploads/fusion-
styles/fusion-22528.css?timestamp=1510985246&ver=4.9' );
}
}
add_action( 'wp_print_styles', 'se_remove_styles', 99999 );action( 
'wp_print_styles', 'se_remove_all_styles', 999999 );

但没有奏效。我使用了这段代码:

function se_remove_all_styles() {
global $wp_styles;
if ( is_page_template( 'landing.php' ) ) {
$wp_styles->queue = array();
}
}
add_action( 'wp_print_styles', 'se_remove_all_styles', 99 );

但它将删除我的所有样式。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

此代码段删除了名为" animate"的排队CSS。来自你的WP前端。

function se_remove_styles() {
wp_dequeue_style( 'animate' );
}
add_action( 'wp_enqueue_scripts', 'se_remove_styles',99999 );

那么,如何获取排队CSS的句柄名称?有一些方法可以做到这一点,其中之一是:

  1. 转到view-source:yourwebsite.com
  2. CTRL + F并找到您需要的CSS文件。
  3. 您将看到如下所示的行:

    < link rel =" stylesheet" ID =" fusionblabla-CSS" HREF =" HTTP://example.com/wp-content/uploads/fusion-styles/fusion-22528.css"类型="文本/ CSS"媒体="所有" />

  4. 你看到id =' fusionblabla-css'那里。那么" fusionblabla"是您要查找的句柄名称。 (不是' fusionblabla-css',但"' fusionblabla')

    完成后,确保它正常工作,您可以为该功能添加条件

    function se_remove_styles() {
    if (SOME CONDITION HERE)
    wp_dequeue_style( 'animate' );
    }
    add_action( 'wp_enqueue_scripts', 'se_remove_styles',99999 );