<meta name="mobile-agent"content="format=html5; url=/m">什么意思啊
站點(diǎn)自己做好PC與手機(jī)之間的適配,以及手機(jī)各個(gè)版式之間的適配。當(dāng)手機(jī)用戶通過百度移動(dòng)搜索或者其他方式訪問站點(diǎn)的PC頁(yè)(首頁(yè)或者內(nèi)容頁(yè))時(shí),站點(diǎn)將其自動(dòng)適配到該P(yáng)C頁(yè)面對(duì)應(yīng)的手機(jī)頁(yè),并為之選擇合適的頁(yè)面版本。name="mobile-agent":為更新后的meta聲明,建議使用。原有meta規(guī)則http-equiv="mobile-agent"能夠兼容并繼續(xù)生效,已標(biāo)注過的無需修改。
format=html5:根據(jù)手機(jī)頁(yè)的協(xié)議語(yǔ)言,選擇中的一種。(包括wml|xhtml|html5)
url=/m:代表當(dāng)前PC頁(yè)所對(duì)應(yīng)的手機(jī)頁(yè)/m,兩者必須是一一對(duì)應(yīng)關(guān)系(而不是統(tǒng)一對(duì)應(yīng)至手機(jī)站首頁(yè))
dede全站做移動(dòng)跳轉(zhuǎn)+適配,精通dede和PHP的來!
考慮到中小型網(wǎng)站中Dedecms使用概率較高,今天我們特地邀請(qǐng)了百度站長(zhǎng)社區(qū)版主—洪石陳來為大家做Dedecms移動(dòng)適配分享。第一步:安裝Dedecms移動(dòng)站點(diǎn)的兩種方式
(1)下載新版本直接安裝使用,Dedecms版本:V5.7SP1正式版(2015-06-18)該版本包含舊版本所沒有的移動(dòng)站點(diǎn)功能。
(2)老版本升級(jí)(僅針對(duì)增加移動(dòng)站點(diǎn)功能),下載最新版本(注意網(wǎng)站編碼需與原站一致),復(fù)制壓縮包中以下文件到原站對(duì)應(yīng)目錄下:
注意:如果原站有非默認(rèn)模板,如某欄目模板為/templets/defaultst_default_news.htm,可將/templets/defaultst_default_m.htm復(fù)制一份改名為list_default_news_m.htm。
即:pc端網(wǎng)站模板需有對(duì)應(yīng)的移動(dòng)端網(wǎng)站模板,后者文件名為前者文件名后“_m”。
安裝或升級(jí)dedecms完成,此時(shí)應(yīng)該就可以進(jìn)行移動(dòng)跳轉(zhuǎn)適配了,但,dedecms20150618版本提供的移動(dòng)站點(diǎn)功能在使用過程中發(fā)現(xiàn)一些問題,需要進(jìn)行修改后才可正常使用,所以有了下面的dedecms修改步驟…
第二步:修改Dedecms
(1)原站如做了將DATA移到根目錄外的安全設(shè)置,需修改/m/index.php代碼:
if(!file_exists(dirname(__FILE__).'/../data/common.inc.php'))
{
header('Location:install/index.php');
exit();
}
將其中/../data/common.inc.php改為/../../data/common.inc.php,或直接將以上5行代碼刪除。
(2) 移動(dòng)站點(diǎn)首頁(yè)在會(huì)第一次訪問時(shí)自動(dòng)生成首頁(yè)靜態(tài)文件,前提是/m/目錄需設(shè)置為可寫權(quán)限,否則將無法正常更新。之后更新首頁(yè)靜態(tài)文件需登陸后臺(tái)手動(dòng)更新:在“更新主頁(yè)HTML”中將“選擇主頁(yè)模板”改為“default/index_m.htm”,將“主頁(yè)位置”改為“../m/index.html”,再生成主頁(yè)靜態(tài)文件。
注:該版本號(hào)稱“自動(dòng)生成HTML版”,但默認(rèn)移動(dòng)站模板里卻有<ahref="index.php">的動(dòng)態(tài)首頁(yè)鏈接,需替換為<ahref="index.html">靜態(tài)鏈接形式。
※如覺得使用靜態(tài)頁(yè)面麻煩,想將首頁(yè)設(shè)置為動(dòng)態(tài)瀏覽,可修改/m/index.php:
$row['showmod']= isset($row['showmod'])? $row['showmod'] : 0;
if ($row['showmod'] == 1)
{
$pv->SaveToHtml(dirname(__FILE__).'/index.html');
include(dirname(__FILE__).'/index.html');
exit();
}
else {
$pv->Display();
exit();
}
以上代碼替換為一行:$pv->Display();
第三步:首頁(yè)“圖文資訊”部分的url為pc端鏈接,修改為移動(dòng)端鏈接:
搜索模板/templets/default/index_m.htm中所有<a href="[field:arcurl/]"> ,替換為<ahref="view.php?aid=[field:id/]">
第四步:通用頭部含有搜索框,搜索跳轉(zhuǎn)至pc端搜索頁(yè)面,建議刪除:
在/templets/default/header_m.htm中刪除以下代碼:
<form class="am-topbar-form am-topbar-leftam-form-inline am-topbar-right" role="search"action="{dede:global.cfg_cmsurl/}/plus/search.php">
<input type="hidden" name="mobile"value="1" />
<input type="hidden" name="kwtype"value="0" />
<div class="am-form-group">
<input name="q" type="text"class="am-form-field am-input-sm" placeholder="輸入關(guān)鍵詞">
</div>
<button type="submit" class="am-btnam-btn-default am-btn-sm">搜索</button>
</form>
第五步: 移動(dòng)站點(diǎn)默認(rèn)使用二級(jí)目錄,但目前移動(dòng)適配需要使用二級(jí)域名(前段時(shí)間是可以使用二級(jí)目錄的,但目前已調(diào)整,不能再提交二級(jí)目錄),所以我們要設(shè)置移動(dòng)站可通過二級(jí)域名訪問,解析二級(jí)域名至網(wǎng)站所在服務(wù)器ip,并在服務(wù)器/空間上將二級(jí)域名綁定到/m/目錄。
成功設(shè)置二級(jí)域名后,通過二級(jí)域名瀏覽網(wǎng)站會(huì)發(fā)現(xiàn)圖片均無法顯示,原因是圖片路徑有誤——圖片路徑為“/uploads/x/y.jpg”
相對(duì)根目錄路徑形式,在pc站頁(yè)面中顯示正常,因?yàn)閜c站域名下存在該目錄,而二級(jí)域名綁定的是二級(jí)目錄,其中并不存在該目錄,
所以訪問圖片會(huì)返回 404錯(cuò)誤。對(duì)此,有多種解決方案,下面提供兩個(gè)思路(示例pc站:www.nt090.com;移動(dòng)站:m.nt090.com):
(1)URL 重寫(推薦)
將對(duì)http://m.nt090.com/uploads/的訪問重寫 至http://www.nt090.com/uploads/,apache環(huán)境下,在/m/目錄中的.htaccess(如無則需新建)中增加以下代碼即可:
RewriteEngine on
RewriteCond %{http_host} ^m.nt090.com [NC]
RewriteRule ^uploads/(.*)$ http://www.nt090.com/uploads/$1 [L]
iis環(huán)境下類似規(guī)則。
(2)修改模板路徑
在所有移動(dòng)端模板中的<head></head>中增加:
<base href="http://www.nt090.com" />
再將代碼中的
“<a href="list.php”改為完整路徑“<a href="http://m.nt090.com/list.php”
“<a href="viewphp”改為完整路徑“<a href="http://m.nt090.com/view.php”
另:需將根目錄下的/images/defaultpic.gif(縮略圖默認(rèn)圖片)復(fù)制到/m/目錄下,否則列表頁(yè)中如存在無縮略圖的文章,對(duì)應(yīng)縮略圖位置會(huì)無法正常顯示圖片。
其他:
1、如有欄目不想在首頁(yè)下方列表區(qū)域或通用頭部顯示,可在后臺(tái)對(duì)應(yīng)的欄目管理/常規(guī)選項(xiàng)中設(shè)置隱藏。
2、為了更好的實(shí)現(xiàn)pc端和移動(dòng)端匹配效果,可在pc端模板增加類似如下代碼:
首頁(yè)
<meta http-equiv="mobile-agent"content="format=xhtml;url={dede:global.cfg_mobileurl/}/">
<scripttype="text/javascript">
if(window.location.toString().indexOf('pref=padindex')!= -1){}else{if(/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){if(window.location.href.indexOf("?mobile")<0){try{if(/Android|WindowsPhone|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){window.location.href="{dede:global.cfg_mobileurl/}/";}elseif(/iPad/i.test(navigator.userAgent)){}else{}}catch(e){}}}}
</script>
欄目頁(yè)
<metahttp-equiv="mobile-agent"content="format=xhtml;url={dede:global.cfg_mobileurl/}/list.php?tid={dede:field.id/}">
<scripttype="text/javascript">
if(window.location.toString().indexOf('pref=padindex')!= -1){}else{if(/AppleWebKit.*Mobile/i.test(navigator.userAgent) ||(/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){if(window.location.href.indexOf("?mobile")<0){try{if(/Android|WindowsPhone|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){window.location.href="{dede:global.cfg_mobileurl/}/list.php?tid={dede:field.id/}";}elseif(/iPad/i.test(navigator.userAgent)){}else{}}catch(e){}}}}
</script>
文章頁(yè)
<meta http-equiv="mobile-agent"content="format=xhtml;url={dede:global.cfg_mobileurl/}/view.php?aid={dede:field.id/}">
<script type="text/javascript">
if(window.location.toString().indexOf('pref=padindex') !=-1){}else{if(/AppleWebKit.*Mobile/i.test(navigator.userAgent) ||(/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){if(window.location.href.indexOf("?mobile")<0){try{if(/Android|WindowsPhone|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){window.location.href="{dede:global.cfg_mobileurl/}/view.php?aid={dede:field.id/}";}elseif(/iPad/i.test(navigator.userAgent)){}else{}}catch(e){}}}}
</script>
代碼中的{dede:global.cfg_mobileurl/}部分要替換為包含“http://”的二級(jí)域名(即:http://m.nt090.com),如不想修改模板里的相關(guān)代碼,也可修改/include/common.inc.php中的$cfg_mobileurl變量賦值為二級(jí)域名。
以上代碼為dedecms新版模板所使用,第一行<meta>標(biāo)簽代碼為百度發(fā)現(xiàn)跳轉(zhuǎn)適配關(guān)系的方式(可同時(shí)使用)之一——“Meta標(biāo)記”,下面幾行javascript代碼的功能是識(shí)別是否移動(dòng)端設(shè)備訪問,如是則將當(dāng)前pc端頁(yè)面自動(dòng)跳轉(zhuǎn)到匹配的移動(dòng)端頁(yè)面。
另外,還可使用<link>標(biāo)簽以便于百度更好地發(fā)現(xiàn)PC站和移動(dòng)站的移動(dòng)適配關(guān)系,在模板的<head></head>標(biāo)簽內(nèi)加入如下代碼:
PC站首頁(yè)模板:
<link rel="alternate" media="only screen and(max-width: 640px)" href="http://m.nt090.com" >
PC站欄目頁(yè)模板:
<link rel="alternate" media="only screen and(max-width: 640px)"href="http://m.nt090.com/list.php?tid={dede:field.id/}" >
PC站文章頁(yè)模板:
<link rel="alternate" media="only screen and(max-width: 640px)" href=" http://m.nt090.com/view.php?aid={dede:field.id/}">
移動(dòng)站首頁(yè)模板:
<link rel="canonical"href="http://www.nt090.com/ "/>
欄目頁(yè)模板:
<link rel="canonical"href="http://www.nt090.com{dede:type typeid='0' row=1}[field:typelink/]{/dede:type}"/>
文章頁(yè)模板:
<link rel="canonical"href="http://www.nt090.com/{dede:field.idrunphp='yes'}$id=@me;@me='';$url=GetOneArchive($id);@me=$url['arcurl'];{/dede:field.id}"/>
至此,移動(dòng)站架設(shè)基本成型。
提交移動(dòng)跳轉(zhuǎn)適配
URL對(duì)應(yīng)關(guān)系示例:
房車源頭廠家 江經(jīng)理 優(yōu)惠熱線:15391696081