小语种SEO最想抢的那族词,在英语里两个后缀就够,在德语里要写五遍
本文目录
- 为什么最便宜这三个字在小语种里不是一个关键词?
- 商业意图最高的那一族词,长什么样
- 英语给了我们一个错觉:这族词很好处理
- 换成德语,第一次点开词表就知道不对
- 英语的两个后缀,到了德语为什么会长出五个字符串?
- 最高级形容词的形态由后面那个名词决定
- 五个词尾对应哪几种组合
- 冠词还会再叠一层:强变化与弱变化
- 真实行数怎么算,一个能在纸上算完的公式
- 分析式最高级和综合式最高级,对关键词表的影响差在哪?
- 西语法语是加词,德语芬兰语是改词
- 加词的那一半落进词组匹配,改词的那一半落进精确匹配
- 土耳其语反而是最省事的一门
- 芬兰语的最高级还要再过一遍格,词表要收到什么程度?
- 从halpa到halvin中间发生了什么
- 十五个格乘上去之后的数量级
- 收词的判据不是穷举,是查日志
- 关键词工具把这些形态合并了吗,报表上的数字能不能直接用?
- 工具的合并口径在这一族词上尤其粗
- 词干还原在最高级上会把褒义和中性并到一起
- 一条十分钟能做完的自检
- 没有数据的语言怎么估这一族词的量
- 商品标题模板怎么写,才能让最高级跟着品类名词自动对上?
- 模板里最高级和名词必须绑定成一个字段
- 例外表比规则表更值钱
- 母语审校要看的是哪三行
- 最高级词在广告和合规那一侧,为什么口径跟搜索侧正好相反?
- 德国那条规定要求的是可证明的实质优势
- 同一串字符,两个部门给的分正好相反
- 破法是把断言词换成范围词,但别换掉查询词
- 榜单页、对比页、筛选页,哪一类最适合承接最高级查询?
- 三类页面的形态承载能力不一样
- 筛选页是唯一能把变体做成组合的地方
- 面包屑和列表标题是免形态区
- 词表要留几列,行数怎么估
- 五列结构:概念、形容词、名词性数、成品串、匹配类型
- 行数估算的分母是品类不是词
- 用一个品类先跑通再铺开
- 交给翻译之前要写清楚哪一列不许动
- 上线之后盯哪几个数
- 第一个数:形态覆盖率
- 第二个数:同概念多形态的份额分布
- 第三个数:本地同行的对照基线
- 常见问题解答
- 最高级关键词的形态覆盖,值得投入多少人力?
- 如果只做一件事,应该先做哪一件?
- 分析式语言是不是就不用管这件事了?
- 关键词工具给出的搜索量数字到底能不能用?
- 合规那一侧的限制,在非德语市场同样严格吗?
- 词表交给母语译者做,为什么还是会出问题?
- 这套方法能不能直接套到比较级上?
- 权威参考资料
摘要:最便宜、最好、性价比最高这一族词,在英语里只需要两个后缀就能覆盖完,商业意图却是全站最高的。换到德语要写出五个不同的字符串,换到芬兰语还得再乘一遍格的数量,而这族词偏偏又是合规部门盯得最紧的一族。本文把最高级词的形态成本算成一个能在纸上算完的公式,给出词表的五列结构和三个上线后要盯的数。
为什么最便宜这三个字在小语种里不是一个关键词?
商业意图最高的那一族词,长什么样
把任何一个电商站的关键词表按转化率从高到低排,前面挤着的永远是同一批修饰词。
最便宜、最好、最耐用、性价比最高、销量第一,这一族词有个共同点,就是用户打出它的时候已经准备掏钱了。
信息型查询的用户还在了解,导航型查询的用户已经知道要去哪,只有这一族词卡在中间那个最值钱的位置上。
它前面通常还挂着一个品类名,最便宜的猫砂、最好的狗粮、最耐用的宠物笼。
这个组合在英语里写出来是一个短语,在很多语言里写出来不是。
做德语宠物用品那一年,我们把英语站转化率最高的三十组词整理出来准备翻过去,其中有十九组带着这类修饰词。这三十组词贡献了英语站接近四成的自然搜索成交,所以翻译这件事根本不敢交给通用流程,团队专门抽了两个人盯着做。
换个角度看,这一族词的价值不在搜索量而在它所处的决策阶段,用户打出最字的那一刻已经完成了选品类、选价位两步筛选,剩下的只是选哪一家。越靠近决策终点的词,形态错一个字母的代价越大,因为这批用户没有耐心回头再改一次查询。
英语给了我们一个错觉:这族词很好处理
英语的形容词分级只有两套后缀,短词加 -er和 -est,长词前面加more和most。
加完之后这个词就不再变了,放在什么名词前面都是同一串字符。
cheapest shoes、cheapest dress、cheapest cat litter,中间那个词一个字母都不用改。
于是英语站的关键词表里,这一族词一个概念只占一行。
做英语SEO的人对这件事完全没有感觉,因为它从来没有构成过成本。
这个错觉的杀伤力在于它会顺着流程一路传下去。词表模板是按英语站的形状设计的,一个概念一行;翻译工单是按行派的,一行一条;验收清单是按工单核的,核完就算齐。整条链路上没有任何一个环节会主动提出这一行在目标语言里应该裂成五行。
更麻烦的是这个错觉还会被工具确认一遍,英语关键词工具返回的这族词只有寥寥几行,看着确实不像一件需要单独立项的事。等到德语站上线三个月、榜单页始终接不住任何一条最高级查询的时候,回头查根因,往往要花掉比当初做对它更多的时间。
换成德语,第一次点开词表就知道不对
德语的最便宜写成am billigsten,但这个形态只能单独用,放到名词前面就得改。
放到名词前面要写成billigste、billigster、billigsten、billigstem、billigstes里的某一个。
选哪一个不取决于这个形容词本身,取决于它后面那个名词是什么性、什么数、在句子里是什么格。
换句话说,同一个最便宜,在猫砂上和在狗窝上是两串不一样的字符。
这就已经不是翻译问题了,这是词表结构的问题。
德语的形容词变化规则可以在DWDS的billig词条里一眼看完,那张变化表本身不复杂,难的是它跟名词的组合会在关键词层面爆开。跟意大利语那种每个形容词都要跟名词改性数的情况相比,德语多了一层格,形态数量还要再翻一倍。
第一次意识到这件事的场景我记得很清楚,是母语审校在验收表里对同一个词写了三条互相矛盾的批注,我们以为她标错了,后来才明白她是在按三个不同的名词各自给意见。矛盾的批注往往不是审校的问题,是你的表结构没有把上下文带过去。
英语的两个后缀,到了德语为什么会长出五个字符串?
最高级形容词的形态由后面那个名词决定
这是理解整件事的那个支点,也是最容易被忽略的一句话。
形容词的形态不是形容词自己的属性,它是形容词和名词那个组合的属性。
所以你不可能先把形容词表做完再去配名词,两者必须一起做。
词表里如果只有一列写着最高级形容词,那一列的值全是错的。
正确的做法是把成品串当成最小单位,形容词和名词在成品串里已经黏在一起了。
这一条听起来像语法课,落到工程上却很硬:它决定了词表的主键是什么。主键如果是形容词,你会得到一张永远对不上号的表;主键如果是形容词加品类名词的组合,行数会涨上去但每一行都是可以直接拿去查搜索量、可以直接写进标题的真实字符串。
这条支点还有一个副产品,它顺手回答了词表该由谁来维护的问题:既然形态由名词决定,那么品类名词表的所有权就必须跟关键词表在同一个人手里,分给两个团队维护的结果是名词表更新了、关键词表还停在旧版,成品串跟着一起过期而没有任何人会收到通知。
五个词尾对应哪几种组合
德语名词有阳性、阴性、中性三种性,还有单数和复数的区别。
加上四个格,理论上的组合数不小,但形容词词尾实际只有五种写法。
五种写法覆盖全部组合,意味着有大量组合共用同一个词尾。
这是好消息,它把爆炸的量级从几十压回到了个位数。
坏消息是共用关系不规则,你没法凭直觉判断某个组合该用哪个。
实际操作里我们没有让运营去背这张表,而是让开发把形容词加名词的组合生成逻辑写成一个函数,输入是品类名词的性数,输出是成品串。这个函数一次写完,之后新增品类只需要往名词表里加一行并标好性数,成品串自动生成,不需要任何人重新学一遍语法。
要看清这五种词尾各自覆盖哪些组合,最直观的材料是德语树库的形态标注,里面每个形容词都标了性数格三项特征,按特征分组统计一遍就能得到一张实测版的对应表,比语法书上那张表更贴近真实文本里的分布。
冠词还会再叠一层:强变化与弱变化
德语形容词的词尾还要看前面有没有冠词、是什么冠词。
前面有定冠词的时候用一套词尾,没有冠词的时候用另一套。
die billigsten Schuhe和billigste Schuhe,两串都合法,含义有细微差别。
用户在搜索框里两种都会打,而且比例并不悬殊。
所以这两套不是二选一的关系,是都要覆盖的关系。
这一层是最容易在词表里漏掉的一层,因为翻译交回来的通常是带冠词的完整短语,读起来最自然。但用户在搜索框里省略冠词是常态,尤其在手机上打字的时候。我们的做法是每个成品串都强制生成带冠词和不带冠词两个版本,让搜索量数据自己去决定哪个进标题。
带冠词和不带冠词的比例我们实测过一次,桌面端接近对半,手机端不带冠词的占到七成以上。输入成本会直接改写查询的形态分布,这条规律在别的语言上同样成立,凡是要多打几个字符的写法,在手机流量占比高的市场里份额都会系统性偏低。
真实行数怎么算,一个能在纸上算完的公式
把这件事变成一个数,比争论它复不复杂有用得多。
行数等于最高级形容词的个数,乘以品类名词按性数分出来的档数。
德语的品类名词落进三性两数,实际用到的档通常是四到五档。
再乘上带冠词和不带冠词这两种,得到的就是这一族词的真实行数。
宠物用品那次算出来是六个形容词乘五档乘二,六十行左右。
六十行不是一个吓人的数字,一个人半天能做完。真正要紧的是这六十行必须在项目开始的时候就出现在预算表里,而不是等到内容都上线了、发现榜单页一条最高级查询都接不住的时候才补。这一族词的补救成本比它的生产成本高得多,因为补救意味着改标题,改标题意味着已经积累的排名要重新洗一遍。
这个公式还有一个附带用途,它能让你在立项会上把这件事说清楚。六十行这个数字比复杂两个字有说服力得多,对方一听就知道该给多少工时,而说复杂只会换来一句那你看着办。凡是能把成本折成行数的工作,都要在开口之前先折一次。
分析式最高级和综合式最高级,对关键词表的影响差在哪?
西语法语是加词,德语芬兰语是改词
西班牙语的最便宜写成el más barato,字面是那个更便宜的。
法语写成le moins cher,字面是那个较不贵的。
两种写法都是往短语里加功能词,中心那个形容词本身没有变成一个新词。
德语的billigsten和芬兰语的halvin不一样,它们是一个新的词形。
一个是短语层的操作,一个是词层的操作,这个区别会一路影响到匹配类型。
语言学上把这两种叫分析式和综合式,通用依存标注体系里的Degree特征把形容词的级明确定义成了一个词层特征,只有综合式的语言才会在这个特征上产生新的词形。这份定义的用处是它给了你一个跨语言的判据:查一下目标语言的树库有没有大量Degree=Sup的标注,有就说明这门语言走综合式,没有就走分析式。
判断一门语言走哪条路线不必等到做词表的时候,查一次词典就够了:如果最高级在词典里作为独立词条出现,说明它是一个新词形,走综合式;如果词典只在原形词条下面用例句说明,说明它是短语,走分析式。这个判断五分钟能做完,却决定了后面所有的表结构。
加词的那一半落进词组匹配,改词的那一半落进精确匹配
这是那个区别在广告后台里的直接后果。
西语的el más barato是三个词元,投出去落在词组匹配的行为域里。
德语的billigsten是一个词元,它的行为跟精确匹配更接近。
同一笔预算、同一个匹配类型设置,在两门语言上跑出来的覆盖面完全不同。
报表把两者并在一列里做对比,那一列的数字没有可比性。
我们后来在报表里给这一族词单独加了一个字段,标记它在这门语言里是分析式还是综合式。加这个字段之前,西语账户的展现量看起来永远比德语账户高一大截,团队一度以为是西语市场需求更大;加完之后才看清楚那只是词元数量不同导致的匹配宽度差异,跟需求量没关系。
这个区别在站内搜索上同样咬人,多数站内搜索引擎默认按分词器切出来的词元做匹配,分析式的三个词元里有两个是高频功能词,会被停用词表直接丢掉,剩下一个中心词导致召回过宽;综合式的单词元则可能因为没进词典而召回为零。
土耳其语反而是最省事的一门
土耳其语的最高级是在形容词前面加一个en,形容词本身一个字母不改。
en ucuz、en iyi,结构干净得像英语,甚至比英语还干净。
这跟大家对土耳其语后缀会叠好几层的印象正好相反。
形态复杂度不是一门语言的整体属性,它是按语法范畴分开算的。
同一门语言可以在名词上极复杂、在形容词分级上极简单。
这条经验后来救了我们不少估算:排新语种的优先级时,不要拿这门语言难不难这种整体印象来打分,要按你实际要用到的那几个语法范畴逐项打分。土耳其语在最高级这一项上的成本几乎是零,而德语在这一项上的成本是六十行,两门语言在整体难度榜上的排位跟这个结论完全对不上。
按语法范畴逐项打分这件事,实际做起来只需要一张小表:横轴是你要用到的范畴,名词格、形容词一致、动词形态、复数、冠词,纵轴是候选语种,每格填零到二分。半天能填完十门语言,得到的排序跟凭印象排出来的差别往往大得让人吃惊。
芬兰语的最高级还要再过一遍格,词表要收到什么程度?
从halpa到halvin中间发生了什么
芬兰语的便宜是halpa,比较级是halvempi,最高级是halvin。
注意中间那个字母,原形里是p,两个变化形里都成了v。
这是辅音级差,是芬兰语词形变化里最让工具头疼的一件事。
字符串层面halpa和halvin只有两个字母相同,看着像两个不相干的词。
任何一个基于编辑距离的相似度判断,在这里都会给出错误答案。
这跟芬兰语十五个格背后那个词干自己也会变的问题是同一个机制,只不过在最高级上叠加得更狠:先做级的变化,再做格的变化,两层各自都可能触发词干改写。Snowball的芬兰语词干算法把这些规则写得很清楚,读一遍就知道为什么现成工具在这门语言上的召回率会掉得那么厉害。
编辑距离在这里失灵还带来一个连锁后果,很多站的关键词去重脚本是按相似度阈值跑的,halpa和halvin会被判成两个不相干的词而各自保留,而两个只差一个格尾的形态反倒会被合并掉,去重结果跟语言学上的正确答案正好反着来。
十五个格乘上去之后的数量级
芬兰语的最高级形容词还要跟着名词一起变格。
halvin、halvimmat、halvimmassa、halvimman,这只是开头几个。
理论上一个最高级形容词能生成的形态数是两位数。
再乘上品类名词的数量,理论行数会冲到四位数。
这个数字大到没法用人工穷举,但也大到不能不管。
面对这种量级只有一个办法,就是放弃穷举、改用采样。芬兰办公用品那个项目我们的做法是先从芬兰语树库里统计最高级形容词在真实文本里的格分布,发现主格和内格两个格占了接近八成,剩下十三个格分摊两成多。词表按这个分布收,只做前四个格,覆盖面和成本一下就平衡了。
格分布这件事在芬兰语言办公室的指南库里能查到不少现成的用法说明,尤其是商品名和产品说明这类文体的惯用格,查一遍能省下不少自己统计的工夫,也能避免把书面语里高频、口语里根本不用的那几个格当成重点。
收词的判据不是穷举,是查日志
理论形态数和真实查询里出现的形态数从来不是一回事。
用户不会把一个词的所有格都用来搜索,他们只用其中几个。
用哪几个由查询的句法位置决定,而句法位置是高度集中的。
站内搜索日志是唯一能直接看到这个分布的地方。
没有日志的时候,退而求其次是看自动补全给出的候选。
这条判据在工具在小语种上返回零的时候尤其管用,因为它不依赖任何外部数据源。把站内搜索框接一个月的日志,最高级词的形态分布会自己浮出来,而且这份分布是你的真实用户的分布,比任何第三方的聚合数据都贴合。
把站内搜索框接日志这件事的门槛比想象中低,多数建站系统自带查询记录,没有的话前端埋一个事件半小时就能加上。真正的障碍从来不是技术,是没有人认为这份数据属于自己,所以它经常存在但从没被人打开看过。
关键词工具把这些形态合并了吗,报表上的数字能不能直接用?
工具的合并口径在这一族词上尤其粗
主流关键词工具会把词形接近的查询合并成一行显示。
合并口径是按工具自己的归一化规则来的,各家不一样也不公开。
在英语上这个合并几乎没有副作用,因为形态本来就少。
在德语和芬兰语上,合并会把五个真实查询压成一个数字。
你看到的那个搜索量,是五个形态加在一起的和。
这件事跟俄语工具把十二种词形合成一个数字是同一类问题,但最高级这一族更麻烦一点:俄语的十二种词形至少还看得出是同一个词,德语的五个形容词词尾在合并之后,你连它们分别是哪五个都不知道,工具不会展开给你看。
判断工具在某门语言上做没做合并,还有一个更省事的信号:看它返回的关键词列表里有没有出现明显不是词典原形的写法。如果整张列表清一色都是原形,基本可以断定归一化很激进;如果混着各种格尾和词尾,说明它保留了真实查询的原貌。
词干还原在最高级上会把褒义和中性并到一起
德语的gut、besser、best是不规则变化,词干完全不一样。
Snowball的德语词干算法处理的是规则后缀,不规则形态它管不了。
于是gut和best在索引里是两个不相干的词元。
而billig和billigsten会被还原到同一个词干,被当成一个词。
同一族词里一半被合并、一半没有,这种半合并状态最难排查。
Duden的gut词条把这套不规则变化列得很完整,可以直接拿来当例外表的种子。实操上我们的处理是把所有不规则的形容词单独拉一张小表,一门语言通常只有五到十个,人工维护完全扛得住,剩下的规则形容词交给函数生成。
不规则形容词还有一个容易被忽略的坑,它们的比较级和最高级往往是这门语言里频率最高的几个词,DWDS的gut词条给出的用例密度能直观说明这一点。频率最高的词恰好是规则最不适用的词,这在所有语言里几乎是通例。
一条十分钟能做完的自检
不必研究工具的归一化文档,直接测一次就知道。
挑一个品类,把这一族词的五个形态分别输进工具查搜索量。
如果五次查询返回同一个数字,说明工具在做合并。
如果返回五个不同的数字,说明工具保留了形态区分。
再把五个数字加起来跟合并口径下的那个数比一比,差多少一目了然。
这个自检要按语言各做一次,不能做完德语就推广到荷兰语,因为工具在不同语言上用的归一化模块不同。我们实测下来同一个工具在德语上做合并、在芬兰语上几乎不合并,原因大概率是芬兰语的词形变化太复杂、工具干脆没做,反而阴差阳错保留了真实分布。
做完这个自检要顺手把结果记在词表的说明页上,写清楚测试日期和用的是哪个工具版本。工具的归一化模块会更新,半年前测出来不合并不代表现在还不合并,而这种变化不会有任何公告,只能靠定期复测发现。
没有数据的语言怎么估这一族词的量
小语种最常见的情况是工具直接返回零或者不显示。
这时候不要去猜绝对量,改成估比例。
用英语站的历史数据算出这一族词占自然搜索成交的比例。
再用目标市场的整体流量规模去乘,得到一个量级估计。
估出来的是量级不是精确值,但足够决定要不要投人力。
这个方法的前提是这一族词的意图结构跨语言是稳定的,也就是用最便宜搜索的人在哪门语言里都是准备买东西的人。这个前提在我们做过的语言上一直成立,唯一要留心的是同一批词在两个市场落地页要拆开的那种情况,意图结构没变,但落地页的形态得跟着当地习惯走。
估比例这个办法还能反过来用一次:如果目标市场的整体流量规模已知,而这一族词估出来的量级小得离谱,那多半不是需求少,是你的品类名词在当地根本不是用这个词说的,问题出在上游的品类词翻译而不是最高级形态本身。
商品标题模板怎么写,才能让最高级跟着品类名词自动对上?
模板里最高级和名词必须绑定成一个字段
常见的模板写法是把修饰词和品类词做成两个变量再拼起来。
这个写法在英语上没问题,在德语上会拼出语法错误的标题。
因为修饰词的形态取决于品类词,两个变量之间存在依赖。
正确的做法是把这一对绑成一个字段,由生成函数统一产出。
模板里只留一个占位符,避免任何人手工拼接的机会。
这条约束要写进模板文档的第一行,因为它违反了大多数人对模板变量的直觉。模板变量默认是互相独立的,谁都不会想到这两个变量之间有依赖关系。我们吃过一次亏,一个新同事为了做A/B测试把两个变量拆开重新拼了一遍,上线三周之后才被母语审校发现有一整个品类的标题读起来是错的。
绑成一个字段之后还要顺手做一件事,就是在模板渲染层加一个断言,检查这个字段是不是来自生成函数而不是手工填写的。约束如果只写在文档里,它的有效期等于团队成员的记忆周期,写进代码才是永久的。
例外表比规则表更值钱
规则能覆盖九成以上的组合,剩下那不到一成是外来词和品牌词。
外来词进德语之后的性别不是靠规则能推的,得查词典。
品牌词更麻烦,它的性别是市场约定俗成的,词典里根本没有。
这些词一旦进了模板,生成函数会给出一个语法上错误的形态。
所以例外表要跟规则一起上线,不能留到二期。
例外表的维护成本远比想象中低,因为例外的产生速度很慢,一个品类一年新增不了几个。真正的成本在第一次盘点,那次要把现有商品名逐个过一遍。宠物用品那次我们花了三天,找出十七个例外,其中十一个是英语借词,六个是品牌名,之后一年半只新增了四个。
例外表的字段要比大家第一反应的多一列,除了词和它的性别之外,还要写清楚这个判断的依据是词典、是本地同行的用法、还是母语者的语感。三种依据的可信度和可复核程度完全不同,半年后有人质疑某一行的时候,这一列能省掉一场没有结论的讨论。
母语审校要看的是哪三行
把整批标题丢给母语者通读是最浪费的做法。
他们读得快、读得顺,但正好会漏掉形态这一层。
更有效的做法是给他们一张只有三列的表。
一列是品类名词,一列是生成出来的最高级形态,一列是勾选框。
去掉上下文,形态错误反而跳得出来。
这跟匈牙利语那种一个名词能接出十八种格尾的校对场景是同一个道理。形态错误在有上下文的句子里恰恰最容易被大脑自动纠正过去,读的人根本意识不到自己纠正了,而把同一个词单独拎出来放进表格,同一个人立刻就能看出不对。
三列表这个做法背后是一个更一般的原理:要让人看见某个维度,就得把其余维度全部拿走。上下文完整的段落里同时存在语义、语气、形态、标点四五个维度,注意力会自动流向最显著的那个,形态是其中最不显著的一个,永远排在最后。
最高级词在广告和合规那一侧,为什么口径跟搜索侧正好相反?
德国那条规定要求的是可证明的实质优势
德国的反不正当竞争法对误导性商业行为有明确规定。
广告里用最字打头的断言,属于需要举证的那一类表述。
举证的标准不是你觉得自己最好,是能拿出可核验的比较依据。
做不到举证就不能用,这一条在德语市场执行得相当实在。
类似的要求在欧盟层面也有,各成员国的落地细则略有差别。
德国反不正当竞争法第5条的原文可以直接读,它管的是有误导可能的商业行为,最高级断言只要不能被证实就落在这个范围里。欧盟层面的框架可以看欧盟委员会关于不公平商业行为的说明,两份材料结合起来看,判据比想象中清楚。
需要留意的是这类规定管的是广告和商业表述,不管用户在搜索框里打什么。限制落在你说的那一侧,需求留在用户搜的那一侧,两者从来不是同一件事——这个分界是后面所有解法的立足点,想不清楚它就会在该覆盖的地方主动放弃覆盖。
同一串字符,两个部门给的分正好相反
这是我在这个项目上遇到过最干净的一次内部矛盾。
搜索团队看这一族词:意图最强、转化最高,必须抢。
合规团队看同一族词:断言风险、举证义务,能不用就不用。
两边说的都对,因为他们评的是同一串字符的不同侧面。
过去我见过的关键词争议都是量的争议,这一次是方向相反的争议。
这件事逼出来的一个通用做法是:凡是发现某一族词在两个部门那里的评分符号相反,就不要试图说服其中一方,而是去找那个能同时满足两边的第三种表述。争论谁对谁错会耗掉几周,找替代表述通常两小时就有结果。
这类符号相反的争议还有一个识别特征:两边引用的都是外部权威,一边引搜索数据,一边引法条,谁也说服不了谁。凡是双方都在引用外部依据的争论,都不是判断问题而是目标冲突,只能靠找第三种方案化解,讨论本身不会产生任何进展。
破法是把断言词换成范围词,但别换掉查询词
关键在于分清楚哪一处字符是用户打的,哪一处是你说的。
标题和H1是你的断言,用户看得见,合规管得着。
结构化数据里的商品属性、筛选项的标签,是可查询的事实。
把最字换成范围表述,比如价格区间内、同类中价格较低。
而查询词的覆盖靠正文里的问答段和筛选组合去接。
宠物用品那次的最终方案是标题写成价格从低到高排的猫砂榜单,正文里用一段问答直接回答哪一款最便宜并列出当天价格和更新时间。断言变成了有出处的事实陈述,合规过了,而那一段问答本身就是最高级查询的最佳落点,搜索侧一分没丢。
完整的条文体系可以从德国反不正当竞争法的目录看起,把跟商业表述相关的几条一次读完,之后写文案时心里有数,不必每写一句就去问法务。这份阅读成本一次性投入,收益是后面几百条标题不用再逐条送审。
榜单页、对比页、筛选页,哪一类最适合承接最高级查询?
三类页面的形态承载能力不一样
榜单页天然带排序语义,跟最高级的意图最贴。
对比页承载的是两个具体商品之间的关系,意图更窄。
筛选页承载的是条件组合,形态灵活但语义偏弱。
三类页面能容纳的最高级形态数量差得很远。
榜单页的标题只有一个,只能放一个形态。
这就是这一族词的核心矛盾:意图最集中的页面类型,恰恰是形态容量最小的页面类型。榜单页只有一个标题、一个H1、一段导语,能塞进去的形态最多两三个,而德语这一族词有五个形态要覆盖。剩下的形态必须找别的地方安置,否则就是白做。
这个矛盾还能推广到别的高意图词族上,凡是意图越集中的查询,能承接它的页面类型就越少、越标准化,也就越没有位置放变体。意图强度和承载容量在页面这一层是负相关的,规划落点的时候要把这条当默认前提,而不是当成偶然遇到的困难。
筛选页是唯一能把变体做成组合的地方
筛选页的URL参数天然是可组合的。
价格区间、品类、属性三个维度可以自由交叉。
每一种组合都可以有自己的标题模板和自己的形态。
这让形态覆盖从一个位置变成了几十个位置。
代价是要处理索引控制,不能让组合页无限膨胀。
我们的做法是只放开有真实搜索量的那些组合进索引,其余的做规范化处理指回主榜单页。判断有没有搜索量靠的还是站内日志,一个月的数据足够把值得开放的组合筛出来。这一步跟多语言站的语言版本对应关系要一起规划,否则德语站开放的组合和法语站开放的组合对不上,对应关系会缺一大半。
开放组合的时候有一个容易踩的顺序问题:应该先确定标题模板再开放索引,而不是先放开再补模板。反过来做的结果是搜索引擎先抓到一批标题重复的组合页,等模板补上去之后,重新评估这些页面质量所需的时间比一开始就做对要长得多。
面包屑和列表标题是免形态区
页面上有几个位置天然不需要完整的语法形态。
面包屑是一串名词,不需要形容词跟它一致。
列表项的标题、卡片上的短标签,同样可以用词典原形。
这些位置可以放形态最简单的那个版本,不会读起来别扭。
把需要精确形态的需求挪到这些位置,是最省事的一种解法。
这条思路跟URL用本地字母还是拉丁转写那篇里的判断方式一致:先问这个位置到底受不受语法约束,不受约束的位置就是免费的容量。整个页面里的免形态区加起来,通常比大家以为的多得多。
免形态区的清点最好在改造之前做一遍,把页面上的每一个文本位置列出来,逐个标记它是完整句子还是独立短语。独立短语的位置就是免形态区,一个典型的商品列表页上这样的位置能有十几个,加起来的容量足够安置那几个次要形态。
词表要留几列,行数怎么估
五列结构:概念、形容词、名词性数、成品串、匹配类型
概念列写的是中性描述,比如价格最低,不写任何目标语言。
形容词列写词典原形,只作参考,不直接使用。
名词性数列写品类名词的语法属性,是生成函数的输入。
成品串列是真正拿去用的那一列,也是唯一允许进标题的一列。
匹配类型列标记这个串在广告里该按哪种匹配投。
五列里最容易被砍掉的是概念列,因为它看起来是冗余的。但它是整张表跨语言对齐的唯一依据,砍掉之后德语表和西语表就没有任何一列能对上,做多语言对照的时候只能靠人肉猜。这一列在波兰语那种一个词有六个格要覆盖的语言上尤其不能省。
这五列还要再加一条使用约定:任何下游系统取值都只能取成品串那一列,不许自己拼。约定写在表头的注释里,并且在导出接口上只暴露这一列。能被误用的字段迟早会被误用,最省心的做法是让它在接口层根本不存在。
行数估算的分母是品类不是词
估这张表有多大的时候,很多人会先数形容词的个数。
形容词的个数是个位数,怎么估都不大。
真正决定行数的是品类名词的数量和它们的性数分布。
所以分母要换成品类,一个品类一个品类地算。
算出来的数才是要交给翻译和运营的真实工作量。
这条跟前面算出来的那个六十行是同一件事的两个角度。先按形容词估会得到六这个数,按品类估会得到六十,两者差一个数量级。项目排期用哪个数,决定了这件事是被当成半天的小任务还是一周的正式工作。
按品类估还有一个附带好处,它天然给出了这件事的拆分方式。六十行没法拆给三个人做,但六个品类各十行可以,而且每个人拿到的都是一个完整的、能独立验收的单元,不会出现三个人都做了一半、合起来却对不上的情况。
用一个品类先跑通再铺开
不要一上来就把所有品类的表都做出来。
挑一个品类做完整流程,从词表到标题到上线到看数。
这个品类会暴露出流程里所有的坑,成本只有全量的几十分之一。
跑通之后剩下的品类基本是复制粘贴加换词。
挑品类的标准是数量适中、性数分布覆盖得全。
宠物用品那次我们挑的是猫砂,理由是它的相关品类名词正好覆盖了阳性、阴性、中性和复数四种情况,一个品类就把五个词尾都用上了。挑一个性数分布单一的品类会让你误以为流程已经跑通,铺开的时候才发现还有三种情况没验证过。
试点品类还要满足一个隐含条件,就是它的数据量足够支撑上线后看数。选一个月只有几十次查询的冷门品类,跑完流程你会发现所有指标都在噪声范围里,什么结论都得不出来,等于白跑一轮完整流程。
交给翻译之前要写清楚哪一列不许动
成品串那一列是函数生成的,翻译不能手工改。
但翻译看到不通顺的地方会本能地想去顺一下。
顺完之后形态就跟名词对不上了,而且没有任何报错。
所以工单上要明确标注这一列只读,改动请提到问题列。
问题列里的反馈拿去改生成函数,改完全表重新生成。
这条规则要用一句话写在工单最上面,别指望写在附件里有人看。我们后来干脆把成品串那一列在协作表格里设成了受保护区域,想改也改不了,反馈只能填到旁边的备注列。工程手段永远比口头约定可靠,尤其是当那个约定违反人的本能的时候。
这一条的更一般形式是:凡是要求人违反本能的规则,都必须用工程手段兜住。译者顺一下不通顺的句子是职业本能,运营看到空格想填满是本能,开发看到重复代码想抽象是本能,靠提醒对抗本能的成功率长期看接近于零。
上线之后盯哪几个数
第一个数:形态覆盖率
分母是词表里的成品串总数,分子是站上实际出现过的串数。
这个数一开始通常只有三到四成,因为大量串还没找到落点。
盯着它往上走,涨不动的时候说明落点位置不够用了。
这时候要么开筛选页组合,要么在正文里增加问答段。
覆盖率到七成以上,这一族词的工程部分基本就做完了。
算这个数不需要爬虫,直接从内容库里取字段做字符串匹配就行,一个脚本几分钟跑完。要注意的是匹配要做完整词匹配而不是包含匹配,否则billigste会被billigsten命中,覆盖率会虚高一大截。
覆盖率这个数在早期会涨得很快、到七成之后突然变慢,这是正常曲线而不是遇到瓶颈。前面涨得快是因为高频形态本来就有天然落点,后面慢是因为剩下的都是低频形态,需要专门造位置。看到曲线变平不必着急加人,先算一下剩下那些串值不值得。
第二个数:同概念多形态的份额分布
把同一个概念下的五个形态在真实查询里的份额拉出来。
正常情况下会呈现明显的头部集中,一两个形态占大头。
如果分布异常平均,多半是采样量还不够。
头部形态确定之后,标题位优先给它,其余的放正文。
这个分布每季度复核一次就够,它变化得很慢。
这个数还有一个隐藏用途:它能反过来验证你的品类名词性数标注对不对。如果某个概念下本该是主流的那个形态份额接近零,通常不是用户不搜,是你把那个品类名词的性数标错了,生成出来的串根本不是一个合法的德语表述。
份额分布还要跟设备维度交叉看一次,桌面端和移动端的形态偏好差异往往比语言之间的差异还大。同一门语言在两种设备上可以是两套查询习惯,如果你的标题只按合并后的总份额来定,那就等于在给两拨人写同一个标题而只讨好了其中一拨。
第三个数:本地同行的对照基线
挑三家本地头部同行,用同一批成品串去查它们的排名。
你的排名除以这三家的均值,得到一个相对分。
相对分比绝对排名稳定,也更能反映真实差距。
更重要的是它能告诉你本地同行做没做这一族词。
如果三家都没做,这一族词就是一片没人抢的空地。
德语宠物用品那次的对照基线给了我们一个意外结论:三家本地同行里有两家的最高级形态也是错的,标题读起来别扭。这意味着形态做对本身就是一个可以拿来竞争的点,而不只是一个不出错的底线。德语市场那些复合词的坑本地商家一样会踩,语言是母语不代表商品页写得对。
对照基线还要每年重测一次,因为同行也在改。头一年他们形态写错是你的机会,第二年如果他们改对了而你还停在原地,这个相对分会掉得比绝对排名快得多,而绝对排名可能一点没变,你会完全看不出发生了什么。
常见问题解答
最高级关键词的形态覆盖,值得投入多少人力?
按品类算,一个品类的完整流程大约需要一到两天,包括词表生成、例外表盘点、模板改造和母语抽检。铺开到十个品类通常在两周左右,之后进入维护状态,每季度花半天复核形态份额分布即可。判断值不值的依据是这一族词在英语站占自然搜索成交的比例,我们做过的项目里这个比例通常在三到四成之间,按这个量级折算,两周投入的回报周期一般不超过两个月。需要提醒的是这个投入不能摊到日常迭代里做,它必须是一段连续的工作,因为词表、模板和例外表三者互相依赖,拆成三个迭代做完,中间那两次上线的产出都是不可用的。
如果只做一件事,应该先做哪一件?
先把标题模板里的修饰词和品类词绑成一个字段。这一件事的成本最低、影响面最大,而且它是所有后续工作的前提:字段没绑好,词表做得再准也会在拼接那一步被打散。绑完之后哪怕形态覆盖率还只有三成,至少站上已经出现的那些串全部是合法的,不会出现语法错误的标题被搜索引擎和用户同时看到。剩下的覆盖率可以慢慢往上补。判断这一步做没做完的办法也很简单,随机抽二十条已经上线的标题交给母语者读一遍,如果没有任何一条被指出形态别扭,这一步就算过了,可以开始往覆盖率上使劲。
分析式语言是不是就不用管这件事了?
不是,只是关注点不同。西班牙语和法语这类分析式语言不会产生新词形,但功能词的搭配同样有固定用法,用错了照样读起来不像本地人写的。而且分析式表述的词元更多,在广告匹配和站内搜索里的行为跟单词元完全不同,报表口径要单独设。真正省下来的只是词形生成那一步,词表结构和落点规划这两件事一样也少不了。还有一个容易忽略的差别,分析式语言的功能词经常是搜索引擎的停用词,写进标题里不增加任何匹配权重却会占掉宝贵的字符数,所以标题的字符预算要按去掉功能词之后的有效长度重新算一遍。
关键词工具给出的搜索量数字到底能不能用?
可以用来排序,不能用来做绝对量的预算。这一族词在合并口径下的数字是几个形态的和,用它来判断哪个概念比哪个概念热是可靠的,用它来推算某个具体标题能带来多少流量则会高估。想拿到分形态的数字,只能靠站内搜索日志或者自己分别投一小笔广告去测。测的成本不高,一个品类几百块就能跑出可用的分布。另外要留意工具给出的竞争度指标同样受合并口径影响,几个形态合并之后的竞争度会显得比任何单一形态都高,据此判断这一族词太贵而放弃投放,是这一层最常见的一个误判。
合规那一侧的限制,在非德语市场同样严格吗?
各市场的严格程度不一样,但方向是一致的:断言型表述需要依据。德语市场执行得最实在,法语和北欧市场也不宽松。稳妥的做法是不管在哪个市场都按同一套原则来做,把标题里的断言换成有出处的事实陈述,把最高级查询的承接放到正文的问答段和筛选组合里。这样做一次就能全市场通用,比逐个市场研究细则省事得多。还有一个实际的好处,统一按最严格的市场做能让内容资产在市场之间自由搬运,不必因为某个市场的合规口径更松就多做一套宽松版本,那一套迟早会在别的市场被误用。
词表交给母语译者做,为什么还是会出问题?
因为译者的工作目标是让句子读起来自然,而形态覆盖的目标是穷举所有合法变体,这两个目标在同一张表上是冲突的。译者本能地会给出最自然的那一个形态,把其余四个当成不必要的重复删掉。解法是把两件事拆开:让译者只负责概念列到形容词原形的翻译和例外表的判断,形态生成交给函数,母语抽检用去掉上下文的三列表来做。这种冲突在验收环节同样会出现,译者验收时看的是通顺度,工程验收时看的是覆盖度,两张验收表如果合并成一张,通顺度那几项一定会把覆盖度那几项挤掉,因为前者更容易被感知。
这套方法能不能直接套到比较级上?
结构上可以,但优先级低很多。比较级在电商查询里的出现频率远低于最高级,用户很少搜更便宜的猫砂,他们直接搜最便宜的猫砂。比较级更多出现在对比页和评测内容里,那些页面的形态承载能力本来就强。建议的做法是先把最高级做完做透,比较级只在词表里留一列位置,等有真实查询数据支撑的时候再补。还有一个折中办法是把比较级并进对比页的正文而不是单独立项,对比页本来就在做两个商品之间的比较,比较级形态在那里出现是自然的,顺手覆盖掉几条查询,几乎不产生额外成本。
权威参考资料
本文标题:《小语种SEO最想抢的那族词,在英语里两个后缀就够,在德语里要写五遍》
本文链接:https://zhangwenbao.com/minor-language-comparative-superlative-keyword-forms.html
版权声明:本文原创,转载与引用请注明作者与原文链接。许可协议: CC BY 4.0