我有一个关于如何自定义drupal模块避免黑客攻击的问题。
假设我已经下载了Lightbox2模块,我想更改javascript文件以显示不同的灯箱。
目前我正在修改Lightbox2模块,因此我无法再更新它,所以我知道这不是最好的做法。
我想知道我是否可以使用钩子自定义此模块的javascript文件,以及如何。
由于
答案 0 :(得分:4)
要改变JS,你根本不需要破解模块。相反,您可以使用主题系统来更改发送到页面的脚本。
在你的template.php预处理页面中:
$scripts = drupal_add_js();
unset($scripts['module']['whatever/the/path/is/lightbox.js']);
$scripts['module']['new/js/path/lightbox.js'] = array('preprocess' => 1, 'cache' => 1);
$variables['scripts'] = drupal_get_js('header', $scripts);
我建议你然后将灯箱js复制到新路径并在那里进行修改,而不是从头开始。
有些模块提供了自己的钩子和主题功能,你可以直接覆盖它们,因此也许值得在灯箱模块中稍微探讨一下。