步骤列表:如何撰写操作步骤
构建能够解释每个操作及其目的、成功信号和恢复路径的步骤列表,使人和机器都能自信地遵循指令。
步骤列表是一种有序的过程,它将读者从已知的起始状态带到可验证的结果。其中的数字具有意义:第2步依赖于第1步,改变顺序可能导致工作浪费、产生错误或无法完成。每个步骤不仅说明在哪里点击,还解释原因、操作、成功状态以及继续所需的恢复路径。
确认顺序会改变结果。 原因: 编号意味着依赖关系,错误的顺序会误导读者和机器。操作: 尝试交换两个操作。成功: 至少有一个交换会改变、阻碍或使结果无效。恢复: 如果每个操作仍然有效,请将序列替换为项目符号或检查清单。
写出可观察的成功状态。 原因: 读者需要证据表明操作已生效才能继续。操作: 说明他们可以看到、测量、下载或测试的内容。成功: 不熟悉草稿的人也能判断成功或失败。恢复: 如果成功仅依赖判断,请添加具体阈值或示例。
添加失败后的恢复路径。 原因: 假设完美执行的过程会在第一次出错时抛弃读者。操作: 说明最安全的修正、重试或升级方式。成功: 读者无需猜测即可回到预期状态。恢复: 如果没有安全的恢复方式,请在操作前发出警告并指明谁能提供帮助。
这个现场示例特意保持简洁,但它仍然履行了步骤契约。本页的其余部分定义了如何在各个发布系统中一致地生成此元素。
为什么这个元素很重要
过程型读者想知道现在要做什么、为什么重要、是否有效以及当现实偏离理想路径时该怎么办。“点击保存"只回答了第一个问题,却让读者自己去推断应该期待什么确认信息以及失败意味着什么。
步骤列表通过创建重复的决策节奏来减少这种不确定性。命令式标题以"连接”、“验证"或"发布"等命令开头。原因在读者投入精力之前建立相关性。操作提供足够的细节来执行。成功状态使完成变得可观察。恢复路径防止失败的操作变成死胡同。这就是步骤契约,每个可见步骤都必须满足全部五个部分。
这种规律性也提高了机器可提取性:即搜索引擎、AI代理或转换系统在不丢失指令角色的情况下提取指令的能力。稳定的顺序、描述性的标题、明确的结果和有边界的恢复指导,让机器能够区分指令及其验证。
数字本身并不创造这种含义。它们揭示内容已有的含义。当序列是真实的,编号向扫读的读者传达依赖关系,并为结构化数据保留位置。当序列是人为的,编号会造成虚假的承诺。
何时使用
当读者必须按顺序执行一个过程,且每个已完成的操作为下一个操作奠定起始状态时,使用步骤列表。适用的场景包括账户设置、软件配置、可重复的分析工作流程、迁移、修复序列或具有依赖关系的发布过程。
不要仅仅因为数字看起来有权威性就使用步骤列表。当项目是选项、示例、要素或特征时使用项目符号。当项目是可按任意顺序验证的独立关卡时使用检查清单。当读者是在多个备选方案中选择而非朝着一个结果前进时使用比较表。当只有一两个显而易见的操作且两者都不需要独立验证时,使用普通正文。
以下接近误用的情形最容易导致不当使用:
- “改善着陆页的十种方法"是一个列表式文章,除非第4项需要第3项的输出。
- “发布前检查标题、链接、图片和作者"是一个检查清单,因为顺序不影响有效性。
- “选择套餐、输入付款详情、确认购买"是一个步骤列表,因为每个状态解锁下一个。
- “如果导入失败,尝试A、B或C"是故障排除指南。只有当诊断分支必须按定义顺序尝试时,它才成为步骤列表。
- 时间线描述了一段时间内发生的事情。除非读者可以执行其操作以达到所述结果,否则它不是过程。
当意图不明确时,执行交换测试:交换两个相邻项目,然后问过程是否仍然正确。如果每个交换都无害,那么排序只是装饰性的,说明用错了元素。
放在哪里
步骤列表应放在读者理解结果并拥有开始所需输入之后。在其正上方放置一个先决条件块,说明起始状态、权限、文件或数据、工具、耗材、时间和不可逆风险。省略不适用的字段;切勿将必需的输入隐藏在第4步中。
在最后一步的正下方放置一个结果块。它说明完成状态、读者现在应拥有的工件或状态,以及下一个合理的操作。这结束了过程,而不是让读者推断没有下一个数字意味着成功。
该元素可以在操作指南页面中作为主要过程出现一次,也可以在较长的教程中作为明确命名的阶段出现多次。阶段标题必须解释中间结果,编号要么跨阶段继续,要么使用明确的标识符,如"阶段2,步骤1”。不要悄然从1重新开始。
步骤列表不得与另一个目的不同的编号列表并列放置;必须使用标题或过渡来解释边界。不得在改变任务是否安全可尝试的警告之前开始。不要在步骤之间放置通用行动号召,不要在操作与其成功状态之间放置引用,也不要在过程中插入不相关的比较表。支持材料仅当有助于完成该操作时才属于相关步骤内部;否则将其放在完整序列之前或之后。
结构分析
结构包括三个集合级别的区域和五个重复的步骤级别区域:
- 先决条件: 起始状态、访问权限、工具、耗材、时间和重要约束条件。
- 序列标签: 描述性标题,命名过程及其结果。
- 步骤编号: 语义位置,由有序列表渲染器生成,而非手动输入到标题中。
- 命令式标题: 一个以操作为主导的短语,让扫读的人能够预测任务。
- 原因: 证明现在执行该步骤合理性的依赖关系、风险或收益。
- 操作: 确切的指令,包括相关位置、输入和选择。
- 成功与恢复: 可观察的完成状态,以及当该状态未出现时的下一个安全响应。
- 结果: 最终状态以及读者可以据此做什么。
图例保留在页面中,因为标签是内容而非装饰。如果设计改变,相同语义区域必须保持可识别,无需编辑像素。
设计示例
默认变体适用于大多数编辑过程。紧凑变体可以减少间距,但不能移除契约字段。截图辅助变体将模糊的界面步骤与一张聚焦的图片配对。分阶段变体通过中间结果对长过程进行分组,同时保持连贯的整体序列。
任何"极简"变体都不能省略原因或恢复路径。呈现方式可以压缩空白,但不能缩减编辑契约。
参数
这些参数定义了源内容,而非可选的视觉装饰。来源列显示值来自属性、嵌套项主体还是其第一个标题。
| 名称 | 类型 | 是否必需 | 最小/最大 | 默认值 | 来源 |
|---|---|---|---|---|---|
title | 纯文本 | 是 | 3–10个词 | 无 | 父级主体中的第一个标题 |
variant | 枚举 | 否 | default、compact或phased | default | 父级属性 |
totalTime | ISO 8601时长 | 否 | 1分钟到30天 | 省略 | 父级属性,由可见时间文本支持 |
prerequisites | Markdown块 | 存在任何先决条件时为是 | 1–6项;10–120个词 | 仅当不存在时省略 | 项目之前的父级主体 |
steps | 有序项目集合 | 是 | 3–10个步骤 | 无;目标5个 | 嵌套项目主体 |
step.title | 纯文本 | 是 | 2–8个词;60个字符 | 无 | 项目主体中的第一个标题 |
step.why | 纯Markdown | 是 | 10–35个词 | 无 | 项目主体 |
step.action | 纯Markdown | 是 | 15–70个词 | 无 | 项目主体 |
step.success | 纯Markdown | 是 | 8–30个词 | 无 | 项目主体 |
step.recovery | 纯Markdown | 是 | 8–40个词 | 无 | 项目主体 |
step.image | 根相对资源路径 | 否 | 每步0–1张图片 | 省略 | 项目属性;仅在资源存在后 |
supply | 纯文本集合 | 否 | 0–8个可见项 | 省略 | 父级主体先决条件 |
tool | 纯文本集合 | 否 | 0–8个可见项 | 省略 | 父级主体先决条件 |
outcome | Markdown块 | 是 | 15–80个词 | 无 | 项目后的父级主体 |
每个步骤的常规长度为50–140个词,涵盖五个契约字段。较短的步骤往往省略推理或验证;较长的步骤通常隐藏了多个操作。
语法和代码示例
规范结构遵循元素编写规则 :父级持有集合设置,每个重复的步骤是一个嵌套项目。下面的示例编码了相同的两步片段以清晰映射;可发布的过程通常应包含至少三个步骤。
可移植Markdown指令
:::step-list{totalTime="PT15M" variant=default}
## 连接并验证数据源
先决条件:管理员访问权限和属性标识符。
::item
### 打开属性连接屏幕
**原因:** 从正确的属性开始可防止数据附加到错误的账户。
**操作:** 打开设置,选择数据源,然后选择先决条件块中显示的属性标识符。
**成功:** 选中的属性名称出现在连接摘要中。
**恢复:** 如果未出现,请确认账户访问权限并重新加载属性列表。
::
::item
### 运行连接测试
**原因:** 成功的测试证明在首次导入之前凭据和权限即可用。
**操作:** 选择测试连接并等待状态响应。
**成功:** 界面显示"已连接"并带有当前时间戳。
**恢复:** 重新授权账户;如果测试仍然失败,复制错误代码寻求支持。
::
结果:数据源已连接并准备好进行首次导入。
:::
Hugo短代码映射
{{< step-list totalTime="PT15M" variant="default" >}}
先决条件:管理员访问权限和属性标识符。
{{< step title="Open the property connection screen" >}}
**原因:** 从正确的属性开始可防止数据附加到错误的账户。
**操作:** 打开设置,选择数据源,然后选择属性标识符。
**成功:** 选中的属性出现在连接摘要中。
**恢复:** 确认访问权限并重新加载属性列表。
{{< /step >}}
{{< step title="Run the connection test" >}}...{{< /step >}}
结果:数据源已连接并准备好进行首次导入。
{{< /step-list >}}
此表示法定义了适配器契约;当站点的已注册渲染器可用时,作者必须使用它。本页将其现场示例渲染为语义Markdown,并未引入新的Hugo短代码。
WordPress块映射
<!-- wp:amicited/step-list {"totalTime":"PT15M","variant":"default"} -->
<!-- wp:amicited/step {"title":"Open the property connection screen"} -->
<p><strong>原因:</strong> 从正确的属性开始可防止数据附加到错误的账户。</p>
<p><strong>操作:</strong> 打开设置,选择数据源,然后选择属性标识符。</p>
<p><strong>成功:</strong> 选中的属性出现在连接摘要中。</p>
<p><strong>恢复:</strong> 确认访问权限并重新加载属性列表。</p>
<!-- /wp:amicited/step -->
<!-- /wp:amicited/step-list -->
平台输出可能在视觉上有所不同,但每个字段及其含义必须保留。
示例
好示例:在收集数据前验证域名
- 添加验证记录。 原因: 该记录证明对域名的控制权,而无需暴露账户凭据。操作: 将确切的TXT值复制到域名的DNS设置中,并保存在根主机上。成功: 提供商在DNS列表中显示该记录,没有多余的引号。恢复: 如果记录缺失,检查主机字段是否使用了提供商要求的根符号,并等待DNS传播后重试。
- 在产品中确认所有权。 原因: 确认可防止针对未验证的属性开始收集。操作: 返回验证屏幕,待记录可公开解析后选择验证。成功: 域名状态变为"已验证"并显示验证时间。恢复: 如果验证失败,查询TXT记录,逐字符比对,并在再次尝试前修正DNS条目。
- 开始首次收集。 原因: 已验证但闲置的属性不会产生基线数据。操作: 选择开始收集,保留默认范围,除非项目需要记录的排除项。成功: 出现一个排队作业,显示已验证的域名和当前时间。恢复: 如果没有作业出现,刷新一次;然后捕获域名、时间和错误信息以供支持,而不是创建重复项。
这样写是正确的,因为顺序是真实的、标题是命令式的、检查点是可见的、失败指导是安全的。
坏示例:改善一篇文章
- 添加内部链接。
- 重写引言。
- 检查拼写。
- 添加示例。
这个列表不好有两个原因。首先,其顺序是随意的:拼写可以在链接之前检查,示例可以在引言之前添加。它应该是一个检查清单。其次,每个项目仅仅命名了一个活动。没有说明为什么它属于这里、做到什么程度、什么算作成功,或者检查失败时该怎么办。增加更多动词并不能解决语义不匹配的问题。
粒度与嵌套
一个步骤应产生一个有意义的改变。当多个点击构成一个不间断的交互并共享同一个成功信号时,它们可以属于该步骤。例如,“选择CSV,选择UTF-8,然后导出文件"算作一个步骤,如果可观察结果是已下载的CSV文件。当中间结果需要验证、需要不同权限、需要实质性等待、需要决策分支或需要不同的恢复路径时,则进行拆分。
使用句子测试:如果标题需要"和"来连接两个结果,它可能包含了两个步骤。也使用失败测试:如果前半部分可以成功而后半部分失败,且各自需要不同的恢复方式,则将其拆分。
嵌套限制为一个层级和三个简短的子步骤。子步骤阐明一个紧密边界内的操作;它们不是在过程中创建子过程。当序列有独立的先决条件、超过三个操作、多个截图、超过一个失败分支,或者其结果可以被其他页面独立使用时,将其提升为自己的页面。链接到该子过程,然后保持父步骤专注于何时执行以及如何确认其结果。
每步截图策略
当文字无法可靠地标识控件或状态时,截图才有其位置。当标签重复、控件隐藏在菜单中、空间位置很重要、界面使用不熟悉的图标或成功状态在视觉上模糊时,使用一张截图。裁剪到任务区域,保留足够的定向上下文,并在替代文本和附近正文中描述相关状态。
当界面标签唯一且成功状态可以精确表述时,省略截图。也省略常规操作的截图,例如选择明确标记的保存按钮、已显示为文本的终端命令,或通往一个有意义选择途中的每一个界面。十四个明显步骤的十四张截图将一个过程变成缓慢而脆弱的幻灯片放映,并使界面变更的维护成本高昂。
每步最多使用一张截图。如果一个步骤需要操作前、操作中和操作后的图片,其粒度可能太宽了。切勿在资源存在之前引用它,也切勿将重要指令仅放在图片内部。
Schema标记与可访问性
Schema标记
是描述可见内容含义和关系的机器可读代码。当页面真正教授一个完整的过程时,步骤列表可以输入以JSON-LD
表达的Schema.org HowTo对象。映射关系如下:
| 可见字段 | HowTo属性 | 规则 |
|---|---|---|
| 过程标题 | HowTo.name | 与可见的过程标题匹配。 |
| 可见时长 | HowTo.totalTime | 编码为ISO 8601时长,如PT15M;不要仅为标记而虚构时长。 |
| 所需耗材 | HowTo.supply / HowToSupply | 仅包括先决条件中命名的消耗性输入。 |
| 所需工具 | HowTo.tool / HowToTool | 仅包括先决条件中命名的工具。 |
| 有序的可见步骤 | HowTo.step / HowToStep | 精确保持计数和顺序。 |
| 命令式标题 | HowToStep.name | 与可见的步骤标题匹配。 |
| 原因、操作、成功、恢复 | HowToStep.text | 保留所有可见的教学意义,而不仅仅是点击操作。 |
| 步骤图片 | HowToStep.image | 仅包括附加到该步骤的可见图片。 |
| 步骤锚点 | HowToStep.url | 指向可见步骤的稳定片段标识符。 |
标记必须精确反映可见过程。永远不要添加隐藏的步骤,不要将两个可见步骤合并为一个架构项,不要重新排序,也不要为了缩短结构化版本而省略恢复指导。不要仅仅因为页面包含编号列表就应用HowTo;页面必须描述一个可完成的过程。
可访问性始于一个包含每步一个<li>的<ol>。编号和顺序必须对辅助技术保持可用。不要在标题中手动输入数字,因为复制的文本、CSS计数器和屏幕阅读器输出可能不一致。使用逻辑标题级别、稳定的片段标识符、描述性的截图替代文本,以及使用文字标签而非仅靠颜色来表示成功和恢复。
避免使用会更改步骤顺序而不宣布更改的交互式控件。如果步骤可折叠,控件需要可访问的名称和展开状态,键盘焦点必须保持可预测。可打印和无JavaScript输出必须保留整个过程。
编写规则
编写3–10个步骤,通常每个50–140个词。每个2–8个词的标题以命令式动词开头,描述一个结果。在读者可能跳过、重新排序或误解的操作之前解释原因。使用冷静、直接的语言。
每个步骤必须包含五个契约字段,尽管渲染设计在排版可访问地传达这些标签时无需重复冗长的标签。成功状态必须是可观察的:状态改变、文件存在、值在指定范围内、电子邮件到达或测试通过。“看起来不错"是不可观察的。恢复必须安全、具体且适当;区分重试与撤销,并在读者无法自行修复状态时指明升级途径。
不要在步骤内部放置不相关的背景信息、推广性行动号召、推荐语、第二个独立过程或多个决策分支。将背景信息移到列表上方,推广内容放在结果下方,重要的分支放入故障排除部分。对于可能失败的操作,不要使用"只需”、“显然"或"简单”。永远不要承诺产品实际不提供的屏幕、标签、时间或结果。
使用步骤列表的文章类型
| 文章类型 | 使用方式 | 位置 |
|---|---|---|
| 操作指南 | 始终使用;有序过程是页面的核心承诺。 | 先决条件之后,结果、故障排除和下一步操作之前。 |
| 教程 | 通常使用;对每个依赖驱动的阶段使用,而非用于概念教学。 | 阶段所需概念之后,阶段验证之前。 |
| 故障排除页面 | 有时使用;仅当诊断或修复必须以安全顺序运行时使用。 | 症状和安全检查之后,升级之前。 |
| 流程或检查清单页面 | 有时使用;对有序执行部分使用步骤,对独立关卡使用复选框。 | 流程输入和最终审核检查清单之间。 |
| 产品设置内容 | 有时使用;当一个产品状态解锁下一个状态时使用。 | 访问要求之后,确认或引导下一步之前。 |
postTypes前端变量记录这些关系以供目录和验证使用。只有已注册的剧本文章类型页面接收链接;其他行描述支持的编辑模式,无需创建路由。
QA检查清单
发布前,验证以下所有项目:
- 交换相邻步骤会改变、阻碍或使结果无效。
- 先决条件列出所有必需的起始状态、权限、工具、耗材和风险。
- 过程包含3–10个步骤,或记录了合理的例外情况。
- 每个步骤都有命令式标题、原因、操作、可观察的成功状态和恢复路径。
- 每个步骤产生一个有意义的改变,且不超过一个嵌套层级。
- 任何具有自身先决条件或结果的子过程已被分离。
- 截图仅出现在界面或状态模糊之处,每步不超过一张。
- 结果块说明现在存在什么以及读者接下来可以做什么。
- 有序列表语义、标题顺序、片段链接和替代文本在无需颜色或脚本的情况下正常工作。
-
HowTo属性(若存在)与可见的步骤、顺序、时长、耗材、工具、文本和图片精确匹配。 - 可移植Markdown、Hugo和WordPress映射保留相同的字段和含义。
- 链接和元数据通过更广泛的发布前QA检查清单 。
FAQ
步骤列表应包含多少个步骤? 使用3–10个。将一两个操作放在正文中;超过十个则分组或拆分。
什么使编号列表成为真正的步骤列表? 顺序必须影响结果,每个步骤必须满足五部分契约。
每个步骤都需要截图吗? 不需要。仅当文字无法可靠标识界面、位置或状态时添加一张。
步骤可以包含子步骤吗? 可以,一个层级。分离任何具有自身先决条件、结果或超过三个操作的序列。
何时应将其变为检查清单? 当项目可以按任意顺序完成或是独立验证关卡时。
步骤列表是SEO内容元素 之一,它不仅承载呈现形式,也承载行为。其质量的验证标准是读者能否从失败中恢复并仍然达到承诺的结果——而不是数字仅仅看起来整齐。
准备好付诸实践了吗?
免费检查 · 7天试用 · 无需信用卡