Show Excerpt instead of Content Restriction message on Category Archive pages

By default, if a restricted post is shown in the Category Archive, the content will be replaced with the Content Restriction message that you configured.

With the custom code from below, we can make the posts show the Excerpt on the Category Archive pages and only when the user clicks on a post to see the whole content, they will see the restriction message.

1
2
3
4
5
6
7
8
9
10
11
add_filter( 'pms_content_restriction_message', 'pmsc_cr_show_excerpt_in_category_pages', 20, 3);
function pmsc_cr_show_excerpt_in_category_pages( $message, $message_type, $post_id) {
	if ( !is_archive() || empty($post_id) ) return $message;
 
	$excerpt = get_the_excerpt( $post_id );
 
	if ( !empty($excerpt) )
		return $excerpt;
	else
		return $message;
}