登录

微信小程序中用sitemap.json配置微信搜索,小程序页面是否允许微信索引

1970-01-01 ·微信小程序

微信小程序,sitemap.json配置,微信搜索,小程序页面是否允许微信索引

有关微信小程序 sitemap 配置,是方便记录自己学习用的

没有 sitemap.json 则默认所有页面都能被索引

官方说明

小程序sitemap配置

微信现已开放小程序内搜索,开发者可以通过 sitemap.json 配置,或者管理后台页面收录开关来配置其小程序页面是否允许微信索引。当开发者允许微信索引时,微信会通过爬虫的形式,为小程序的页面内容建立索引。当用户的搜索词条触发该索引时,小程序的页面将可能展示在搜索结果中。 爬虫访问小程序内页面时,会携带特定的 user-agent:mpcrawler 及场景值:1129。需要注意的是,若小程序爬虫发现的页面数据和真实用户的呈现不一致,那么该页面将不会进入索引中。

具体配置说明

  1. 页面收录设置:可对整个小程序的索引进行关闭,小程序管理后台-功能-页面内容接入-页面收录开关;详情
  2. sitemap 配置:可对特定页面的索引进行关闭

sitemap 配置

小程序根目录下的 sitemap.json 文件用来配置小程序及其页面是否允许被微信索引。

完整配置项说明请参考小程序 sitemap 配置

例1:

{"rules":[{"action":"allow","page":"*"}]}

所有页面都会被微信索引(默认情况)

例2:

{"rules":[{"action":"disallow","page":"path/to/page"}]}

配置 path/to/page 页面不被索引,其余页面允许被索引

例3:

{"rules":[{"action":"allow","page":"path/to/page"},{"action":"disallow","page":"*"}]}

配置 path/to/page 页面被索引,其余页面不被索引

例4:

{"rules":[{"action":"allow","page":"path/to/page","params":["a","b"],"matching":"inclusive"},{"action":"allow","page":"*"}]}

包含 a 和 b 参数的 path/to/page 页面会被微信优先索引,其他页面都会被索引,例如:

  • path/to/page?a=1&b=2 => 优先被索引
  • path/to/page?a=1&b=2&c=3 => 优先被索引
  • path/to/page => 被索引
  • path/to/page?a=1 => 被索引
  • 其他页面都会被索引

例5:

{"rules":[{"action":"allow","page":"path/to/page","params":["a","b"],"matching":"inclusive"},{"action":"disallow","page":"*"},{"action":"allow","page":"*"}]}
  • path/to/page?a=1&b=2 => 优先被索引
  • path/to/page?a=1&b=2&c=3 => 优先被索引
  • path/to/page => 不被索引
  • path/to/page?a=1 => 不被索引
  • 其他页面由于命中第二条规则,所以不会被索引
  • 由于优先级的问题,第三条规则是没有意义的

注:没有 sitemap.json 则默认所有页面都能被索引

注:{"action": "allow", "page": "*"} 是优先级最低的默认规则,未显式指明 "disallow" 的都默认被索引

如何调试

当在小程序项目中设置了 sitemap 的配置文件(默认为 sitemap.json)时,便可在开发者工具控制台上显示当前页面是否被索引的调试信息( 最新版本的开发者工具支持索引提示)

注:sitemap 的索引提示是默认开启的,如需要关闭 sitemap 的索引提示,可在小程序项目配置文件 project.config.json 的 setting 中配置字段 checkSiteMap 为 false

注: sitemap 文件内容最大为 5120 个 UTF8 字符



有三种方式可以关掉页面收录

  • 1.小程序 sitemap.json 配置
  • 2.管理后台 “页面收录设置” 来配置其小程序页面是否允许微信索引
  • 3.小程序页面采取设置登录态

微信现已开放小程序内搜索,开发者可以通过 sitemap.json 配置,或者管理后台页面收录开关来配置其小程序页面是否允许微信索引。当开发者允许微信索引时,微信会通过爬虫的形式,为小程序的页面内容建立索引。当用户的搜索词条触发该索引时,小程序的页面将可能展示在搜索结果中。 爬虫访问小程序内页面时,会携带特定的 user-agent:mpcrawler 及场景值:1129。需要注意的是,若小程序爬虫发现的页面数据和真实用户的呈现不一致,那么该页面将不会进入索引中。

sitemap 配置

小程序根目录下的 sitemap.json 文件用于配置小程序及其页面是否允许被微信索引,文件内容为一个 JSON 对象,如果没有 sitemap.json ,则默认为所有页面都允许被索引;sitemap.json 有以下属性:

配置项

属性 类型 必填 描述
rules Object[] 索引规则列表

rules

rules 配置项指定了索引规则,每项规则为一个JSON对象,属性如下所示:

属性 类型 必填 默认值 取值 取值说明
action string "allow" "allow"、"disallow" 命中该规则的页面是否能被索引
page string "*"、页面的路径 * 表示所有页面,不能作为通配符使用
params string[] [] 当 page 字段指定的页面在被本规则匹配时可能使用的页面参数名称的列表(不含参数值)
matching string "inclusive" 参考 matching 取值说明 当 page 字段指定的页面在被本规则匹配时,此参数说明 params 匹配方式
priority Number 优先级,值越大则规则越早被匹配,否则默认从上到下匹配

matching 取值说明

说明
exact 当小程序页面的参数列表等于 params 时,规则命中
inclusive 当小程序页面的参数列表包含 params 时,规则命中
exclusive 当小程序页面的参数列表与 params 交集为空时,规则命中
partial 当小程序页面的参数列表与 params 交集不为空时,规则命中

配置示例

示例1

{ "rules":[{ "action": "allow", "page": "path/to/page", "params": ["a", "b"], "matching": "exact" }, { "action": "disallow", "page": "path/to/page" }] } 
  • path/to/page?a=1&b=2 => 优先索引
  • path/to/page => 不被索引
  • path/to/page?a=1 => 不被索引
  • path/to/page?a=1&b=2&c=3 => 不被索引
  • 其他页面都会被索引

示例2

{ "rules":[{ "action": "allow", "page": "path/to/page", "params": ["a", "b"], "matching": "inclusive" }, { "action": "disallow", "page": "path/to/page" }] } 
  • path/to/page?a=1&b=2 => 优先索引
  • path/to/page?a=1&b=2&c=3 => 优先索引
  • path/to/page => 不被索引
  • path/to/page?a=1 => 不被索引
  • 其他页面都会被索引

示例3

{ "rules":[{ "action": "allow", "page": "path/to/page", "params": ["a", "b"], "matching": "exclusive" }, { "action": "disallow", "page": "path/to/page" }] } 
  • path/to/page => 优先索引
  • path/to/page?c=3 => 优先索引
  • path/to/page?a=1 => 不被索引
  • path/to/page?a=1&b=2 => 不被索引
  • 其他页面都会被索引

示例4

{ "rules":[{ "action": "allow", "page": "path/to/page", "params": ["a", "b"], "matching": "partial" }, { "action": "disallow", "page": "path/to/page" }] } 
  • path/to/page?a=1 => 优先索引
  • path/to/page?a=1&b=2 => 优先索引
  • path/to/page => 不被索引
  • path/to/page?c=3 => 不被索引
  • 其他页面都会被索引

注:没有 sitemap.json 则默认所有页面都能被索引

注:{"action": "allow", "page": "*"} 是优先级最低的默认规则,未显式指明 "disallow" 的都默认被索引


· END ·

TAG:微信小程序,sitemap.json配置,微信搜索,小程序页面是否允许微信索引 来源:网络

热门标签

首页 - 导航 - 免责 - 官方微信 - 用户反馈

© 2021 GOODTEXT.CN