我在Javascript文件中进行了更改。尝试禁用插件/重新激活/删除javascript文件并重新上传,但似乎没有根据我的新javascript代码上传页面。
最后我进入了查看源代码,发现脚本src设置为"wp-content/plugins/my-plugin/js/my-plugin.js?ver=4.3.1"
如果我在浏览器中输入此URL,我会收回旧代码。但是,如果我在末尾?ver=4.3.1
删除查询字符串,则会加载我的新文件代码。
我不确定是谁添加了ver=4.3.1
。我的插件代码中没有它。有人可以告诉我如何删除这个并请求我最新的JavaScript代码?现在已经超过一个小时,我无法解决这个问题。
非常感谢!
答案 0 :(得分:0)
这是因为WordPress缓存了您的JavaScript文件。要摆脱每次运行WordPress时更改的缓存问题集版本属性。我通常使用时间函数
wp_enqueue_script( 'handle', 'src', array() , time() );
答案 1 :(得分:0)
我想,你的插件中使用了wp_enqueue_script函数来加载这个javascript文件。
wp_enqueue_script ( string $ handle,string $ src = false,$ deps = array(), $ ver = false ,$ in_footer = false )
基于documentation, $ ver 作为可选参数:
(string | bool | null)(可选)指定脚本版本号的字符串, 如果它有一个,作为缓存的查询字符串添加到URL 破坏目的。我 f版本设置为false,版本号是 自动添加等于当前安装的WordPress版本。如果 设置为null,不添加任何版本。
默认值:false
自动添加字符串“ver = 4.3.1”,因为您没有在函数调用中指定$ ver变量。所以问题出在您的浏览器中,因为它加载了缓存版本。
作为快速解决方案,如果您的插件尚未投放,您只需删除浏览器的缓存即可。但是这个解决方案并没有帮助那些没有删除缓存的用户。
如果您将源代码中的“ver = 4.3.1”字符串更改为其他内容,则您的浏览器将加载新版本的javascript文件。您可以通过修改wp_enqueue_script调用来完成此操作。例如:
wp_enqueue_script( "my_plugin_js_handle", "path_to_js_file", array(), "1.2.3" );