2026-09-30 · 原文发布日
用WooCommerce+OpenAI给外链合作线索打分并排优先级
一个免费n8n模板,手动运行后从Google Sheets读取待审核的汽车编辑合作线索,按地区匹配EU或NA的WooCommerce已上架产品,抓取目标网页的标题和描述,交给OpenAI输出相关性评分、理由、推介角度和建议锚文本,再结合表中的域名评分和流量数据设定审核状态,写回Sheets的Opportunities页。无效或未授权的线索会跳过AI直接标记待人工跟进。
原文要点
原工作流手动触发:从两个WooCommerce店铺(EU与NA,按商品固定链接的域名区分)拉取全部已上架产品,读取Google Sheets的Pending_Leads页待审线索;校验每条线索的地区、permission_status与目标URL是否为安全公开地址,按文本匹配到最贴合的地区产品;对有效线索请求目标URL并从HTML提取标题与meta description;将页面元数据与匹配产品上下文发给OpenAI Chat Completions,返回JSON格式的相关性评分、理由、推介角度、建议锚文本;再结合表中提供的域名评分与流量数据设定审核状态,以opportunity_key为匹配列upsert进Opportunities页;无效、未授权或抓取失败的线索跳过AI,直接写入待人工跟进记录。
这次做成什么
用该模板把外链合作线索审核半自动化:表格读线索→按地区匹配自家产品→抓目标页元数据→OpenAI打分写理由→按规则定审核状态并回写Opportunities页,先用合成线索跑通校验与打分分支。
准备什么
- n8n实例与模板(n8n.io/workflows/20224),已把REPLACE_WITH_SPREADSHEET_ID换成自己的表格ID
- EU与NA两个WooCommerce店铺的API凭据,且商品固定链接使用预期域名
- 含Pending_Leads与Opportunities两个工作表的Google Sheet及OAuth凭据
- OpenAI API密钥(HTTP Bearer Auth),模型名按账号可用情况调整
具体怎么做
建两张工作表
Pending_Leads列:prospect_id、target_url、target_region、brand、model、part_category、permission_status,另加域名评分与流量两列;Opportunities页设opportunity_key为upsert匹配列。
接入WooCommerce
分别为EU、NA店铺添加WooCommerce凭据并拉取published产品,确认商品链接域名与模板预期的地区判断逻辑一致,否则匹配会串区。
配置OpenAI节点
添加HTTP Bearer Auth凭据填入API密钥,把聊天请求体中的messages换成材料中的提示词,并按账号情况改model名;设置响应解析为JSON。
录入测试线索并手动运行
在Pending_Leads录入材料中的合成行(含一条permission_status为pending的无效行),手动执行,检查Opportunities页:有效行应有AI评分与状态,无效行应无AI调用、直接标记人工跟进。
可直接复制的材料
Pending_Leads合成测试数据
本站虚构数据;P-002故意未授权,用于验证跳过AI的分支。域名评分为演示参考值,非人工标注。
prospect_id,target_url,target_region,brand,model,part_category,permission_status,domain_rating,monthly_traffic
P-001,https://blog.example-auto.com/bmw-brake-guide,EU,BMW,3 Series,brake pads,approved,58,42000
P-002,https://forum.example-cars.net/t/unknown-thread,NA,Ford,F-150,brake pads,pending,31,8500OpenAI相关性评分提示词
本站独立编写,花括号字段由工作流注入;输出键名需与模板后续合并节点一致,如有出入以模板实际字段为准。
你是汽车配件行业的外链合作评估员。根据以下信息输出严格JSON:{"relevance_score":0到100整数,"rationale":"一句中文理由","pitch_angle":"一句中文推介角度","suggested_anchors":["锚文本1","锚文本2","锚文本3"]}。
目标页标题:{page_title}
目标页描述:{meta_description}
我方匹配产品:{product_name}({region}店铺,类目{part_category})
评分标准:页面主题与产品类目直接相关得高分;仅品牌相关得中分;无关得低分。只依据给定文本,不要臆测页面其他内容。审核状态判定规则示例
本站设定的演示阈值;模板内实际合并逻辑以工作流节点为准,请核对后调整。
{
"rules": [
{"when": "relevance_score>=70 and domain_rating>=40 and monthly_traffic>=10000", "status": "priority_review"},
{"when": "relevance_score>=50", "status": "standard_review"},
{"when": "default", "status": "low_priority"},
{"when": "invalid_or_unapproved", "status": "manual_followup"}
]
}输入与输出示例
本站虚构演示,未实际调用OpenAI;评分为演示参考值。
输入
P-001:BMW 3 Series刹车片线索,EU区已授权,域名评分58、月流量42000;抓取到目标页标题「BMW 3 Series刹车片更换指南」,匹配到EU店铺的刹车片产品。对应输出
OpenAI返回{"relevance_score":82,"rationale":"页面直接讲解3系刹车片更换,与产品类目完全对应","pitch_angle":"提供原厂规格对照表作为内容补充","suggested_anchors":["BMW 3系刹车片","原厂规格刹车片","3 Series brake pads"]};按示例规则命中priority_review,Opportunities页upsert一行opportunity_key为P-001的记录。P-002无AI调用,状态manual_followup。做完检查这些
- EU线索只匹配EU店铺产品、NA线索只匹配NA店铺,无串区
- P-002这类pending线索不产生OpenAI请求,Opportunities中状态为manual_followup
- 同一prospect_id重复运行时Opportunities页更新而非新增重复行
- OpenAI返回非JSON时流程不崩溃,该线索进入异常处理
容易卡住的地方
- WooCommerce商品固定链接域名是地区判断依据,换域名后必须同步改模板逻辑
- permission_status不是approved的线索会被跳过,表格枚举值拼写要与模板一致
- 目标URL若需登录或返回非HTML,元数据提取失败会走人工跟进分支
- OpenAI按调用计费,线索量大时先小批量试运行
本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。
- 原文标题
- Score automotive editorial prospects with WooCommerce, Google Sheets, and OpenAI
- 原作者
- Tangma Craftsman
- 原始发布日期
- 2026-09-30T15:20:34.308Z
- 来源
- https://n8n.io/workflows/20224