WordPress如何用代码实现sitemap.xml网站地图

2019年10月9日09:36:34 9 585 views 2265字阅读7分33秒

对于做网站SEO优化的我们来说做网站地图是必不可少的事情,通常的网站地图分为两种:一个是sitemap.html类型的网站地图,另外一种是sitemap.xml类型的网站地图。html的网站地图通常来说是给真实的用户使用,方便用户们熟悉网站架构和缩短他们找到目标栏目的时间成本。而xml的网站地图的版本是给搜索引擎(百度、360、谷歌)的蜘蛛爬取使用的,这样做是方便搜索引擎蜘蛛抓取我们的网站内容,促进网站内容的收录。

WordPress如何用代码实现sitemap.xml网站地图

叶忠文在之前wordpress主题的网站如何做sitemap.htm网站地图里有讲到过html的制作方法以及好处,不清楚的朋友们可以知道之前那篇文章进行查阅。今天所要讲到的是关于xml网站地图的制作,对于这类型的地图主要是为搜索引擎蜘蛛提供可以浏览整个网站的链接,便于用户查找网站的主要栏目和浏览。

今天无意在逛一些博主站点的时候,在诗梦博客里看到关于用代码制作一个xml网站地图的教程,叶忠文觉得挺不错的,所以想借此机会分享出来,以便那些想做此类型网站地图而又不会做的朋友们。好了!话不多说,我们进入以下简单的教程吧。

1、在网站根目录新建一个Sitemap.php文件

2、文件中填入以下代码:

   <?php
    require('./wp-blog-header.php');
    header("Content-type: text/xml");
    header('HTTP/1.1 200 OK');
    echo '<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
    xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 https://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">';
    ?>
    <!-- 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
    // 文章
    $posts = get_posts('numberposts=-1&orderby=post_date&order=DESC');
    foreach($posts as $post) :
    ?>
        <url>
            <loc><?php echo get_permalink($post->ID); ?></loc>
            <lastmod><?php echo str_replace(" ", "T", get_post($post->ID)->post_modified); ?>+00:00</lastmod>
            <changefreq>monthly</changefreq>
            <priority>0.6</priority>
        </url>
    <?php
    endforeach;
    // 页面
    $pages = get_pages('numberposts=-1&orderby=post_date&order=DESC');
    foreach($pages 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
    endforeach;
    // 分类
    $categorys = get_terms('category', 'orderby=name&hide_empty=0');
    foreach ($categorys as $category) :
    ?>
        <url>
            <loc><?php echo get_term_link($category, $category->slug); ?></loc>
            <changefreq>weekly</changefreq>
            <priority>0.8</priority>
        </url>
    <?php
    endforeach;
    // 标签
    $tags = get_terms('post_tag', 'orderby=name&hide_empty=0');
    foreach ($tags as $tag) :
    ?>
        <url>
            <loc><?php echo get_term_link($tag, $tag->slug); ?></loc>
            <changefreq>monthly</changefreq>
            <priority>0.4</priority>
        </url>
    <?php
    endforeach;
    ?>
    </urlset>

伪静态:

rewrite ^/Sitemap.xml$ /

希望可以帮到那些有需要帮助的伙伴们! :smile: :smile: :smile:

叶先生
  • 本文由 发表于 2019年10月9日09:36:34
如何快速切换WordPress里的背景图 WordPress

如何快速切换WordPress里的背景图

用过WordPress主题建站的人多半都切换过背景图,就拿本人来说,之前用鸟哥这款Begin主题的时候,就为了追求各种美化加过网站背景图与评论区背景图,还加过自定义鼠标样式,但后期还是因为想要简单简洁...
如何替换WordPress博客的自定义栏目值 WordPress

如何替换WordPress博客的自定义栏目值

我们都知道如果之前添加的自定义栏目值,例如说:附件或者图片链接的地址发生改变,修改起来都是比较麻烦的。好久没进鸟哥的官网看了,今天进去看到这么一个教程感觉挺实用的,里面有篇文章讲到附件或者图片链接的地...
WordPress网站如何更换域名的详细教程讲解 WordPress

WordPress网站如何更换域名的详细教程讲解

WordPress网站如何更换域名?使用WordPress主题建站这么长时间以来,见过很多站长不停的更换网站域名,但不会更换里面的内容。其实这个方法不算新颖,因为在这个方法之前,鸟哥的Begin主题里...
修改数据库密码后导致网站无法打开该怎么解决? 网站建设

修改数据库密码后导致网站无法打开该怎么解决?

今天无缘无故不知道发什么癫,一时兴起,想统一下阿里后台的登录密码,接着把FTP密码也给重置了遍,后面想了下,要不就把数据库密码也统一下吧。统一好了后方才发现网站打不开了,顿时有点百思不得其解,以前用织...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

评论:9   其中:访客  5   博主  4
    • 励志语录网 励志语录网 来自天朝的朋友 谷歌浏览器 Windows 10 浙江省杭州市 移动 1

      地图感觉没啥用啊

        • Joson Joson 来自天朝的朋友 火狐浏览器 Windows 10 广东省深圳市宝安区 电信

          回复 励志语录网 只能说有一点点小作用

        • 姜辰 姜辰 来自天朝的朋友 火狐浏览器 Windows 10 浙江省杭州市 阿里云BGP数据中心 3

          = =、这个。。。我感觉就提交搜索引擎的时候可以用下。

            • Joson Joson 来自天朝的朋友 火狐浏览器 Windows 10 广东省深圳市宝安区 电信

              回复 姜辰 嗯、不要抱太大的希望对这个,用处有一点点

            • 袋装水 袋装水 谷歌浏览器 Windows 7 亚太地区 2

              学习了,不错

              • PGUP笔记 PGUP笔记 来自天朝的朋友 谷歌浏览器 Mac OS X 10_14_6 河南省郑州市 联通 0

                mark一下!实际操作一下看一效果!

                  • Joson Joson 来自天朝的朋友 火狐浏览器 Windows 10 广东省深圳市宝安区 电信

                    回复 PGUP笔记 没问题的

                  • MAY的SEO博客 MAY的SEO博客 来自天朝的朋友 火狐浏览器 Windows 10 上海市 联通 2

                    这是完全不借助插件的方法,挺实用的 :grin:

                      • Joson Joson 来自天朝的朋友 火狐浏览器 Windows 10 广东省深圳市 电信

                        回复 MAY的SEO博客 插件能不用尽可能不用、会影响打开速度