WordPress无插件制作和提交站点地图

2021年7月17日18:00:00 发表评论

大多数人都知道站点地图对于提高用户体验有好处:它们为网站访问者指明方向,并帮助迷失的访问者找到他们想看的页面。

WordPress无插件制作和提交站点地图

什么是站点地图?

在开始介绍站点地图的制作与提交之前,我们有必要先了解一下什么是站点地图。

站点地图也就是sitemap,是一个网站所有链接的容器。很多网站的链接层次比较深,蜘蛛是很难抓取到的,站点地图可以方便搜索引擎蜘蛛抓取网站页面,通过抓取网站页面,可以清晰的了解网站的架构。站点地图一般存放在根目录下并命名为sitemap,为搜索引擎蜘蛛引路,增加网站重要内容页面的收录。

站点地图的作用:

1、为搜索引擎蜘蛛提供可以浏览整个网站的链接,简单的体现出网站的整体框架。

2、为搜索引擎蜘蛛提供一些链接,指向动态页面或者采用其他方法比较难以到达的页面。

3、作为一种潜在的着陆页,可以对搜索流量进行优化。

4、如果访问者试图访问网站所在域内并不存在的URL,那么这个访问者就会被转到“无法找到文件”的错误页面,而网站地图可以作为该页面的“准”内容。

站点地图的制作方法

站点地图包括xml格式和html格式的。在这方面很多都是用插件来实现的,当然我们都知道能少用一个插件就尽量不用。所以使用代码来实现html和xml两种格式站点地图就非常好了,这里给大家说下相关方法。

HTML版本的站点地图

许多WordPress主题都是不带有这个站点地图页面的,也就需要我们自己来实现了。本站使用的是begin主题,所以这里也就已begin主题为例。在新建一个PHP文件页面 template-sitemap.php ,在里面加上以下代码,再放入主题下的页面文件夹中。

 
  1. <?php
  2. /*
  3. ?Template?Name:?站点地图
  4. */
  5. ?>
  6. <!DOCTYPE?html?PUBLIC?"-//W3C//DTD?XHTML?1.0?Transitional//EN"?"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  7. <html?xmlns="http://www.w3.org/1999/xhtml">
  8. <head?profile="http://gmpg.org/xfn/11">
  9. <meta?http-equiv="Content-Type"?content="text/html;?charset=<?php?bloginfo(?'charset'?);??>"?/>
  10. <title>站点地图?-?<?php?bloginfo('name');??></title>
  11. <meta?name="keywords"?content="站点地图,<?php?bloginfo('name');??>"?/>
  12. <meta?name="copyright"?content="<?php?bloginfo('name');??>"?/>
  13. <link?rel="canonical"?href="<?php?echo?get_permalink();??>"?/>
  14. <style?type="text/css">
  15. ????body?{font-family:?Microsoft?Yahei,Verdana;font-size:13px;margin:0?auto;color:?#000000;background:?#ffffff;width:?990px;margin:?0?auto}
  16. ????a:link,a:visited?{color:#000;text-decoration:none;}
  17. ????a:hover?{color:#08d;text-decoration:none;}
  18. ????h1,h2,h3,h4,h5,h6?{font-weight:normal;}
  19. ????img?{border:0;}
  20. ????li?{margin-top:?8px;}
  21. ????.page?{padding:?4px;?border-top:?1px?#EEEEEE?solid}
  22. ????.author?{background-color:#EEEEFF;?padding:?6px;?border-top:?1px?#ddddee?solid}
  23. ????#nav,?#content,?#footer?{padding:?8px;?border:?1px?solid?#EEEEEE;?clear:?both;?width:?95%;?margin:?auto;?margin-top:?10px;}
  24. </style>
  25. </head>
  26. <body?vlink="#333333"?link="#333333">
  27. <h2?style="text-align:?center;?margin-top:?20px"><?php?bloginfo('name');??>'s?SiteMap?</h2>
  28. <center></center>
  29. <div?id="nav"><a?href="<?php?echo?esc_url(?home_url()?);??>/"><strong><?php?bloginfo('name');??></strong></a>?&raquo;?<a?href="<?php?echo?get_permalink();??>">站点地图</a></div>
  30. <div?id="content">
  31. <h3>最新文章</h3>
  32. <ul>
  33. <?php
  34. $previous_year?=?$year?=?0;
  35. $previous_month?=?$month?=?0;
  36. $ul_open?=?false;
  37. $myposts?=?get_posts('numberposts=-1&orderby=post_date&order=DESC');
  38. foreach($myposts?as?$post)?:
  39. ?>
  40. <li><a?href="<?php?the_permalink();??>"?title="<?php?the_title();??>"?target="_blank"><?php?the_title();??></a></li>
  41. <?php?endforeach;??>
  42. </ul>
  43. </div>
  44. <div?id="content">
  45. <li?class="categories">分类目录<ul>
  46. <?php?wp_list_categories('title_li=');??>
  47. </ul></li>
  48. </div>
  49. <div?id="content">
  50. <li?class="categories">单页面</li>
  51. <?php?wp_page_menu(?$args?);??>
  52. </div>
  53. <div?id="footer">查看博客首页:?<strong><a?href="<?php?echo?esc_url(?home_url()?);??>/"><?php?bloginfo('name');??></a></strong></div><br?/>
  54. <center>
  55. <div?style="text-algin:?center;?font-size:?11px">Latest?Update:?<?php?$last?=?$wpdb->get_results("SELECT?MAX(post_modified)?AS?MAX_m?FROM?$wpdb->posts?WHERE?(post_type?=?'post'?OR?post_type?=?'page')?AND?(post_status?=?'publish'?OR?post_status?=?'private')");$last?=?date('Y-m-d?G:i:s',?strtotime($last[0]->MAX_m));echo?$last;??><br?/><br?/></div>
  56. </center>
  57. </body>
  58. </html>

然后再在后台新建一个页面,模板选择 站点地图 就可以了(如下图所示)。会显示所有文章、页面和分类。

XML版本的站点地图

创建一个一个php文档,将以下代码复制进去,命名为xmlmap.php,上传到网站根目录里。

 
  1. <?php
  2. require('./wp-blog-header.php');
  3. header("Content-type:?text/xml");
  4. header('HTTP/1.1?200?OK');
  5. $posts_to_show?=?1000;?//?获取文章数量
  6. echo?'<?xml?version="1.0"?encoding="UTF-8"?>';
  7. echo?'<urlset?xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"?xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
  8. xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9?http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">';
  9. ?>
  10. <!--?generated-on=<?php?echo?get_lastpostdate('blog');??>-->
  11. ??<url>
  12. ??????<loc>http://jjsoho.com/</loc>
  13. ??????<lastmod><?php?echo?get_lastpostdate('blog');??></lastmod>
  14. ??????<changefreq>daily</changefreq>
  15. ??????<priority>1.0</priority>
  16. ??</url>
  17. <?php
  18. header("Content-type:?text/xml");
  19. $myposts?=?get_posts(?"numberposts="?.?$posts_to_show?);
  20. foreach(?$myposts?as?$post?)?{??>
  21. ??<url>
  22. ??????<loc><?php?the_permalink();??></loc>
  23. ??????<lastmod><?php?the_time('c')??></lastmod>
  24. ??????<changefreq>monthly</changefreq>
  25. ??????<priority>0.6</priority>
  26. ??</url>
  27. <?php?}?//?end?foreach??>
  28. </urlset>

然后需要伪静态

①Nginx

编辑已存在的 Nginx 伪静态规则,新增如下规则后(平滑)重启 nginx 即可:

rewrite ^/sitemap.xml$ /sitemap.php last;

②Apache

编辑网站根目录的 .htaccess ,加入如下规则:

RewriteRule ^(sitemap)\.xml$ $1.php

做好伪静态规则后,就可以直接访问 sitemap.xml 看看效果了,比如掘金网站点地图生成的效果:http://jjsoho.com/sitemap.xml

这里需要说明一下sitemap.xml和sitemap.html文件的区别:

sitemap.xml文件的创建是为了更有利于搜索引擎的抓取,从而提高工作效率,生成sitemap.xml文件后将其链接放入robort.txt文件内。提示:
良好的robort.txt协议可以指引搜索引擎抓取方向,节省蜘蛛抓取时间,所以无形中提升了蜘蛛的工作效率,也就增大了页面被抓取的可能性。

将sitemap.xml和robort.txt文件放在网站的根目录下。

sitemap.html格式的站点地图主要是用来方便用户的浏览,并不能起到XMLSitemap所起的作用。所以最好两者都要有。

站点地图的提交方法

1、确认无误之后,登录百度资源平台,点击“链接提交”,填写 sitemap.xml 对应的URL地址,如图所示:

WordPress无插件制作和提交站点地图

2、提交完后,百度搜索引擎蜘蛛会对我们的网站进行抓取。大量案例证明,添加网站能加速网站内容收录速度,提升网站收录率。但是这要建立在网站内容质量符合搜索引擎标准的基础上,如果网站内容质量太差,则使用站点地图也是无济于事的。

以上就是制作提交网站地图的一些分享,也是基础中的基础,希望对新手有用。

Tips:

做副业长期赚不到钱的话很容易放弃,特别是对于新手来说,新手刚入行的时候期望值都比较高,以为进来就马上能赚到钱,但是现实却很残酷,很多新手都没能坚持到赚钱的时候。因此,我在朋友圈《加微信》会给大家推荐一些破零项目,钱虽然不多,但是我觉得能让很多新手做副业的信心不那么容易被打垮。

历史上的今天:

掘金网
  • 版权声明:本站原创文章,转载请保留出处和链接!
  • 本文链接:http://jjsoho.com/wcjzzhzd/ 网赚有风险,投资需谨慎!