POST TIME:2017-11-12 23:44
移動端和PC的整合越來越多,實現(xiàn)一個后臺管理PC、移動、微信等。如題,這個問題困擾了我和許多站長,摸索了一兩天才發(fā)現(xiàn)dedecms默認的wap跳轉(zhuǎn)正好可以拿來用。
關(guān)于首頁的跳轉(zhuǎn)大家已經(jīng)說得爛了,就不費口舌了,關(guān)于列表和文章的跳轉(zhuǎn)就沒有很好的辦法。沒錯,好內(nèi)容才拿來分享!大家一般做一個后臺管理多個平臺都是在一個空間裝一些插件實現(xiàn)自動轉(zhuǎn)碼的功能。
列表路徑一般是:域名/m/case/
文章路徑一般是:域名/m/case/1.html
具體的規(guī)則由自己的情況而定。
原來這個跳轉(zhuǎn)是用在新版的手機端上的,也就是為了“m”而生的。以下是dedecms的默認的跳轉(zhuǎn),修改紅色的地方。細心的朋友會發(fā)現(xiàn),其實這個鏈接就是跳轉(zhuǎn)鏈接,前面多的不用細看,就是移動的各種版本。這里要注意,此方法只適用于使用相對路徑而不能使用絕對路徑,{dede:global.cfg_mobileurl/}默認為“m”,如果你的移動版生成的文件夾為“wap”根據(jù)情況修改。
<meta http-equiv="mobile-agent" content="format=xhtml;url={dede:global.cfg_mobileurl/}/index.php"> <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|Windows Phone|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){window.location.href="{dede:global.cfg_mobileurl/}/index.php";}else if(/iPad/i.test(navigator.userAgent)){}else{}}catch(e){}}}}</script>
紅色部分列表頁修改為:{dede:global.cfg_mobileurl/}{dede:type}[field:typelink/]{/dede:type},把修改后的js代碼放到<head></head>之間
內(nèi)容頁修改為:{dede:global.cfg_mobileurl/}{dede:type}[field:typelink/]{/dede:type}{dede:field.id/}.html,同樣的把修改后的js代碼放到<head></head>之間
其實熟悉dedecms的都看得懂,就是自動獲取當前欄目的鏈接和獲取內(nèi)容的id,這樣不管用戶從哪里找到我們的快照,都能自適應(yīng)進入到相應(yīng)的頁面。大功告成!
該方法只適用于靜態(tài)頁面,動態(tài)頁面的跳轉(zhuǎn)方法比較簡單(未做偽靜態(tài))。
1.在同一個網(wǎng)站根目錄增加移動站目錄({dede:global.cfg_mobileurl/}系統(tǒng)默認為/m,為避免影響到根目錄下的/m文件夾,則建立文件夾/wap),安裝另外一個dedecms,安裝前先備份好數(shù)據(jù)庫,防止安裝時被覆蓋,安裝過程和PC端完全一樣;
2.把移動端的對應(yīng)模板上傳到/wap/tamplates/default/;
3.此時兩個dedecms數(shù)據(jù)庫已同一個,還原數(shù)據(jù)庫即可;
4.動態(tài)頁面跳轉(zhuǎn)JS和靜態(tài)頁面的修改方法是一樣的,是不是很簡單。
紅色部分列表頁修改為:/wap/plus/list.php?tid={dede:field.id/},把修改后的js代碼放到<head></head>之間
內(nèi)容頁修改為:/wap/plus/view.php?aid={dede:field.id/},同樣的把修改后的js代碼放到<head></head>之間