将下面的代码,添加到当前主题函数模板 functions.php 中
function weixin_fans($atts, $content=null){ extract(shortcode_atts( array ( 'key' => null, 'reply' => '' ), $atts)); // 管理员登录直接显示隐藏内容 if ( current_user_can('level_10') ) { return '<div class="hidden-content">'.do_shortcode( $content ).'</div>'; } // 输入正确验证码显示隐藏内容 if(isset($_POST['weixin_key']) && $_POST['weixin_key']==$key){ return '<div class="hidden-content">'.do_shortcode( $content ).'</div>'; } else { return ' <form class="post-password-form weixin-form" action="'.get_permalink().'" method="post"> <div class="weixin-box"> <div class="post-secret"><i class="be be-info"></i>输入验证码查看隐藏内容:</div> <p> <input id="wpbox" type="password" size="20" name="weixin_key"> <input type="submit" value="提交" name="Submit"> </p> <div class="weixin-secret"> <div class="weixin-w">扫描二维码关注本站微信公众号或者在微信里搜索:<span class="weixin-n">你的微信公众号名称</span></div> <div class="weixin-w">回复 <span class="weixin-n">'.$reply.'</span> 获取验证码</div> <img src="http://自己的微信公众号二维码图片" alt="weixin"> </div> </div> </form>'; } } add_shortcode('weixin', 'weixin_fans');
CSS代码
.hidden-content, .weixin-form { padding: 0 0.5rem; border: 1px dashed #ff4400; } .weixin-n { color: #ff4400; } .weixin-form img { width: 100px; height: auto; }
使用方法:
编辑文章时输入:
[weixin key=验证码 reply=回复的内容]隐藏的内容[/weixin]
分别输入自动回复的验证码和回复的内容
提示:
要注意验证码后面有一个半角的空格,否则输入验证码无效。
代码中无cookie功能,再次打开页面需要重新输入验证码。
管理员登录状态下直接显示隐藏的内容,不需要输入验证码。
短代码虽然目前已被区块编辑器所取代,不过短代码功能还是可以正常使用的。