对JS的更改未在现场反映

时间:2018-10-15 作者:Greg

我想编辑JS文件,但是,我所做的任何标记都不会出现在网站上。

我添加了一个简单的:

console.log("hello world");

在查看文档的标题时,我可以找到.js 文件:

www.mydomain。com/wp-content/themes/theme/js/menu/menu。js?版本=4.9.8

当查看文件时,我看不到我的更改,但是,当删除?ver=4.9.8 从js URL中,我可以看到我的代码。

我如何重新生成它?

对不起,我对WP是个新手。

3 个回复
最合适的回答,由SO网友:jdp 整理而成

您必须查看主题以查看js文件的排队位置。通常有一个函数。主题中的php文件将具有所有特殊功能和操作。有时,开发人员会在调用get\\u header()之前将所有排队的脚本放入主题模板(即single.php)。

无论如何,你的菜单。js文件使用wp_enqueue_script()模板文件中的函数或函数。php。此函数中的第4个参数可以设置为“1.0”类型的字符串,以便在更改基本js时取消缓存。如果呼叫wp_enqueue_script() 在第4个参数中未指定版本,WP将使用当前运行的WordPress版本作为ver URL中的变量。

作为一种良好的做法,我建议使用child theme 或者一个单独的js文件wp_enqueue_scripts 钩子,因为如果您订阅了主题开发人员的更新,那么您对函数的更改将被删除。php可能会被覆盖。正如你所说的,这可能是很多,你是一个WP新手,但如果你打算继续使用这个平台,我认为了解儿童主题、动作和挂钩是值得的。

SO网友:Luciano Irigoyen

您似乎正在获取JS文件的缓存版本。检查您的网站上是否安装了缓存插件,确保清空浏览器缓存,或联系您的托管提供商检查是否在其端。

SO网友:Ulf Dellbrügge

有点晚了,但您可以使用:

filemtime( plugin_dir_path( __FILE__ ) . \'css/myFunky.css or js/myFunky.js\' ) 
根据文件的时间戳生成版本。每次更改都会自动更新版本,WordPress永远不会使用文件的缓存版本。

结束

相关推荐

JAVASCRIPT:向URL添加锚hashtag,并重新加载

我做了this Website 在两个内部页面中使用锚定链接。这是一个多语言网站,使用PolyLang。语言选择器位于网站右上角的浮动菜单中。网站所有者希望使用语言选择器的交互页面功能。这意味着;在任何英文页面中,您单击语言选择器(西班牙语),该选择器将根据父菜单项“活动”中的子菜单将您带到等效(对等)页面。工作精细,开箱即用,用于链接;但不适用于锚链。为此,我尝试了Apache。htaccess和PHP,但不起作用。JavaScript适用于this page 只有一个锚。我使用了:窗口。地方repla