Node.js如何编写生成长尾关键词站点地图的代码示例?

2026-04-09 21:091阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计587个文字,预计阅读时间需要3分钟。

Node.js如何编写生成长尾关键词站点地图的代码示例?

如果博客是使用Hexo管理的,可以借助插件生成sitemap。对于内容管理系统型的网站,后端可能采用express、koa等框架,这时就需要手动生成sitemap。什么是sitemap?它是一种方便网站管理的工具。

如果博客是使用Hexo管理的,sitemap可以使用插件来生成。但对于一个内容管理网站,后端可能是express、koa之类的框架,这时sitemap就需要自己来生成了

什么是sitemap

Sitemap可方便网站管理员通知搜索引擎他们网站上有哪些可供抓取的网页。最简单的Sitemap形式,就是XML文件,在其中列出网站中的网址以及关于每个网址的其他元数据(上次更新的时间、更改的频率以及相对于网站上其他网址的重要程度为何等),以便搜索引擎可以更加智能地抓取网站。

sitemap结构

<url> <loc>www.jouypub.com/</loc> <lastmod>2019-05-01</lastmod> <changefreq>daily</changefreq> <priority>0.5</priority> </url>

  • loc:文章链接地址
  • lastmod:最后更新时间
  • changefreq:更新频率,daily/monthly
  • priority:权重

生成sitemap,基于express项目

开源包:sitemap,地址: github.com/ekalinin/sitemap.js

> npm install --save sitemap

代码中使用

const express = require('express') const sm = require('sitemap'); router.get('/sitemap.xml', function (req, res) { let pageRequest = Object.create({}); pageRequest.pageSize = -1; pageRequest.pageNum = 1; api.post('/article/list', pageRequest, function (result) { let urls = []; for (let article in result) { urls.push({ url: article.url, changefreq: 'daily', lastmodrealtime: true, priority: 1, lastmod: article.updateTime }); } let sitemap = sm.createSitemap({ hostname: 'invest.jouypub.com', cacheTime: 600000, // 600sec, cache purge period urls: urls }); sitemap.toXML(function (err, xml) { if (err) { console.log(err); return res.status(500).end(); } res.header('Content-Type', 'application/xml'); res.send(xml); }); }); });

sitemap优化

上面那种方法在文章数少时还能使用,如果有几千甚至几万篇文章,一次拉取的方式就不适合了,就需要把返回结果写入到文件中,一天更新一次。只需要只需要把

sitemap.toXML()

改成

fs.writeFileSync("app/assets/sitemap.xml", sitemap.toString());即可。每次请求sitemap时读文件即可

Node.js如何编写生成长尾关键词站点地图的代码示例?

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。

标签:方法

本文共计587个文字,预计阅读时间需要3分钟。

Node.js如何编写生成长尾关键词站点地图的代码示例?

如果博客是使用Hexo管理的,可以借助插件生成sitemap。对于内容管理系统型的网站,后端可能采用express、koa等框架,这时就需要手动生成sitemap。什么是sitemap?它是一种方便网站管理的工具。

如果博客是使用Hexo管理的,sitemap可以使用插件来生成。但对于一个内容管理网站,后端可能是express、koa之类的框架,这时sitemap就需要自己来生成了

什么是sitemap

Sitemap可方便网站管理员通知搜索引擎他们网站上有哪些可供抓取的网页。最简单的Sitemap形式,就是XML文件,在其中列出网站中的网址以及关于每个网址的其他元数据(上次更新的时间、更改的频率以及相对于网站上其他网址的重要程度为何等),以便搜索引擎可以更加智能地抓取网站。

sitemap结构

<url> <loc>www.jouypub.com/</loc> <lastmod>2019-05-01</lastmod> <changefreq>daily</changefreq> <priority>0.5</priority> </url>

  • loc:文章链接地址
  • lastmod:最后更新时间
  • changefreq:更新频率,daily/monthly
  • priority:权重

生成sitemap,基于express项目

开源包:sitemap,地址: github.com/ekalinin/sitemap.js

> npm install --save sitemap

代码中使用

const express = require('express') const sm = require('sitemap'); router.get('/sitemap.xml', function (req, res) { let pageRequest = Object.create({}); pageRequest.pageSize = -1; pageRequest.pageNum = 1; api.post('/article/list', pageRequest, function (result) { let urls = []; for (let article in result) { urls.push({ url: article.url, changefreq: 'daily', lastmodrealtime: true, priority: 1, lastmod: article.updateTime }); } let sitemap = sm.createSitemap({ hostname: 'invest.jouypub.com', cacheTime: 600000, // 600sec, cache purge period urls: urls }); sitemap.toXML(function (err, xml) { if (err) { console.log(err); return res.status(500).end(); } res.header('Content-Type', 'application/xml'); res.send(xml); }); }); });

sitemap优化

上面那种方法在文章数少时还能使用,如果有几千甚至几万篇文章,一次拉取的方式就不适合了,就需要把返回结果写入到文件中,一天更新一次。只需要只需要把

sitemap.toXML()

改成

fs.writeFileSync("app/assets/sitemap.xml", sitemap.toString());即可。每次请求sitemap时读文件即可

Node.js如何编写生成长尾关键词站点地图的代码示例?

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。

标签:方法