WordPress建站

WordPress如何生成sitemap网站地图(百度谷歌可识别)

发布时间:2023-11-14 16:16:27

本文作者:

最后更新时间为 2023年11月14日

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 站点地图有效,它将显示“未检测到问题”横幅。

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

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

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

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

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

使用Yoast SEO生成 WordPress 站点地图

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

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

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

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

如何使用纯代码生成 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-d\TH: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 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 站点地图:手动生成、使用插件生成、免插件生成。如果您选择手动执行此操作,您将能够选择要包含在站点地图中的确切信息。然而,这样做需要更多的努力,并且需要使用验证器工具来测试站点地图的额外步骤。

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

常见问题解答

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

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

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

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

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

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

WordPress独立站科普知识大全

这是我对于品牌独立站,尤其是WordPress建站的全部分享

WordPress独立站科普知识大全

小兽wordpress凭借多年的wordpress企业主题制作经验,坚持以“为用户而生的wordpress主题”为宗旨,累计为10万多家客户提供品质wordpress建站服务,得到了客户的一致好评。我们一直用心对待每一个客户,我们坚信:“善待客户,将会成为终身客户”。小兽wordpress能坚持多年,是因为我们一直诚信。我们明码标价(wordpress做网站需要多少钱),从不忽悠任何客户,我们的报价宗旨:“拒绝暴利,只保留合理的利润”。如果您有网站建设、网站改版、网站维护等方面的需求,请立即咨询右侧在线客服或拨打咨询热线:18907337671,我们会详细为你一一解答你心中的疑难。

相关文章

为什么选择小兽WordPress

哪怕不计成本的时间投入,也绝不辜负任何一个客户。
成就客户成就自我的同时,把这个世界变得再美好一点。

我们的故事

小兽WordPress是2011年开始接触互联网,在这期间用WordPress搭建了一个博客叫小兽WordPress,专门学习WordPress建站。

我们的使命

我们希望用WordPress这款优秀的建站程序帮助每个人搭建一个属于自己的网站,高效率低成本做好互联网营销。

我们的文化

我们专注于把客户的事情做好并且做对,这意味着我们在做决定时会考虑到结果,最重要的是,我们力求真实。

我们的未来

我们将在不久的未来成为国内最好的WordPress工作室,小兽WordPress希望和每一个客户成为朋友,一起见证这个美好未来。

为什么选择小兽WordPress

告诉我你是谁,为你量身定做建站方案

我们深知不同的人做网站的阶段不一样,有的是新手,有的是老手。
我们清楚不同的人做网站的目的不一样,有的是展示,有的是营销。

如何让线上业务更上一层楼

还没有WordPress网站

还没有WordPress网站

不管你从事什么行业,WordPress都会为你提供一个专业的主题模板。在WordPress市场上有成千上万的免费主题,适合很多中小企业。

查看所有模板
已经有WordPress网站

已经有WordPress网站

小兽WordPress诚邀你一起学习WordPress,愿与各方携手升级改善您的WordPress网站,一起交流网站加速,网站优化等问题。

马上交个朋友
微信联系
chat 扫码联系
模板建站
挑选模板
网站定制
免费诊断
咨询热线
咨询热线

189-0733-7671

返回顶部

Fatal error: Uncaught TypeError: implode(): Argument #2 ($array) must be of type ?array, string given in /www/wwwroot/www.seo628.com/wp-content/plugins/wp-rocket/vendor/matthiasmullie/minify/src/CSS.php:528 Stack trace: #0 /www/wwwroot/www.seo628.com/wp-content/plugins/wp-rocket/vendor/matthiasmullie/minify/src/CSS.php(528): implode() #1 /www/wwwroot/www.seo628.com/wp-content/plugins/wp-rocket/vendor/matthiasmullie/minify/src/CSS.php(314): MatthiasMullie\Minify\CSS->shortenColors() #2 /www/wwwroot/www.seo628.com/wp-content/plugins/wp-rocket/vendor/matthiasmullie/minify/src/Minify.php(111): MatthiasMullie\Minify\CSS->execute() #3 /www/wwwroot/www.seo628.com/wp-content/plugins/wp-rocket/inc/classes/optimization/CSS/class-minify.php(175): MatthiasMullie\Minify\Minify->minify() #4 /www/wwwroot/www.seo628.com/wp-content/plugins/wp-rocket/inc/classes/optimization/CSS/class-minify.php(128): WP_Rocket\Optimization\CSS\Minify->minify() #5 /www/wwwroot/www.seo628.com/wp-content/plugins/wp-rocket/inc/classes/optimization/CSS/class-minify.php(66): WP_Rocket\Optimization\CSS\Minify->replace_url() #6 /www/wwwroot/www.seo628.com/wp-content/plugins/wp-rocket/inc/classes/subscriber/Optimization/class-abstract-minify-subscriber.php(85): WP_Rocket\Optimization\CSS\Minify->optimize() #7 /www/wwwroot/www.seo628.com/wp-content/plugins/wp-rocket/inc/classes/subscriber/Optimization/class-minify-css-subscriber.php(44): WP_Rocket\Subscriber\Optimization\Minify_Subscriber->optimize() #8 /www/wwwroot/www.seo628.com/wp-includes/class-wp-hook.php(324): WP_Rocket\Subscriber\Optimization\Minify_CSS_Subscriber->process() #9 /www/wwwroot/www.seo628.com/wp-includes/plugin.php(205): WP_Hook->apply_filters() #10 /www/wwwroot/www.seo628.com/wp-content/plugins/wp-rocket/inc/classes/Buffer/class-optimization.php(94): apply_filters() #11 [internal function]: WP_Rocket\Buffer\Optimization->maybe_process_buffer() #12 /www/wwwroot/www.seo628.com/wp-includes/functions.php(5420): ob_end_flush() #13 /www/wwwroot/www.seo628.com/wp-includes/class-wp-hook.php(324): wp_ob_end_flush_all() #14 /www/wwwroot/www.seo628.com/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters() #15 /www/wwwroot/www.seo628.com/wp-includes/plugin.php(517): WP_Hook->do_action() #16 /www/wwwroot/www.seo628.com/wp-includes/load.php(1270): do_action() #17 [internal function]: shutdown_action_hook() #18 {main} thrown in /www/wwwroot/www.seo628.com/wp-content/plugins/wp-rocket/vendor/matthiasmullie/minify/src/CSS.php on line 528