Files
cwd/docs/config/site-isolation.md
anghunk ac87af705f fix(api): 移除评论导出接口的站点筛选功能
移除评论导出接口的站点筛选功能,现在导出所有站点的评论数据。同时更新相关文档,移除站点隔离相关的API说明,并修复文档组件的内存泄漏问题。导入接口现在支持自动识别和转换第三方评论系统数据格式,并修复站点ID字段的导入问题。

- 移除 `/admin/comments/export` 接口的 `siteId` 查询参数
- 更新数据导入文档,说明第三方评论系统自动转换功能
- 修复文档组件页面切换时的配置更新和内存泄漏
- 修复评论和统计数据的导入逻辑,确保站点ID字段正确保存
- 更新数据库表结构,为统计相关表添加站点ID字段和联合唯一约束
2026-02-09 16:52:48 +08:00

71 lines
2.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 站点隔离
CWD 评论系统支持通过 `siteId` 参数实现多站点数据隔离。当你需要为多个不同的网站或博客使用同一套评论系统后端时,可以通过 `siteId` 来区分不同站点的评论数据。
## 功能说明
- **数据隔离**:每个 `siteId` 对应独立的评论数据,不同站点的评论互不干扰
- **统一管理**:所有站点共用同一个后端 API 和管理后台,通过 siteId 进行区分
## 前端配置
在初始化评论组件时,通过 `siteId` 参数指定站点标识:
```html
<div id="comments"></div>
<script src="https://unpkg.com/cwd-widget@0.0.x/dist/cwd.js"></script>
<script>
const comments = new CWDComments({
el: '#comments',
apiBaseUrl: 'https://your-api.example.com',
siteId: 'blog', // 站点 ID例如blog, docs, forum
});
comments.mount();
</script>
```
### 参数说明
| 参数 | 类型 | 必填 | 说明 |
| --------- | ------ | ---- | -------------------------- |
| `siteId` | string | 否 | 站点标识符,用于隔离不同站点的评论数据 |
### siteId 命名建议
- 使用小写字母、数字和连字符,如 `blog``docs``my-site-1`
- 避免使用特殊字符和空格
- 建议使用有意义的名称,便于识别不同站点
## 多站点示例
如果你有多个站点,可以为每个站点配置不同的 `siteId`
```html
<!-- 博客站点 -->
<div id="blog-comments"></div>
<script>
const blogComments = new CWDComments({
el: '#blog-comments',
apiBaseUrl: 'https://your-api.example.com',
siteId: 'blog',
});
blogComments.mount();
</script>
<!-- 文档站点 -->
<div id="docs-comments"></div>
<script>
const docsComments = new CWDComments({
el: '#docs-comments',
apiBaseUrl: 'https://your-api.example.com',
siteId: 'docs',
});
docsComments.mount();
</script>
```
## 注意事项
[为什么设置完 siteId 后,评论区不显示旧的评论数据?](/common-problems.html#_1-为什么设置完-siteid-后-评论区不显示旧的评论数据)