diff --git a/wp-includes/comment.php b/wp-includes/comment.php index 7c6bf4b6d4..cbe8bba4f8 100644 --- a/wp-includes/comment.php +++ b/wp-includes/comment.php @@ -45,8 +45,13 @@ function check_comment($author, $email, $url, $comment, $user_ip, $user_agent, $ if ( 1 == get_option('comment_moderation') ) return false; // If moderation is set to manual - if ( get_option( 'comment_max_links' ) && preg_match_all( '/]*href/i', apply_filters( 'comment_text', $comment ), $out) >= get_option( 'comment_max_links' ) ) - return false; // Check # of external links + // Check # of external links + if ( $max_links = get_option( 'comment_max_links' ) ) { + $num_links = preg_match_all( '/]*href/i', apply_filters( 'comment_text', $comment ), $out ); + $num_links = apply_filters( 'comment_max_links_url', $num_links, $url ); // provide for counting of $url as a link + if ( $num_links >= $max_links ) + return false; + } $mod_keys = trim(get_option('moderation_keys')); if ( !empty($mod_keys) ) {