做SEO的人,多数时间花在文字上。关键词、内链、外链、内容质量,这些确实重要。但有一块流量,很多人看不见:图片。
Google Images的流量占Google总搜索量的20%以上。根据SparkToro的数据,Google Images是全球第二大搜索引擎,仅次于Google主搜索。对于做独立站建站服务/">外贸独立站的人来说,产品图片在Google Images里的排名,直接影响询盘量。
一个做工业零件的B2B站点,产品图片优化后,Google Images带来的流量占总自然流量的15%。一个卖家居用品的Shopify店铺,产品图在Image Pack里出现后,对应页面的点击率提升了一倍。这不是什么高深技术,就是把该做的事做到位。
这篇文章,把图片SEO从头到尾讲透。文件命名、alt text、格式选择、压缩、lazy loading、Schema标记、Image Sitemap、CDN配置,每个环节都展开讲,配上外贸独立站的实操案例。不是泛泛而谈的”要优化图片”,而是告诉你具体怎么做、为什么这么做、做错了会怎样。
图片SEO,就是通过优化网站上的图片,让它们在Google Images和常规搜索结果中获得更好的排名和展示。
听起来简单。但很多人对图片SEO的理解,还停留在”写个alt tag”的阶段。实际上,图片SEO涉及的环节远比这多:文件命名、格式选择、尺寸控制、压缩质量、结构化数据、图片站点地图、页面上下文、加载性能,每一个都影响排名。
为什么外贸独立站特别需要重视图片SEO?三个原因:
第一,产品展示高度依赖图片。你卖的是实物,客户看不到摸不着,图片就是他们的第一印象。根据Salsify的调研,85%的消费者在购买服装和家具时,认为图片比文字描述更重要。
第二,Google搜索结果越来越视觉化。Image Pack、Product Carousel、SERP Thumbnails,图片在搜索结果页的占比越来越大。根据Near Media的研究,移动端搜索结果中,图片最多能占到36%的屏幕空间。你的产品图如果出现在Image Pack里,等于多了一个免费的展示位。
第三,Google Lens和视觉搜索正在崛起。用户拍一张照片,Google就能找到类似的产品。如果你的产品图片没有被正确索引和优化,这部分流量就跟你无关。
很多人以为图片SEO就是在Google Images里排名。其实图片在搜索结果中的展示形式远不止这一种:
| 展示形式 | 出现位置 | 对外贸站的价值 |
|---|---|---|
| Image Pack | 常规搜索结果中的图片组 | 高,直接在搜索结果页展示产品图 |
| Google Images | 图片搜索标签页 | 高,大量产品搜索流量来源 |
| SERP Thumbnails | 搜索结果条目旁的小图 | 中,提升点击率 |
| Product Carousel | 购物相关搜索的产品轮播 | 高,直接展示产品和价格 |
| Featured Snippets | 精选摘要中的配图 | 中,增加品牌曝光 |
| Google Lens结果 | 视觉搜索结果 | 高,新兴流量入口 |
| Google Discover | 移动端信息流 | 中,适合内容营销 |
每一种展示形式,都是一个潜在的流量入口。图片SEO做得好,等于同时在多个渠道获得曝光。
先说最简单的事:给图片起个好名字。
这话听起来像废话,但你去看看大多数外贸站的图片文件名,基本是这样的:
IMG_20240315_142356.jpg
DSC00847.jpg
product-1.jpg
未命名-3.png
Google明确说过:文件名能帮助它理解图片内容。Google官方文档原话是:”the filename can give Google clues about the subject matter of the image”。
好的文件名长什么样?
| 差的文件名 | 好的文件名 | 原因 |
|---|---|---|
| IMG_0023.jpg | stainless-steel-ball-valve-dn50.jpg | 描述了产品类型和规格 |
| photo1.png | industrial-hydraulic-pump-cutaway.png | 描述了产品和视角 |
| product-red.jpg | waterproof-hiking-backpack-40l-red.jpg | 包含产品特征和颜色 |
| 1234567.jpg | cnc-machining-center-5-axis.jpg | 描述了设备类型 |
| banner.jpg | wholesale-led-strip-lights-factory.jpg | 包含关键词和场景 |
用英文,用连字符分隔单词。不用下划线,不用空格,不用中文。Google把连字符当作单词分隔符,下划线不是。
文件名要描述图片内容,不要堆砌关键词。stainless-steel-ball-valve-dn50.jpg 是好的,ball-valve-valve-steel-valve-industrial-valve.jpg 是keyword stuffing,Google会当垃圾处理。
保持简洁。3-5个单词足够。太长的文件名没有额外好处,反而显得不自然。
如果你的站点有大量产品图,建议建立一套命名规范。比如:
[产品类型]-[材质/特征]-[规格]-[视角].jpg
举个例子,一个卖工业阀门的B2B站点:
butterfly-valve-cast-iron-dn100-front.jpg
butterfly-valve-cast-iron-dn100-side.jpg
butterfly-valve-cast-iron-dn100-installed.jpg
这样Google能清楚地知道每张图片是什么,用户搜索 “cast iron butterfly valve DN100” 时,你的图片就有机会出现。
Alt text(替代文本)是图片SEO的核心元素之一。它有三个作用:
一,帮助Google理解图片内容。虽然Google的机器学习已经能识别很多图片,但它并不完美。Ahrefs做过一个测试:把一张黄油的照片上传到Google Cloud Vision API,Google有91%的信心认为那是奶酪。所以,alt text仍然是帮助Google准确理解图片的重要信号。
二,提升无障碍访问体验。使用屏幕阅读器的用户,靠alt text来”看”图片。这不只是道德义务,也是法律要求,很多国家对网站无障碍访问有明确规定。
三,图片加载失败时的替代显示。网络不好、图片链接断了,alt text就是用户看到的内容。
Google官方的建议是:alt text要有用、信息丰富、在页面上下文中合理使用关键词,不要堆砌关键词。
Ahrefs提供了一个简单的公式:完成这个句子,”这是一张______的图片”,然后把后半部分作为alt text。
对于外贸独立站的产品图,我建议用这个结构:
[产品名称] + [关键特征] + [使用场景/规格]
| 差的alt text | 好的alt text | 问题/优点 |
|---|---|---|
| valve | DN50 stainless steel ball valve with pneumatic actuator | 太笼统 vs 具体描述 |
| product image | 40L waterproof hiking backpack in forest green | 无信息 vs 包含产品特征 |
| ball valve steel valve industrial valve | Three-way ball valve for chemical processing pipeline | 关键词堆砌 vs 自然描述 |
| CNC 5-axis machining center processing aluminum part | 空alt text vs 完整描述 | |
| 图片1 | Solar panel installation on commercial warehouse roof | 中文无意义 vs 英文描述场景 |
这一点很多人忽略。如果你的产品有型号或SKU,把它加到alt text里。Google能理解产品名称和型号之间的关系。用户搜索型号时,你的图片就有机会出现。
比如:alt="Grundfos CR 15-3 vertical multistage centrifugal pump"
这样,不管用户搜 “Grundfos CR 15-3” 还是 “vertical multistage centrifugal pump”,你的图片都有机会被找到。
手动检查每张图片的alt text不现实,特别是产品图成百上千的外贸站。用工具:
Ahrefs Site Audit 可以扫描整站,找出所有缺失alt text的图片。路径是:Site Audit → 项目 → Resources → Images → Missing alt text。
Screaming Frog 也能做同样的事。爬取整站后,在 Images 标签下筛选 “Missing Alt Text”。
WordPress站点可以用插件批量添加。但自动生成的alt text质量通常不高,建议至少对核心产品页的图片手动优化。
格式选错,要么图片太大拖慢页面,要么画质太差影响体验。这不是小事,根据Google官方文档,图片通常是页面体积最大的组成部分。
先搞清楚每种格式的特点:
| 格式 | 压缩方式 | 透明度 | 动画 | 适用场景 | 文件大小 |
|---|---|---|---|---|---|
| JPEG | 有损 | 不支持 | 不支持 | 产品照片、场景图 | 小 |
| PNG | 无损 | 支持 | 不支持 | Logo、图标、截图、需要透明背景的图 | 大 |
| WebP | 有损/无损 | 支持 | 支持 | 几乎所有场景 | 比JPEG小25-34% |
| AVIF | 有损/无损 | 支持 | 支持 | 高质量照片 | 比WebP更小 |
| SVG | 矢量 | 支持 | 支持 | Logo、图标、图表 | 极小(简单图形) |
| GIF | 无损 | 支持 | 支持 | 简单动画(不推荐) | 大 |
根据Google的数据,WebP有损压缩的文件比同质量的JPEG小25-34%,WebP无损压缩比PNG小26%。这个差距不小。
产品照片:首选WebP,回退JPEG。WebP在保持画质的同时体积更小,几乎所有现代浏览器都支持。用HTML的<picture>元素做兼容:
<picture>
<source type="image/webp" srcset="product-valve-dn50.webp">
<img src="product-valve-dn50.jpg" alt="DN50 stainless steel ball valve">
</picture>Logo和图标:用SVG。矢量格式,放大不失真,文件极小。
需要透明背景的图:WebP或PNG。WebP优先,因为体积更小。
GIF:尽量别用。一个5秒的GIF动画可能有好几MB。如果需要动画效果,用WebP动画或者短视频(MP4)替代。
AVIF是最新的图片格式,压缩效率比WebP还高。Google Search已经支持AVIF格式的索引。但浏览器支持还不够全面,Safari到2023年才开始支持。
如果你的目标市场主要用Chrome(全球市场份额超过60%),可以考虑用AVIF作为首选,WebP作为回退,JPEG作为最终兜底:
<picture>
<source type="image/avif" srcset="product.avif">
<source type="image/webp" srcset="product.webp">
<img src="product.jpg" alt="Industrial hydraulic pump">
</picture>Shopify会自动把上传的图片转成WebP格式提供给支持的浏览器,这一点不用操心。
WordPress站点可以用Imagify或EWWW Image Optimizer插件,自动把图片转成WebP并配置好<picture>标签。
命令行工具方面,Google官方的cwebp可以批量转换:
cwebp -q 80 input.jpg -o output.webp-q 80表示质量80%,对产品图来说足够了。质量设太高,文件大但肉眼看不出区别;设太低,图片模糊影响转化。80是个平衡点。
格式选对了,还得压缩。未压缩的产品照片动辄2-5MB,一个产品页放10张图,就是20-50MB。用户等不了那么久,Google也不喜欢慢页面。
根据Google web.dev的建议,图片优化是提升页面性能最有效的手段之一,因为图片通常占页面总体积的60%以上。
有损压缩:丢弃一部分人眼不易察觉的数据,大幅减小文件体积。JPEG和WebP的有损模式都属于这类。适合产品照片。
无损压缩:不丢弃任何数据,只优化存储方式。PNG和WebP的无损模式属于这类。适合需要精确还原的图片,比如技术图纸、截图。
对外贸独立站来说,产品照片用有损压缩就够了。质量设在75-85%之间,肉眼几乎看不出和原图的区别,但文件体积能减少60-80%。
在线工具:TinyPNG(支持PNG和JPEG)、Squoosh(Google出品,支持所有格式,可以实时对比压缩前后的效果)。
WordPress插件:Imagify、ShortPixel、EWWW Image Optimizer。这三个都能在上传图片时自动压缩,省心。
命令行:ImageMagick可以批量处理:
magick input.jpg -quality 80 -strip output.jpg-strip参数会移除EXIF元数据(拍摄设备、GPS坐标等),进一步减小文件体积。但注意:如果你的图片包含版权信息,移除元数据前要考虑清楚。
产品图不能压得太狠。模糊的产品图直接影响转化率。Google也明确说了:高质量的图片对用户更有吸引力,在搜索结果缩略图中更容易获得点击。
建议的压缩策略:
产品主图(hero image):质量80-85%,保证清晰度。
产品列表缩略图:质量70-80%,反正显示尺寸小,不需要太高质量。
装饰性图片(banner、背景):质量60-75%,不是重点,够用就行。
技术图纸、尺寸图:用PNG无损格式,不压缩,保证每个数字都清晰可读。
图片尺寸(宽高像素)和文件大小是两回事。一张5000×3000像素的产品照片,就算压缩到200KB,浏览器也得先下载完整图片,再缩放到页面显示的尺寸。如果你的产品列表页每张缩略图只显示300×300像素,上传5000像素宽的原图就是浪费带宽。
这个问题在移动端更严重。手机屏幕就那么大,加载一张桌面端尺寸的大图,纯粹是浪费用户的流量和时间。
HTML的srcset属性就是干这个的。它让浏览器根据屏幕尺寸和分辨率,自动选择最合适的图片版本:
<img
srcset="product-300w.jpg 300w, product-600w.jpg 600w, product-1200w.jpg 1200w"
sizes="(max-width: 600px) 300px, (max-width: 1200px) 600px, 1200px"
src="product-1200w.jpg"
alt="Stainless steel butterfly valve DN100">这段代码的意思是:屏幕宽度600px以下,加载300px宽的图片;600-1200px之间,加载600px宽的;1200px以上,加载1200px宽的。浏览器会自动选择,不用JavaScript干预。
Google官方文档明确推荐使用响应式图片,并且要求在使用<picture>或srcset时,始终提供一个src属性作为回退,因为有些浏览器和爬虫不认识这些新属性。
| 图片用途 | 建议宽度 | 说明 |
|---|---|---|
| 产品主图 | 1200-1500px | 支持放大查看细节 |
| 产品列表缩略图 | 300-600px | 列表页不需要大图 |
| Banner/Hero图 | 1920px | 全宽展示 |
| 博客配图 | 800-1200px | 内容区域宽度通常不超过800px |
| Logo | SVG(矢量) | 任意尺寸都清晰 |
Shopify的主题通常会自动生成多种尺寸的图片,并使用srcset。但如果你用的是自定义主题或WordPress,需要自己配置。
WordPress可以在functions.php里注册自定义图片尺寸:
add_image_size('product-thumb', 300, 300, true);
add_image_size('product-main', 1200, 1200, false);上传图片时,WordPress会自动生成这些尺寸的版本。
在<img>标签里写上width和height属性,浏览器在图片加载前就能预留空间,避免页面布局跳动。这直接影响Core Web Vitals中的CLS(Cumulative Layout Shift)指标。
<img src="valve.jpg" alt="Ball valve DN50" width="800" height="600">不写width和height,图片加载时页面会”抖”一下,文字先出来,图片加载后把文字往下推。用户体验差,Google也会扣分。
一个产品列表页可能有几十张图片。如果全部同时加载,页面打开速度会很慢。Lazy loading的意思是:只加载用户当前能看到的图片,滚动到下面时再加载后面的图片。
现在实现lazy loading非常简单,HTML原生就支持:
<img src="product.jpg" alt="Hydraulic pump" loading="lazy">加一个loading="lazy"属性就行了。浏览器会自动处理。
首屏图片不要lazy load。用户打开页面第一眼看到的图片(比如产品主图、hero banner),应该立即加载。对这些图片,要么不加loading属性,要么设为loading="eager"。
为什么?因为lazy loading会延迟图片的加载时机,如果首屏图片也延迟加载,用户会看到一片空白,体验很差。而且首屏图片的加载速度直接影响LCP(Largest Contentful Paint),Core Web Vitals的核心指标之一。
Google的web.dev文档建议:对首屏以下的图片使用lazy loading,首屏图片保持默认加载。
Shopify的Dawn主题(以及大多数现代主题)默认对非首屏图片启用了lazy loading。
WordPress从5.5版本开始,自动给所有<img>标签添加loading="lazy"。但它不够智能,首屏图片也会被加上lazy loading。可以用代码排除首屏图片:
// 移除特定图片的lazy loading
add_filter('wp_img_tag_add_loading_attr', function($value, $image, $context) {
if (strpos($image, 'hero-banner') !== false) {
return false; // 不添加loading属性
}
return $value;
}, 10, 3);普通的XML sitemap列出的是页面URL。Image sitemap额外告诉Google:每个页面上有哪些图片。这对于Google发现和索引你的图片特别有用,尤其是那些通过JavaScript动态加载的图片,Google的爬虫不一定能发现它们。
Google官方文档说得很清楚:你可以通过image sitemap提供Google可能无法发现的图片URL。
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
<url>
<loc>https://example.com/products/ball-valve-dn50</loc>
<image:image>
<image:loc>https://example.com/images/ball-valve-dn50-front.jpg</image:loc>
</image:image>
<image:image>
<image:loc>https://example.com/images/ball-valve-dn50-side.jpg</image:loc>
</image:image>
</url>
</urlset>一个<url>元素里可以包含多个<image:image>,对应该页面上的多张图片。
一个有意思的点:image sitemap可以包含其他域名的图片URL。如果你用CDN托管图片(比如Cloudflare或AWS CloudFront),图片URL的域名和网站域名不同,这时候image sitemap就特别有用。Google建议你在Search Console里验证CDN域名的所有权,这样如果有爬取错误,Google能通知你。
WordPress:Yoast SEO和Rank Math都会自动生成包含图片信息的sitemap。装了插件基本不用操心。
Shopify:自动生成的sitemap已经包含产品图片信息。但如果你有大量通过自定义代码加载的图片,可能需要手动补充。
自建站:用脚本自动生成。遍历所有产品页面,提取图片URL,按格式输出XML。
结构化数据(Schema Markup)是告诉Google”这张图片是什么”的最直接方式。对于外贸独立站,最相关的是Product Schema和ImageObject Schema。
如果你的产品页已经有Product Schema(应该有),确保image属性填写正确:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "DN50 Stainless Steel Ball Valve",
"image": [
"https://example.com/images/ball-valve-dn50-front.jpg",
"https://example.com/images/ball-valve-dn50-side.jpg",
"https://example.com/images/ball-valve-dn50-installed.jpg"
],
"description": "Industrial grade DN50 stainless steel ball valve with pneumatic actuator",
"brand": {
"@type": "Brand",
"name": "YourBrand"
}
}
</script>注意image属性可以是数组,放多张图片。Google建议提供多角度的产品图片。根据Google的Product结构化数据文档,图片应该至少50000像素(比如250×200),格式为JPEG、PNG或GIF。
对于非产品图片(比如博客文章中的信息图、技术图表),可以用ImageObject Schema提供更多信息:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "ImageObject",
"contentUrl": "https://example.com/images/seo-process-infographic.jpg",
"name": "SEO Optimization Process Flowchart",
"description": "Step-by-step flowchart showing the complete SEO optimization process for e-commerce websites",
"width": 1200,
"height": 800,
"author": {
"@type": "Organization",
"name": "YourBrand"
}
}
</script>写完Schema后,用Google Rich Results Test验证。常见错误:图片URL写错、格式不对、缺少必填字段。验证通过不代表一定会在搜索结果中展示富媒体效果,但至少确保Google能正确解析。
Google不只看图片本身,还看图片周围的文字。Google官方文档明确说了:Google会从页面内容中提取图片的主题信息,包括标题(caption)和图片标题(title)。尽可能把图片放在相关文字附近,放在与图片主题相关的页面上。
这意味着什么?
第一,图片要放在相关内容旁边。一张球阀的产品图,应该出现在描述球阀的段落旁边,而不是随便塞在页面某个角落。
第二,给图片加caption(说明文字)。Caption是图片下方的文字说明,用户会看,Google也会看。根据Nielsen Norman Group的研究,用户阅读网页时,图片说明文字的阅读率比正文高300%。
在HTML中,用<figure>和<figcaption>标签来实现:
<figure>
<img src="valve-installation.jpg"
alt="Ball valve installed in chemical processing pipeline">
<figcaption>DN50 ball valve installed in a chemical processing plant.
Note the pneumatic actuator mounted on top for remote control.</figcaption>
</figure>这比单独一个<img>标签好得多。Google能从figcaption中获取额外的上下文信息,用户也能更好地理解图片内容。
很多外贸站的产品页,图片和文字是分开的,上面一排图片轮播,下面一大段产品描述。这种布局对用户来说还行,但对Google来说,图片和描述文字之间的关联性不够强。
更好的做法:在产品描述中穿插图片。比如讲到产品的某个特性时,旁边放一张展示这个特性的图片。这样Google能更准确地理解每张图片对应的内容。
举个例子,一个卖工业泵的B2B站点:
差的做法:页面顶部放5张产品图的轮播,下面是一大段纯文字描述。
好的做法:
每张图片都有明确的上下文,Google能更好地理解和索引。
CDN(Content Delivery Network)把你的图片分发到全球各地的服务器节点,用户从最近的节点加载图片,速度更快。对于做全球市场的外贸站,CDN几乎是必须的。
Cloudflare:免费版就够用,自动缓存图片,全球200+节点。配置简单,改一下DNS就行。还自带图片优化功能(Polish),可以自动压缩和转WebP。
AWS CloudFront:适合大型站点,按流量计费,配置灵活。可以配合S3存储桶使用。
Shopify自带CDN,不用额外配置。图片上传后自动分发到全球节点。
用CDN后,图片的URL域名可能和网站域名不同。比如网站是example.com,图片URL变成cdn.example.com或d1234.cloudfront.net。
这对SEO有影响吗?一般没有。Google能理解CDN的概念。但有几点要注意:
一,确保CDN域名允许Google爬虫访问。有些CDN配置了访问限制,可能会阻止Googlebot。在robots.txt里不要禁止CDN域名。
二,如果用了自定义CDN域名(比如cdn.example.com),在Google Search Console里验证这个域名。这样Google发现爬取问题时能通知你。
三,image sitemap里可以包含CDN域名的图片URL,这是Google官方允许的。
四,避免频繁更换CDN导致图片URL变化。URL变了,之前积累的图片排名就没了。如果必须换CDN,做好301重定向。
Google Lens让用户用摄像头搜索。拍一张产品照片,Google就能找到类似的产品和购买链接。这对电商和外贸站来说,是一个正在快速增长的流量来源。
根据Google在Search On 2022的分享,Google Lens每月被使用超过120亿次。这个数字还在增长。
Google Lens的结果主要来自Google Images的索引。所以前面讲的所有图片SEO技巧,文件命名、alt text、结构化数据、页面上下文,都对Google Lens有效。
但有几个额外的要点:
第一,产品图要清晰、背景干净。Google Lens需要识别图片中的物体,背景太杂会干扰识别。白底产品图是最好的选择。
第二,多角度拍摄。用户可能从任何角度拍照搜索你的产品。正面、侧面、45度角、细节特写,角度越多,被匹配到的概率越大。
第三,Product Schema必须完整。Google Lens的购物结果会直接展示产品名称、价格、库存状态。这些信息来自结构化数据。Schema不完整,就算图片被识别了,展示效果也会打折扣。
第四,Google Merchant Center。如果你的产品在Google Merchant Center有feed,Google Lens的购物结果会优先展示这些产品。对于做跨境电商的站点,这是一个值得投入的渠道。
Google在持续加大对视觉搜索的投入。Multisearch(多模态搜索)让用户可以同时用图片和文字搜索,比如拍一张裙子的照片,然后输入”green color”,Google就会找到同款绿色的裙子。
这意味着产品图片的SEO价值只会越来越高。现在投入时间优化图片,未来的回报会越来越大。
WordPress是外贸独立站最常用的建站工具之一。图片SEO在WordPress上的实操,有些地方需要特别注意。
在上传图片到WordPress之前,先在本地完成这些工作:
一,重命名文件。WordPress不会自动改文件名,你上传什么名字就是什么名字。IMG_0023.jpg上传后URL就是/wp-content/uploads/2026/02/IMG_0023.jpg,改都改不了(除非删了重传)。
二,调整尺寸。不要上传5000像素宽的原图。WordPress虽然会自动生成缩略图,但原图还是会占用服务器空间,而且有些主题会直接调用原图。
三,压缩。上传前用TinyPNG或Squoosh压缩一遍。虽然有插件可以自动压缩,但上传前手动压缩一次更保险。
| 插件 | 功能 | 免费版限制 | 推荐场景 |
|---|---|---|---|
| Imagify | 压缩、WebP转换、批量优化 | 每月20MB | 中小型站点 |
| ShortPixel | 压缩、WebP/AVIF转换、CDN | 每月100张 | 产品图多的站点 |
| EWWW Image Optimizer | 压缩、WebP转换、lazy loading | 基础压缩免费 | 预算有限的站点 |
| Rank Math | 自动alt text、image sitemap、Schema | 大部分功能免费 | SEO全家桶 |
问题一:媒体库里的图片没有alt text。WordPress上传图片时不强制填写alt text,很多人就跳过了。解决方案:用Rank Math的”Image SEO”功能,可以根据文件名自动生成alt text(当然,手动写的更好)。
问题二:图片URL包含中文或乱码。如果文件名有中文,WordPress会把它编码成一串乱码URL。解决方案:上传前把文件名改成英文。
问题三:删除文章后图片还在。WordPress删除文章不会自动删除关联的图片,时间长了媒体库里堆满了没用的图片。解决方案:定期清理,或用Media Cleaner插件。
问题四:主题不支持WebP。有些老主题不能正确显示WebP格式。解决方案:用EWWW Image Optimizer的WebP功能,它会自动检测浏览器支持情况,不支持WebP的浏览器回退到JPEG。
Shopify在图片处理方面做了很多自动化的工作,但也有一些需要手动优化的地方。
自动CDN分发:所有图片通过Shopify的CDN(基于Fastly)全球分发。
自动WebP转换:对支持WebP的浏览器自动提供WebP格式。
自动生成多尺寸:上传一张图,Shopify会自动生成多种尺寸的版本。
自动lazy loading:Dawn主题默认对非首屏图片启用lazy loading。
Alt text:Shopify后台上传产品图时,点击图片可以编辑alt text。很多人不知道这个功能在哪里,在产品编辑页面,点击图片,右侧会出现”Alt text”输入框。
文件命名:上传前改好文件名。Shopify不会改你的文件名,但会在URL中使用它。
图片压缩:Shopify不会自动压缩上传的图片。上传前用TinyPNG压缩。或者用Shopify App Store里的图片优化应用,比如Crush.pics或TinyIMG。
如果你在自定义Shopify主题,Liquid模板中有一些有用的图片处理filter:
{{ product.featured_image | image_url: width: 800 | image_tag:
alt: product.title,
loading: 'lazy',
widths: '300, 600, 800, 1200' }}这段代码会自动生成带srcset的响应式图片标签,包含alt text和lazy loading。比手写HTML方便得多。
注意widths参数:指定你需要的图片宽度版本,Shopify会自动生成。不要指定太多宽度,4-5个就够了。
前面讲的是基础操作。这一节讲一些技术细节,很多人不知道或者容易忽略。
Google只索引HTML中<img>标签引用的图片。用CSS的background-image加载的图片,Google看不到。
Google官方文档明确说了:Google能在<img>元素的src属性中找到图片,不索引CSS图片。
这意味着什么?如果你的产品图是通过CSS背景图片显示的(有些主题会这么做),Google根本不知道这些图片的存在。检查方法:右键点击图片,如果没有”在新标签页中打开图片”的选项,很可能是CSS背景图片。
解决方案:确保所有重要的图片(产品图、内容配图)都用<img>标签。装饰性的背景图用CSS没问题,反正你也不需要它们被索引。
如果图片是通过JavaScript动态加载的(比如无限滚动的产品列表),Google的爬虫可能无法发现这些图片。虽然Googlebot能执行JavaScript,但不是所有情况都能正确渲染。
解决方案:
<img>标签图片URL变了,之前在Google Images里的排名就没了。这和页面URL变了会丢排名是一个道理。
常见的导致图片URL变化的情况:
如果必须更换图片URL,做301重定向。在Nginx中:
location /old-images/ {
rewrite ^/old-images/(.*)$ /new-images/$1 permanent;
}有些站点的robots.txt会阻止爬虫访问/wp-content/uploads/目录,这等于告诉Google”别看我的图片”。检查一下你的robots.txt,确保没有这样的规则:
# 错误!不要这样做
Disallow: /wp-content/uploads/
# 正确:允许爬虫访问图片目录
Allow: /wp-content/uploads/JPEG图片通常包含EXIF元数据:拍摄设备、光圈、快门速度、GPS坐标等。这些数据会增加文件体积(通常几KB到几十KB)。
对于产品图,建议移除EXIF数据:
但如果你是摄影师或者图片有版权信息,保留EXIF中的版权字段可能有意义。
知道了该怎么做,还得知道现在的状况。做一次图片SEO审计,找出问题,逐个修复。
| 检查项 | 工具 | 合格标准 |
|---|---|---|
| 缺失alt text的图片 | Ahrefs Site Audit / Screaming Frog | 所有产品图和内容图都有alt text |
| 图片文件大小 | PageSpeed Insights / Lighthouse | 单张图片不超过200KB(产品主图可放宽到500KB) |
| 图片格式 | 手动检查 / Screaming Frog | 优先使用WebP,回退JPEG/PNG |
| 图片尺寸 | Chrome DevTools | 显示尺寸和实际尺寸匹配 |
| Lazy loading | Chrome DevTools / Lighthouse | 非首屏图片有loading=”lazy” |
| CLS(布局偏移) | PageSpeed Insights | CLS < 0.1 |
| LCP(最大内容绘制) | PageSpeed Insights | LCP < 2.5秒 |
| Image sitemap | Google Search Console | 已提交且无错误 |
| 结构化数据 | Rich Results Test | Product Schema包含image属性 |
| robots.txt | 手动检查 | 不阻止图片目录 |
| CSS背景图片 | 手动检查 | 重要图片不用CSS加载 |
| 文件命名 | 手动检查 | 描述性英文文件名,连字符分隔 |
Screaming Frog是做图片SEO审计最好用的工具之一。免费版可以爬取500个URL,对中小型站点够用了。
操作步骤:
一,输入网站URL,开始爬取。
二,爬取完成后,切换到”Images”标签。
三,筛选”Missing Alt Text”,找出所有没有alt text的图片。
四,筛选”Over 100KB”,找出所有体积过大的图片。
五,导出列表,按优先级修复。
优先修复产品页的图片问题,因为这些页面直接影响转化。博客配图的优先级可以低一些。
PageSpeed Insights会告诉你哪些图片需要优化。常见的建议包括:
每个建议都会告诉你能节省多少KB,优先处理节省量大的。
这个话题很多SEO文章不讲,但对外贸站来说非常重要。
用了别人的图片,轻则收到DMCA投诉,Google把你的页面从搜索结果中移除;重则被起诉赔钱。国外对版权的执法力度比国内大得多,特别是美国和欧洲市场。
最好的选择:自己拍。产品图自己拍,场景图自己拍,工厂图自己拍。原创图片不仅没有版权风险,而且Google更喜欢原创内容,包括原创图片。
如果必须用素材图,用正规的图库:
绝对不要做的事:
Google能识别重复图片。如果你用的图片在几百个网站上都出现过(比如供应商提供的通用产品图),Google不太可能在Image Pack里展示你的版本,它会选择最早使用或最权威的那个来源。
自己拍的产品图,是独一无二的。Google在索引时会发现这是一张新图片,给予更多的展示机会。
如果你暂时没条件自己拍所有产品图,至少对核心产品(利润最高、搜索量最大的)投入拍摄。其他产品可以先用供应商图片,但要逐步替换成原创图片。
Core Web Vitals是Google的页面体验指标,直接影响排名。三个核心指标中,有两个和图片密切相关。
LCP衡量的是页面最大内容元素的加载时间。在大多数页面上,最大的内容元素就是图片,产品主图、hero banner、文章配图。
Google的标准:LCP应该在2.5秒以内。
图片导致LCP慢的常见原因:
优化LCP的图片策略:
<link rel="preload">预加载首屏大图:<link rel="preload" as="image" href="hero-banner.webp" type="image/webp">这告诉浏览器:这张图片很重要,尽早开始下载。
CLS衡量页面布局的稳定性。图片加载导致的布局偏移是CLS的主要来源之一。
Google的标准:CLS应该低于0.1。
解决方案前面讲过了:给<img>标签加width和height属性,或者用CSS的aspect-ratio属性预留空间。
img {
aspect-ratio: 4/3;
width: 100%;
height: auto;
}这样浏览器在图片加载前就知道要预留多大的空间,不会出现布局跳动。
INP衡量页面的交互响应速度。图片本身对INP的影响不大,但如果图片加载占用了太多主线程资源(比如大量图片同时解码),可能会影响页面的交互响应。
解决方案:用lazy loading减少同时加载的图片数量,用decoding="async"属性让图片解码不阻塞主线程:
<img src="product.jpg" alt="Ball valve" decoding="async" loading="lazy">把前面讲的所有内容浓缩成一个可执行的清单。每次上传图片前,对照检查:
| # | 检查项 | 标准 | 优先级 |
|---|---|---|---|
| 1 | 文件名 | 描述性英文,连字符分隔,3-5个单词 | 高 |
| 2 | Alt text | 准确描述图片内容,包含关键词但不堆砌 | 高 |
| 3 | 格式 | 产品照片用WebP/JPEG,Logo用SVG | 高 |
| 4 | 文件大小 | 产品图<500KB,缩略图<100KB | 高 |
| 5 | 尺寸 | 匹配显示尺寸,不上传过大的原图 | 中 |
| 6 | width/height属性 | img标签包含宽高属性 | 中 |
| 7 | Lazy loading | 非首屏图片加loading=”lazy” | 中 |
| 8 | 响应式 | 使用srcset提供多尺寸版本 | 中 |
| 9 | 上下文 | 图片放在相关文字旁边 | 中 |
| 10 | Caption | 重要图片加figcaption说明 | 低 |
| 11 | Schema | 产品图包含在Product Schema中 | 中 |
| 12 | 原创性 | 优先使用原创图片 | 高 |
不需要每张图片都做到满分。核心产品页的图片,12项全部做到;博客配图,做到前6项就够了。把精力花在最有价值的地方。
可以,而且应该包含。但要自然,不要堆砌。stainless-steel-ball-valve.jpg是好的,ball-valve-valve-steel-valve-buy-cheap-valve.jpg是keyword stuffing。Google对图片文件名的keyword stuffing和对页面内容的keyword stuffing一样反感。
没有固定数字。产品页放5-15张图片很正常(不同角度、细节、使用场景)。关键是每张图片都有存在的意义,不要为了凑数量放无关的图片。图片越多,页面加载越慢,所以要在内容丰富度和加载速度之间找平衡。
可以相似,但不建议完全一样。文件名受格式限制(不能有空格,用连字符),alt text是自然语言,可以更详细。比如文件名是hydraulic-pump-cutaway.jpg,alt text可以是Industrial hydraulic pump cutaway view showing internal gear mechanism。
不会。Google支持WebP格式的索引,和JPEG、PNG一视同仁。用WebP反而可能有间接好处,页面加载更快,用户体验更好,这些都是排名因素。
能。Googlebot能理解loading="lazy"属性,会正常索引这些图片。但如果你用的是自定义的JavaScript lazy loading方案(比如把图片URL放在data-src属性里),Googlebot可能无法正确处理。建议用原生的loading="lazy",最稳妥。
两种都要。白底图用于产品列表页和Google Shopping,干净清晰,方便Google识别产品。场景图用于产品详情页和内容营销,展示产品的使用场景,提升转化率。Google Merchant Center要求主图必须是白底或浅色背景。
正常使用不会。Google能理解CDN的概念。但要确保CDN域名没有被robots.txt阻止,图片URL稳定不变。如果用自定义CDN域名,在Search Console里验证。
Google Search Console的”效果”报告中,切换到”搜索类型:图片”,可以看到你的图片在Google Images中的展示次数、点击次数和平均排名。这是最准确的数据来源。
也可以用Ahrefs或SEMrush追踪图片搜索的排名,但这些工具的数据可能不如Search Console准确。
如果你觉得这篇文章有用,这几篇也值得一看: