2010-03-01 59 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