跳过条件的核心不是"哪些页面不处理",而是"哪些页面一旦被处理就会破坏已有正确状态"。当站点从手工优化转向批量处理时,判断依据应从"页面是否合格"改为"页面是否已被其他流程接管"。前者会导致重复改写,后者才能避免冲突。
这是决定跳过逻辑的第一道分叉。如果批量任务只是生成建议、由人工确认后发布,那么跳过条件可以宽松,只需过滤明显不需要动的页面;如果批量任务直接写入标题、描述、内链或结构化数据,跳过条件就必须严格,否则会覆盖其他流程刚写入的结果。
判断方法很直接:查一下同一字段还有没有别的写入来源。常见来源包括运营手动改过的标题、商品系统同步的描述、多语言插件生成的 hreflang、以及上一轮批量任务留下的标记。只要存在第二个写入来源,批量任务就不能默认自己拥有最终写入权。
实际动作:在任务配置里加一个"最后修改来源"字段的判断。如果该字段的值不是本任务,就跳过。结果是任务处理量会明显下降,但被跳过的页面不再出现"改完又被改回去"的来回震荡,后续排查问题时也能明确知道每个字段是谁写的。
适用条件是站点已经运行一段时间,存在人工干预记录或上游系统同步。此时跳过条件应围绕"锁定状态"设置,而不是围绕"内容质量"设置。
这些条件的共同点是:处理它们不会带来收益,只会引入冲突。跳过之后,下一步应该做的是把这些页面单独列出来,交给对应负责人,而不是塞回批量队列。
适用条件是页面字段完全由本流程管理,没有其他写入来源。此时跳过条件应反过来设置:只跳过明确不该动的页面,其余全部处理。
可以设置的跳过项包括:
这里的关键取舍是:跳过条件越少,处理覆盖面越大,但误伤概率也越高。假设一批 1000 个页面中,有 50 个的标题由运营在活动期间手动改过,如果任务没有识别这 50 个,就会把它们改回模板值。活动结束后运营发现标题被覆盖,只能重改一遍。这个假设说明的是比较方法:先统计有多少页面存在第二写入来源,再决定跳过条件要写多细,而不是凭感觉设一个阈值。
关键前提发生变化时,原来的跳过条件往往失效。两类常见变化:
第一类,写入权转移。批量任务从"生成建议"升级为"直接写入"。此时原来宽松的跳过条件不再安全,必须补上"最后修改来源"判断,否则人工修改会被静默覆盖。动作是暂停任务,先补齐来源字段,再恢复运行。
第二类,上游系统开始接管字段。例如商品系统开始自动生成描述。此时应把该字段整体从批量任务中移除,而不是逐页判断。动作是修改任务字段范围,结果是被移除字段不再出现在处理日志里,排查范围随之缩小。
如果跳过条件设置后处理量骤降甚至归零,不能直接判定配置正确。请求量或处理量归零还有别的解释:选择器写错、字段名变更、任务读取的数据源为空、或过滤条件之间是"与"关系而非"或"关系。需要逐项核对,而不是看到数字下降就认为过滤生效。
跳过条件不是越严越好。当某个字段的模板值已经明显过时,且上游系统短期内不会更新时,即使页面被标记为"人工编辑过",也可能需要纳入处理。此时的做法不是直接放开跳过条件,而是先人工抽查一批被跳过的页面,确认它们的当前值确实优于模板值。抽查结果决定下一步:如果多数被跳过页面的值更好,就维持跳过;如果多数已经过时,就调整上游或单独建一个小范围任务处理,而不是一次性放开全部限制。
比较改动前后的效果时,要注意季节、搜索需求波动和数据采集口径的差异。同一批页面在需求旺季和淡季的表现本来就不同,不能用一次前后对比直接归因于跳过条件的调整。