之前曾经分享过一篇关于Easy2Hide插件的文章,文章介绍了如何使用该插件实现隐藏内容的方法与技巧。但是很多人反馈不喜欢使用插件去实现这些功能,那这篇文章就是介绍 WordPress 不用插件如何实现文章隐藏内容评论可见。

在当前主题的 functions.php 文件添加以下代码:

< ?php
function reply_to_read($atts, $content=null) {
extract(shortcode_atts(array("notice" => '
< 建站网 blockquote> 温馨提示: 隐藏内容需要< 建站网 a href="#respond" title="点击进行评论"> 回复评论 后才能查看, 评论后请 < 建站网 a href="javascript:location.reload()" title="点击刷新"> 刷新 !< 建站网/a>.

'), $atts));
$email = null;
$user_ID = (int) wp_get_current_user()->ID;
if ($user_ID > 0) {
$email = get_userdata($user_ID)->user_email;
//对博主直接显示内容
$admin_email = "[email protected]"; //把左面的邮箱换成博主 Email
if ($email == $admin_email) {
return $content;
}
} else if (isset($_COOKIE['comment_author_email_' . COOKIEHASH])) {
$email = str_replace('%40', '@', $_COOKIE['comment_author_email_' . COOKIEHASH]);
} else {
return $notice;
}
if (empty($email)) {
return $notice;
}
global $wpdb;
$post_id = get_the_ID();
$query = "SELECT `comment_ID` FROM {$wpdb->comments} WHERE `comment_post_ID`={$post_id} and `comment_approved`='1' and `comment_author_email`='{$email}' LIMIT 1";
if ($wpdb->get_results($query)) {
return do_shortcode($content);
} else {
return $notice;
}
}
add_shortcode('reply', 'reply_to_read');
?>

注:[email protected],将出现的建网站字眼删掉!
编辑文章的时候,使用

温馨提示: 此处内容需要您评论本文后才能查看!

把要评论可见的内容包围起来,如:

温馨提示: 此处内容需要您评论本文后才能查看!

文章会显示:

温馨提示: 隐藏内容需要 回复评论 后才能查看, 评论后请 刷新 !.

自定义的提示信息

自定义温馨提示的内容。

提醒:如果开通了评论审核,那么内容需要评论审核通过后才可以看见!