【问题标题】:Why won't wordpress load the javascript file on a different server?为什么 wordpress 不会在不同的服务器上加载 javascript 文件?
【发布时间】:2013-09-07 03:14:23
【问题描述】:

我是这样在wordpress中加载js的:

function add_my_user_scripts() {
        wp_enqueue_script('myScriptsjs_user',plugins_url('/js/myScriptsjs_user.js', __FILE__),'','',true);
        wp_localize_script( 'myScriptsjs_user', 'myAjax', array( 'ajaxurl' => admin_url( 'admin-ajax.php' )));
    }

我需要用于文件 ajax 调用的 myAjax。这适用于我的测试服务器,但是一旦我将它加载到实时服务器,它就不会加载它。其他所有内容都可以在包括 CSS 在内的实时服务器上正常加载。我关闭了其他插件(仍然有问题)并吐出 php 错误,我没有遇到任何冲突。

我查看了其他使用 ajax 的插件,我也是这样做的……加载正常。我是否忽略了一些明显的东西?

【问题讨论】:

  • 显而易见的事情:该服务器上是否存在文件?
  • 是的,我什至有服务器输出 plugins_url('/js/myScriptsjs_user.js', FILE)。我复制了它给我的 url,并且能够在服务器上看到文件内容。
  • 我忘了提到我的开发服务器上有 3.5 和实时服务器上运行的 3.6。我怀疑这会导致这个问题。 3.6 真的只是比其他任何东西都包含更多的安全性。
  • 该代码是无效的 JavaScript 代码。通过 JSHint 运行它。
  • array( 'ajaxurl' => admin_url( 'admin-ajax.php' )) 应该做什么?

标签: javascript wordpress include


【解决方案1】:

我认为您遇到了same origin policy 的问题。使用 Ajax 不止一次发生在我身上,只有在将代码推送到非本地服务器上时,您才会意识到这一点。您可以阅读更多关于主题 here 的内容。希望这将有助于解决您的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多