Other than caching every hour, or every week, you may cache according to file data.
<script src="js/my_script.js?v=<?=md5_file('js/my_script.js')?>"></script> or use file modification time:
<script src="js/my_script.js?v=<?=filemtime('js/my_script.js')?>"></script> or use file modification every hour:
<script type="text/javascript" src="js/myscript.js?v=<?php echo date('YmdHis'); ?>"></script> or Using Javascript
function reloadScripts(toRefreshList/* list of js to be refresh */, key /* change this key every time you want force a refresh */) {
var scripts = document.getElementsByTagName('script');
for(var i = 0; i < scripts.length; i++) {
var aScript = scripts[i];
for(var j = 0; j < toRefreshList.length; j++) {
var toRefresh = toRefreshList[j];
if(aScript.src && (aScript.src.indexOf(toRefresh) > -1)) {
new_src = aScript.src.replace(toRefresh, toRefresh + '?k=' + key);
// console.log('Force refresh on cached script files. From: ' + aScript.src + ' to ' + new_src)
aScript.src = new_src;
}
}
}
}
To get host url of current server simply replace application\config\config.php [crayon-6936c41f9e462465332685/] with [crayon-6936c41f9e46f687715843/]
You should first test the existence of a file by file_exists(). [crayon-6936c41f9e7c7681657224/] or simple solution…
[crayon-6936c41f9ea25268060629/] Output the random string with the call below: [crayon-6936c41f9ea2c496308551/]
Note: from WordPress Use it like this: [crayon-6936c41f9ec45330538626/] Code: [crayon-6936c41f9ec4a284275052/]
[crayon-6936c41f9ef6e405254164/] or [crayon-6936c41f9ef71379734278/]