2

我想从我的 Drupal 网站中删除一个 JavaScript 文件,并添加一个自定义文件。这是我在我的 template.php 文件中使用的代码,但它不起作用(仍然加载旧的 js 文件)。(我已经清除了缓存)

函数 zen_preprocess_page(&$vars, $hook) {

/*update js file*/
$scripts = drupal_add_js();
unset($scripts['module']['sites/all/modules/lightbox2/js/lightbox.js']);
$scripts['module']['sites/all/themes/zen/zen/myjs/lightbox.js'] = array('preprocess' => 1, 'cache' => 1);
$variables['scripts'] = drupal_get_js('header', $scripts);
4

1 回答 1

4

我测试了你的代码,如果你把它放在hook_preprocess_page(). 您的问题可能是您使用了错误的 proprocess 函数,因此它不会影响您在页面模板中使用的 $scripts 变量,或者它在该过程的稍后位置被覆盖。

编辑

  • 您不应该直接编辑 Zen 主题,而是改为子主题。
  • 您是否尝试过添加 JavaScript 文件drupal_add_js()
  • 您是否$variables['scripts']在更改后检查它是否符合预期?
于 2010-06-25T09:18:23.223 回答