diff --git a/src/Identity/EvidenceService.php b/src/Identity/EvidenceService.php index cbc67f29..b696d4cc 100644 --- a/src/Identity/EvidenceService.php +++ b/src/Identity/EvidenceService.php @@ -63,7 +63,13 @@ final class EvidenceService { ], 0, __('身份认证证明材料', 'aksrt')); if (is_wp_error($id)) { $this->delete($ids); - return new \WP_Error('aksrt_identity_upload_write', __('证明材料写入失败', 'aksrt')); + // 透传 WordPress 的真实原因(例如后台格式限制里禁止了该格式), + // 否则前端只会看到一句含义不明的“写入失败”。 + $reason = wp_strip_all_tags(trim((string) $id->get_error_message())); + return new \WP_Error( + 'aksrt_identity_upload_write', + $reason !== '' ? $reason : __('证明材料写入失败', 'aksrt') + ); } $id = (int) $id; wp_update_post(['ID' => $id, 'post_author' => $user_id, 'post_status' => 'private']);