當(dāng)前位置:首頁(yè) >  站長(zhǎng) >  建站經(jīng)驗(yàn) >  正文

織夢(mèng)移動(dòng)化搭建及適配問(wèn)題分享

 2015-12-11 08:49  來(lái)源: A5專欄   我來(lái)投稿 撤稿糾錯(cuò)

  域名預(yù)訂/競(jìng)價(jià),好“米”不錯(cuò)過(guò)

第一步:安裝Dedecms移動(dòng)站點(diǎn)的兩種方式

(1)下載新版本直接安裝使用,Dedecms版本:V5.7SP1正式版(2015-06-18)該版本包含舊版本所沒(méi)有的移動(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)適配了,但,dedecms 20150618版本提供的移動(dòng)站點(diǎn)功能在使用過(guò)程中發(fā)現(xiàn)一些問(wè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ì)第一次訪問(wèn)時(shí)自動(dòng)生成首頁(yè)靜態(tài)文件,前提是/m/目錄需設(shè)置為可寫(xiě)權(quán)限,否則將無(wú)法正常更新。之后更新首頁(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)站模板里卻有的動(dòng)態(tài)首頁(yè)鏈接,需替換為靜態(tài)鏈接形式。

※如覺(jué)得使用靜態(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中所有 ,替換為

第四步:通用頭部含有搜索框,搜索跳轉(zhuǎn)至pc端搜索頁(yè)面,建議刪除:

在/templets/default/header_m.htm中刪除以下代碼:

第五步: 移動(dòng)站點(diǎn)默認(rèn)使用二級(jí)目錄,但目前移動(dòng)適配需要使用二級(jí)域名(前段時(shí)間是可以使用二級(jí)目錄的,但目前已調(diào)整,不能再提交二級(jí)目錄),所以我們要設(shè)置移動(dòng)站可通過(guò)二級(jí)域名訪問(wèn),解析二級(jí)域名至網(wǎng)站所在服務(wù)器ip,并在服務(wù)器/空間上將二級(jí)域名綁定到/m/目錄。

成功設(shè)置二級(jí)域名后,通過(guò)二級(jí)域名瀏覽網(wǎng)站會(huì)發(fā)現(xiàn)圖片均無(wú)法顯示,原因是圖片路徑有誤——圖片路徑為“/uploads/x/y.jpg”

相對(duì)根目錄路徑形式,在pc站頁(yè)面中顯示正常,因?yàn)閜c站域名下存在該目錄,而二級(jí)域名綁定的是二級(jí)目錄,其中并不存在該目錄,

所以訪問(wèn)圖片會(huì)返回 404錯(cuò)誤。對(duì)此,有多種解決方案,下面提供兩個(gè)思路(示例pc站:www.nt090.com ;移動(dòng)站:m.***.com):

(1)URL 重寫(xiě)(推薦)

將對(duì).***.com/uploads/的訪問(wèn)重寫(xiě) 至.***.com/uploads/,apache環(huán)境下,在/m/目錄中的.htaccess(如無(wú)則需新建)中增加以下代碼即可:

RewriteEngine on

RewriteCond %{http_host} ^m.***.com [NC]

RewriteRule ^uploads/(.*)$ .***.com/uploads/$1 [L]

iis環(huán)境下類似規(guī)則。

(2)修改模板路徑

在所有移動(dòng)端模板中的中增加:

再將代碼中的

另:需將根目錄下的/images/defaultpic.gif(縮略圖默認(rèn)圖片)復(fù)制到/m/目錄下,否則列表頁(yè)中如存在無(wú)縮略圖的文章,對(duì)應(yīng)縮略圖位置會(huì)無(wú)法正常顯示圖片。

其他:

1、如有欄目不想在首頁(yè)下方列表區(qū)域或通用頭部顯示,可在后臺(tái)對(duì)應(yīng)的欄目管理/常規(guī)選項(xiàng)中設(shè)置隱藏。

2、為了更好的實(shí)現(xiàn)pc端和移動(dòng)端匹配效果,可在pc端模板增加類似如下代碼:

首頁(yè)

欄目頁(yè)

文章頁(yè)

代碼中的{dede:global.cfg_mobileurl/}部分要替換為包含“;的二級(jí)域名(即:.***.com),如不想修改模板里的相關(guān)代碼,也可修改/include/common.inc.php中的$cfg_mobileurl變量賦值為二級(jí)域名。

以上代碼為dedecms新版模板所使用,第一行標(biāo)簽代碼為百度發(fā)現(xiàn)跳轉(zhuǎn)適配關(guān)系的方式(可同時(shí)使用)之一——“Meta標(biāo)記”,下面幾行javascript代碼的功能是識(shí)別是否移動(dòng)端設(shè)備訪問(wèn),如是則將當(dāng)前pc端頁(yè)面自動(dòng)跳轉(zhuǎn)到匹配的移動(dòng)端頁(yè)面。

另外,還可使用標(biāo)簽以便于百度更好地發(fā)現(xiàn)PC站和移動(dòng)站的移動(dòng)適配關(guān)系,在模板的標(biāo)簽內(nèi)加入如下代碼:

至此,移動(dòng)站架設(shè)基本成型。

提交移動(dòng)跳轉(zhuǎn)適配

URL對(duì)應(yīng)關(guān)系示例:

適配方式:

欄目頁(yè)的對(duì)應(yīng)關(guān)系沒(méi)有規(guī)律,且數(shù)量較少,使用URL適配 ;文章頁(yè)為有規(guī)律的網(wǎng)址,且數(shù)量多,使用規(guī)則適配。

提交文章頁(yè)規(guī)則適配(如圖):

提交首頁(yè)和欄目頁(yè)URL適配(如圖):

對(duì)于欄目較多的Dedecms網(wǎng)站,人工列出所有的欄目頁(yè)URL對(duì)顯然很費(fèi)事,這里推薦一個(gè)方法可以輕松解決該問(wèn)題:

※在模板中嵌入以下代碼,對(duì)應(yīng)前臺(tái)頁(yè)面中即可顯示所有欄目的URL對(duì),復(fù)制粘貼即可:

{dede:channelartlist row=100 typeid='top'}

.***.com{dede:field name='typeurl'/} .***.com/list.php?tid={dede:field name='id'/}

{dede:channel type='son' noself='true'}

.***.com[field:typelink/] .***.com/list.php?tid=[field:id/]

{/dede:channel}

{/dede:channelartlist}

※提交完規(guī)則適配,等待百度審核。

如果所提交的適配關(guān)系有誤,處理狀態(tài)將很快會(huì)出現(xiàn)“校驗(yàn)失敗”的提示。

很長(zhǎng)一段時(shí)間以來(lái),很多站長(zhǎng)應(yīng)該都發(fā)現(xiàn)移動(dòng)適配“校驗(yàn)中”時(shí)間很長(zhǎng),對(duì)于此問(wèn)題,目前官方已做了改進(jìn),校驗(yàn)效率有了明顯提升,以前所提交的適配關(guān)系發(fā)現(xiàn)正在陸續(xù)通過(guò)。

以下為很早前提交、近期已通過(guò)適配的一個(gè)網(wǎng)站示例:

本文方案基于Dedecms尚未成熟的移動(dòng)站功能,雖較為簡(jiǎn)單易用,但美中不足的是目前移動(dòng)站URL僅能使用動(dòng)態(tài)地址,如需使用靜態(tài)地址需要通過(guò)設(shè)置偽靜態(tài)來(lái)實(shí)現(xiàn),或者等待Dedecms發(fā)布下一個(gè)較為成熟的版本,再或者直接對(duì)Dedecms進(jìn)行二次開(kāi)發(fā)實(shí)現(xiàn)移動(dòng)站的靜態(tài)頁(yè)面生成功能,對(duì)于此類操作本文就不再延伸……

申請(qǐng)創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

相關(guān)標(biāo)簽
織夢(mèng)建站教程
移動(dòng)化

相關(guān)文章

熱門(mén)排行

信息推薦