Home / Admin / Set a Minimum Word Count for Posts
Duplicate Snippet

Embed Snippet on Your Site

Set a Minimum Word Count for Posts

Force your authors to write posts that have a minimum length.
WPCode Team
90+
Code Preview
php
<?php
/**
 * Prevent publishing posts under a minimum number of words.
 *
 * @param int     $post_id The id of the post.
 * @param WP_Post $post The post object.
 *
 * @return void
 */
function wpcode_snippet_publish_min_words( $post_id, $post ) {
	// Edit the line below to set the desired minimum number of words.
	$word_count = 100;
	if ( str_word_count( $post->post_content ) < $word_count ) {
		wp_die(
			sprintf(
				// Translators: placeholder adds the minimum number of words.
				esc_html__( 'The post content is below the minimum word count. Your post needs to have at least %d words to be published.' ),
				absint( $word_count )
			)
		);
	}
}
add_action( 'publish_post', 'wpcode_snippet_publish_min_words', 9, 2 );

Comments

Add a Comment