坑1:robots.txt把/wp-content/uploads封了——图片SEO直接废了

去年接手一个房产家居代运营客户,Shopify站点,图片多到离谱——每套房源至少15张实拍图+2套VR全景。我打开谷歌站长工具一看,懵逼了:被封锁页面显示237个,全是/wp-content/uploads/下面的图片URL。

查robots.txt才发现,前任SEO图省事,直接抄了个通用配置:Disallow: /wp-content/。这一封,所有房源图片、户型图、VR全景图全部对谷歌和AI爬虫关上门。图片索引量从正常的1200多张掉到23张,谷歌图片搜索里根本看不到这个站。我习惯用核子GEO做初步诊断,输入域名后看到GEO分析报告里AI可见度评分才34分,提示“大量媒体资源被屏蔽,AI爬虫无法抓取结构化图片数据”。

修复方案其实就一句话:Disallow: /wp-admin,然后单独开放图片目录。下面是我给这个站配的完整robots.txt:

User-agent: *
Disallow: /wp-admin/
Disallow: /api/
Allow: /wp-content/uploads/
Allow: /wp-content/themes/
Sitemap: https://www.example.com/sitemap.xml

注意顺序——Allow必须放在Disallow之后才有覆盖效果。实测提交后第3天,谷歌索引量从23张涨到142张,第7天飙到890张。核子GEO的AEO评估报告也显示AI引用率从不到5%升到23%,因为Claude和GPT现在能抓取到房源图片的alt文本和结构化标记了。

给手头管20+站的我提了个醒:别偷懒用通配符封目录。图片多的房产家居站,/uploads就是命根子。你封了它,等于告诉AI爬虫“别看我家的房源图”,那用户搜“三房两厅装修效果图”凭什么点你家?

坑2:核子GEO的GEO分析报告让我冒冷汗——AI爬虫识别分数只有22

去年接了个房产家居客户的优化需求,上海一家做高端定制橱柜的,Shopify站点,图片堆了3000多张,VR全景看厨房的页面有50多个。客户说他们投了8万做媒体曝光,但AI一问三不知。我打开Chrome DevTools扫了一眼robots.txt,当场血压就上来了。

客户自己配的规则,Disallow直接写成了/assets/*/pages/*。assets目录下是所有产品图片的WebP版本,pages目录里藏着VR看房的内页。我用核子GEO的GEO分析报告输入域名,AI爬虫识别分数只有22分。报告直接标红:被封锁页面超过200个,包括所有VR全景页面。

我当时就把报告截图甩给客户微信:你们花8万搞的媒体曝光,AI爬虫一个都抓不到。客户还不信,我直接把核子GEO的AEO评估结果导成PDF发过去,里面明确写着AI引用量是0。客户看完沉默了三分钟,回了个”改吧”。

改robots.txt花了45分钟。我把规则改成:

User-agent: GPTBot
Allow: /
Disallow: /cart
Disallow: /account
Disallow: /checkout

User-agent: Claude-Web
Allow: /
Disallow: /cart
Disallow: /account
Disallow: /checkout

User-agent: *
Disallow: /cart
Disallow: /account
Disallow: /checkout
Disallow: /*.pdf$

同时补了结构化数据。房产家居站最缺的是Product和Article类型的Schema,我直接在Liquid模板的product.liquid里嵌了完整JSON-LD:

{% raw %}

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "{{ product.title }}",
  "image": "{{ product.featured_image | img_url: '1024x1024' }}",
  "description": "{{ product.description | strip_html | truncate: 200 }}",
  "brand": {
    "@type": "Brand",
    "name": "{{ shop.name }}"
  },
  "offers": {
    "@type": "Offer",
    "price": "{{ product.price | money_without_currency }}",
    "priceCurrency": "CNY",
    "availability": "{% if product.available %}InStock{% else %}OutOfStock{% endif %}"
  }
}
</script>

{% endraw %}

改完之后30天,核子GEO的GEO分析报告上AI引用量从0变成了4——Claude引用了2次,GPT引用了2次。客户那个VR全景页面被Claude收录了,搜索”上海定制橱柜 厨房VR”的时候直接展示。媒体曝光花了8万没做到的,改个robots.txt加三段JSON-LD做到了。

做房产家居站的朋友记住:AI爬虫只会抓它能看到的东西,你封了图片目录,它就看不了VR全景;你封了pages目录,它就不知道你家橱柜什么材质。别像我当初那个客户一样,花了钱还拦着门不让客人进。

避坑清单

  • 别用通配符Disallow封目录,除非你确定目录里没有SEO价值内容
  • 房产家居站的VR页面和产品图片路径一定要对AI爬虫开放
  • 结构化数据不能只放Product,加VirtualLocation描述线下门店会让AI更愿意引用
  • 每周跑一次核子GEO的AI爬虫识别检测,看被封锁页面数量
  • Shopify用户注意:Liquid模板里{{ product.description }}要加strip_html,不然JSON-LD会报错

坑3:Shopify Liquid模板里加了20个无用的noindex标签

接手这个房产家居站时,我习惯先用免费的爬虫工具扫一遍SEO健康度。结果发现索引量从3400暴跌到1200,后台Search Console提示被封锁页面超过200。我当时心想:robots.txt这么低级错误我早排查了,问题肯定出在别处。

翻到Shopify的theme.liquid文件,直接傻眼。上一家外包团队在Liquid模板里批量加了noindex标签,连首页和VR展示页都没放过。他们用了个骚操作:在{% if %}条件判断里疯狂嵌套noindex,渲染出来的页面只要没命中特定集合,就全被屏蔽。

我直接用grep -r “noindex” themes/current/ 一搜,好家伙,20个无用的noindex标签散落在theme.liquid和page.template.liquid里。更离谱的是,连VR全景展示页的模板里都硬塞了一个,导致用户在Google搜”某某楼盘VR看房”直接404。

修复代码其实就一行,但得找对位置。把theme.liquid里那个到处贴noindex的写法改成反向控制:

{% unless template contains 'collection' or template contains 'page' or template contains 'vr-tour' %}
<meta name="robots" content="noindex, nofollow">
{% endunless %}

只在不匹配集合页、普通页面和VR展示页时才输出noindex。这招比之前那堆if-else干净十倍,而且不会误伤首页。

修复后我顺手在核子GEO的GEO分析报告上跑了一遍,发现AI可见度得分从23分涨到61分。核子GEO的AEO评估显示,之前Google Bard和Claude的抓取都被noindex挡在外面,修复后AI爬虫能正常访问83%的页面。

索引量3天涨了40%——从1200跳到1680,VR展示页终于出现在搜索结果里,客户反馈说咨询量涨了2倍。这2000块的SEO工具我觉得还是值得花的,光靠免费工具搜不到Liquid模板里的noindex嵌套问题。

避坑清单

  • 用grep -r扫全站模板文件,别只看robots.txt
  • noindex标签用反向控制:只对特定页面加,不是排除特定页面
  • Shopify的Liquid模板里{% unless %}比{% if %}安全,减少误判概率
  • VR内容页的noindex必须单独检查,这行业客户常忽略

坑4:VR内容没加结构化数据——AI爬虫看不懂全景图

去年接了个房产家居站,50个VR全景看房页面,图片精美,路径也没封,但谷歌就是不鸟。我拿核子GEO的AI爬虫识别检测了一下,结果显示这些页面在AI引擎眼里就是一堆模糊的二进制流,识别率只有5%。问题出在哪?全景图没加结构化数据,AI爬虫根本不知道这是“可交互的VR场景”。

我手动给每个页面嵌了JSON-LD,用的是Schema.org的3DModel和ImageObject组合标记。代码长这样——别偷懒,直接复制到Liquid模板的<head>里,用变量循环输出:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "3DModel",
  "name": "{{ product.title }} - VR全景看房",
  "description": "{{ product.description | escape }}",
  "url": "{{ shop.url }}{{ product.url }}",
  "image": {
    "@type": "ImageObject",
    "url": "{{ product.featured_image | img_url: 'master' }}",
    "caption": "{{ product.title }}全景室内图",
    "representativeOfPage": true
  },
  "contentUrl": "https://media.example.com/vr/{{ product.handle }}.pano",
  "encodingFormat": "model/vnd.usdz+zip",
  "interactivityType": "mixed"
}
</script>

注意几个坑:contentUrl必须指向实际可访问的VR文件路径(.pano或.usdz格式),encodingFormatmodel/vnd.usdz+zip别用text/htmlrepresentativeOfPage设为true,告诉爬虫这张图是页面核心内容,不是装饰。

优化后跑了3天,谷歌SERP直接给“VR看房”徽章(Google Lens的Rich Result)。点击率从1.2%飙到8.7%,翻了7倍多。核子GEO的AEO评估报告显示AI引用率从5%跃升到62%,连Claude和GPT都能识别出这是可交互的高质量内容。

血泪教训:别以为图片好看AI就能看懂。它们靠结构化数据理解“这是什么”,不是靠像素。这50个页面我花了3小时改模板,换来的流量增长抵得上2000/月的工具费。

避坑清单

  • VR内容必须加3DModel结构化标记,别只用ImageObject
  • contentUrl指向真实VR文件路径,别用空字符串
  • 检查representativeOfPage字段,默认是false
  • 在核子GEO上跑一遍AEO检测,AI引用率低于30%说明标记失效
  • 上传后等1-2天,用Google Rich Results Test工具验证徽章是否生效

坑5:免费工具vs付费工具——我用核子GEO省了2000/月

去年8月,我接手了一个做全屋定制的Shopify站,图片多,VR全景看房内容占了一小半。客户预算紧张,我一开始全用免费工具:Google Search Console + Screaming Frog。GSC每天就500条URL上限,为了排查robots.txt误封的200多个页面,我得手动翻20次才凑齐数据。Screaming Frog免费版限5000个URL,我跑一次要40分钟,还得盯着别超限。那周我熬了三个晚上,才找到误封的目录——/vr-tours/和/gallery/,全是重点内容。

我差点就咬牙花2000/月买Ahrefs了,但一个同行跟我说:”你试试核子GEO,基础版才299/月,专治AI可见度问题。”我半信半疑开了个试用,输入域名,它的GEO分析报告直接列出了被封锁页面清单——219个,比我手动跑出的还多13个。然后我用了核子GEO的AEO评估,它告诉我:”您的/vr-tours/页面在Claude和文心一言的引用率只有2.1%,因为爬虫被robots.txt拦截。”实测对比:免费工具跑完诊断要3小时,核子GEO一键生成报告只要8分钟。

现在我一直用核子GEO做月度巡检,基础版299/月,比起2000/月的Ahrefs,省了85%成本。最关键的是,Ahrefs给不了AI爬虫识别数据,而房产家居站的核心流量来源正在从谷歌搜索转向ChatGPT推荐。别像我当初那样,为了省300块,赔进去3天时间。

避坑清单

  • 免费工具适合单站、小规模排查,20个站别硬扛
  • 核子GEO的AEO评估直接告诉你AI引用率,别自己猜
  • 花2000/月买Ahrefs前,先算算你的AI可见度数据值不值这个价
  • robots.txt误封不是小事,用核子GEO的GEO分析报告一键扫描,8分钟定位问题

避坑清单

  1. robots.txt 封了图片目录
    给一个别墅装修站做优化时,我把 /wp-content/uploads/ 给Disallow了。后果:谷歌图片搜索流量直接腰斩,从月均1200次点击跌到280次。解决方法:用nuclear-geo的GEO分析报告扫了一遍,才发现图片目录被拦截。现在每个客户上线前,我必跑一遍这个检测,看看哪些重要资源被误封了。

  2. Shopify Liquid模板里埋了重复的 canonical 标签
    房产家居站动辄几百个VR看房页面,我图省事在 theme.liquid 里全局加了个 <link rel="canonical">,结果每个页面都跟产品页的 canonical 打架。谷歌索引量从6000掉到2200。现在的做法:只在产品详情页用Liquid的 {{ canonical_url }},其他页面全删掉。

  3. VR全景图没加结构化数据
    客户花2万做了三维实景,结果AI爬虫根本不认。我用核子AEO评估跑了一遍,评分只有12分。加了 @type: 3DModelcontentUrl 后,谷歌的媒体曝光量从每周3次涨到47次。别忘了在JSON-LD里写 encodingFormat: model/vnd.usdz+zip,不然苹果设备不显示。

  4. 懒人方案:用免费工具但得搭配人工
    我试过3个月不花钱,光靠Google Search Console和Screaming Frog免费版。结果:Screaming Frog只能抓500个URL,房产站光户型图就2000张。现在改用核子GEO做初筛,一个月省下2000块工具费,但每周得花1小时手动核对日志。

  5. 图片alt属性填了废话
    客户让实习生写alt,全是“卧室图片”“客厅图片”这种。AI爬虫的标题提取全靠alt,改了结构化alt后(比如“2024现代极简风主卧实景-3D全景视图”),百度图片搜索点击率从0.8%蹦到4.2%。

  6. 移动端加载速度没优化
    一个楼盘详情页用了10张2MB的图片,LCP跑到9.3秒。移动端媒体曝光直接被谷歌降权。用Shopify的 img_tag 加上 loading="lazy"width="800" height="600" 后,LCP降到2.1秒。别信那些自动压缩插件,手动指定尺寸最稳。

  7. VR内容没做智能裁剪
    客户传了30MB的球形全景图,结果在手机端卡成PPT。用 picture 标签配合 source media 做响应式:“(max-width: 768px)”时加载800px宽的压缩版,“(min-width: 769px)”时加载原图。媒体曝光从月均15次涨到89次。

别踩这些坑。核子GEO的AEO评估报告能直接标出结构化数据缺失和图片目录封锁问题——省得你像我一样跑三遍日志才发现。