2021-05-09 分類: 網(wǎng)站建設(shè)
關(guān)于網(wǎng)站JavaScript的使用和SEO注意事項(xiàng)。JS的SEO是近年越來越重要的問題,以前還沒寫過這方面的話題。無論是異步調(diào)用內(nèi)容,還是增加頁面互動,現(xiàn)在的網(wǎng)站幾乎無法避免使用JS腳本。但JavaScript使用不當(dāng)?shù)脑捒赡軙EO造成非常大的影響。
搜索引擎怎樣處理JS
首先,簡單一句話,JS造成SEO問題的癥結(jié)在于,搜索引擎不一定執(zhí)行JS腳本。做SEO的都知道,要有搜索流量,搜索引擎蜘蛛需要順利爬行鏈接,抓取頁面,解析并索引頁面html代碼中的內(nèi)容,然后才談得上排名和流量。在爬行、抓取、索引的過程中,如果JS造成障礙,就會導(dǎo)致問題。瀏覽器執(zhí)行JS、渲染頁面是肯定的,使用用戶訪問一切正常。但問題就在于,搜索引擎蜘蛛抓取頁面html代碼時,如果遇到JS,不一定會去執(zhí)行JS腳本,那么需要執(zhí)行JS才能看到的內(nèi)容,搜索引擎就不一定看得到。Google遇到頁面JS時,會在有計算資源、且頁面有比較高價值時,嘗試執(zhí)行腳本、渲染頁面。百度則基本上不執(zhí)行JS腳本。所以做中文網(wǎng)站,使用JS上就更要謹(jǐn)慎。重要鏈接不要用JS
搜索引擎爬行、抓取頁面是靠跟蹤鏈接的。如果重要鏈接需要運(yùn)行JS腳本才能調(diào)用或解析出來,那搜索引擎就可能無法跟蹤。不是說鏈接就不能用JS調(diào)用,但重要的、想被收錄的頁面至少還要有最普通的格式鏈接提供抓取入口。比如,調(diào)用一些相關(guān)文章、相關(guān)產(chǎn)品鏈接,可以用JS,但這些鏈接在網(wǎng)站主導(dǎo)航中都已經(jīng)有列表頁面提供了入口才行。主導(dǎo)航、菜單系統(tǒng)、欄目/產(chǎn)品列表,不要用JS,除非你確認(rèn)有其它方法提供了入口。想被收錄的內(nèi)容不要用JS調(diào)用
頁面上的文字內(nèi)容,凡是想被收錄的,不要用JS調(diào)用,包括文章正文,產(chǎn)品說明,產(chǎn)品圖片,評論等。JS倒是可以用來調(diào)用那些不想被收錄的文字,比如廣告、某些側(cè)欄內(nèi)容等。我見過用JS調(diào)用內(nèi)容的各種千奇百怪的用法,比如還有用JS調(diào)用頁面標(biāo)題標(biāo)簽的。慎用懶加載、瀑布流
圖片懶加載,甚至文字內(nèi)容懶加載,是現(xiàn)在網(wǎng)站經(jīng)常使用的方法,在一定程度上有利于提高頁面速度。但要注意,用JS實(shí)現(xiàn)懶加載時,是否需要用戶互動才能加載,比如點(diǎn)擊“更多”鏈接,或者向下拉頁面,搜索引擎蜘蛛是不會做這些動作的,不會點(diǎn)擊按鈕,也不會下拉頁面,所以就可能看不到懶加載后的內(nèi)容。無論懶加載的是更多本頁內(nèi)容,還是更多其它頁面列表,都可能造成爬行、索引問題。列表頁面使用瀑布流是社交媒體網(wǎng)站的主流方式,用戶已經(jīng)習(xí)慣,有的普通網(wǎng)站也學(xué)這種方式。同樣,要考慮到社交媒體網(wǎng)站經(jīng)常是主動屏蔽搜索引擎的,不想讓搜索引擎索引,普通網(wǎng)站大概率是想被索引的,使用瀑布流時要想一想有沒有提供搜索引擎可以跟蹤鏈接的其它入口。
注意速度
一般來說,使用JS會拖慢頁面打開和響應(yīng)速度。通常下載JS文件倒還不算大問題,除非用了幾MB的JS文件。但瀏覽器執(zhí)行JS有可能會很耗費(fèi)設(shè)備資源,設(shè)計不周的JS可能會執(zhí)行好幾秒鐘,瀏覽器在執(zhí)行JS時不能處理其它事情,造成腳本阻塞,對用戶來說就是個頁面空白或卡死數(shù)秒鐘的狀態(tài),這是非常急人的。所以,盡量刪除執(zhí)行時間過長的JS,執(zhí)行超過1-2秒的腳本需要慎重考慮。盡量合并JS腳本,減少