LLMS_REST_Memberships_Controller::prepare_item_for_database( WP_REST_Request $request )
Prepares a single post for create or update.
Parameters Parameters
- $request
-
(WP_REST_Request) (Required) Request object.
Return Return
(array|WP_Error) Array of llms post args or WP_Error.
Source Source
File: libraries/lifterlms-rest/includes/server/class-llms-rest-memberships-controller.php
protected function prepare_item_for_database( $request ) { $prepared_item = parent::prepare_item_for_database( $request ); $schema = $this->get_item_schema(); // Restriction action. if ( ! empty( $schema['properties']['restriction_action'] ) && isset( $request['restriction_action'] ) ) { $prepared_item['restriction_redirect_type'] = $request['restriction_action']; } // Restriction page id. if ( ! empty( $schema['properties']['restriction_page_id'] ) && isset( $request['restriction_page_id'] ) ) { $page = get_post( $request['restriction_page_id'] ); if ( $page && is_a( $page, 'WP_Post' ) ) { $prepared_item['redirect_page_id'] = $request['restriction_page_id']; } else { $prepared_item['redirect_page_id'] = 0; } } // Restriction URL. if ( ! empty( $schema['properties']['restriction_url'] ) && isset( $request['restriction_url'] ) ) { $prepared_item['redirect_custom_url'] = $request['restriction_url']; } // Sales page id. if ( ! empty( $schema['properties']['sales_page_page_id'] ) && isset( $request['sales_page_page_id'] ) ) { $page = get_post( $request['sales_page_page_id'] ); if ( $page && is_a( $page, 'WP_Post' ) ) { $prepared_item['sales_page_content_page_id'] = $request['sales_page_page_id']; } else { $prepared_item['sales_page_content_page_id'] = 0; } } // Sales page type. if ( ! empty( $schema['properties']['sales_page_type'] ) && isset( $request['sales_page_type'] ) ) { $prepared_item['sales_page_content_type'] = $request['sales_page_type']; } // Sales page URL. if ( ! empty( $schema['properties']['sales_page_url'] ) && isset( $request['sales_page_url'] ) ) { $prepared_item['sales_page_content_url'] = $request['sales_page_url']; } /** * Filters the membership data for a response. * * @since 1.0.0-beta.9 * * @param array $prepared_item Array of membership item properties prepared for database. * @param WP_REST_Request $request Full details about the request. * @param array $schema The item schema. */ $prepared_item = apply_filters( 'llms_rest_pre_insert_membership', $prepared_item, $request, $schema ); return $prepared_item; }
Expand full source code Collapse full source code View on GitHub
Changelog Changelog
Version | Description |
---|---|
1.0.0-beta.9 | Introduced. |