WordPress生成sitemap网站地图

WordPress生成sitemap网站地图

WordPress是一套非常适合百度SEO、谷歌SEO的开源程序,创建 WordPress 站点地图是优化 WordPress 网站 SEO 的众多方法之一。通过使用 WordPress 站点地图,网站访问者和搜索引擎机器人可以更好地了解网站的结构。

当您熟悉WordPress 基础知识后,了解站点地图可以帮助进一步开发您的网站。WordPress 站点地图为访问者创造更好的用户体验,并为搜索引擎抓取提供准确的信息。

本文将详细介绍为 WordPress 网站生成站点地图的好处。我们还将解释 XML 和 HTML 站点地图之间的差异以及它们如何帮助优化站点。

此外,您还将学习如何为 WordPress 网站生成站点地图以及如何向 Google 和 百度 提交站点地图。

话不多说,让我们开始吧。

什么是 WordPress 站点地图以及为什么需要它?

WordPress 站点地图是 WordPress 网站上所有公共 URL 的列表。站点地图可帮助访问者和搜索引擎更快、更轻松地浏览站点中的所有 URL。它们还可以显示不同页面之间的关系以及每个页面的重要性。如果您想了解有关站点地图的更多信息,请阅读我们的指南。

WordPress 站点地图可以通过以下方式帮助网站所有者:

  • 通知搜索引擎– 当网站上有新帖子时,向搜索引擎爬虫发出警报并向访问者显示。WordPress 站点地图还向搜索引擎通报他们之前未编入索引的网站上的页面。
  • 轻松导航– 通过提供完整的自定义 URL 列表来显示网页的结构和层次结构。
  • 搜索引擎优化 – 通过通知搜索引擎网站没有重复内容来帮助优化网站。站点地图还使网站更加用户友好,从而提高其在搜索引擎页面结果 (SERP) 上的排名。

XML 和 HTML WordPress 站点地图之间的差异

WordPress 站点地图有两种不同类型:XML 站点地图HTML 站点地图。每种类型都以不同的方式在优化网站方面发挥着重要作用。

向搜索引擎提交 WordPress 站点地图时,请使用可扩展标记语言 (XML) 站点地图。使用这种语言,搜索引擎机器人将更轻松地查找内容和信息。XML 站点地图还提供每个 URL 的附加元数据和上下文。

同时,HTML站点地图使用HTML格式提供代表所有网页的链接。此功能以更加用户友好的方式呈现网站上的所有公共页面,使其更易于导航。

这两个站点地图之间的主要区别在于 XML 站点地图位于单独的 URL 中并侧重于搜索引擎同时,HTML站点地图可以包含在网站访问者的网页中。

我们建议同时使用 WordPress 站点地图,以保证最佳的用户体验,从而提高您的搜索引擎排名。

如何手动生成 WordPress XML 站点地图?

手动生成 WordPress XML 站点地图将有助于指定搜索引擎爬虫将学习的确切信息。然而,手动创建 WordPress 站点地图会花费更多时间,尤其是对于 URL 超过 10 个的网站。

要手动创建 WordPress 站点地图,请打开文本编辑器,例如 Windows 记事本或适用于 Linux 和 macOS 用户的 Nano。请注意,该文件需要采用 XML 格式。其中包含您网站的 URL 以及搜索引擎应该知道的所有必要信息。

以下是 XML 站点地图的示例:

< ?xml 版本= "1.0"编码= "UTF-8" ? >
< urlset xmlns= “http://www.sitemaps.org/schemas/sitemap/0.9” >
   <网址>
      <loc> http://www.example.com/ </loc> _ _
      <最后修改> 2021-07-18 < /最后修改> _
      <changefreq>每月</changefreq> _ _ _ _
      <优先级> 0.5 < /优先级>
   </url> _ _
</urlset> _ _

在此站点地图中,既有必需标签也有可选标签。以下是所需标签的说明:

  • <urlset> – 参考当前协议标准。保留 XML 站点地图文件示例中的 URL。
  • <url> – URL 的父标签。其余标签都包含在该标签内。
  • <loc> – 网站的 URL。它必须以协议开头,例如 HTTP,如果您的 Web 服务器使用它,则以斜杠结尾。此标签的值必须少于 2,048 个字符。

此外,需要考虑的一些可选标签包括:

  • <lastmod> – 显示网站的最后修改时间。此标记使用 YYYY-MM-DD 格式。
  • <changefreq> – 显示网站更改的频率。有效值为:始终、每小时、每天、每周、每月、每年和从不。
  • <priority> – 让搜索引擎知道哪些 URL 对于爬虫来说最重要。有效值范围为 0.0 到 1.0,默认值为 0.5。

创建 XML 站点地图文件后,将其上传到 WordPress 根文件夹。然后,访问站点地图 URL 以检查 WordPress 站点地图。通常,URL 遵循以下格式:

http://example.com/sitemap.xml _

找到站点地图 URL 后,使用站点地图验证器对其进行验证。无效的站点地图文件可能会妨碍 WordPress 网站。因此,在向搜索引擎提交 XML 站点地图之前,必须首先使用验证器进行检查。

要使用站点地图验证器,请在验证器上输入站点地图 URL,然后单击“验证站点地图”按钮。

WordPress生成sitemap网站地图

如果 WordPress 站点地图有效,它将显示“未检测到问题”横幅。

WordPress生成sitemap网站地图

但是,如果 WordPress 站点地图无效,它将显示“检测到问题”警告消息。

WordPress生成sitemap网站地图

如何使用插件生成 WordPress XML 站点地图?

要在 WordPress 中自动创建站点地图,请使用站点地图插件。这是一种更快、更可靠的生成 WordPress 站点地图的方法。

通过安装 WordPress 插件,用户将获得额外的特性和功能来帮助优化他们的网站。当自动进行任何更改时,这些插件还有助于更新 WordPress 站点地图。

下面您将找到有关如何使用两个最适合该工作的 WordPress 插件生成 WordPress XML 站点地图的指南。

使用Yoast SEO生成 WordPress 站点地图

Yoast 插件是WordPress最受欢迎的 SEO 插件之一。这个 SEO 插件负责与优化 WordPress 内容相关的所有技术方面,包括创建 XML 站点地图。

请按照以下步骤创建您自己的 WordPress 站点地图:

1、前往 WordPress仪表板 -> 插件 -> 添加新插件并查找 Yoast SEO 插件。单击立即安装激活该插件的免费版本。

WordPress生成sitemap网站地图

2、转到仪表板上的Yoast SEO菜单,然后选择设置。然后看到右边内容,拉下去找到API接口版块查看XML地图链接。

WordPress生成sitemap网站地图

如何使用纯代码生成 WordPress XML 站点地图?

我们使用wordpress网站时,可以轻松制作出一个站点地图(sitemap)。第一种方法是利用插件,wordpress的插件非常多,根据自己习惯搜索相应的即可。第二种是不用插件,纯代码免插件制作站点地图。

用WordPress定时任务去生成sitemap.xml,这样比网上很多方法是在保存、发布文章时生成xml好一些,不会造成处理文章卡的现象。

在网站目录新建 gsitemap.php,此文件的代码如下

<?php
require('../wp-blog-header.php');
header("Content-type: text/xml");
header('HTTP/1.1 200 OK');
echo '<?xml version="1.0" encoding="UTF-8"?>';
echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> '
?>
<!-- generated-on=<?php echo get_lastpostdate('blog'); ?>--> 
  <url>
	<loc><?php echo get_home_url(); ?></loc>
	<lastmod><?php echo gmdate('Y-m-dTH:i:s+00:00', strtotime(get_lastpostmodified('GMT'))); ?></lastmod>
	<changefreq>daily</changefreq>
	<priority>1.0</priority>
</url>
<?php
/* 文章页面 */ 
$args = array(
  'numberposts' => 10000,
  'post_type'   => 'post'
);
$myposts = get_posts( $args);
foreach( $myposts as $post ) { ?>
  <url>
      <loc><?php the_permalink(); ?></loc>
      <lastmod><?php the_time('c') ?></lastmod>
      <changefreq>monthly</changefreq>
      <priority>0.6</priority>
  </url>
<?php } /* 文章循环结束 */ ?>  
<?php
/* 自定义文章页面 */ 
$args = array(
  'numberposts' => 1000,
  'post_type'   => 'product'
);
$myps = get_posts( $args);
foreach( $myps as $post ) { ?>
  <url>
      <loc><?php the_permalink(); ?></loc>
      <lastmod><?php the_time('c') ?></lastmod>
	   <changefreq>monthly</changefreq>
      <priority>0.6</priority>
  </url>
<?php } /* 自定义文章循环结束 */ ?>  
<?php
 /* 自定义文章分类 */
$pros = get_terms("products");
foreach ( $pros as $key => $pro ) {
    $link = get_term_link( intval($pro->term_id), "products" );
         if ( is_wp_error( $link ) )
          return false;
          $pros[ $key ]->link = $link;  
?>
  <url>
      <loc><?php echo $link ?></loc>
      <lastmod><?php the_time('c') ?></lastmod>
      <changefreq>weekly</changefreq>
      <priority>0.6</priority>
  </url>
<?php } /* 自定义文章分类循环结束 */ ?>  
<?php
/* 单页面 */ 
$mypages = get_pages();
if(count($mypages) > 0) {
    foreach($mypages as $page) { ?>
    <url>
      <loc><?php echo get_page_link($page->ID); ?></loc>
      <lastmod><?php echo str_replace(" ","T",get_page($page->ID)->post_modified); ?>+00:00</lastmod>
      <changefreq>weekly</changefreq>
      <priority>0.6</priority>
  </url>
<?php }} /* 单页面循环结束 */ ?> 
<?php
/* 博客分类 */ 
$terms = get_terms('category', 'orderby=name&hide_empty=0' );
$count = count($terms);
if($count > 0){
foreach ($terms as $term) { ?>
    <url>
      <loc><?php echo get_term_link($term, $term->slug); ?></loc>
	  <lastmod><?php the_time('c') ?></lastmod>
      <changefreq>weekly</changefreq>
      <priority>0.8</priority>
  </url>
<?php }} /* 分类循环结束 */?> 
<?php
 /* 标签(可选) */
$tags = get_terms("post_tag");
foreach ( $tags as $key => $tag ) {
    $link = get_term_link( intval($tag->term_id), "post_tag" );
         if ( is_wp_error( $link ) )
          return false;
          $tags[ $key ]->link = $link;
?>
 <url>
      <loc><?php echo $link ?></loc>
	  <lastmod><?php the_time('c') ?></lastmod>
      <changefreq>monthly</changefreq>
      <priority>0.4</priority>
  </url>
<?php  } /* 标签循环结束 */ ?> 
</urlset>

新建一个自动执行的计划,每天自动生成XML地图

WordPress生成sitemap网站地图
WordPress生成sitemap网站地图

如何向搜索引擎提交 WordPress XML 站点地图?

生成 WordPress 站点地图后,将其提交给 Google 和 Bing 等搜索引擎以获取索引。请注意,虽然搜索引擎仍会在无需手动提交的情况下抓取网站,但向搜索引擎提交 WordPress XML 站点地图仍将提供额外的好处:

  • SEO – 站点地图在有更改或新内容时通知搜索引擎,这有助于您的页面在搜索引擎结果中保持更新。
  • 准确性——在 WordPress 站点地图的帮助下,搜索引擎只会索引站点最准确和相关的信息。
  • 免费– 无论采用何种方法,生成 WordPress 站点地图都不需要任何费用。
  • 自然流量——通过在 SERP 上排名更高来产生更多访问量。

重要的!在向搜索引擎提交 WordPress 网站之前,您需要一个 XML 站点地图 URL。一般的XML地图的URL形式为:https://www.seo628.com/gsitemap.xml

向 Google 提交 XML 站点地图

向 Google 提交 WordPress 站点地图将带来更高的流量并提高网站的知名度。网站所有者可以使用Google Search Console来实现此目的。

登录您的 Google 帐户并按照以下步骤操作:

WordPress生成sitemap网站地图

结论

本文分享了两种不同的方式来生成 WordPress 站点地图:手动生成、使用插件生成、免插件生成。如果您选择手动执行此操作,您将能够选择要包含在站点地图中的确切信息。然而,这样做需要更多的努力,并且需要使用验证器工具来测试站点地图的额外步骤。

相反,我们建议使用Yoast SEO插件或者纯代码来创建 XML 站点地图。我们还分享了向 Google 提交 WordPress 站点地图的步骤。

常见问题解答

WordPress 会自动更新站点地图吗? 

是的。无论您使用本机 WordPress 站点地图还是由插件之一生成的站点地图,它都应该在您每次创建新帖子或页面时自动更新。 

WordPress网站做SEO 必须要站点地图吗?

拥有站点地图并不是必需的。然而,这被认为是最佳实践。鉴于创建仅需几分钟,并且您只能从站点地图中受益,我们强烈建议您拥有一个。 

我如何知道我的站点地图正常工作?

要检查您的站点地图,您可以访问Google Search Console 中的“站点地图”报告。

© 版权声明
THE END
喜欢就支持一下吧
点赞13赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容