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:
Andrew Nacin 2012-09-14 18:36:08 +00:00
parent 0ce7f85ca4
commit 9a0d9562a2
1 changed files with 2 additions and 2 deletions

View File

@ -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