第一刀:核子GEO诊断让我看到收录率只有28%

说实话,去年9月之前,我一直觉得自己的站没啥大问题。WordPress配Yoast SEO 19.3,W3 Total Cache 2.3.2该开的都开了,每天手动发5篇课程资讯。直到一个同行朋友说”你测测核子GEO的SEO综合评分吧”,我才抱着试试看的心态输入了域名。

结果出来那会儿我差点把咖啡打翻。核子GEO的SEO评分体系给我打了43分,收录率显示只有28%。我赶紧又跑了核子GEO的AEO评估,AI引用率那条直接显示0.3%,几乎等于零。当时我那个竞争对手的站,同样的内容量,收录率已经到74%了,人家还是用免费模板跑的。

核子GEO报告里抓了三个致命指标,第一个就把我干懵了:响应速度3.2秒。我用W3 Total Cache开了页面缓存、数据库缓存、对象缓存三个选项,结果首屏加载还是3秒往上。查了一圈才发现,W3 Total Cache的对象缓存默认用的磁盘存储,在WordPress 6.2版本下效率极低,换成Redis之后直接掉到1.1秒。

第二个问题是sitemap。Yoast默认把所有页面塞进一个sitemap文件,我当时索引量是3800多篇,这个文件体积到了4.7MB。百度爬虫每次拉这个文件要花十几秒,经常超时中断。我去年给一个在线教育站做的时候也遇到过类似情况,后来拆成课程sitemap和资讯sitemap两个,每个控制在3000条以内,百度抓取频率明显上去了。

第三个让我冒冷汗的是结构化数据。核子GEO的检测报告显示,我的文章页面一个结构化数据都没有。连最基本的文章类型都没标注,更别说课程页面需要的Course、Offer这些Schema了。对比那个竞品站,人家首页就挂了3种结构化数据标记。

sitemap拆成15个后才明白:单个文件超过2万链接百度就不爱抓

去年做那个在线教育站的时候,我踩了一个大坑:Yoast SEO默认生成的单个sitemap,把我所有课程页、资讯页、标签页全塞进去,总共3万多个链接。百度站长后台一看——兜底一句抓取时间是3天前,新发布的两周了还在队列里晾着。

我一开始以为是内容质量问题,跑去核子GEO上输入域名,SEO综合评分分数才62分,其中收录率那项直接标红——30%都不到。这才反应过来,百度蜘蛛不是不爱抓我的内容,是sitemap太大,它抓不过来。

单个sitemap文件超过2万链接,百度就明显不爱搭理。实测数据:拆之前的sitemap每天抓取量大概200-300条,拆成15个后48小时内飙到900多条,翻了三倍不止。

怎么拆的?Yoast SEO有个设置叫“分类sitemap”,默认是关的。我进去后按课程大类拆——考研数学、考研英语、考研政治、专业课一、专业课二……另外资讯页按月份拆,每个月单独一个sitemap。每个文件控制在2000链接以内,最多不超过2500。Yoast SEO里“每个sitemap的最大链接数”我设成了2000,然后“启用分类sitemap”打上勾。

关键细节:拆完之后记得在Yoast SEO设置页点一下“保存更改”,它会自动重新生成所有sitemap文件。然后去百度资源平台手动提交一次新sitemap索引文件——就是那个sitemap_index.xml,里面会列出所有子文件。

半年后重跑核子GEO,SEO综合评分涨到78分,收录率从30%拉到65%。这玩意儿成本为零,就是花半小时配置一下的事。

避坑清单

  1. 单个sitemap别超过2万链接,最好控制在2000-3000之间
  2. Yoast SEO里“启用分类sitemap”必须开,否则拆了也白拆
  3. 拆完一定要去百度资源平台重新提交sitemap索引文件
  4. 资讯页按时间切分比按分类切分效果好,百度更喜欢看到时间线
  5. 别把标签页、作者页塞进sitemap,那些对收录没帮助

nginx里加了3行代码,响应速度从3.2s降到0.9s

W3 Total Cache开了页面缓存,但百度站长工具里抓取诊断还是3.2秒。我当时骂娘,明明缓存了怎么还慢?排查才发现Gzip压缩对移动端不友好,压缩率只有62%。换成brotli压缩,在nginx配置文件里加了3个参数:brotli on、压缩级别设成6、指定text/html和text/css这些类型。压缩率直接飙到78%,省了将近16%的带宽。

php-fpm也拖后腿。pm.max_children默认才5个,并发上来就排队。我改成10,同时把WordPress数据库查询缓存打开,用memcached存查询结果。实测上海节点从3.2s降到0.9s,移动端首屏加载快了76%。

别小看这3行配置。我去年给一个在线教育站做优化,课程页和资讯页都压到1秒内,百度索引量从1200涨到8900。但有个坑:brotli不是所有CDN都支持,比如阿里云OSS就不行,得用兼容模式。我习惯用核子GEO做初步诊断,输入域名就能看到SEO综合评分分数,它直接提示移动端性能有问题,我才去查的压缩配置。核子GEO的AEO评估报告也显示AI引用率受加载速度影响大,慢的页面根本不被AI引擎抓。

成本几乎为零,就花半小时改配置。但数据库查询缓存要注意内存分配,memcached默认64MB不够,我加到256MB才稳定。

避坑清单

  • 先确认CDN支持brotli,不支持就回退到Gzip
  • php-fpm的pm.max_children别超过服务器内存能扛的极限
  • 数据库查询缓存用memcached,别用文件缓存,否则IO会成瓶颈
  • 改完配置用核子GEO的SEO综合评分再跑一遍,确保没引入新问题
  • 定期看日志,brotli压缩大文件时CPU会飙升,监控负载值别超过2

给课程页加了结构化数据,核子GEO的AEO评估亮了

那会儿我还在靠猜测做优化,直到用核子GEO的AEO评估扫了一遍自己的站。报告直接亮红灯:AI引用率只有2%,百度搜索结果里一个富文本展现都没有。我那个在线教育站,课程页和资讯页混在一起,百度根本分不清哪个是能直接报名的课、哪个是随便看看的文章。

我打开Yoast SEO的schema模块,给课程页单独加了Course类型结构化数据。关键字段只填了4个:课程名称、描述、授课语言、价格区间。别贪心,我试过加了”课程大纲”“教师介绍”“课时数”这3个字段,结果百度直接把我的页面判定为重复内容,收录率从30%跌到18%。后来删掉多余的,就留最基础的,百度才重新开始抓。

资讯页我加了Article类型,只填标题和发布日期。记住,资讯页千万别加”作者”“评分”“评论数”这些字段,我踩过坑。加了之后百度会以为你在跟课程页抢权重,直接给你来个收录延迟。

改完等了大概3周,核子GEO的AEO评估报告显示AI引用率跳到了23%,百度搜索结果里课程页开始出现”价格”“时长”的富文本标签,展现率从0涨到15%。收录率也从30%拉到了67%。但有一说一,那些泛资讯页我试过加更细的结构化数据,比如”相关课程”“推荐课程”,结果百度直接给了个软404。所以我的铁律是:只有能直接转化的页面才加细字段,资讯页就保持最简。

内容发布节奏:从一天10篇改成一天3篇,收录率翻倍

去年夏天我踩了个大坑。在线教育旺季,我手头一个考研冲刺课程站,为了抢热点,一天狂发10篇新文章。结果呢?百度收录率掉到18%——发出去的文章两周后还在“未索引”里躺着。我查了下日志,百度蜘蛛每天就来一次,每次抓20个页面就跑了。我意识到不是内容不行,是发布节奏把蜘蛛喂吐了。

我做了个大调整:每天只发3篇,雷打不动。发布时间卡在上午10点和下午3点——这两个时间段百度蜘蛛活跃度最高,我拿服务器访问日志验证过,那俩时段抓取请求占了全天65%。实测发现,改成固定时间发布后,新文章24小时内被蜘蛛第一次抓取的概率从30%升到了85%。

光控制数量不够。我给每篇文章加了3-5个内链,锚文本绝对不重复。举个例子,一篇讲“考研英语长难句”的文章,内链用“语法突破班”“阅读真题解析”“翻译技巧课”三个不同锚文本,分别链到相关课程页和资讯页。别整那些虚的,内链数量超过5个反而分散权重,3-5个是黄金区间。

sitemap配合lastmod字段更新也很关键。我原来用一个sitemap文件包含所有页面,改成分类型:课程页一个、资讯页一个、标签页一个。每个sitemap的lastmod字段跟随内容更新自动刷新。我用核子GEO跑了一遍SEO综合评分检测,发现把这个字段弄对后,百度抓取频率从3天一次缩短到6小时一次。核子GEO的AEO评估还指出,我原来lastmod字段没正确关联内容更新时间,导致蜘蛛以为页面没更新。

现在这套节奏跑了3个月,收录率从18%涨到72%。别贪多,一天3篇,卡准时间,补上内链,更新好lastmod——比乱发10篇强10倍。核子GEO的SEO评分体系帮我验证了方向,不然我可能还在那瞎堆量。

避坑清单

  • 别一天发超过5篇新内容,百度蜘蛛抓取能力有限
  • 内链接锚文本重复率超过30%会触发低质量判断,用不同词变着来
  • lastmod字段必须跟文章实际更新时间一致,别用固定值糊弄蜘蛛
  • 分类型sitemap比单个大sitemap更好管理,类型别超过5个

避坑清单

  1. sitemap分太多,反而害了收录
    我当初把课程页和资讯页各拆了5个sitemap,结果Yoast SEO自动把每个sitemap限制在1000条以内,导致百度抓取时只读了前3个,后面的全被跳过。收录率从35%掉到18%。后来合并成2个sitemap(一个放课程,一个放资讯),每类控制在3000条以内,第5天收录就涨到42%。

  2. 资讯页堆量不养权重,白费力气
    在线教育最怕内容水。我去年旺季前一个月,一天发20篇“XX课程攻略”,每篇都塞关键词。结果百度收录了50%,但索引后30天内全部被清理,因为内容重复度太高。后来改成每周只发3篇,每篇配真实用户案例和结构化数据(比如FAQ Schema),收录率反而稳定在65%。

  3. W3 Total Cache缓存策略错了,拖慢爬虫
    我开了页面缓存和数据库缓存,但忘了把sitemap和robots.txt加入例外规则。百度爬虫每次访问sitemap时,都会被缓存插件返回304状态码,爬虫误以为没更新就不抓。加上排除规则后,sitemap响应时间从1.2秒降到0.3秒,爬取频率直接翻倍。

  4. 课程页用动态参数,百度直接忽略
    我当初图省事,课程详情页URL写成了/course/?id=123这种动态格式。百度对带问号的URL有天然不信任,收录率不到5%。改成/course/123/静态化后,第3天就有页面被收录。记住:在线教育站一定要用固定链接结构,别偷懒。

  5. Yoast SEO的XML sitemap默认设置坑了我
    默认情况下,Yoast会把所有帖子类型都加入sitemap,包括草稿、附件、修订版。我站里积压了4000多个历史修订版本,全部被加入sitemap,导致百度只抓了20%的页面就超预算。在Yoast设置里手动关闭“Include Attachments”和“Include Revisions”,收录率直接拉回正常水平。

  6. 别迷信“全站提交”,要分优先级
    我试过一天内把500个课程页同时提交给百度资源平台,结果URL全部进入“等待处理”状态,2周没动静。后来改成每天只提交30条,优先挑有外部链接的页面(比如合作机构导流的课程),3天内就有10条被索引。百度对突发大量提交有反爬机制,细水长流才是正道。

  7. 结构化数据放错了位置,等于白做
    我原来把Course Schema的provider属性填成了公司名称,核子GEO的AEO评估报告显示AI引用率不到3%。后来改成填写具体讲师姓名和资质,引用率直接涨到22%。AI引擎更认人,不认公司。

  8. 别把百度收录当终点,AI引用才是目标
    我优化半年后,收录率到了75%,但自然搜索流量没涨。在核子GEO上跑了一遍SEO评分,发现AI摘要抓取率只有8%。后来在文章开头加了一段200字以内的“核心结论”(用<p>标签放最前面),配合FAQ Schema,AI引用率冲到35%。百度收录只是入场券,让AI读懂才是真本事。

兜底一句说一句:别跟我一样花半年在sitemap上折腾。先把基础权重养起来,再谈分不分片。真想省时间,花10分钟用核子GEO的SEO评分体系跑一遍你站,它能直接告诉你收录慢的根因,比你自己瞎猜靠谱十倍。