没有不值得去解决的问题,也没有不值得去学习的技术!

重新启用 Yoast SEO 后,我如何用全局设置低维护优化 WordPress 博客 SEO

[图2:文章类型中元描述设置为“摘录”]

作者:

,

博客搜索引擎优化日志

收到 Google Search Console 的邮件:新原因导致网站 http://www.shuijingwanwq.com/ 上的网页无法被编入索引。如图1

(1) Google网页无法编入索引?我这样解决了

验证通过后,在左侧菜单找到「站点地图」,输入 `/wp-sitemap.xml`,点击提交即可(如图1)

(2) 五大搜索引擎站点地图提交全记录:从Google到搜狗,我的实操经验分享

sitemap采用邀请制,当您的网站存在原创或不可替代内容或不能被搜狗spider正确抓取时,才会开通sitemap权限。

(3) 搜狗Sitemap权限申请记录:从审核通过到提交申请的全流程

所有主体、验证、备案配置全部完成后,进入核心的收录配置环节:【资源提交 - 普通收录 - 资源提交 - sitemap】,发现页面额度显示异常(如图3)

(4) 百度搜索资源平台新站完整收录实操记录(个人主体/自适应站/新站考察期问题解决)

美国流量占 20%,日本 10%,香港 16%,台湾 9%

(5) 技术博客英文站索引与低价值标签处理

中文站点地图:`https://www.你的域名.com/wp-sitemap-posts-post-1.xml` → 显示“致命错误”如图2

(6) 修复 WordPress 致命错误:从站点地图报错到恢复正常

Bing 明确指出了 4.2K 个页面存在“内容质量”问题

(7) 博客 SEO 诊断记录:近 15000 页面未被索引的成因与优化清单

点击表头的“总数”进行排序,数量为 0 的标签会集中在前几页。

(8) 彻底清理 WordPress 空标签:消除软 404,拯救抓取预算

/tag/bsc/ 网页源代码中成功出现 noindex 标签

(9) 博客 SEO 诊断记录:薄内容标签页 noindex 方案实战与多语言测试验证

“0秒访问”主要来自标签页

(10) WordPress Tag SEO优化实战:用WPCode实现“低内容标签页 noindex”完整踩坑与修复记录

图1:Bing整体流量趋势(下降起点)

(11) WordPress主题切换导致Bing流量下降实录(进行中):一次站点结构变更的SEO复盘

【图5:旧文章打开时出现 WordPress 致命错误】

(12) 重新安装 Yoast SEO 后旧文章打不开:一次 WPCode Snippet 重复声明函数导致的 WordPress 致命错误排查记录

[图2:文章类型中元描述设置为“摘录”]

(13) 重新启用 Yoast SEO 后,我如何用全局设置低维护优化 WordPress 博客 SEO

前几天,我重新安装并启用了之前卸载过的 Yoast SEO 免费版。

之所以之前会把它卸载掉,我现在回头看,大概率不是因为插件本身不好,而是因为它在写文章时会提示很多 SEO 字段、分析结果和优化建议。对我这种长期写技术实践记录的人来说,如果每篇文章都要额外填写 SEO 标题、Meta Description、焦点关键词,再去追求绿灯,写作负担会明显增加。

我的博客文章数量比较多,历史文章基本只设置了标题、分类、标签。最近新写的文章,一般会额外填写文章摘要。基于这个实际情况,我这次重新启用 Yoast SEO 时,没有打算把它用成“每篇文章都要手动优化”的工具,而是希望通过一些全局设置,让它自动生成基础 SEO 信息。

这篇文章记录一下这次 Yoast SEO 全局设置的整理过程。

[图1:Yoast SEO 设置首页截图]
[图1:Yoast SEO 设置首页截图]

一、我的目标:低维护,而不是精细化 SEO

这次设置 Yoast SEO 时,我给自己定了一个很明确的原则:

尽量不增加日常写文章的负担。

也就是说,我不打算每篇文章都去单独填写 Yoast 的 SEO 标题、Meta Description 和焦点关键词。对我的博客来说,更现实的方式是:

文章继续正常写标题、摘要、分类、标签;

Yoast 负责根据全局模板自动生成标题、描述、canonical、Open Graph、Schema 和 sitemap;

只有少数重点页面,才手动单独优化。

这样做的好处是比较明显的:既能让站点有基本的 SEO 输出,又不会把写博客变成一件很累的事情。

二、文章类型:使用文章摘要作为 Meta Description

首先处理的是文章类型。

路径是:

Yoast SEO → 设置 → 内容类型 → 文章

我将文章的“元描述”设置为:

%%excerpt%%

在 Yoast 的界面中,这个变量会显示为中文的“摘录”。

[图2:文章类型中元描述设置为“摘录”]
[图2:文章类型中元描述设置为“摘录”]

设置前,我用 curl 测试了一篇新文章:

Bash
curl -sL "https://www.shuijingwanwq.com/2026/07/08/19108/?_nocache=$(date +%s)" | tr '<' '\n' | grep -Ei '^(title>|meta name="description"|meta property="og:description"|meta name="twitter:description")'

当时只看到 og:descriptiontitle,没有标准的:

HTML
<meta name="description">

设置 %%excerpt%% 并保存后,再次测试,页面已经正常输出:

HTML
<meta name="description" content="这篇文章记录了我在 WordPress 中重新安装并启用 Yoast SEO 免费版时遇到的一次旧文章打不开问题……" />

这说明以后只要我在 WordPress 文章里填写“摘要”,Yoast 就可以自动把摘要作为 Meta Description 输出,不需要再单独填写 Yoast 的元描述字段。

对于没有填写摘要的历史文章,Yoast 也会自动从正文开头截取一段内容作为描述。这样就避免了批量给历史文章补摘要的工作量。

三、页面类型:同样使用摘要作为 Meta Description

之后我又测试了一个比较重要的页面:

测试时发现,这个页面有 og:description,但是没有标准的 meta name="description"

所以我在:

Yoast SEO → 设置 → 内容类型 → 页面

也把“元描述”设置为:

%%excerpt%%

保存后再次测试,页面正常输出了:

HTML
<meta name="description" content="我目前可以提供 WordPress 性能优化、CDN 缓存排障、PHP/Laravel/Yii 老项目维护、MySQL/Redis/Nginx 问题分析,以及远程技术支持服务……" />

对应的英文页面也测试了一次:

英文页面输出的是英文摘要:

HTML
<meta name="description" content="I help WordPress site owners, SaaS founders, affiliate site operators, and small technical teams fix slow websites, broken caching, CDN configuration..." />

这说明页面类型使用 %%excerpt%% 也是合适的,不会把中文摘要污染到英文页面。

四、首页:单独填写全局描述

首页和文章、页面不同。首页更像整个博客的入口,所以我单独填写了一段首页元描述。

路径是:

Yoast SEO → 设置 → 内容类型 → 首页

最终填写的是:

Plaintext
永夜是一个记录 Web 开发、WordPress、PHP、Yii、Laravel、Go、Gin、MySQL、Nginx、Docker、Redis、Cloudflare、服务器运维与技术排查实践的个人博客。

这段描述不是凭空写的,而是参考了我博客的标签云。我的标签云中比较高频的主题包括:

WordPress、PHP、Yii、Yii 2、Laravel、MySQL、Nginx、Docker、Redis、Go、Cloudflare、Polylang、VPN、WireGuard、Linux、Ubuntu、Windows 10 等。

[图3:博客标签云截图]
[图3:博客标签云截图]

设置后,中文首页正常输出:

HTML
<meta name="description" content="永夜是一个记录 Web 开发、WordPress、PHP、Yii、Laravel、Go、Gin、MySQL、Nginx、Docker、Redis、Cloudflare、服务器运维与技术排查实践的个人博客。" />

英文首页一开始也输出了中文描述。后来通过字符串翻译,将英文首页描述翻译为:

Plaintext
Yongye is a personal blog documenting Web development, WordPress, PHP, Yii, Laravel, Go, Gin, MySQL, Nginx, Docker, Redis, Cloudflare, server operations, and practical troubleshooting.

再次测试英文首页后,meta descriptionog:description 都变成了英文。

五、分类、标签和系列:统一标题与描述模板

接下来处理的是分类、标签和系列页面。

我的博客中,分类比标签更稳定,系列页也有一定主题聚合价值。所以这些页面不适合简单全部关闭索引。

分类目录的 SEO 标题设置为:

Plaintext
%%term_title%% 分类归档 %%page%% %%sep%% %%sitename%%

分类目录的元描述设置为:

Plaintext
%%term_title%% 分类归档。这里整理永夜博客中与 %%term_title%% 相关的技术实践、问题排查、配置记录与经验总结。

测试分类页:

https://www.shuijingwanwq.com/category/web

输出结果为:

HTML
<title>Web前端 分类归档 - 永夜</title>
<meta name="description" content="Web前端 分类归档。这里整理永夜博客中与 Web前端 相关的技术实践、问题排查、配置记录与经验总结。" />

标签的 SEO 标题设置为:

Plaintext
%%term_title%% 标签归档 %%page%% %%sep%% %%sitename%%

标签的元描述设置为:

Plaintext
%%term_title%% 标签归档。这里整理永夜博客中与 %%term_title%% 相关的技术实践、问题排查、配置记录与经验总结。

测试标签页:

https://www.shuijingwanwq.com/tag/__invoke

输出结果为:

HTML
<title>__invoke 标签归档 - 永夜</title>
<meta name="description" content="__invoke 标签归档。这里整理永夜博客中与 __invoke 相关的技术实践、问题排查、配置记录与经验总结。" />

系列的 SEO 标题设置为:

Plaintext
%%term_title%% 系列归档 %%page%% %%sep%% %%sitename%%

系列的元描述设置为:

Plaintext
%%term_title%% 系列归档。这里整理永夜博客中与 %%term_title%% 相关的系列文章、技术实践、问题排查与经验总结。

测试系列页:

https://www.shuijingwanwq.com/series/self-hosted-vpn

输出结果为:

HTML
<title>自建 VPN 系列归档 - 永夜</title>
<meta name="description" content="自建 VPN 系列归档。这里整理永夜博客中与 自建 VPN 相关的系列文章、技术实践、问题排查与经验总结。" />

中间有一个小细节:Yoast 变量块和中文之间有时会自动带出空格,比如 “Web前端 分类归档”。这个不是特别理想,但整体可读性还能接受,不值得为了这个反复折腾。

六、标签页 noindex:继续保留原有 WPCode 规则

我之前已经通过 WPCode 做过一个规则:

文章数量小于 3 的标签页,自动添加 noindex。

因此这次没有在 Yoast 中全局关闭标签页索引,而是继续让 Yoast 的标签页保持开启,再交给 WPCode 判断哪些低数量标签需要 noindex。

测试文章数量小于 3 的标签页:

https://www.shuijingwanwq.com/tag/__construct

输出中包含:

HTML
<meta name="robots" content="noindex, follow">

测试文章数量等于 3 的标签页:

https://www.shuijingwanwq.com/tag/__invoke

没有输出 noindex。

这说明当前规则是符合预期的:

文章数量小于 3 的标签页:noindex;

文章数量大于等于 3 的标签页:允许索引。

后面我又发现一个问题:低数量标签页虽然已经 noindex,但仍然出现在 Yoast 的标签 sitemap 中。这个不是今天的重点,后续有时间再考虑通过代码把这些 noindex 标签从 sitemap 中排除。

七、中英文站点:通过字符串翻译处理 Yoast 模板

我的网站使用了英文路径 /en/,所以设置 Yoast 模板时必须注意一个问题:

中文模板是否会影响英文页面?

例如分类页最开始设置了中文描述模板后,我测试真实英文分类页:

https://www.shuijingwanwq.com/en/category/web-en

发现英文分类页也需要正确输出英文标题和英文描述。

因此,我在“语言 → 字符串翻译”中,把与 Yoast 相关的中文字符串统一翻译成英文。

部分翻译示例如下:

Plaintext
%%term_title%% 标签归档 %%page%% %%sep%% %%sitename%%
%%term_title%% Tag Archives %%page%% %%sep%% %%sitename%%

%%term_title%% 分类归档 %%page%% %%sep%% %%sitename%%
%%term_title%% Category Archives %%page%% %%sep%% %%sitename%%

%%term_title%% 系列归档 %%page%% %%sep%% %%sitename%%
%%term_title%% Series Archives %%page%% %%sep%% %%sitename%%

没有不值得去解决的问题,也没有不值得去学习的技术!
There is no problem not worth solving, and no technology not worth learning!

永夜
Yongye
[图4:语言字符串翻译中处理 Yoast SEO 字符串]
[图4:语言字符串翻译中处理 Yoast SEO 字符串]

处理后,英文分类页输出为:

HTML
<title>Web Front End Category Archives - Yongye</title>
<meta name="description" content="Web Front End category archive. This page collects technical practices, troubleshooting notes, configuration records, and experience summaries related to Web Front End on the Yongye blog." />

英文标签页输出为:

HTML
<title>__construct Tag Archives - Yongye</title>
<meta name="description" content="__construct tag archive. This page collects technical practices, troubleshooting notes, configuration records, and experience summaries related to __construct on the Yongye blog." />

英文系列页也能正常输出:

HTML
<title>Yii2 Advanced in Action Series: RESTful API + RPC Services + Internationalization + Logging & Testing Series Archives - Yongye</title>

这个标题里出现了 “Series … Series Archives” 的重复,但根源在于系列名称本身已经包含 Series。大多数系列名称并不会这样,所以我没有为了这个个别情况修改全局模板。

八、作者归档、日期归档和格式归档

作者归档页面,我保持关闭。

因为我的博客是个人博客,作者归档页很容易和首页或文章列表形成重复内容。Yoast 这里关闭作者归档是合适的。

日期归档比较特殊。

Yoast 推荐关闭日期归档,但我在 Google Search Console 中发现,很多日期归档页已经有展示和少量点击。

[图5:Google Search Console 中日期归档页有展示和点击]
[图5:Google Search Console 中日期归档页有展示和点击]

例如最近三个月里,一些日期归档页有 1~2 次点击,几十次展示。虽然流量不大,但直接关闭会让这些 URL 发生重定向,短期内不一定稳。

所以我没有关闭日期归档,而是保持:

日期归档开启;

搜索结果中不显示日期归档,也就是 noindex。

测试日期归档页:

https://www.shuijingwanwq.com/2026/06/14

输出中包含:

HTML
<meta name='robots' content='noindex, follow' />

英文日期归档页也同样输出 noindex:

HTML
<meta name='robots' content='noindex, follow' />

所以日期归档暂时保持当前状态。

格式归档则直接关闭。

路径是:

Yoast SEO → 设置 → 高级 → Format archives

我把 format-based archives 关闭了。文章格式归档对我的技术博客基本没有价值,关闭更干净。

九、媒体页面、Schema、RSS、面包屑和 Crawl optimization

媒体页面保持关闭。

Yoast 中的媒体页面设置已经是关闭状态,也就是附件页面会重定向到媒体文件本身。这对我这种截图很多的技术博客很重要,否则大量图片附件页会变成低价值页面。

Schema Framework 保持开启。

Yoast 会自动输出结构化数据,例如 WebSite、CollectionPage、BreadcrumbList、Person / Organization 等。对普通技术博客来说,不需要额外折腾太多 Schema 设置,保持默认开启即可。

RSS 页面保持默认。

Yoast 会在 RSS 文章末尾追加类似:

Plaintext
%%POSTLINK%%最先出现在%%BLOGLINK%%。

这类内容主要用于标识原始来源。我已经通过字符串翻译处理了英文版本,所以这里没有继续修改。

面包屑导航保持当前设置。

虽然前台主题里未必直接展示 Yoast 面包屑,但 Yoast 的 Schema 中已经输出了 BreadcrumbList,所以这里暂时不额外折腾。

Crawl optimization 全部保持关闭。

这个页面可以清理 REST API 链接、短链接、oEmbed、Feed、HTTP 头等内容,但这些设置影响范围比较底层。我的网站当前运行已经比较稳定,没有必要为了“看起来更干净”去动这些输出。

[图6:Crawl optimization 页面保持关闭]
[图6:Crawl optimization 页面保持关闭]

十、Site features 中关闭两个后台干扰项

在 Site features 页面中,我保留了核心功能:

XML 站点地图;

Schema Framework;

Open Graph;

X card data;

SEO 分析;

可读性分析;

文本链接计数器。

但我关闭了两个对前台 SEO 没有影响、主要影响后台体验的功能:

Task list;

管理员菜单栏。

Task list 主要是 Yoast 给出的 SEO 待办提醒,我不希望它影响我平时写文章的节奏。

管理员菜单栏则是后台顶部的 Yoast 快捷入口和提示。关闭后后台更清爽,不影响前台 SEO 输出。

十一、站点基础信息

在 Site basics 中,我保留:

站点名称:永夜;

标语:没有不值得去解决的问题,也没有不值得去学习的技术!;

标题分隔符:-。

同时,在“备用网站名称”中填写:

Plaintext
Yongye

这样 Yoast 可以把 Yongye 作为“永夜”的备用英文/拼音名称,对中英文站点都更稳一点。

十二、XML 站点地图

Yoast SEO 接管了 WordPress 默认 sitemap。

我访问:

Plaintext
https://www.shuijingwanwq.com/wp-sitemap.xml

发现它会自动跳转到:

Plaintext
https://www.shuijingwanwq.com/sitemap_index.xml

这说明 Yoast 的 sitemap 已经正常工作。

后续可以在 Google Search Console 中重新提交:

Plaintext
sitemap_index.xml

不过这属于站外收尾,不是今天 Yoast 设置本身的重点,所以暂时没有继续处理。

十三、最终测试结果

这次设置完成后,我分别测试了中文文章、英文文章、中文页面、英文页面、首页、英文首页、分类页、英文分类页、标签页、英文标签页、系列页、英文系列页、搜索页、404 页、日期归档页。

整体结果符合预期。

中文文章输出:

HTML
<meta name="description" content="这篇文章记录了我在 WordPress 中重新安装并启用 Yoast SEO 免费版时遇到的一次旧文章打不开问题……" />
<link rel="canonical" href="https://www.shuijingwanwq.com/2026/07/08/19108/" />
<title>重新安装 Yoast SEO 后旧文章打不开:一次 WPCode Snippet 重复声明函数导致的 WordPress 致命错误排查记录 - 永夜</title>

英文文章输出:

HTML
<meta name="description" content="This article documents a WordPress troubleshooting case that happened after reinstalling and enabling Yoast SEO Free..." />
<link rel="canonical" href="https://www.shuijingwanwq.com/en/2026/07/08/19127/" />
<title>Reinstalling Yoast SEO Broke an Old Post: Debugging a WordPress Fatal Error Caused by a Duplicate WPCode Snippet Function - Yongye</title>

中文首页输出:

HTML
<meta name="description" content="永夜是一个记录 Web 开发、WordPress、PHP、Yii、Laravel、Go、Gin、MySQL、Nginx、Docker、Redis、Cloudflare、服务器运维与技术排查实践的个人博客。" />

英文首页输出:

HTML
<meta name="description" content="Yongye is a personal blog documenting Web development, WordPress, PHP, Yii, Laravel, Go, Gin, MySQL, Nginx, Docker, Redis, Cloudflare, server operations, and practical troubleshooting." />

这说明这次全局设置已经达到了预期效果。

十四、总结

这次重新启用 Yoast SEO 后,我没有把重点放在“每篇文章都追求 SEO 绿灯”上,而是把它当成 WordPress 博客的基础 SEO 输出工具。

最终完成的主要工作包括:

文章和页面使用摘录自动生成 Meta Description;

首页单独设置站点级描述;

分类、标签、系列统一设置 SEO 标题和元描述模板;

英文站通过字符串翻译处理 Yoast 模板;

低数量标签页继续使用 WPCode 自动 noindex;

作者归档关闭;

日期归档保留但 noindex;

格式归档关闭;

媒体页面保持关闭;

Schema、Open Graph、X Card、XML Sitemap 保持开启;

Crawl optimization 暂时不动;

关闭 Task list 和管理员菜单栏,减少后台干扰。

对我来说,这应该是目前比较适合的 Yoast SEO 使用方式:

不额外增加日常写作负担,但让站点的基础 SEO 输出更完整、更稳定。

重新安装 Yoast SEO 后旧文章打不开:一次 WPCode Snippet 重复声明函数导致的 WordPress 致命错误排查记录

WordPress 网站维护、性能优化与博客运营咨询

本站已持续运营超过 10 年,累计发布 1000+ 篇原创技术文章,长期实践 WordPress 网站建设、CDN / Cloudflare 配置、缓存优化、Google SEO、广告变现和多语言网站运营。

如果你的 WordPress 网站遇到访问慢、缓存异常、插件冲突、广告不显示、SEO 基础结构混乱、CDN 配置不确定等问题,可以联系我做一次远程技术排查。

适合以下用户:
✅ 个人博客站长
✅ WordPress 网站运营者
✅ 独立开发者与内容创作者
✅ SaaS 产品官网运营团队
✅ 希望优化网站速度与稳定性的站点

服务内容:
✅ WordPress 速度优化
✅ Cloudflare / CDN / 缓存配置排查
✅ 插件冲突与页面异常排查
✅ AdSense 广告显示问题排查
✅ SEO 基础结构检查
✅ 博客运营与商业化咨询

如需了解方案或交流相关问题,请直接联系我,并注明:WordPress 维护咨询

联系方式:
Telegram:@shuijingwan
微信:13980074657
邮箱:shuijingwanwq@gmail.com

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理