此js主要用于解决WordPress在百度云加速等CDN缓存开启下无法保存用户信息的问题。提交评论的时候,会自动保存用户信息到本地cookies当中,下次再访问博客的时候,将自动填写用户信息。
1、将如下代码保存为saveinfo.js,并上传到主题目录(可根据实际情况将代码放到自己的js文件中或者其他目录)。
function getCookie(c_info){
if (document.cookie.length>0){
c_start=document.cookie.indexOf(c_info + "=")
if (c_start!=-1){
c_start=c_start + c_info.length+1
c_end=document.cookie.indexOf(";",c_start)
if (c_end==-1) {
c_end=document.cookie.length;
}
return unescape(document.cookie.substring(c_start,c_end));
}
}
return null;
}
function removeCookie(name) {
var cval=getCookie(name);
if(cval!=null){
setCookie(name,cval,-1);
}
}
function setCookie(c_info,value,expiredays){
var exdate=new Date()
exdate.setDate(exdate.getDate()+expiredays)
//请将domain改成你的域名
document.cookie=c_info+ "=" +escape(value)+";path=/;domain=.zhangge.net"+
((typeof expiredays=="undefined") ? "" : "; expires="+exdate.toGMTString());
}
function checkCookie(){
$("#comment-author-info input[type='text']").each(function(){
var val = getCookie(this.name);
this.value = val;
});
}
function goSubmit(){
$("#comment-author-info input[type='text']").each(function(){
removeCookie(this.name);
setCookie(this.name,this.value,365);
});
}
function removeck(){
$("#comment-author-info input[type='text']").each(function(){
removeCookie(this.name);
});
}
jQuery(document).ready(function($){
checkCookie();
$("#respond #submit").click(function(){
goSubmit();
});
$("#respond #reset").click(function(){
removeck();
});
});
2、在主题head部分载入这个js(或者根据自己主题实际情况载入)即可。
<script type="text/javascript" src="<?php bloginfo('template_directory'); ?>/saveinfo.js"></script>
via 张戈博客 - http://zhangge.net/4538.html