百度智能小程序搜索引擎優(yōu)化

3354次閱讀

與普通的 Web 站點(diǎn)一樣,Web 化小程序也可以通過一些搜索引擎優(yōu)化(SEO)手段獲取更準(zhǔn)確的相關(guān)性排名結(jié)果。


1.設(shè)置頁(yè)面基礎(chǔ)信息

正如在 H5 開發(fā)中,會(huì)在 HTML 中添加 title、meta description、meta keywords 標(biāo)簽,聲明頁(yè)面相關(guān)內(nèi)容,小程序的頁(yè)面信息聲明通過設(shè)置頁(yè)面基礎(chǔ)信息實(shí)現(xiàn)。

頁(yè)面基礎(chǔ)信息包括頁(yè)面的標(biāo)題、摘要、關(guān)鍵詞、頁(yè)面主圖、資源發(fā)布時(shí)間等,以下僅介紹幾個(gè)主要信息,更多設(shè)置要求詳見官方文檔《API - 頁(yè)面基礎(chǔ)信息》:

?標(biāo)題(Title):能夠更加快速洞察頁(yè)面內(nèi)容,了解該結(jié)果與需求的相關(guān)性,通常是用來決定用戶點(diǎn)擊哪個(gè)結(jié)果的主要信息。所以,使用高質(zhì)量的頁(yè)面標(biāo)題對(duì)小程序來說至關(guān)重要;

?摘要(Description):小程序首頁(yè)、欄目頁(yè)、分類頁(yè)的摘要非常重要,因?yàn)橛锌赡茉谒阉鹘Y(jié)果中直接被用戶看到,影響到用戶是否選擇點(diǎn)擊查看詳情;

?關(guān)鍵詞(Keywords):小程序開發(fā)者給網(wǎng)站某個(gè)頁(yè)面設(shè)定的詞匯,以便讓搜索引擎更好地理解頁(yè)面價(jià)值。keywords代表了小程序主題內(nèi)容,無論是首頁(yè)、內(nèi)頁(yè)還是欄目頁(yè),關(guān)鍵詞一般都代表的是當(dāng)前頁(yè)面或者欄目?jī)?nèi)容的主體。開發(fā)者根據(jù)實(shí)際情況設(shè)置即可;

?頁(yè)面主圖(Image):頁(yè)面中的主體圖片地址,必須是頁(yè)面中真實(shí)展示的與頁(yè)面主體內(nèi)容相關(guān)的圖片。有效的圖片描述可能會(huì)在搜索結(jié)果中展示,給用戶更直觀友好的體驗(yàn),提升用戶點(diǎn)擊率。

頁(yè)面基礎(chǔ)信息通過小程序 API swan.setPageInfo 設(shè)置,使用示例如下:

Page({

? ? onShow() {

? ? ? ? swan.setPageInfo({

? ? ? ? ? ? title: 'Win10控制面板在哪?怎么找出來-百度經(jīng)驗(yàn)',

? ? ? ? ? ? keywords: 'Win10控制面板在哪?win10面板,電腦軟件,電腦,游戲/數(shù)碼',

? ? ? ? ? ? description: 'Win10控制面板在哪?升級(jí)了Wi10系統(tǒng)發(fā)現(xiàn):電腦上的【控制面板】不見了,教大家怎么把消失的【控制面板】找回來。',

? ? ? ? ? ? image: 'https://example.com/myphoto.jpg'

? ? ? ? ? ? ...

? ? ? ? });

? ? })

);

更多詳細(xì)使用方式介紹見官方文檔《API - 頁(yè)面基礎(chǔ)信息

頁(yè)面基礎(chǔ)信息的設(shè)置粒度是頁(yè)面級(jí)的,因此強(qiáng)烈建議在 Page 的 onshow 生命周期中調(diào)用,以保證每次頁(yè)面切換都能有效設(shè)置當(dāng)前頁(yè)的頁(yè)面基礎(chǔ)信息。

setPageInfo 在 Web 化的內(nèi)部實(shí)現(xiàn)其實(shí)就是將調(diào)用參數(shù)動(dòng)態(tài)設(shè)置為 HTML 標(biāo)簽中的 title、meta description、meta keywords 標(biāo)簽,以及符合 The Open Graph protocol 的 meta 標(biāo)簽。 因此,如要調(diào)試調(diào)用 setPageInfo 之后,頁(yè)面基礎(chǔ)信息是否設(shè)置成功,可以檢查 Web 化頁(yè)面渲染后的 HTML Element 中是否成功設(shè)置了這幾個(gè)標(biāo)簽。Web 化頁(yè)面預(yù)覽方法將在第二章節(jié)介紹。

比如上例中的設(shè)置結(jié)果如下:

<!DOCTYPE html>

<html>

<head>

? ? <title>Win10控制面板在哪?怎么找出來-百度經(jīng)驗(yàn)</title>

...

? ? <meta name="description" content="Win10控制面板在哪?升級(jí)了Wi10系統(tǒng)發(fā)現(xiàn):電腦上的【控制面板】不見了,教大家怎么把消失的【控制面板】找回來。">

? ? <meta name="keywords" content="Win10控制面板在哪?win10面板,電腦軟件,電腦,游戲/數(shù)碼">

? ? <meta property="og:description" content="Win10控制面板在哪?升級(jí)了Wi10系統(tǒng)發(fā)現(xiàn):電腦上的【控制面板】不見了,教大家怎么把消失的【控制面板】找回來。">

? ? <meta property="og:image" content="https://example.com/myphoto.jpg">

</head>

<body>...</body>

</html>

swan.setPageInfo 中設(shè)置的字段除了在接入自然搜索場(chǎng)景下會(huì)被用到,在接入百度信息流中也起到至關(guān)重要的作用,詳見官方文檔 《信息流流量接入

另外,swan.setPageInfo API 不僅用于在流量接入場(chǎng)景下的頁(yè)面內(nèi)容聲明,在客戶端小程序?qū)崿F(xiàn)中,頁(yè)面基礎(chǔ)信息也會(huì)被用作頁(yè)面分享、頁(yè)面收藏時(shí)的摘要信息。

2.鏈接跳轉(zhuǎn)

頁(yè)面中鏈接跳轉(zhuǎn)對(duì)爬蟲收錄有很重要的價(jià)值。 對(duì)于普通 H5,頁(yè)面跳轉(zhuǎn)的方式通常有兩種:a標(biāo)簽跳轉(zhuǎn)window.location.href賦值方式跳轉(zhuǎn)。前者直接設(shè)置在 HTML 標(biāo)簽中,發(fā)現(xiàn)效率和準(zhǔn)確性相較后者友好很多。

同理,在小程序中,設(shè)置頁(yè)面跳轉(zhuǎn)的方式對(duì)應(yīng)的也有兩種:

?navigator 組件,標(biāo)簽式聲明

?導(dǎo)航類 API,通過用戶事件等方式觸發(fā)調(diào)用

為了有效的被爬蟲發(fā)現(xiàn),我們強(qiáng)烈建議在兩者都能滿足需求的情況下,使用 navigator 組件的方式聲明鏈接。

? 推薦跳轉(zhuǎn)示例:

<navigator url="/pages/detail/detail">點(diǎn)我跳轉(zhuǎn)</navigator>

?不推薦跳轉(zhuǎn)示例:

<button bindtap="jump">點(diǎn)我跳轉(zhuǎn)</button>Page({
? ?jump() {
? ? ? ?swan.navigateTo({
? ? ? ? ? ?url: '/pages/detail/detail'
? ? ? ?});
? ?}
? ?...})

3.避免使用 webview 組件

為了方便小程序開發(fā),很多開發(fā)者會(huì)選擇通過 webview 組件嵌套 H5 頁(yè)面的方式實(shí)現(xiàn)小程序。 使用 webview 組件嵌套方式實(shí)現(xiàn)的小程序?qū)τ谂老x抓取是不友好的。因此,我們不推薦使用這種方式開發(fā)小程序。

4.游客模式兼容

由于爬蟲的訪問環(huán)境沒有賬號(hào)登錄模擬,在任何頁(yè)面都將以游客模式訪問(游客模式下調(diào)用 swan.login 會(huì)執(zhí)行 fail 回調(diào))。因此,開發(fā)者希望收錄的頁(yè)面,應(yīng)考慮對(duì)游客模式的兼容。對(duì)于無用戶信息依賴的頁(yè)面不添加強(qiáng)制登錄的邏輯,用戶信息獲取失敗時(shí)仍然展示有效內(nèi)容。

例如: 在一個(gè)博客論壇的博文頁(yè),只有評(píng)論功能需要在用戶登錄態(tài)完成。那么當(dāng)在未登錄態(tài)訪問該頁(yè)面時(shí),應(yīng)該正常展示文章主體,僅在用戶點(diǎn)擊評(píng)論時(shí)再要求登錄。而非在頁(yè)面進(jìn)入時(shí)就強(qiáng)制登錄才可正常瀏覽。

5.避免頁(yè)面間訪問順序依賴

由于小程序一般外露入口較集中,比如后續(xù)頁(yè)面都只會(huì)通過首頁(yè)跳轉(zhuǎn)訪問,小程序開發(fā)者通常很容易忽略頁(yè)面之間訪問的獨(dú)立性,造成頁(yè)面實(shí)現(xiàn)邏輯與訪問路徑過于耦合的情況。例如: 在首頁(yè)請(qǐng)求數(shù)據(jù)信息后,通過 setStorage 存儲(chǔ)本地,并在跳轉(zhuǎn)二級(jí)頁(yè)時(shí)讀取 storage 中存儲(chǔ)的數(shù)據(jù),不做任何判空處理直接展示。

考慮 Web 化小程序被爬蟲抓取的情況,每個(gè)頁(yè)面都是獨(dú)立入口訪問的。所以,應(yīng)該避免這種耦合訪問順序的寫法,添加必要的兼容處理。 可以在小程序開發(fā)完成時(shí),通過單獨(dú)預(yù)覽每個(gè) Web 化頁(yè)面的方式檢查是否符合要求。

代碼示例:

首頁(yè):

Page({

? ? onShow() {

? ? ? ? swan.request({

? ? ? ? ? ? url: 'https//example.com/api/data',

? ? ? ? ? ? success: function (res) {

? ? ? ? ? ? ? ? ...

? ? ? ? ? ? ? ? swan.setStorageSync('remote-data', res.data);

? ? ? ? ? ? }

? ? ? ? });

? ? }

});

二級(jí)頁(yè):

// badPage({
? ?onShow() {
? ? ? ?let data = swan.getStorageSync('remote-data');
? ? ? ?this.render(data);
? ?}});// betterPage({
? ?onShow() {
? ? ? ?let data = swan.getStorageSync('remote-data');

? ? ? ?if (!data) {
? ? ? ? ? ?swan.request({
? ? ? ? ? ? ? ?url: 'https//example.com/api/data',
? ? ? ? ? ? ? ?success: function (res) {
? ? ? ? ? ? ? ? ? ?...
? ? ? ? ? ? ? ? ? ?data = res.data ? ? ? ? ? ? ? ?}
? ? ? ? ? ?});
? ? ? ?}

? ? ? ?this.render(data);
? ?}});

本文由夫唯SEO特訓(xùn)營(yíng)編輯整理。

搜外專注SEO培訓(xùn)和SEO周邊Saas服務(wù)解決方案,10年來超過五萬(wàn)學(xué)員在此獲得技術(shù)提升和人脈圈子。

SEO課程包含移動(dòng)搜索、零基礎(chǔ)建站、群站SEO思維、搜外6系統(tǒng)、SEM入門等。

192期A班報(bào)名時(shí)間7月1日-7月15日,請(qǐng)?zhí)砑诱猩头∧⑿牛簊eowhy2021。 微信掃碼添加客服人員

我們的目標(biāo)是:讓非技術(shù)人員輕松學(xué)會(huì)互聯(lián)網(wǎng)技術(shù)。

  • 搜外會(huì)員SEO交流群(免費(fèi))

    微信掃碼添加客服人員
  • 小程序運(yùn)營(yíng)交流群(免費(fèi))

    微信掃碼添加客服人員
  • 搜外會(huì)員SEM競(jìng)價(jià)交流群(免費(fèi))

    微信掃碼添加客服人員
  • 夫唯學(xué)員SEO交流群(VIP)

    微信掃碼添加客服人員

掃碼獲取資源

微信掃碼添加客服人員
  • SEO技術(shù)實(shí)戰(zhàn)微信群

    微信掃碼添加客服人員
  • 大站流量總監(jiān)群(審核身份)

    微信掃碼添加客服人員
  • Google獨(dú)立站英文SEO群

    微信掃碼添加客服人員
  • SEO團(tuán)隊(duì)KPI管理表格

    微信掃碼添加客服人員
  • 工業(yè)品網(wǎng)站友情鏈接群

    微信掃碼添加客服人員
  • 本地生活服務(wù)業(yè)友鏈群

    微信掃碼添加客服人員

跟夫唯老師系統(tǒng)學(xué)習(xí)群站SEO
成為互聯(lián)網(wǎng)運(yùn)營(yíng)推廣大咖

掌握SEO技巧、建站前端、群站霸屏、SEM入門、新聞源推廣……
Processed in 0.195599 Second , 72 querys.