_resolve_template_for_new_post
函数
_resolve_template_for_new_post ( $wp_query )
- Access
- Private
- 参数
-
-
(WP_Query)
$wp_query
Current WP_Query instance, passed by reference.- Required: 是
-
(WP_Query)
- 定义位置
-
-
wp-includes/block-template.php
, line 314
-
wp-includes/block-template.php
- 引入
- 5.9.0
- 弃用
- –
Sets the current WP_Query to return auto-draft posts.
The auto-draft status indicates a new post, so allow the the WP_Query instance to
return an auto-draft post for template resolution when editing a new post.
function _resolve_template_for_new_post( $wp_query ) { if ( ! $wp_query->is_main_query() ) { return; } remove_filter( 'pre_get_posts', '_resolve_template_for_new_post' ); // Pages. $page_id = isset( $wp_query->query['page_id'] ) ? $wp_query->query['page_id'] : null; // Posts, including custom post types. $p = isset( $wp_query->query['p'] ) ? $wp_query->query['p'] : null; $post_id = $page_id ? $page_id : $p; $post = get_post( $post_id ); if ( $post && 'auto-draft' === $post->post_status && current_user_can( 'edit_post', $post->ID ) ) { $wp_query->set( 'post_status', 'auto-draft' ); } }
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。