WordPress能不能来一个文章内容隐藏需要输入密码查看隐藏内容,通过关注微信公众号输入对应验证码获取密码,这样既可以防止内容被伸手党无情偷窥,也可以微信引流一波,一举二得的事情,网上有WordPress微信插件(也有纯代码的),但是那个插件验证码是唯一的,那你所有文章隐藏内容密码都是一样的,现在发的就是改进版本,验证码就是你文章ID,文章ID不可能一样吧,所以每篇文章都可以单独设置密码,具体教程如下:
代码部署
注意:此教程重点针对知更鸟主题,其他主题请参照思路自行制作
打开知更鸟主题目录begin/inc/shortcode.php查找搜索加密内容然后替换久伴的代码
注意:代码中二维码图片链接请替换为自己的
// 加密内容
function secret($atts, $content=null){
extract(shortcode_atts(array('key'=>null), $atts));
if ( current_user_can('level_10') ) {
return '<p class="secret-password"><i class="be be-clipboard"></i>加密的内容:<br />'.do_shortcode( $content ).'</p>';
}
if(isset($_POST['secret_key']) && $_POST['secret_key']==$key){
return '<p class="secret-password"><i class="be be-clipboard"></i>加密的内容:<br />'.do_shortcode( $content ).'</p>';
} else {
return '
<form class="post-password-form" action="'.get_permalink().'" method="post">
<div class="post-secret"><i class="be be-info"></i>' . sprintf(__( '关注微信公众号回复"'.get_the_ID().'"获取验证码', 'begin' )) . '</div>
<div class="jiubwximg"><img src="https://jiub.ren/wp-content/uploads/2019/05/2019051405064027.jpg"></div>
<p>
<input id="pwbox" type="password" size="20" name="secret_key">
<input type="submit" value="' . sprintf(__( '提交', 'begin' )) . '" name="Submit">
</p>
</form> ';
}
}
打开知更鸟主题根目录begin/style.css文件搜索.post-password-form类替换成以下代码即可,样式有点简陋,不喜欢的可以自行修改。
.post-password-form {
margin: 0 auto;
width:365px;
height:329px;;
padding: 15px 5px;
border-radius: 2px;
border: 1px solid #ddd;
text-align:center;
}
.jiubwximg {
width:230px;
height:230px;
margin: 0 auto;
}
.post-password-form .jiubwximg img{
width:230px;
height:230px;
margin:0 auto;
}