rest_default_additional_properties_to_false

函式
rest_default_additional_properties_to_false ( $schema )
引數
  • (array) $schema The schema to modify.
    Required:
返回值
  • (array) The modified schema.
定義位置
相關方法
get_default_post_to_editrest_add_application_passwords_to_indexrest_authorization_required_codeget_default_link_to_editget_default_page_to_edit
引入
5.5.0
棄用
-

rest_default_additional_properties_to_false:這個過濾器鉤子允許開發者在檢查cookie的有效性時修改返回的狀態。這個過濾鉤子允許開發者在定義JSON模式時設定 additionalProperties 的預設值。預設情況下,extraproperties被設定為true,這允許任何額外的屬性被新增到一個物件中。

對於模式中的所有物件定義,預設情況下將”additionalProperties”設定為false。

function rest_default_additional_properties_to_false( $schema ) {
	$type = (array) $schema['type'];

	if ( in_array( 'object', $type, true ) ) {
		if ( isset( $schema['properties'] ) ) {
			foreach ( $schema['properties'] as $key => $child_schema ) {
				$schema['properties'][ $key ] = rest_default_additional_properties_to_false( $child_schema );
			}
		}

		if ( isset( $schema['patternProperties'] ) ) {
			foreach ( $schema['patternProperties'] as $key => $child_schema ) {
				$schema['patternProperties'][ $key ] = rest_default_additional_properties_to_false( $child_schema );
			}
		}

		if ( ! isset( $schema['additionalProperties'] ) ) {
			$schema['additionalProperties'] = false;
		}
	}

	if ( in_array( 'array', $type, true ) ) {
		if ( isset( $schema['items'] ) ) {
			$schema['items'] = rest_default_additional_properties_to_false( $schema['items'] );
		}
	}

	return $schema;
}

常見問題

FAQs
檢視更多 >