WP_REST_Posts_Controller::handle_template( string $template, int $post_id, bool $validate = false )

In this article

Sets the template for a post.

Parameters

$templatestringrequired
Page template filename.
$post_idintrequired
Post ID.
$validatebooloptional
Whether to validate that the template selected is valid.

Default:false

Source

public function handle_template( $template, $post_id, $validate = false ) {

	if ( $validate && ! array_key_exists( $template, wp_get_theme()->get_page_templates( get_post( $post_id ) ) ) ) {
		$template = '';
	}

	update_post_meta( $post_id, '_wp_page_template', $template );
}

Changelog

VersionDescription
4.9.0Added the $validate parameter.
4.7.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.