我建立的网站使用高级自定义字段插件,并且在我自己的网络主机上的本地主机上一切正常。不幸的是,当我将网站移至客户购买的主机(GoDaddy 共享主机)时,高级自定义字段插件的 JavaScript 和 CSS 文件无法正确加载。检查来源,问题很明显 - 他们指向以下路径:
(如果你仔细看,你会发现这里引用了服务器上文件的实际路径,而不是 URL)
我已将问题追溯到插件中的以下行:
$this->dir = plugins_url('',__FILE__);
它应该返回/wp-content/plugins/advanced-custom-fields
相反,它正在返回/wp-content/plugins/home/content/06/10145906/html/wp-content/plugins/advanced-custom-fields
我已经编辑了插件文件,使其指向正确的路径,但是每次更新插件时这些更改都会恢复,所以这不是一个长期的解决方案。
我见过一些人抱怨__FILE__
魔法常数不能像预期的那样对符号链接起作用,但我当然没有创建任何符号链接。这是使用 GoDaddy 的限制吗?
更新
我注意到__FILE__
在 GoDaddy 上返回的内容与在我的本地计算机或其他 Web 服务器上不同。它返回完整路径的两台工作机器之一,从文件系统的根目录(即/srv/www/sitename/public_html/file.php
)开始,而在 GoDaddy 上,它返回的路径从主目录开始(/home/content/06/10145906/html/file.php
)。
这可能是问题吗?