protected function get_changeset_post_data($post_id) { if (!$post_id) { return new WP_Error('empty_post_id'); } $changeset_post = get_post($post_id); if (!$changeset_post) { return new WP_Error('missing_post'); } if ('customize_changeset' !== $changeset_post->post_type) { return new WP_Error('wrong_post_type'); } $changeset_data = json_decode($changeset_post->post_content, true); if (function_exists('json_last_error') && json_last_error()) { return new WP_Error('json_parse_error', '', json_last_error()); } if (!is_array($changeset_data)) { return new WP_Error('expected_array'); } return $changeset_data; }