内容管理器(Content Manager)

页面摘要: 内容管理器是 Strapi 用于浏览和编辑条目的界面。本文档对内容管理器进行概述,并讲解各种视图以及如何向字段、组件、动态区域和关系字段中写入内容。

通过管理面板主导航可访问的 内容管理器(Content Manager),用户可以编写和管理他们的内容。

  • Role & permission:Roles > Plugins - Content Manager 中至少需具备“Configure view(配置视图)”权限。
  • Environment:在开发与生产环境中均可用。

概述

内容管理器包含预先使用 内容类型构建器 创建好的可用集合类型和单一类型。

内容可以从 内容管理器子导航中显示的 2 个类别进行创建、管理和发布:

  • Collection types(集合类型),列出管理多个条目的可用内容类型。对于每个可用的集合类型,可以创建多个条目,这也是为什么每个集合类型分为 2 个界面:

    • 列表视图(list view),以表格形式显示为该集合类型创建的所有条目。
    • 编辑视图(edit view),聚焦于你所选集合类型的一个条目,并从中实际管理内容。
  • Single types(单一类型),列出只有一个条目的可用内容类型。与拥有多个条目的集合类型不同,单一类型并非为多次使用而创建。换句话说,每个可用单一类型只能有一个默认条目。因此单一类型类别中没有列表视图。

内容类型文件夹

如果内容类型已通过 内容类型构建器 整理到文件夹中,两个类别都会显示这些文件夹。

点击文件夹即可将其打开或关闭。从 内容管理器查看时,文件夹是只读的,并且每位管理员在每次访问之间会保持各自的文件夹打开或关闭状态。

只会显示至少包含一个该管理员有权查看的内容类型的文件夹。

如果某个文件夹为空,或它所包含的所有内容类型都被 权限 隐藏,则不会显示该文件夹。

TIP

点击搜索图标 即可使用文本搜索,更快地找到你的某个内容类型和/或条目!

特别是对于你的集合类型条目,你还可以使用 Filters(过滤器) 按钮来设置基于条件的过滤器,这些过滤器会相互叠加(即,如果你设置了多个条件,则只会显示满足所有条件的条目)。

当为内容类型启用了 草稿与发布 时,Filters(过滤器) 菜单会包含一个 Status(状态) 字段。你可以按以下方式过滤条目:

  • Draft (never published)(草稿(从未发布))(从未发布过的条目),
  • Published (all)(已发布(全部))(所有已发布的条目),
  • Published (modified)(已发布(已修改))(带有尚未发布的草稿更改的已发布条目),
  • 或 Published (unmodified)(已发布(未修改))(没有任何草稿更改的已发布条目)。

当 草稿与发布 启用时,你还可以按发布状态对条目进行排序。点击 Status(状态) 列标题可按从草稿到已发布的顺序排序,再次点击则可反转顺序。

NOTE

当状态过滤器处于激活状态时,Status(状态) 列的排序会被禁用,因为过滤后的结果已经共享相同的发布状态。

配置

列表视图和编辑视图都可以配置。

配置列表视图 {#list-view-settings}

列表视图表格可以通过 2 种方式配置:直接从列表视图进行快速配置,或使用永久且高级的配置以获得更多选项。两种配置都会持久保存,并且针对每个内容类型。

快速配置

列表视图可以即时配置,以选择表格中显示哪些字段。这些显示偏好保存在浏览器中,并在刷新页面和导航时保持。

  1. 点击设置按钮 。
  2. 勾选你希望在表格中显示的字段对应的复选框。
  3. 取消勾选你不想在表格中显示的字段对应的复选框。

内容管理器中列表视图设置里显示的字段

TIP

如果你想直接从列表视图方便地获取每个条目的 documentId 值,请勾选 documentId 字段。

永久且高级的配置

若要获得更高级的列表视图选项(例如启用/禁用搜索、过滤器和批量操作、重排列表视图表格的字段等),请使用完整配置界面。

NOTE

这些配置仅应用于访问其设置时所基于的集合类型的列表视图(即,为某个集合类型禁用过滤器或搜索选项,不会自动为所有其他集合类型也禁用相同的选项)。

内容管理器中列表视图的设置

Settings

  1. 在你的集合类型的列表视图中,点击设置按钮 ,然后点击 Configure the view(配置视图),以跳转到列表视图配置界面。
  2. 在 Settings(设置)区域,定义你选择的新设置:
设置名称说明
Enable search(启用搜索)点击 TRUE 或 FALSE 来启用或禁用搜索。
Enable filters(启用过滤器)点击 TRUE 或 FALSE 来启用或禁用过滤器。
Enable bulk actions(启用批量操作)点击 TRUE 或 FALSE 来启用或禁用列表视图表格中的多选框。
Entries per page(每页条目数)从下拉列表中选择每页的条目数。
Default sort attribute(默认排序属性)选择将默认使用的排序字段。
Default sort order(默认排序顺序)选择将默认应用的排序类型。
  1. 点击 Save(保存) 按钮。

View

  1. 在你的集合类型的列表视图中,点击设置按钮 ,然后点击 Configure the view(配置视图),以跳转到列表视图配置界面。
  2. 在 View(视图)区域,定义要在列表视图表格中显示哪些字段,以及以什么顺序显示:
    • 点击添加按钮 添加新字段。
    • 点击删除按钮 移除字段。
    • 点击重排按钮 并拖拽到你想在其他字段中显示的位置。
  3. 点击编辑按钮 以访问其可用的自有设置:
设置名称说明
Label(标签)填写将在列表视图表格中用于该字段的标签。
Enable sort on this field(对该字段启用排序)点击 TRUE 或 FALSE 来启用或禁用该字段的排序。
  1. 点击 Save(保存) 按钮。
NOTE

关系字段也可以显示在列表视图中。不过需要记住一些特殊之处:

  • 每个关系字段只能显示一个字段。
  • 只能显示第一级字段(即关系的关系中的字段无法显示)。
  • 如果显示的字段包含多个值,并非其所有值都会显示,而是显示一个标示值数量的计数器。你可以将鼠标悬停在该计数器上,查看一个提示框,显示关系字段的前 10 个值。

另请注意,关系字段在排序选项方面有几个限制:

  • 对于显示多个字段的关系字段,无法启用排序。
  • 关系字段不能被设为默认排序。

配置编辑视图 {#edit-view-settings}

配置内容管理器的编辑视图

Settings

  1. 在你的内容类型的编辑视图中,点击 按钮,然后点击 Configure the view(配置视图)。
  2. 在 Settings(设置)区域,定义你选择的新设置:
设置名称说明
Entry title(条目标题)从下拉列表中选择应作为条目标题使用的字段。
Relation open behavior(关系打开行为)选择点击关系条目时如何打开。 Modal(模态框,默认) 在叠加模态框中打开条目。 Navigate to page(跳转到页面) 跳转到条目的完整编辑页面。 Open in new tab(在新标签页中打开) 在新浏览器标签页中打开。
  1. 点击 Save(保存) 按钮。

View

  1. 在你的内容类型的编辑视图中,点击 按钮,然后点击 Configure the view(配置视图)。
  2. 在 View(视图)区域,定义要显示在列表视图表格中的字段(包括关系字段)、以什么顺序以及什么尺寸:
    • 点击 Insert another field(插入另一个字段) 按钮以添加新字段。
    • 点击删除按钮 移除字段。
    • 点击重排按钮 并拖拽到你想在其他字段中显示的位置。
  3. 点击某个字段的编辑按钮 ,以访问其可用的设置:
设置名称说明
Label(标签)填写应用于该字段的标签。
Description(说明)填写该字段的说明,以帮助其他管理员正确填写。
Placeholder(占位符)填写默认应在字段中显示的占位符。
Editable field(可编辑字段)点击 TRUE 或 FALSE 来启用或禁用管理员对该字段的编辑。
Size(尺寸)选择该字段在内容管理器中应显示的尺寸。请注意,此设置对 JSON 和富文本(Rich Text)字段,以及动态区域和组件均不可用。
Entry title(条目标题)(仅关系字段) 填写应用于该关系字段的条目标题。建议恰当地选择关系字段的条目标题,因为它越全面,管理员就越容易从编辑视图管理关系字段的内容。
  1. 点击 Save(保存) 按钮。

:::caution 组件字段的设置和显示无法通过条目的编辑视图配置页进行管理和重排。点击某个组件的 Set the component's layout(设置组件布局) 按钮,以访问组件自身的配置页。你会发现与条目完全相同的设置和显示选项,但这些将专门应用于你的组件。

另请注意,这些设置是为组件本身定义的,这意味着这些设置会自动应用于使用该组件的任何其他内容类型。 :::

使用

创建与编写内容

在 Strapi 中,编写内容意味着填写字段,这些字段旨在包含特定内容(例如文本、数字、媒体等)。这些字段是事先通过 内容类型构建器 为集合类型或单一类型配置的。

用于编写内容的编辑视图

要编写或编辑内容:

  1. 在 内容管理器中:
    • 要么点击你所选集合类型右上角的 Create new entry(创建新条目) 按钮,以创建一个新条目,
    • 要么访问你已创建的集合类型的条目或单一类型的编辑视图。
  2. 遵循可用的字段模式编写你的内容。你可以参考下表,了解如何填写每种字段类型及其说明。
NOTE

新条目只有在写入了部分内容并保存过一次后,才会被视为已创建。只有这样,新条目才会列在列表视图中。

TIP

在编辑视图中,点击页面右上角的 ,可查看条目的已发布、已更新和已创建日期。使用  Copy document ID(复制文档 ID) 按钮可将值复制到剪贴板。这仅对集合类型条目可用。

字段名称说明
Text(文本)在文本框中编写你的内容。
Rich text (Markdown)(富文本(Markdown))在编辑器中以 Markdown 编写你的文本内容。编辑器顶栏中提供了一些基本格式选项(标题、加粗、斜体、下划线),可应用于所选文本。还提供了一个 Preview mode/Markdown mode(预览模式/Markdown 模式) 按钮用于在模式间切换。

💡 该文本框可通过点击底栏中的 Expand(展开) 进行扩展。它会同时并排显示可编辑的文本框和预览。 | | Rich text (Blocks)(富文本(区块)) | 在编辑器中编写并管理你的内容,编辑器会自动实时渲染所有新增/更新。在区块编辑器中,段落表现为文本块:将鼠标悬停在段落上会显示一个图标 ,点击它可对内容重新排序。也可以通过编辑器顶栏访问格式化或丰富内容的选项(基本格式选项、代码、链接、图片等)。 <!--

💡 在编辑器中输入 / 即可访问所有可用选项的列表并选择其一。 -->

💡 你可以在区块编辑器中使用文本格式化的键盘快捷键(例如加粗、斜体、下划线,以及粘贴链接)。 | | Number(数字) | 在文本框中填写你的数字。显示在文本框右侧的上下箭头,允许你增加或减少文本框中指示的当前数字。 | | Date(日期) | 1. 点击日期和/或时间框。 2. 输入日期和时间,或使用日历和/或从列表中选择时间。日历视图完全支持基于键盘的导航。 | | Media(媒体) | 1. 点击媒体区域。 2. 从 媒体库 选择一个资源,或者如果你创建了 文件夹 则从中选择,或者点击 Add more assets(添加更多资源) 按钮向媒体库添加新文件。

💡 可以将所选文件拖拽到媒体区域。 | | Relation(关系) | 从下拉列表中选择一个条目。详见 关系字段。 | | Boolean(布尔值) | 点击 TRUE 或 FALSE。 | | JSON | 在代码文本框中以 JSON 格式编写你的内容。 | | Email(邮箱) | 填写一个完整且有效的邮箱地址。 | | Password(密码) | 填写一个密码。

💡 点击显示在文本框右侧的 图标以显示密码。 | | Enumeration(枚举) | 1. 点击下拉列表。 2. 从列表中选择一个条目。 | | UID | 在文本框中填写一个唯一标识符。显示在文本框右侧的“Regenerate(重新生成)”按钮,允许基于内容类型名称自动生成一个 UID。 |

NOTE

填写 自定义字段 取决于该字段所处理的內容类型。请参阅托管在 Marketplace(应用市场) 上的每个自定义字段的专用文档。

组件(Components)

组件是若干字段的组合,在编辑视图中被分组在一起。编写它们的内容与独立字段完全相同,但组件有一些特殊之处。

组件有 2 种类型:不可重复组件(non-repeatable)和可重复组件(repeatable)。

不可重复组件(Non-repeatable components)

不可重复组件 - 尚无条目 不可重复组件 - 含条目

不可重复组件是只能使用一次的字段组合。

默认情况下,字段组合不会直接显示在编辑视图中:

  1. 点击添加按钮 以添加该组件。
  2. 填写组件的字段。

要删除不可重复组件,点击位于组件区域右上角的删除按钮 。

可重复组件(Repeatable components)

可重复组件

可重复组件同样是一组字段的组合,但它们允许创建多个遵循相同字段组合的组件条目。

要添加新条目并显示其字段组合:

  1. 点击添加按钮 以添加该组件。
  2. 填写组件的字段。
  3. (可选)点击 Add an entry(添加条目) 按钮并再次填写字段。

可重复组件的条目可以直接在编辑视图中重排或删除,使用显示在条目区域右侧的按钮。

  • 使用拖拽按钮 来重排你的可重复组件的条目。
  • 使用删除按钮 从你的可重复组件删除一个条目。
NOTE

与常规字段不同,可重复组件条目的顺序很重要。它应精确对应最终用户阅读/查看内容的顺序。

动态区域(Dynamic zones)

动态区域是若干组件的组合,而这些组件本身又由多个字段组成。编写动态区域的内容需要额外的步骤才能访问字段。

为动态区域编写内容

为动态区域编写内容

在组件选择器中,每个组件显示一个图标。 在模式(schema)中定义了预览图的组件会改为将该图片显示为缩略图,将鼠标悬停在其上会显示放大的版本。 开发人员可以在 组件模式 中设置此图片。

  1. 点击 Add a component to [dynamic zone name](添加组件到[动态区域名称]) 按钮。
  2. 选择一个对该动态区域可用的组件。
  3. 填写组件的字段。

动态区域的组件也可以直接在编辑视图中重排或删除,使用显示在组件区域右上角的按钮。

  • 使用拖拽按钮 来重排动态区域中的组件。
  • 使用删除按钮 从你的动态区域删除一个组件。
TIP

你也可以使用键盘来重排组件:用 Tab 键聚焦组件,在拖拽按钮 上按空格键,然后使用方向键重新排序,再次按空格键放下该项。

NOTE

与常规字段不同,动态字段内部字段和组件的顺序很重要。它应精确对应最终用户阅读/查看内容的顺序。

关系字段(Relational fields)

添加到内容类型的关系(Relation)类型字段,允许与另一个集合类型建立关系。这些字段被称为“关系字段”。

关系字段的内容从其所属内容类型的编辑视图中编写。不过,关系字段可以指向另一个集合类型的一个或多个条目,这就是为什么在内容管理器中可以管理内容类型的关系字段,以选择哪些条目是相关的。

关系字段示例

在我的 Strapi 管理面板中,我创建了 2 个集合类型:

  • Restaurant(餐厅),其中每个条目是一家餐厅
  • Category(类别),其中每个条目是一种餐厅类型

我想为我的每家餐厅分配一个类别,因此我在我的 2 个集合类型之间建立了一种关系:餐厅可以有一个类别。

在内容管理器中,从我的 Restaurant 条目的编辑视图,我可以管理 Category 关系字段,并选择哪个 Category 条目与我的餐厅相关。

编辑视图中的关系字段

单选关系字段(One-choice relational fields)

多对一、一对一和单向类型的关系只允许你为每个关系字段选择一个条目。

单选关系字段

要选择唯一相关的关系字段条目:

  1. 在内容类型的编辑视图中,点击关系字段的下拉列表。
  2. 从条目列表中选择一个。

要移除下拉列表中所选的条目,点击删除按钮 。

多选关系字段(Multiple-choice relational fields)

多对多、一对多和多向类型的关系允许你为每个关系字段选择多个条目。

多选关系字段

要选择相关的的关系字段条目:

  1. 在内容类型的编辑视图中,点击关系字段的下拉列表。
  2. 从条目列表中选择一个。
  3. 重复第 2 步,直到所有相关条目都被选中。

要移除一个条目,点击所选条目列表中的叉号按钮 。

多选关系字段的条目可以重排,由一个拖拽按钮 标示。要移动一个条目,点击并按住它,拖拽到所需位置,然后释放。

TIP
  • 默认并非列出所有条目:可以点击 Load more(加载更多) 按钮显示更多。此外,除了通过滚动列表选择条目外,你还可以点击任意关系字段下拉列表并输入以搜索特定条目。

  • 点击某个条目的名称以打开它。行为取决于在编辑视图中配置的 Relation open behavior(关系打开行为) 设置:条目在模态框中打开(默认)、跳转到其完整编辑页面,或在新浏览器标签页中打开。请参阅 配置编辑视图 来更改此设置。

NOTE
  • 如果为关系字段所属的内容类型激活了 草稿与发布功能,你会注意到下拉列表中条目名称旁边有蓝色或绿色的圆点。它们分别表示条目的状态:草稿或已发布内容。
  • 如果为内容类型启用了 国际化(i18n)功能,条目列表可能会因语言区域而异或受限。只会列出可能为一个关系字段选择的、相关的条目。

删除内容

你可以通过删除集合类型的任意条目,或单一类型的默认条目来删除内容。

  1. 在条目的编辑视图中,点击界面右上角的 ,然后点击 Delete document(删除文档) 按钮。 如果为内容类型启用了国际化,你还可以通过点击 Delete locale(删除语言区域) 按钮选择仅删除当前所选的语言区域。
  2. 在弹出的窗口中,点击 Confirm(确认) 按钮以确认删除。

删除条目

TIP

你可以从集合类型的列表视图中删除条目,方法是点击表格中该条目记录右侧的 ,然后选择 Delete document(删除文档) 按钮。 如果为内容类型启用了 国际化,Delete document(删除文档) 会删除所有语言区域,而 Delete locale(删除语言区域) 仅删除当前列出的语言区域。