rest_pre_insert_<post_type>

Filters a post before it is inserted via the REST API.

Description

apply_filters( 'rest_pre_insert_<post_type>', (stdClass) $prepared_post, (WP_REST_Request) $request ); 

The dynamic portion(s) of the hook name refer to the post type slug.

Parameters (2)

0. $prepared_post (stdClass)
An object representing a single post prepared for inserting or updating the database.
1. $request (WP_REST_Request)
Request object.

Usage

To run the hook, copy the example below.
  1. $prepared_post = apply_filters( 'rest_pre_insert_{$post_type}', $prepared_post, $request ); 
  2.  
  3. if ( !empty( $prepared_post ) ) { 
  4.  
  5. // everything has led up to this point... 
  6.  
  7.  
The following example is for adding a hook callback.
  1. // define the rest_pre_insert_<post_type> callback 
  2. function filter_rest_pre_insert_post_type( $prepared_post, $request ) { 
  3. // make filter magic happen here... 
  4. return $prepared_post
  5. }; 
  6.  
  7. // add the filter 
  8. add_filter( "rest_pre_insert_{$post_type}", 'filter_rest_pre_insert_post_type', 10, 2 ); 
To remove a hook callback, use the example below.
  1. // remove the filter 
  2. remove_filter( "rest_pre_insert_{$post_type}", 'filter_rest_pre_insert_post_type', 10, 2 ); 

Defined (1)

The filter is defined in the following location(s).

/wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php  
  1. return apply_filters( "rest_pre_insert_{$this->post_type}", $prepared_post, $request );