百度收录了本站小程序,搜索展示的内容居然只显示小程序名,并没有显示真正的标题内容,翻阅文档后,发现百度小程序的标题收录有点像网站,内含:title,keywords,description,releaseDate,image还有部分OG标签。

标签如下:

<title>彧繎博客 - 关注互联网服务,分享极客精神!</title>
<meta name="description" content="彧繎博客(opssh.cn),致力于软路由固件刷写、WEB前端开发以及服务器运维经验和资源分享,从日常到工作,记录渺小且枯燥的日常生活,从中收获未曾拥有的乐趣。">
<meta name="keywords" content="软路由固件,前端开发,服务器运维,DIY制作">
<meta property="og:description" content="彧繎博客(opssh.cn),致力于软路由固件刷写、WEB前端开发以及服务器运维经验和资源分享,从日常到工作,记录渺小且枯燥的日常生活,从中收获未曾拥有的乐趣。">
<meta property="og:release_date" content="2021-07-04 09:30:28">
<meta property="og:title" content="关注互联网服务,分享极客精神!">
<meta property="og:image" content="https://oss.opssh.cn/fonts/logo.jpg">

这些标签内容比较好理解

正常标签:标题,摘要,关键词

OG 标签:标题,摘要,关键词,发布时间,缩略图

理解以上内容,就通过API接口获取出来,上线的小程序直接按照以下代码进行调用即可

将以下代码布置到所有的 pages 页面调用

    swan.setPageInfo({
        title: res.Title + ' - ' res.Name,
        //标题和名字,根据自己习惯进行调整
        keywords: res.Category.Name,
        //页面关键词
        description: res.Intro.replace(/<[^>]+>/g, ""),
        //内容摘要
        articleTitle: res.Title,
        //OG标签标题
        releaseDate: res.PostTime,
        //内容发布时间
        image: res.Thumb,
        //内容缩略图,可以为多张,如下格式
        //image: ['图片1' , '图片2' ,'图片3' ],
        success: res => {
            console.log('setPageInfo success', res);
        },
        fail: err => {
            console.log('setPageInfo fail', err);
        }
    });

百度小程序标题展示问题,可参考官方文档:https://smartprogram.baidu.com/docs/develop/api/open/swan-setPageInfo/

releaseData 、 articleTitle 、 image 用于宿主 App 信息流抓取收录分发,并有助于搜索准确理解页面内容。

title 字段用于搜索抓取当前页面,articleTitle 字段用于当前页面在宿主 App 信息流中的标题展示。

当前页面包含焦点图或者正文图片时 image 为必填字段。