Use wp_get_theme()->get_page_templates() rather than get_page_templates() in wp_insert_post(),
to allow page template setting on the frontend without a fatal error. fixes #21755. git-svn-id: https://develop.svn.wordpress.org/trunk@21847 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
0ce7f85ca4
commit
9a0d9562a2
@ -2763,8 +2763,8 @@ function wp_insert_post($postarr, $wp_error = false) {
|
||||
|
||||
if ( !empty($page_template) && 'page' == $data['post_type'] ) {
|
||||
$post->page_template = $page_template;
|
||||
$page_templates = get_page_templates();
|
||||
if ( 'default' != $page_template && !in_array($page_template, $page_templates) ) {
|
||||
$page_templates = wp_get_theme()->get_page_templates();
|
||||
if ( 'default' != $page_template && ! isset( $page_templates[ $page_template ] ) ) {
|
||||
if ( $wp_error )
|
||||
return new WP_Error('invalid_page_template', __('The page template is invalid.'));
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user