我正在开发一个插件,为了回答这个问题,我们称之为“我的插件”。我的插件目录如下所示:
my-plugin/
|- image.jpg
|- script.js
|- script.php
|- plugin.php
|- ajax.php
在脚本中。php我有一段代码指定了一些JS。在其中,我需要一个ajax的URL。php。e、 g.:
<script type="text/javascript">
foo = jQuery.getJSON("<?= plugins_url(\'ajax.php\', __FILE__); ?>", function (data)
{ /* ... */ });
</script>
我的wordpress域配置了无子域的基本url,例如:
http://example.com/ 但是,URL返回自
plugins_url
是:
http://www.example.com/wp-content/plugins/my-plugin/ajax.php. 不幸的是,这会导致无法加载脚本,因为jQuery的getJSON在针对错误地址返回HTTP 301响应时始终“取消”请求。
为什么是plugins_url
(在WordPress 3.3.1中)当WordPress的“站点地址”设置没有URL时,是否返回带有“www”的URL?