我需要以灯箱为主题。我可以在lightbox.js中看到JavaScript代码生成的HTML,但我无法覆盖该文件,或者在更新模块时我将丢失更改。有没有更好的方法来覆盖主题输出?
答案 0 :(得分:1)
您没有报告您感兴趣的Drupal版本;我给出的答案对Drupal 6有效,但Drupal 7很少会有所改变。
Lightbox2使用template file作为输出。如果您创建一个实现hook_theme_registry_alter()的自定义模块以使用其他模板文件,那么您可以使用使用您编写的JavaScript文件的模板文件。
答案 1 :(得分:0)
你能不能仅通过改变CSS来主题化它吗?
在您的主题.info file中,您可以覆盖模块的css
和/或js
,然后将css或js文件从模块复制到您自己的主题文件夹中(每个主题)应该有.info,如果没有创建一个) - 这意味着你不要触摸实际的contrib模块文件
我还没有为JS做过,但我相信这个过程与CSS相同,这里是我的.info文件中的内容片段 - 顺便说一下,一旦你使用这种覆盖方法,你必须声明默认style.css
stylesheets[all][] = style.css
stylesheets[all][] = lightbox.css
只能使用.info文件覆盖D7中的JS,但是模块JSAlter可能有助于D6