除一页外的每一页上都有脚本入队

时间:2011-11-24 作者:aurrutia

我想加载javascript并排除1个页面,因此我尝试了以下操作,但没有成功:

function mypage_scripts()

{
if ( !is_admin() )
{ 
    wp_deregister_script(\'jquery\');
    wp_register_script(\'jquery\', \'http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js\', true, \'1.6.2\', false);
    wp_enqueue_script(\'jquery\');
/* My Script */ 
if ( !is_page(\'contact\') )
        {       
            wp_enqueue_script(\'myscript\', get_bloginfo(\'template_url\') . \'/js/myscript.js\', array(\'jquery\'), \'1.1\', false);
        }
}

}

add_action( \'wp_print_scripts\', \'mypage_scripts\');
结果是脚本加载到除Admin(如预期)之外的每个页面,但无法管理不加载到“Contact”页面。

有什么想法吗?

当然,我可以列出我想加载的所有页面,但由于该网站将来会有更多页面,我不想更改功能。每次创建一个新的php文件时。

谢谢

1 个回复
最合适的回答,由SO网友:Jeremy Jared 整理而成

尝试为函数指定自己的参数并执行template\\u重定向,something like this:

<?php
  function mypage_scripts() {
    if ( !is_admin() ) {
      wp_deregister_script(\'jquery\');
      wp_register_script(\'jquery\', \'http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js\', true, \'1.6.2\', false);
      wp_enqueue_script(\'jquery\');
      /* My Script */ 
  function contact_form_script() {
      if ( !is_page(\'contact\') ) {
        wp_enqueue_script(\'myscript\', get_bloginfo(\'template_url\') . \'/js/myscript.js\', array(\'jquery\'), \'1.1\', false);
        }
      }
  add_action( \'template_redirect\', \'contact_form_script\' );
    }
  add_action( \'wp_print_scripts\', \'mypage_scripts\');
  }
  ?>
我还没有检查这个,但我相信它会起作用。

I Checked this one on on one of my themes and it worked:.

<?php
  function mypage_scripts() {
    if ( !is_admin() ){ 
    wp_deregister_script(\'jquery\');
    wp_register_script(\'jquery\', \'http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js\', true, \'1.6.2\', false);
    wp_enqueue_script(\'jquery\');
      }
    add_action( \'wp_print_scripts\', \'mypage_scripts\');
    }
  function contact_form_script() {
      if ( !is_page(\'contact\') ) {
        wp_enqueue_script(\'myscript\', get_bloginfo(\'template_url\') . \'/js/myscript.js\', array(\'jquery\'), \'1.1\', false);
        }
      }
  add_action( \'template_redirect\', \'contact_form_script\' );
  ?>
NOTE:我在测试中做了一件不同的事,那就是我没有使用Google脚本。也许这就是问题所在?

结束

相关推荐

Parent/Child pages

我发现自从引入新的菜单创建区域以来,WordPress“页面”区域中的父/子页面变得有点混乱。使用新的菜单系统,据我所知,我可以将一个本身是子页面的页面(在页面部分)设置为一个本身是父页面的父页面。有人能告诉我,整个父/子页面场景现在是否被新的菜单系统所取代,除非我们计划在主题中使用wp\\u list\\u页面,否则我们是否应该完全避免使用子页面,而只是决定它们在菜单区域中的位置。在不使用wp\\u list\\u页面的站点上通常做什么?