WordPress网站设置部分文章内容评论/回复后可见

如果我们希望隐藏文章部分内容,需要用户评论可见 、回复可见,那么今天这篇WordPress教程文章就刚好适合你。

这个功能实现起来很容易,而且可以提高用户积极性,是一个非常不错的功能。

下面是主要的核心代码。

//WordPress实现文章部分内容评论后可见

function reply_to_read($atts, $content=null) {   
	extract(shortcode_atts(array("notice" => '<p class="reply-to-read">温馨提示: 此处内容需要<a href="#respond" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  title="评论本文">评论本文</a>后才能查看.</p>'), $atts));   
	$email = null;   
	$user_ID = (int) wp_get_current_user()->ID;   
	if ($user_ID > 0) {   
		$email = get_userdata($user_ID)->user_email;   
		//对博主直接显示内容   
		$admin_email = "leixue@leiue.com"; //博主 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');

使用方法

1、 首先将以下代码添加到主题的functions.php文件里。

2、然后在编辑文章时添加下面两种方式的其中一种即可隐藏文章部分内容。

最终效果就是下面的样子

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

回复后才显示哟

关于WordPress网站设置部分文章内容评论/回复后可见的相关内容;如有侵权,请联系老文删除。

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
老文的头像老文
上一篇 2021年9月4日 上午12:19
下一篇 2021年9月7日 下午9:48

相关推荐

  • 大更新全新UI:WordPress DUX主题更新至v8.0

    DUX作者又一次在星期一更新了主题。本次更新的为wordpress DUX主题v8.0。主要是WP更新6.0后一些微调功能。有需要的小伙伴可以去下载了。 更新日志: v8.0 2022-10-31 全新:全站UI重做,前端加载速度提升2倍 全新:全站图标重构,各种图标更加直观、细节更好 全新:一键换色功能重写,全新提供的14种优质配色可选 新增:夜间模式,包…

    2022年11月7日
    319
  • zblog的开发模式是做什么的?zblog开发模式有什么作用?

    zblog后台有一个开发模式是做什么的?zblog开发模式有什么作用呢?本文就尝试来说明下这个问题。 首先zblog的开发模式在后台–网站设置–全局设置里面如下图: 这个模式默认是关闭的。顾名思义这个模式是给开发人员使用的,一般用户不建议开启。 那么普通用户什么时候需要用到这个呢?当你的网站出现问题,某个页面出现了错误提示的时候,这个…

    2021年11月18日
    621
  • 怎样批量替换WordPress文章中的文字

    批量替换WordPress文章中的文字 如果准备替换修改散布在大量WordPress文章中的相同文字,手动编辑文章修改工作量大,可以用下面的代码实现批量替换,会用到WordPress的操作数据常量$wpdb修改数据库,不需要登录数据库操作。 将代码添加到当前主题函数模板functions.php的最后: global $wpdb; $wpdb->que…

    2022年2月12日
    843
  • WordPress在前台显示登录用户的注册时间

    在使用WordPress建站的时候,有的用户希望能在前台显示用户注册时间,但是WordPress是没有这个选项的,那么该如何实现这个功能呢? 非常简单,虽然这个功能并不常见,也没多大的作用。这个功能基本上是用在有用户中心站点。 首先将下面代码复制到主题的functions.php文章中。 //WordPress在前台显示登录用户的注册时间 function …

    2021年11月2日
    474
  • 除宝塔面板各种计算题与延时等待

    现在宝塔面板真的是越来越过分了,删除文件、删除数据库、删除站点等操作都需要做计算题!我今天升级到7.7版本,发现删除数据库竟然还加了几秒的延时等待,也无法跳过!宝塔的老板该不会是小学数学老师吧,那么喜欢让我们做计算题!因此我写了个js用于去除各种计算题以及延时等待,同时还去除了软件列表页面的bt企业版广告。只需要执行以下命令即可一键完成! 复制以下命令在SS…

    2021年12月11日
    626