SEO優(yōu)化入門很簡(jiǎn)單,想精通卻很難,需要SEOer自主學(xué)習(xí)相關(guān)的一些知識(shí)點(diǎn)和技巧,然后通過(guò)大量的實(shí)踐去進(jìn)行驗(yàn)證。今天云無(wú)限小韓就來(lái)跟大家說(shuō)一說(shuō)代碼優(yōu)化的注意事項(xiàng)。
代碼優(yōu)化主要包括一些無(wú)用代碼刪除、注釋代碼精簡(jiǎn)、代碼壓縮和js優(yōu)化調(diào)整等等。通過(guò)代碼優(yōu)化可以方便蜘蛛更持續(xù)的抓取我們的代碼,增加蜘蛛抓取效率。特別是一些網(wǎng)站代碼比較冗余的網(wǎng)站,會(huì)增加蜘蛛壓力,很可能導(dǎo)致蜘蛛無(wú)法正常抓取頁(yè)面全部?jī)?nèi)容,這時(shí)候就需要用到代碼優(yōu)化了。
無(wú)用代碼刪除、注釋代碼精簡(jiǎn)
很多網(wǎng)站前端看著非常好,但是一查看源碼就會(huì)發(fā)現(xiàn)內(nèi)容太過(guò)雜亂,成片的注釋代碼加上各種無(wú)效的js以及一些前端不顯示但是在源碼里出現(xiàn)的內(nèi)容。這時(shí)候我們就需要把無(wú)用的代碼以及注釋的代碼進(jìn)行刪除,如果是擔(dān)心后期可能會(huì)用到這些代碼,可以做一個(gè)備份文件來(lái)保留這些代碼。
如果用百度模擬抓取就會(huì)發(fā)現(xiàn),百度給的提示是只抓取網(wǎng)頁(yè)源碼前200K的內(nèi)容,如果咱們網(wǎng)站源碼內(nèi)容只能的超過(guò)200K的話,是不是有很大的可能性導(dǎo)致百度蜘蛛抓取我們頁(yè)面出現(xiàn)問(wèn)題呢?所以適當(dāng)精簡(jiǎn)代碼是避免影響百度蜘蛛抓取的一個(gè)必要條件。
代碼壓縮
代碼壓縮是通過(guò)一些第三方工具對(duì)頁(yè)面進(jìn)行壓縮,壓縮后的代碼可以減小源碼大小,其目的也是為了提升蜘蛛的抓取效率。但是代碼壓縮后會(huì)極大的影響源碼閱讀,因?yàn)檎麄(gè)源碼就沒(méi)有空行了,所有的代碼全部緊挨在一起,不過(guò)遇到想要查看的源碼可以通過(guò)代碼美化來(lái)反壓縮,這樣就可以正常閱讀代碼了。
css、js精簡(jiǎn)
css和js精簡(jiǎn)分兩部分,第一部分是把一些寫在源碼里的js、css內(nèi)容寫成外部調(diào)取的形式,第二部分就是對(duì)js和css文件進(jìn)行合并。
比如如下是寫在源碼里的js文件:
<script type="text/javascript">
var mainDomainId = 1;
var fk_sale = {};
fk_sale._proSiteQueryStr = '';
fk_sale.cid = 14938609;
fk_sale.siteVer = 130;
fk_sale.popupWindowSiteVer = 10;
fk_sale.isLuckyGuyFlag = false;
fk_sale.popupWindowEndYear = 2018;
fk_sale.popupWindowEndMonth = 1;
fk_sale.popupWindowEndDay = 31;
fk_sale.popupWindowDays = -571;
fk_sale.popupWindowMs = -49375752027;
fk_sale.openDays = 699;
fk_sale.siteCreateDays = 699;
fk_sale.siteCreateMinutes = 1007934;
fk_sale.openMinutes = 1007934;
fk_sale.popupWindowEndSignupHours = 720.0;
var queryStr = "";
if(fk_sale._proSiteQueryStr !== void 0 && fk_sale._proSiteQueryStr !== ""){
queryStr = '&' + fk_sale._proSiteQueryStr;
}
fk_sale.url = 'http://www.ceshi.website/jump.jsp?t=40&siteVersion=0&buySiteVer=true&siteSid=0#appId=shop';
fk_sale.showDomainWindowFlag = false;
fk_sale.cacct = 'ceshi.website';
fk_sale.imgBigSrc = 'http://www.ceshi.website/image/pro/20170101/salesPromotion.png?v=201701101133';
fk_sale.imgBigBtn = 'http://www.ceshi.website/image/pro/20170101/btn_buy.png?v=201701101133';
fk_sale.imgClose = 'http://www.ceshi.website/image/pro/20170101/close.png?v=201701101133';
fk_sale.siteFirstLogin = false;
fk_sale.isShowAdvertisementWindowThreeMinute = false;
fk_sale.textUrl = 'http://www.ceshi.website/jump.jsp?t=40&siteVersion=0&buySiteVer=true&siteSid=0#appId=shop';
fk_sale.domainImgBigBg = 'http://www.ceshi.website/image/pro/20160101/domainSearchImg.png';
fk_sale.domainImgClose = 'http://www.ceshi.website/image/pro/20160101/close.png?v=201601181937';
fk_sale.siteBizBigClose = 'http://www.ceshi.website/image/pro/20160701/close_popup.png';
fk_sale.siteBizBigBg = 'http://www.ceshi.website/image/pro/20160701/popup02.png';
fk_sale.showSiteBizWindow = false;
fk_sale.showSitePopWindow = false;
fk_sale.showDJPopWindow = false;
fk_sale.openFlyer = false;
if(Fai.top._proSiteQueryStr === undefined){
Fai.top._proSiteQueryStr = '';
}
</script>
這種就可以寫成
多個(gè)這樣的js文件又可以合并成一個(gè),這樣就從根本上減少了很多js和css的冗余代碼,達(dá)到了提升網(wǎng)站加載速度的目的。另外css文件可以寫在代碼前部分,而js文件可以寫在網(wǎng)站最后,因?yàn)榇蟛糠謏s都會(huì)影響加載速度,但是卻不影響前端展示,放在最后可以避免影響網(wǎng)站展示效率。
還有一些其他的影響網(wǎng)站加載速度的,比如服務(wù)器帶寬,網(wǎng)絡(luò)穩(wěn)定性等等,這些與網(wǎng)站代碼優(yōu)化無(wú)關(guān)這里小韓就不多做介紹了。如果大家有更好的方法,歡迎與小韓一起來(lái)討論!