get_default_comment_status( string $post_type = 'post', string $comment_type = 'comment' )
Gets the default comment status for a post type.
Parameters
- $post_type
-  (string) (Optional) Post type. Default value: 'post' 
- $comment_type
-  (string) (Optional) Comment type. Default value: 'comment' 
Return
(string) Expected return value is 'open' or 'closed'.
Source
File: wp-includes/comment.php
function get_default_comment_status( $post_type = 'post', $comment_type = 'comment' ) {
	switch ( $comment_type ) {
		case 'pingback':
		case 'trackback':
			$supports = 'trackbacks';
			$option   = 'ping';
			break;
		default:
			$supports = 'comments';
			$option   = 'comment';
			break;
	}
	// Set the status.
	if ( 'page' === $post_type ) {
		$status = 'closed';
	} elseif ( post_type_supports( $post_type, $supports ) ) {
		$status = get_option( "default_{$option}_status" );
	} else {
		$status = 'closed';
	}
	/**
	 * Filters the default comment status for the given post type.
	 *
	 * @since 4.3.0
	 *
	 * @param string $status       Default status for the given post type,
	 *                             either 'open' or 'closed'.
	 * @param string $post_type    Post type. Default is `post`.
	 * @param string $comment_type Type of comment. Default is `comment`.
	 */
	return apply_filters( 'get_default_comment_status', $status, $post_type, $comment_type );
}  Changelog
| Version | Description | 
|---|---|
| 4.3.0 | Introduced. | 
    © 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
    https://developer.wordpress.org/reference/functions/get_default_comment_status