什么是 WordPress 网站地图?
网站地图,英文 Sitemap,是一个 XML 文件,它列出了您网站上的所有重要页面、文章、分类、标签等内容的列表,并提供了关于这些内容的一些元数据(如最后更新时间、更新频率、优先级等)。

它就像是您网站的“目录”或“地图”,专门为搜索引擎(如 Google、百度)设计的,帮助它们更高效、更全面地发现和抓取您网站上的内容。
为什么 WordPress 网站地图至关重要?
- 提升索引效率:搜索引擎的爬虫(Spider)通过网站地图可以立即了解您网站的结构和所有重要页面,而不必通过大量的外部链接来发现,这对于新网站或页面链接较少的网站尤其重要。
- 确保所有重要页面被收录:确保您精心创建的页面、文章、产品等都有机会被搜索引擎收录,避免被遗漏。
- 传递网站结构信号:网站地图可以帮助搜索引擎理解您网站的层次结构和内容优先级,这对于 SEO 有益。
- SEO 优化的基础:它是所有 SEO 策略的基石之一,没有网站地图,搜索引擎抓取和索引您的网站会变得更加困难和低效。
如何为 WordPress 网站创建网站地图?(最简单的方法)
对于绝大多数 WordPress 最推荐、最简单的方法是使用 SEO 插件,这些插件不仅能自动生成网站地图,还能帮助您优化网站的方方面面。
以下是使用最流行的两个插件创建网站地图的步骤:
使用 Yoast SEO 插件(推荐)
Yoast SEO 是最全面、最知名的 WordPress SEO 插件之一。

第一步:安装并激活 Yoast SEO
- 在 WordPress 后台,进入 插件 > 安装插件。
- 搜索 "Yoast SEO"。
- 找到插件后,点击 现在安装,然后激活它。
第二步:配置网站地图
- 激活后,在 WordPress 左侧菜单中会出现 SEO 选项。
- 将鼠标悬停在 SEO 上,在下拉菜单中选择 功能。
- 在功能列表中,找到并启用 XML 站点地图 功能,默认情况下,它通常是开启的。
- 点击 XML 站点地图 旁边的 问号图标,进入设置页面。
第三步:自定义和生成网站地图 在 XML 站点地图设置页面,您可以:
- 启用/禁用特定内容类型:您可以决定是否在网站地图中包含文章、页面、分类、标签、自定义文章类型等。
- 设置优先级和更新频率:您可以调整不同类型内容的优先级和更新频率,但这只是给搜索引擎的建议,不一定完全被采纳。
- 查看网站地图 URL:设置完成后,页面会显示您的网站地图地址,通常格式为:
https://您的域名.com/sitemap_index.xmlhttps://您的域名.com/post-sitemap.xml(文章)https://您的域名.com/page-sitemap.xml(页面)
重要提示:Yoast SEO 默认会为您的网站创建一个 sitemap.xml 文件,但它会重定向到 sitemap_index.xml,请使用 sitemap_index.xml 作为您的主网站地图地址。
使用 All in One SEO (AIOSEO) 插件
All in One SEO 是另一个功能强大的 SEO 插件,其网站地图功能也非常出色。
第一步:安装并激活 All in One SEO
- 在 WordPress 后台,进入 插件 > 安装插件。
- 搜索 "All in One SEO Pack"。
- 安装并激活插件,激活后,它会引导您完成一个简单的设置向导。
第二步:启用并配置网站地图
- 在 WordPress 左侧菜单中,进入 All in One SEO > Sitemap。
- 在 Sitemap Settings 选项卡下,确保 Enable Sitemap (启用网站地图) 开关是打开状态。
- 您可以在这里配置要包含在网站地图中的内容类型,如文章、页面、分类、标签、自定义分类法等。
- 点击 Save Settings (保存设置)。
第三步:查看网站地图 URL 配置完成后,AIOSEO 会在设置页面上方显示您的网站地图 URL,通常是:
https://您的域名.com/sitemap.xml
如何将网站地图提交给搜索引擎?
创建好网站地图后,下一步就是告诉搜索引擎它的存在,以便它们可以来抓取。
提交到 Google Search Console (谷歌搜索控制台)
- 登录 Google Search Console:如果您还没有添加您的网站,请先添加并验证所有权。
- 在左侧菜单中,选择 抓取 > Sitemap (站点地图)。
- 在顶部的输入框中,输入您刚刚获得的网站地图 URL(
https://您的域名.com/sitemap_index.xml)。 - 点击 提交。
- 您可以点击刚刚提交的网站地图链接,查看 Google 是否已成功抓取以及包含多少个 URL,Google 可能需要一些时间来处理和抓取。
提交到 Bing Webmaster Tools (必应站长工具)
过程与 Google Search Console 类似:
- 登录 Bing Webmaster Tools 并添加您的网站。
- 在左侧菜单中,找到 Sitemaps (站点地图) 选项。
- 输入您的网站地图 URL 并提交。
使用 robots.txt 文件(强烈推荐)
这是一个非常重要的步骤,可以主动引导搜索引擎找到您的网站地图。
-
在 WordPress 后台,进入 工具 > 站点健康 (Site Health)。
-
切换到 页面 选项卡。
-
在 站点信息 部分,您可以找到 robots.txt 文件 的链接,点击它。
-
在打开的页面中,您会看到
robots.txt的内容,在文件末尾,添加以下一行代码(请将您的域名.com替换成您自己的域名):Sitemap: https://您的域名.com/sitemap_index.xml -
点击 文件已修改 保存更改。
这样做的好处是,当搜索引擎的爬虫访问您的 robots.txt 文件时,会立刻看到您网站地图的位置,这是一种非常标准的做法。
高级用户:使用代码生成网站地图
如果您不使用任何 SEO 插件,或者希望更轻量级地解决这个问题,可以通过在主题的 functions.php 文件中添加代码来实现。
警告: 修改 functions.php 文件有风险,如果代码出错,可能会导致网站无法访问。强烈建议先通过 FTP 备份您的 functions.php 文件。
将以下代码添加到您当前主题的 functions.php 文件中:
// 创建一个自定义的网站地图函数
function custom_sitemap() {
$postsForSitemap = get_posts(array(
'numberposts' => -1,
'orderby' => 'modified',
'post_type' => array('post', 'page', 'your_custom_post_type'), // 'your_custom_post_type' 替换为您的自定义文章类型
'order' => 'DESC'
));
$sitemap = '<?xml version="1.0" encoding="UTF-8"?>';
$sitemap .= '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
foreach($postsForSitemap as $post) {
setup_postdata($post);
$post_date = get_the_date('c', $post->ID);
$post_modified = get_the_modified_date('c', $post->ID);
$sitemap .= '<url>'.
'<loc>'. get_permalink($post->ID) .'</loc>'.
'<lastmod>'. $post_modified .'</lastmod>'.
'<changefreq>weekly</changefreq>'. // 可选:修改频率
'<priority>0.8</priority>'. // 可选:优先级
'</url>';
}
$sitemap .= '</urlset>';
$header = 'Content-type: text/xml; charset=utf-8';
header($header);
echo $sitemap;
exit;
}
// 添加一个重写规则,当访问 /sitemap.xml 时触发上面的函数
add_action('init', 'my_sitemap_rewrite');
function my_sitemap_rewrite() {
add_rewrite_rule('^sitemap\.xml$', 'index.php?custom_sitemap=true', 'top');
}
// 查询变量,让 WordPress 识别我们的自定义参数
add_filter('query_vars', 'my_sitemap_query_vars');
function my_sitemap_query_vars($vars) {
$vars[] = 'custom_sitemap';
return $vars;
}
// 当查询变量为 true 时,执行我们的网站地图函数 