《Dedecms移動站靜態化實操分享 附工具(文字版)》要點:
本文介紹了Dedecms移動站靜態化實操分享 附工具(文字版),希望對您有用。如果有疑問,可以聯系我們。
插件下載地址:http://bbs.zhanzhang.baidu.com/thread-114281-1-1.html(這個版本是gbk版本的,如果是utf-8必要對分享的文件轉換下格式)
PPT版本請查看:【插件分享】Dedecms移動站靜態化實操分享(PPT版)
一、功效:實現dedecms網站PC端和移動端數據同步,以及移動端網站靜態化
二、基于:dedecms20150618+ 官方默認移動端模板 + 移動站域名綁定/m/目錄
三、后臺展現:從后臺上來看,只有兩塊分歧,原版的后臺只有“一鍵更新網站”功能,修改后,在原有的“一鍵更新PC網站”基礎上增加了“一鍵更新移動網站”功能.
四、法式思路
dedecms V5.7SP1正式版(2015-06-18) 已增加移動端模塊,實現了網站pc端與移動端共用同一個后臺和數據庫的功能,美中不敷的是移動端網站除首頁外僅能動態瀏覽,而無法全站生成靜態網頁.
簡單來說,dedecms靜態頁面(pc端)生成功能是調用pc端網站模板和對應標簽數據,組合為html代碼并按設置的文件名規則生成到相應的目錄下,從這一角度考慮,如果調用移動端模板,依照后臺設置的文件名和生成目錄將文件同pc端路徑生成至移動端目錄(二級目錄/m/)下,再將移動域名綁至目錄/m/上,即實現了移動端靜態文件生成,且與pc端頁面url一一對應.
我們可以基于已有功能進行簡單修改來增加以上功能(需對dedecms系統文件結構有必定了解):
1、復制dedecms “一鍵更新網站”功能(如要實現移動端的“更新欄目HTML”、“更新文檔HMTL”等功能類似操作)相關的幾個系統文件,當然也可直接對原始文件進行二次開發,但考慮到減少影響原功能的可能性和后續法式升級,這里采取了兩者功能文件隔離的方式.
2、dedecms移動端模板規則是在模板文件名后加“_m”,修改相應系統文件中的模板挪用代碼,改為移動端模板路徑格式;找到生成路徑的代碼,將生成路徑前加上“/m/”.
3、改動dedecms后臺菜單模板,加上“一鍵更新移動網站”鏈接至上面新增的系統文件,點擊后進行移動端網頁靜態文件的生成.
4、欄目更新:
(1)因為PC站可以通過“更新主頁HTML”、“更新欄目HTML”、“更新文檔HTML”來實現首頁、欄目、文章的更新,所以“一鍵更新PC網站”建議平時不需要多使用,比擬占據資源.
(2)通過“一鍵更新移動網站”功效實現移動站的文檔、欄目和首頁的更新.
5、織夢移動站的搭建辦法的延伸
干貨分享:Dedecms網站移動化分幾步?五步搞定!
Dedecms移動站靜態化實操是作為上次分享的織夢移動站的搭建的彌補和延伸.
6、目前常見的幾種織夢移動化的辦法:
(1)使用織夢官方默認的計劃,移動站為動態地址;
(2)PC站和移動站各一個后臺,共用一個數據庫;
(3)本計劃(在織夢官方默認計劃的基礎上,進行文件修改,使移動站為靜態地址);
(4)其他方式.
五、文件布局說明(黑色文件名為新增文件,黑色加粗文件名為替換原文件):
dede/
makehtml_all_m.php 一鍵更新移動網站頁面
makehtml_archives_action_m.php 移動端更新文檔
makehtml_list_action_m.php 移動端更新欄目
inc/
inc_menu.php 治理后臺導航菜單
inc_archives_functions.php 宣布文章自動生成(宣布pc端文章同時自動生成移動端頁面)
templets/
makehtml_all_m.htm 一鍵更新移動網站頁面模板
makehtml_archives_m.htm 移動端更新文檔模板
include/
arc.archives.class.php pc端更新文檔類(宣布pc端文章同時自動生成移動端頁面)
arc.archives_m.class.php 移動端更新文檔類
arc.listview_m.class.php 移動端更新欄目類
templets/
default/
index_m.htm 首頁模板
header_m.htm 通用頭部模板
list_default_m.htm 列表欄目頁默認模板(如某欄目不存在對應的移動端模板,則使用此模板)
index_article_m.htm 頻道欄目頁模板
article_article_m.htm 文章內容頁模板
m/
images/
defaultpic.gif 默認縮略圖
六、附文章圖片路徑問題的幾種解決辦法:
辦法一:修改模板的field.body標簽,將圖片替換為pc主域名的圖片地址,例:
{dede:field.body function='str_replace("/uploads/allimg/","http://www.主域名.com/uploads/allimg/",@me)/}
辦法二:服務器設置rewrite規則進行圖片路徑重定向,例:
RewriteCond%{HTTP_HOST} ^m.主域名.com$ [NC]
RewriteRule^/uploads/allimg/(.*)$ http://www.主域名.com/uploads/allimg/$1 [NC,L]
辦法三:dedecms后臺 > 系統 >系統基本參數 > 核心設置 中,開啟“(是/否)支持多站點,開啟此項后附件、欄目連接、arclist內容啟用絕對網址”功能.(該辦法僅對于開啟功能后發布的文章生效,對于之前發布的文章無效.)
瀏覽原文:http://www.ililei.com/post/1223.html
維易PHP培訓學院每天發布《Dedecms移動站靜態化實操分享 附工具(文字版)》等實戰技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養人才。