2010-03-01 63 views
2

当我删除“页面必需”缓存时,我用于我的主页图像旋转的2个Javascript文件被删除。 这里是我如何增加对这些2个文件的JavaScript与PHP代码所见即所得编辑器启用:Drupal刷新页面需求缓存也删除javascript文件

<? 
drupal_add_js('sites/default/files/js/jquery.jcarousellite.js'); 
drupal_add_js('sites/default/files/js/cycle.js'); 
?> 
Some html here for the rotator...... 

然后我也有添加到主页上一些JS代码只使用JS注射器。

任何想法为什么会发生这种情况?

感谢

+0

看起来你的代码被删除。将所有代码缩进四个空格,使其格式化为源代码。 – 2010-03-01 16:59:27

+0

谢谢,我再次添加它。 – EricP 2010-03-01 17:01:12

回答

4

你不应该设在你的文件夹永久js文件。要么他们应该在你的主题或使用它们的模块。 files文件夹是用于上传文件和Drupal即时创建的其他文件。

您的问题的原因可能是Drupal具有对文件放置位置的文件夹的写入权限,并且会清除它,因为它仅用于压缩。你应该考虑一下你让drupal写入哪些文件。让Drupal具有对您使用的脚本文件的写入权限,会增加安全风险。

通常,你不想让Drupal写入js或php文件。这是因为如果一个破解者能够让Drupal写入这些文件,他将能够或多或少地控制整个网站。这也是为什么drupal使用的压缩js文件具有长且随机的名称。

因此,请尝试将这些文件移动到您的主题中,看看是否无法解决它。如果你想链接到他们,你可以做

drupal_add_js(drupal_get_path('theme', 'name_of_your_theme') . 'path/to/file.js'); 
+0

完美。谢谢! – EricP 2010-03-02 14:03:49