WordPress 插件 - 如何禁用每页 js/css

Bob*_*b M 1 php wordpress performance jquery

使用 WordPress,您可以选择好/坏的插件,其中一些插件比其他插件更经济。我所说的经济性是指,当加载启用该功能的页面时,它们仅调用该功能所需的 CSS 和 JavaScript。其他人不歧视,在所有页面调用代码。这可能会对页面加载速度/性能产生负面影响。

我有一些 CSS 含量很高的插件,并且充满了 jQuery/Javascript 文件 - 我只希望它们在特定页面(而不是主页)上启用。我手头有页面 ID 和别名。查看插件文件夹,我还看到了包含所有 JS / CSS 的主 php 文件。在该文件中,我尝试了类似 is_page() 的方法,但它似乎没有影响,就好像 is_page 尚未设置一样。

    <?php if ( is_page( '3486' ) ) { exit; } ?>
Run Code Online (Sandbox Code Playgroud)

exit 本身会终止页面,表明正在调用脚本。

问题是,“如何以及在哪里放置 if 语句来阻止插件 CSS/JavaScript 在除了特定页面(或者可能是一组页面)之外的所有页面上被调用?

我可以命名该插件,但问题对于任何插件来说都更通用。

小智 5

您可以使用 wp_deregister_script,这将从特定页面中删除不需要的 JS、CSS。

add_action( 'wp_print_scripts', 'my_deregister_javascript', 100 );

function my_deregister_javascript() 
 { 
    if ( is_page('YOUR PAGE NAME') ) 
      {
        wp_deregister_script( 'WORDPRESS JS file NAME' ); 
      } 
 } 
Run Code Online (Sandbox Code Playgroud)

参考: https: //codex.wordpress.org/Function_Reference/wp_deregister_script