\WP_REST_Server::READABLE, 'callback' => ARIAFSE_NS . 'ariafse_get_global_settings', 'permission_callback' => function () { return true; }, ), array( 'methods' => \WP_REST_Server::EDITABLE, 'callback' => ARIAFSE_NS . 'ariafse_update_global_settings', 'permission_callback' => function () { return current_user_can( 'edit_theme_options' ); }, ), ) ); } /** * Get configs */ function ariafse_get_global_settings( \WP_REST_Request $request ) { $settings = get_option( 'ariafse_theme_options' ); return rest_ensure_response( $settings ); } /** * Set configs */ function ariafse_update_global_settings( \WP_REST_Request $request ) { $fields = isset( $request['setting'] ) ? $request['setting'] : array(); if ( ! empty( $fields ) ) { update_option( 'ariafse_theme_options', $fields ); } return rest_ensure_response( 'success' ); }