首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >除主页之外的所有页面的脱队列脚本

除主页之外的所有页面的脱队列脚本
EN

WordPress Development用户
提问于 2014-12-08 03:59:22
回答 2查看 2.8K关注 0票数 1

我试图从一个插件中排出一些脚本,我只需要在主页上使用。对于主页,我使用了一个名为front-page.php的文件,该文件的顶部为home模板:

代码语言:javascript
复制
<?php
/*
Template Name: Home
*/
?>

函数正在删除脚本,但它正在删除所有页面上的脚本。我希望脚本只加载到主页。我尝试过if ( !is_page_template('home.php') ) {if ( !is_front_page() ) {,但它们都产生了与第一个相同的结果。

代码语言:javascript
复制
function wpcyclone_dequeue_script() {
   wp_dequeue_script( 'jquery-cycle2' );
   wp_dequeue_script( 'jquery-cycle2-swipe' );
   wp_dequeue_script( 'cyclone-client' );
}
if ( !is_page('Home') ) {
    add_action( 'wp_print_scripts', 'wpcyclone_dequeue_script', 100 );
}

我哪里出错了?

EN

回答 2

WordPress Development用户

回答已采纳

发布于 2014-12-08 04:26:10

只是你的代码上的几个注意事项

  • 您应该将脚本排出队列并取消注册,以便将其从$wp_scripts全局中完全删除。
  • 您不应该使用wp_print_scripts,这是错误的钩子。你应该使用wp_enqueue_scripts
  • 不要用条件包装你的动作。条件标记可能设置为“早期”或“延迟”,并可能导致意外行为。
  • 有一个专用的frontpage的条件标记,is_front_page(),您可以使用它来检查您的页面是否是首页。

您的代码应该如下所示

代码语言:javascript
复制
add_action( 'wp_enqueue_scripts', 'my_deregister_javascript', PHP_INT_MAX );

function my_deregister_javascript() {
    if ( !is_front_page() ) {
        wp_dequeue_script( 'jquery-cycle2' );
        wp_deregister_script( 'jquery-cycle2' );

        wp_dequeue_script( 'jquery-cycle2-swipe' );
        wp_deregister_script( 'jquery-cycle2-swipe' );

        wp_dequeue_script( 'cyclone-client' );
        wp_deregister_script( 'cyclone-client' );
    }
}
票数 7
EN

WordPress Development用户

发布于 2014-12-08 04:01:24

没关系,我是通过另一种方式想出来的:

代码语言:javascript
复制
add_action( 'wp_print_scripts', 'my_deregister_javascript', 100 );

function my_deregister_javascript() {
   if ( !is_page('Home') ) {
    wp_deregister_script( 'jquery-cycle2' );
    wp_deregister_script( 'jquery-cycle2-swipe' );
    wp_deregister_script( 'cyclone-client' );
     }
}

我还是很好奇为什么以前的方法行不通。

票数 1
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/170544

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档