Skip to content

按文章控制是否允许复制

NotionNext 默认通过 CAN_COPY 控制全站是否允许复制正文。适合大多数站点的做法是:科普、教程类文章允许复制,原创小说、付费试读、个人手稿等文章单独禁止复制。

全站默认允许复制

保持默认配置即可:

env
NEXT_PUBLIC_CAN_COPY=true

需要保护的文章,在 Notion 数据库中新增一列 CAN_COPY,这一列可以是文本、选择、复选框等类型。对小说文章填:

text
false

这些文章会禁止复制正文,并且自定义右键菜单中的“复制”入口也会隐藏。其他没有填写 CAN_COPY 的文章继续按全站默认值允许复制。

在 Notion 文章里新增 CAN_COPY 字段

如果你还不会在 Notion 模板里加字段,可以直接从任意一篇文章开始设置:

  1. 打开 Notion 数据库中的任意一篇文章。
  2. 在文章属性区域点击 Add a property
  3. 属性名称填写 CAN_COPY
  4. 属性类型选择 文本
  5. 在这篇文章的 CAN_COPY 中填写 false
  6. 等站点重新同步或重新部署后,这篇文章就不允许复制正文。

这个字段加到数据库后,其他文章也会看到同一个 CAN_COPY 属性。你可以在小说文章里填 false,科普文章留空或填 true

想省事的话,也可以在 Notion 中为不同写作类型准备模板:小说模板默认 CAN_COPY=false,科普文章模板默认留空或 CAN_COPY=true

全站默认禁止复制,单篇允许复制

如果你的站点大部分内容都不希望被复制,可以把全站配置设为:

env
NEXT_PUBLIC_CAN_COPY=false

需要允许传播、引用或研究的文章,在 Notion 文章的 CAN_COPY 字段中填:

text
true

这样只有这些文章可以复制。

使用 ext 字段

如果不想新增单独的 CAN_COPY 列,也可以在文章的 ext 字段中写:

json
{
  "CAN_COPY": false
}

或单篇开启复制:

json
{
  "CAN_COPY": true
}

文章级配置优先级高于全站 CAN_COPY

可填写的值

以下值会被识别为禁止复制:

text
false
0
no

其他非空值会按允许复制处理。

注意

禁止复制只能减少普通读者的复制操作,不能作为严格的版权保护或防盗版方案。重要作品仍建议配合版权声明、署名要求、访问权限、搜索引擎摘要控制等方式一起使用。