get_default_comment_status( string $post_type = 'post', string $comment_type = 'comment' ): string
Gets the default comment status for a post type.
Parameters
-
$post_type
string Optional -
Post type. Default
'post'
.Default:
'post'
-
$comment_type
string Optional -
Comment type. Default
'comment'
.Default:
'comment'
Return
string Expected return value is 'open'
or 'closed'
.
Source
File: wp-includes/comment.php
.
View all references
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 );
}
Hooks
-
apply_filters( 'get_default_comment_status',
string $status ,string $post_type ,string $comment_type ) -
Filters the default comment status for the given post type.
Changelog
Version | Description |
---|---|
4.3.0 | Introduced. |