配置小程序

小程序配置

1.全局配置

小程序根目录下的 app.json 文件用来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。

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

以下是一个包含了部分常用配置选项的 app.json :

{
  "pages": [
    "pages/index/index",
    "pages/logs/index"
  ],
  "window": {
    "navigationBarTitleText": "Demo"
  },
  "tabBar": {
    "list": [{
      "pagePath": "pages/index/index",
      "text": "首页"
    }, {
      "pagePath": "pages/logs/index",
      "text": "日志"
    }]
  },
  "networkTimeout": {
    "request": 10000,
    "downloadFile": 10000
  },
  "debug": true
}

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

页面配置

每一个小程序页面也可以使用同名 .json 文件来对本页面的窗口表现进行配置,页面中配置项会覆盖 app.json 的 window 中相同的配置项。

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

例如:

{
  "navigationBarBackgroundColor": "#ffffff",
  "navigationBarTextStyle": "black",
  "navigationBarTitleText": "微信接口功能演示",
  "backgroundColor": "#eeeeee",
  "backgroundTextStyle": "light"
}

配置小程序 /sitemap 配置

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

具体配置说明

页面收录设置:

可对整个小程序的索引进行关闭,小程序管理后台-功能-页面内容接入-页面收录开关;详情

sitemap 配置:

可对特定页面的索引进行关闭

小程序页面接入效果优化建议

建议开启"收录设置",增加页面被收录的机会若关闭,则小程序首页以外的页面将不会再被收录,也就不会被抓取

除个人隐私、通信信息、商业秘密等内容页面,其余页面建议在 sitemap 配置(sitemap.json文件)中设置允许

根据用户服务器性能,建议在合适范围内增大 "频率上限"设置

小程序页面配置文件(app.json)建议保持完整和最新 a. title:

建议每个页面设置清晰简洁的 navigationBarTitleText b. tabBar:建议每个tab页面设置清晰简洁的

pagePath、text 小程序里跳转的页面(url)可以被直接打开

a. 小程序页面内的跳转url是我们爬虫发现页面的重要来源,且搜索引擎召回的结果页面 (url)

是必须能直接打开,不依赖上下文状态的。

特别的:建议页面所需的参数都包含在url页面跳转优先采用navigator组件,小程序提供了两种页面路由方式:

  1. navigator 组件
  2. 路由 API,包括 navigateTo / redirectTo / switchTab / navigateBack / reLaunch 清晰简洁的页面参数结构清晰、简洁、参数有含义的 querystring 对抓取以及后续的分析都有很大帮助
    必要的时候才请求用户进行授权、登录、绑定手机号等操作 a. 建议在必须的时候才要求用户授权(比如阅读文章可以匿名,而发表评论需要留名)
    web-view 中的内容建议必要时才对请求用户进行鉴权 设置一个清晰的标题和页面缩略图 a.
    页面标题和缩略图对于我们理解页面和提高曝光转化有重要的作用。

b. 通过wx.setNavigationBarTitle或 自定义转发内容onShareAppMessage对页面的标题和缩略图设置

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 文件内容最大为 5120UTF8 字符

相关推荐
井眼2 小时前
微信小程序-prettier 格式化
微信小程序·小程序
wqq_9922502774 小时前
springboot基于微信小程序的食堂预约点餐系统
数据库·微信小程序·小程序
licy__10 小时前
微信小程序登录注册页面设计(小程序项目)
微信小程序·小程序
说私域2 天前
基于“开源 2+1 链动模式 S2B2C 商城小程序”的社区团购运作主体特征分析
大数据·人工智能·小程序
HUODUNYUN2 天前
小程序免备案:快速部署与优化的全攻略
服务器·网络·web安全·小程序·1024程序员节
guanpinkeji2 天前
二手手机回收小程序,一键便捷高效回收
微信小程序·小程序·软件开发·手机回收小程序·二手手机回收
paterWang2 天前
小程序-基于java+SpringBoot+Vue的小区服务管理系统设计与实现
java·spring boot·小程序
尘浮生2 天前
Java项目实战II基于微信小程序的私家车位共享系统(开发文档+数据库+源码)
java·开发语言·数据库·学习·微信小程序·小程序·maven
tundra382 天前
DTH11传感器温度湿度+esp8266+阿里云+小程序
阿里云·小程序·云计算
虞书欣的62 天前
Python小游戏28——水果忍者
开发语言·人工智能·游戏·小程序·pycharm