我有一段代码可以在我的登台服务器上正常运行,但它在我的localhost上无法正常工作。我在我的模块john.module
drupal_add_css($filename . ".css");
在我的临时服务器上,$filename
的值为/sites/all/modules/john/style.css
。当我查看页面的视图源时,我发现样式表中有@import
语句,并且它也被称为jQuery.extend(Drupal.settings)
的json数据。
在我的localhost上,我小心地重新创建了正在进行分段的文件目录结构。 $filename
具有相同的值。但是,当我查看页面的视图源时,我没有看到样式表的@import语句。但是,它在jQuery.extend(Drupal.settings)
中的json数据中提到。如果注释掉上面的drupal_add_css($filename.".css")
命令,那么它也会删除json数据中样式表的提及。
我已清除缓存以确保它不是缓存问题。
所以我的问题是,为什么样式表会出现在登台但不出现在我的本地主机上?
其他说明
我进行了一项实验并在此列出了结果:
// when i use this line the css file is NOT included and I do NOT see an @import statement in the html document
drupal_add_css('/sites/all/modules/john/style.css')
// when i use this line the css file is successfully imported
drupal_add_css('sites/all/modules/john/style.css')
// when i use this line the css file is NOT included and I do NOT see an @import statement in the html document
drupal_add_css('http://johnwebsite.com/sites/all/modules/john/style.css');
// when i use this line the css file is NOT included but I do see an @import statement in the html document
drupal_add_css('/var/www/sites/all/modules/john/style.css');
那么为什么第一条规则适用于我的登台服务器而不是我的本地主机?