外贸独立站定制开发:先把语种、URL 结构和源码归属定死
外贸独立站的多语言问题,多数不是译得不好,是 URL 结构在上线前没定死。语言版本挂在子域名还是子目录,每个语种的 canonical 指向谁,这两件事定错,后面换翻译公司、换服务器都救不回来。
先说语种。 语种数量该由市场数据决定,不是由公司里有几个会外语的业务员决定。做法很土:用 Google Keyword Planner 按语种查三到五个核心产品词的月搜索量,再看搜索结果里已有几页是本地语种页面。德语、西语、日语里同行页面密度比英语低,这是机会;但前提是这个词真有人搜。另一条依据是过去十二个月的询盘国家分布,同一个国家重复出现两次以上,那个语种才值得立项。
CSA Research 2020 年那份《Can't Read, Won't Buy》调查了 29 国 8709 名消费者,76% 更愿意买有母语信息的产品,40% 从不在其他语言的网站上购物。这组数字常被拿去论证「要上十个语种」,结论其实相反:资源摊薄到十个语种,每个语种只有首页和三个产品页是母语内容,采购点进详情页又看到英文,母语信任在第二步就断了。
URL 结构四选一,选完别改。
| 结构 | 典型写法 | 代价 |
|---|---|---|
| 子目录 | example.com/de/ | 权重同域继承,一套代码一份证书,维护最轻 |
| 子域名 | de.example.com | 搜索引擎按新站算,Search Console 验证、SSL、监控各管一份 |
| 国家域名 | example.de | 地区信号最强,注册主体和续费成本高 |
| URL 参数 | ?lang=de | 分享丢参数,统计被切碎 |
中小外贸站默认子目录,把语言前缀固定在第一段路径。子域名只在当地有独立团队、技术栈不同、需要分开部署时才用。国家域名适合在当地有注册主体、打算长期深耕的市场;部分国家对 ccTLD 注册主体有本地实体要求。【待核实:目标市场 ccTLD 的注册主体与本地 presence 要求,按市场逐个确认】
结构选错的代价是钱:子域名迁到子目录,全量 URL 要 301,英文页面的排名基本从零开始积累;上线三个月后再把 /en/products 改成 /en/catalog,同样是全量 301。URL 矩阵要在开发第一周冻结,之后每次改路径走变更单,这条写进合同比写在方案里管用。
hreflang 是组,不是标签。 三种写法——页面 head 里的 link、HTTP 响应头、XML sitemap——搜索引擎处理效果一样,选一种,不要混着上。真正决定成败的是两条规则。
一是互指。德语页的 hreflang 组里有英语页,英语页的组里也必须出现德语页;缺一侧,整组被忽略,表现是页面有收录、从不排名。这是验收项,不是开发细节。
二是 canonical 自指。每个语言版本的 canonical 指向自己的语言 URL。把 /de/ 的 canonical 写成 /en/,等于告诉搜索引擎德语页是重复内容,权重合并到英文页,德语内容白做。x-default 指向语言选择页或默认语言版,只能有一个。
语言切换用普通链接,不要 JS 改地址跳转。Google 的多地区多语言站点文档明确不建议按访客 IP 或浏览器语言自动跳转——抓取端通常从美国发起、不带 Accept-Language,一跳转就只抓到默认语言版。这条被违反的频率比想象中高,很多号称多语言的站,在爬虫眼里只有一个语种。
翻译工作流决定内容能不能持续。 源文案冻结版本号,术语表先立(产品名、型号、认证名、计量单位、禁用词),译审后回填,回填后双人核对。机翻可以用,但机翻后必须有母语译审签字,签字人对术语负责。更常见的坑是回退规则没定义:某个语种缺字段时,模板渲染空白还是显示中文?两种都不能接受,正确做法是回退英文并在后台标记缺失。这条不写清,上线半年后新增的产品页会出现中文产品名夹在德语页面里。
内容本地化还包括几个非文案项:价格显示含税还是不含税(欧盟 B2B 习惯标 net price 并注明 VAT)、当地认证(CE、UL、FCC)、德国站的 Impressum 法定出版信息、cookie 同意与隐私政策、地址电话格式、当地支付方式图标。这些漏了,母语内容反而显得更不可信。
海外支付与税务属于选型项,不是上线前补的活。 商户号用公司主体开,个人号一旦风控冻结,钱和订单一起卡住。Stripe 覆盖国家和行业限制要提前确认,预购、代发货、虚拟商品属于高风险类目;PayPal 争议处理偏向买家,B2B 大额订单的拒付损失更直接。当地默认付款方式决定转化:荷兰 iDEAL、巴西 Pix 与 Boleto、北欧 Klarna、德国的 SEPA 直扣,这些不是加分项,是当地用户的默认预期。
税务口径要在选型阶段算进成本:欧盟进口货值不超过 150 欧元的订单可走 IOSS 代收 VAT;欧盟境内 B2C 远程销售超过 1 万欧元/年,需在目的国申报(OSS)。美国没有统一 sales tax,各州 nexus 规则不同,自建站不像平台那样代征,要自己算。【待核实:目标国 VAT 税率、低值货物免税额度与各州 nexus 判定,需按市场与商品类目逐项确认】
询盘归因别只装在页面上。 GA4 跨子域要配 linker;语言切换链接要带原 query 参数,否则用户从英文页切到德语页,一条 UTM 就断在这里。表单提交时把 lang、country、来源渠道一起落库到 CRM,只存 GA4 事件,数据一被采样就和订单对不上。
CDN 与性能的验收测点在目标市场。 从法兰克福、圣保罗、新加坡发起测速,而不是在国内 ping。Core Web Vitals 按 75 分位看:LCP ≤2.5 秒、INP ≤200 毫秒、CLS ≤0.1。CDN 节点多不等于快,常见瓶颈是首屏图片没转 WebP/AVIF、字体阻塞渲染、第三方聊天插件同步加载。
源码归属的判定标准只有一条:脱离乙方能不能跑。 交付清单要有代码仓库完整提交历史、构建脚本、数据库结构与 migration、部署文档、环境变量清单(不含密钥明文)。域名注册商、DNS、CDN、支付商户号、GA4、Search Console 必须在甲方主体名下,乙方只做协作者。验收方式很直接:在一台没有乙方账号的机器上,按部署文档把站跑起来。
在我们(万枫科技)的定制项目里,这几项写进交付清单:无模板纯定制、源代码全部交付、一对一专属顾问,维护期三个月,验收不合格按逾期赔付条款走。
上线前把语种、URL 矩阵、hreflang 分组打印成一张表,技术和业务在同一张纸上签字;这张表上没有的页面,先别翻译。上线 30 天后按语种看 Search Console 的展示国家分布,如果德语页的展示几乎全来自英语市场,说明 hreflang 组或 canonical 还有问题——这项复测现在还没做,等第一批数据出来再补。