【1】PHPCMS V9系統目錄簡析
在研究所有問題之前,請先了解一下系統的文件目錄結構,具體如下圖所示:
【2】想修改默認的模板風格怎么辦?
PHPCMS V9默認的網頁模板在phpcms目錄下的templates文件夾。如果想更換模板,可以根據新模板的文件組織結構,分別覆蓋default文件夾和static文件夾。然后到網頁后台管理平台,切換網頁風格,就可以看到新換的網頁模板首頁樣式。
后台管理操作步驟如下:設置——>站點管理——>修改-->模板風格配置(切換風格,當然風格由自己提前添加進代碼目錄中)
【3】如何修改WampServer默認存放網頁的文件夾?
左鍵單擊,點擊“www directory”,可以打開WampServer默認存放網頁的文件夾(例如 C:\wamp\www)。
實際的工作中,存放網頁的文件夾有可能不在www目錄下,或者WampServer安裝的盤符空間太小,為了網站以后的可擴充性考慮,想把網站的實際路徑更換一下等等場景,需要修改WampServer默認的存放網頁的文件夾。修改步驟分為以下幾步:
1. 打開WampServer的安裝目錄,再打開里面的“script”文件夾,用Notepad++打開里面的config.inc.php文件,搜索“wwwDir”,大概61行找到“$wwwDir = $c_installDir.'/www';”,改成我們希望的目錄即可,比如改成D:\webdirectory,對應的代碼為:
1 $wwwDir = $c_installDir.'d/webdirectory';
2. 打開WampServer的安裝目錄,找到文件夾(本地安裝在C盤) C:\wamp\bin\apache\apache2.4.9\conf,用Notepad++打開httpd.conf文件,搜索“DocumentRoot”,大概230行,修改為:
1 DocumentRoot "d:/webdirectory/"
再搜索“Directory”,大概252行,修改為:
1 <Directory "d:/webdirectory/">
3. 重新啟動所有服務Restart All Services,直到圖標顏色變為綠色為正常。否則,請首先檢查修改的目錄是否已存在;再檢查上面的兩步操作是否都正確。
4. 檢查修改結果。再點擊“www directory”,可以看到打開的應該為剛剛修改過的文件夾目錄即可。另外,在瀏覽器網址欄輸入:http://localhost/phpcms/index.php 查看網頁默認模板首頁正常。
【3】外網訪問我們配置好的WampServer服務器腫么辦?
安裝完WampServer和PHPCMS后,我們可以在本機瀏覽器訪問到網站的首頁,但是當我們嘗試通過外網訪問配置的服務器時候,發現外網訪問會提示權限不允許,這是因為WampServer默認是只允許127.0.0.1訪問的,也就是只允許本機訪問。那么,如何修改呢?找到 C:\wamp\bin\apache\apache2.4.9\conf,用Notepad++打開httpd.conf文件,搜索“onlineoffline”,大概278行左右,屏蔽Require local,添加為Require all granted。如下圖所示:
【4】上傳文件大小受限怎么辦?
如上圖所示,默認單個文件大小為2MB。修改附近配置步驟如下:
1. 修改phpcms后台配置
phpcms后台管理-->站點設置-->修改-->附件配置-->允許附件大小,輸入數值如10240。(當然,這個值可以是你想要任何大小)
2. 修改php.ini文件配置
- 打開php的配置文件php.ini(文件路徑:)。搜索“upload_max_filesize”,把這個值改為10240(如上,值可以根據自己需要改)。
- 繼續在php.ini中搜索“post_max_size”,把這個值改為300000。(表單提交的最大限制值,此項不是限制上傳單個文件的大小,而是針對整個表單提交的數據進行限制。)
注意:一定要保證post_max_size >= upload_max_filesize,也就是前者一定要大於后者。另外,修改后一定要重啟服務器,一定要重啟。
【5】網站在發展的過程中,很可能需要多次的修改域名,那么修改域名應該怎么進行設置呢?
修改域名的步驟分為以下幾步:
1. 修改/caches/configs/system.php里面所有與域名有關的,把以前的老域名修改為新域名就可以了。
2. 進行后台設置-->站點管理。對相應的站點域名進行修改。
3. 更新系統緩存。點擊后台右上角的“更新緩存”按鈕。
4. 切換至內容-->附件管理-->附件地址替換。把附件地址批量的替換為新的地址。
5. 切換至內容-->批量更新URL。把所有文章的地址都自動更新一下。
域名修改后,可以通過瀏覽器利用域名進行訪問,測試一下效果。
【6】網站遷移的方法
網站遷移工作比較重要,具體可以分為兩個方面:源網站的准備內容;新網站的部署任務。
源網站的准備內容,大概羅列為一下幾點:
1. 備份數據庫
登錄網站管理平台,在“擴展”菜單下的“數據庫工具”欄中的“請選擇數據鏈接池”區域中選擇在使用的數據鏈接池,這時在下面會顯示相應的表單文件名,全部選擇后單擊“開始備份數據”,備份完成后會彈出“備份成功”的提示語。這時會生成一個(或多個)SQL格式的文件在網站的“caches/bakup”文件夾里。
2. 下載數據庫
完成上面的備份后,系統會自動將數據庫按2M(即2048KB)左右的大小按文件存放,備份完后可以單擊對應的文件后面的“下載”連接來下載相應的SQL格式的備份,一般會有多個文件,注意備份文件后面的序號。當然也可以使用FTP軟件一次下載(或拷貝)。
3. 下載網站模板
網站的風格和樣式都存放在模板文件中,模板文件存放在"phpcms/templates",通過FTP下載(或拷貝)這個文件夾。
4. 下載css文件
如果網站曾經修改過模板的位置及效果,這時需要下載(拷貝)css文件,需要備份的文件夾為“statics/css”。
5. 下載數據庫配置文件
數據庫配置文件在“caches/configs”文件夾下的“database.php”,這里主要是數據庫的名稱及頭,格式如下,下載(或拷貝)后在新建安裝軟件時要使用到。
1 <?php
2 return array (
3 'default' => array (
4 'hostname' => 'localhost',
5 'port' => 3306,
6 'database' => 'phpcmsv9',
7 'username' => 'root',
8 'password' => '',
9 'tablepre' => 'v9_',
10 'charset' => 'gbk',
11 'type' => 'mysql',
12 'debug' => true,
13 'pconnect' => 0,
14 'autoconnect' => 0
15 ),
16 );
17 ?>
6. 下載(拷貝)附件
PHPCMS V9默認附件的文件夾為“uploadfile”,原來的圖片、上傳的文件都在這個文件夾中,需要進行下載(或拷貝)。
新網站的部署任務,大概分為一下幾步:
1. 安裝網站程序
在新的網站上安裝與原來網站字符一致的PHPCMS V9,在數據庫設置時,需要用到數據庫名和頭,請使用上面(5)的內容。
2. 上傳源網站備份數據
將備份的SQL文件上傳(粘貼)到新的網站“caches/bakup”文件夾。
3. 上傳源網站模板
將原來網站的模板文件上傳(粘貼)到“phpcms/templates”文件夾。
4. 上傳源網站css文件
如果沒有使用默認程序的CSS,請將備份的CSS上傳(粘貼)到“statics/css”
5. 上傳附件
將下載的“uploadfile”文件夾上傳(粘貼)到新的網站根目錄下。
6. 恢復數據
登錄到新網站的后台,在“擴展”菜單下的“數據庫工具”中選擇“數據導入”,在下面選擇上傳的備份數據,請檢查是否完整,選中全部后單擊“恢復”將數據進行恢復。
7. 更新網站緩存
完成數據恢復后,請更新全站的緩沖,再檢查相應的欄目數據是否完成。
8. 生成網站與欄目及首頁
檢查網站的設置后,生成網站的網頁、欄目及首頁,就可以完成了。
到此,網站遷移結束。
【7】想修改網頁的首頁布局等,應該從哪里下手?
在default/content目錄下,存在一個index.html文件,該文件就是首頁模板。
同時,在該目錄下,存在一個header.html文件,該文件是網頁的頭部。
在該目錄下,存在一個footer.html文件,該文件是網頁的底部。
在static/css目錄下,存在網頁的樣式調整文件,即各種的css類型文件。
那么,網頁具體使用到了哪種樣式文件呢?可以用瀏覽器打開網頁,然后在極速模式(注意與IE兼容模式區別)下,右鍵找到“審查元素”,然后查看待修改樣式的部分到底是由哪個css文件控制,這樣就可以把css文件與html文件的依賴關系找到,然后可以根據需求調整css文件的內容。
關於html文件,可以參見《HTML5》
關於css文件,可以參見文章《CSS》
【8】如何修改phpcms v9系統的logo圖標?
修改logo圖標?首先,必須弄明白logo圖標是怎么添加到網站上的。
任何看到的東東都不是憑空、無緣無故產生的,當然,包括精神和物質的,比如愛和錢。那么,logo圖標呢也不例外,可以篤定肯定有這樣的一張圖片。好吧!既然有這樣的一張圖片,在哪里放着呢?分析一下phpcms v9的文件目錄結構,可以大概猜測到這張圖片應該放置在\static\images目錄下,具體呢?再搜索一下,哦嗯,她就在v9文件夾中。嗯哼,她默默的“藏”在這里,發揮着她不可替代的作用,真可謂網站博大精深,系統分工不同哈。
再思考,網站網頁上是怎么應用到她的呢?哦嗯,這個就得研究具體的網頁文件,比如這里的\phpcms\templates\default\content\header.html文件,用Notepad++打開這個文件內容,搜索字符串“logo”,嗯,大概是這樣子的一行代碼:
<div class="logo"><a href="{siteurl($siteid)}/"><img src="{IMG_PATH}v9/logo.jpg" /></a></div>
有人這個時候靈機一動,就要說:“你個騙子呀~ 我腫么知道是這個header.html文件呢?”問得鏗鏘有力,問得見微知著,問得無語凝噎。誰問的?你站出來,我不打你。其實,打你是因為你問問題之前的那句感概,看來我要力爭澄清我不是一個名副其實的騙子。
打開瀏覽器,輸入http://localhost/phpcms/index.php 回車,我們可以看到網站的首頁頁面,如果看不到的話,請檢查你機器上的WampServer服務器是否已經正常啟動。當看到首頁,然后在網頁的任意位置右鍵,尋找<審查元素>行,什么?木有看到?真的找不到?那說明你瀏覽器目前是IE兼容模式,請先切換瀏覽器到極速模式。關於瀏覽器模式切換請自問度娘,因為每種瀏覽器的操作好像都有所差異,具體得根據你正在使用的瀏覽器再進行切換。切換完后,再尋找<審查元素>行,點擊選中后,看到了右邊的界面如下圖所示:
所謂審查元素,就是指右邊的各個標簽或塊等都與左邊的網頁元素項是一一對應的,當鼠標在右邊移動到具體的塊或標簽區域時,左邊網頁會鎖定到具體的元素對象上,整個過程的表現相當於審查的作用。好,當焦點放在上圖的紅色框行,我們可以看到左邊網頁選中的恰是系統的logo圖標,這時再看看src值內容,那么到此至少說明了一點,這個圖標的名稱是logo,類型為jpg,存放的目錄為:\phpcms\statics\images\v9 嗯,也就驗證了剛剛關於logo圖標存放位置的猜測。
接下來,由於我們已經知道剛剛右邊查看的網頁文件是index.html,神馬?這個你還不知道?那你再折回去看看此篇文章第一個問題。現在用Notepad++打開\phpcms\templates\default\content\index.html文件,大膽的搜索“class="logo"”,嗯哼?查不到?竟然找不到?難道,剛剛審查的不是這個網頁嗎?請先再核對一下,經核對后肯定的確是這個index.html。那么,問題出在哪里呢?看來還得分析這個index.html文件,哇哈~ 這么多內容,到底從哪里開始呢?有點丈二和尚摸不着頭腦。不要着急,不要心慌,不要僥幸,既然不知道從哪開始就從頭開始唄~ 嗯,這個時候得沉住氣,往往尤其這個時候才考驗一個人能不能干大事。從第一行開始,第一行內容如下:
{template "content","header"}
不應該呀!HTML文件一般的結構應該是先有head,再有body,即使沒有head,至少也應該存在body。要不說人還得多見世面,如果你真的還不懂這一點,那請你惡補《我的第一個HTML頁面》。在index.html中搜索“head”,木有找到;再搜索“body”,也木有找到,看來此處另有玄機!喝杯水,伸個懶腰,下午茶來了?讓我先吃點水果。
從HTML文檔的結構分析,還得從第一行着手。剛剛上道,不懂這行代碼干嗎的?問度娘,不行就問谷哥,啥年代了還有解決不了的問題!通過網詢,這句代碼的作用是:調用(相當於包含頭文件)根目錄下phpcms\template\content\header.html文件。哦,嗯,今天的下午茶是酥梨,本來酥梨應該是酥的,卻偏偏套了個外袋,看着潔白無瑕,實則寡湯無味。當我左手握着大梨,右手輕輕的把header.html文件拖到Notepad++主界面打開的時候,我才瞬間嘗到了一點酥梨的酥,恍然大悟,正是這個頭文件,終於找到了她。當我潛意識的准備搜索“class="logo"”時,才第一次發現我的右手很別扭的不能同時按下Alt + F鍵,於是用右手接過左手的梨,同時左手很傲嬌似的嫻熟的通過快捷鍵打開了查找窗體。果然,看到了真面目,即審查元素時,當左邊鎖定系統圖標,右邊那坨代碼(就是上圖中紅色框的上下文代碼),正是我們需要查找的。
說到這里,讓我松了一口氣。要現在再有人說我是騙子的話,建議你點擊網頁右上角的叉,關閉此網頁,我真不想和你做朋友了!
好勒~ 來龍去脈都搞清楚了,更換系統logo圖標自己看着辦吧~ 其實只需一步:用你想換的圖標把logo.jpg替換了。當然,為了以后方便,建議把原logo.jpg文件的名稱修改為logo_old.jpg即可,真的覆蓋掉了以后想再找個還不好弄了。
【9】PHPCMS V9系統數據庫,數據表結構
關於這個問題,可以參見《phpcms v9數據表結構在線版》
【10】PHPCMS V9系統php文件的結構以及作用
關於這個問題,可以參見《phpcms v9框架的目錄結構分析》
【11】phpcms V9默認模板文件目錄結構詳解
關於這個問題,可以參見《phpcms v9默認模板文件目錄結構詳解》
【12】默認模板詳情列表
可以通過后台管理系統直接查看:
操作步驟如下圖所示:
結果如下:
【13】如何理解V9系統的設計邏輯?
從PHPCMS V9的后台管理系統分析,要深入學習該系統,必須從以下內容深入。
首先,我們得理解站群。具體請參見《phpcms V9站點管理實現站群功能》、《利用phpcms V9站群功能建立多個分站》。
站點管理入口:
其次,我們需要理解模塊,請參見《phpcms V9二次開發之模塊開發[360度無死角完全版]》
另外,就是內容部分。phpcms V9是標准的MVC框架,內容部分是網站的核心數據部分,為了便於擴展和維護,必須理解模型、欄目、附件管理。
當新建一個新欄目,是以什么樣的模型進行內容維護,模型管理:
當要向網頁添加一個新欄目時,欄目管理:
當有下載模塊時,需要維護用戶上傳的附件項,附件管理:
其他....
【14】phpcms V9后台各個php文件的詳細分析
關於相關content、attachment、download等等文件的分析,請參見系列博文《phpcms-v9深入研究》
【15】PC標簽概述
1. PC標簽使用簡介
PC標簽必須以{pc}開始,並以{/pc}結尾。{pc:}冒號之后跟隨的是模塊名。作為程序員,總覺得代碼最接地氣,請看聲明:
{pc:content action="position" posid="9" order="id" num="10" cache="3600"} {/pc}
可見,上面是使用的特例,其實模板更簡單:
{pc:模塊名/其他 參數名="參數值" 參數名="參數值" 參數名="參數值"} {/pc}
當然,不以{/pc}結尾並不會引起程序致命性的錯誤,導致無法繼續運行。但是,兩種可能會出現的問題如下:
[1] 當網頁中出現兩個PC標簽時,可能會使得沒有閉合的PC標簽之后的標簽數據與其混亂。
[2] 在后台可視化編輯時,可能出現網頁結構錯亂的情況。
2. PC標簽包含兩類,分別為:
2.1 工具類
關於工具類的詳解,請參見以下幾種情況:
[1] phpcms v9開發文檔《json工具箱》
[2] phpcms v9開發文檔《xml工具箱》
[3] phpcms v9開發文檔《get標簽》
[4] phpcms v9開發文檔《碎片工具箱》
2.2 模塊類
在PHPCMS V9中我們正式開始使用PC標簽作為數據的獲取方式。
關於模塊類的詳解,請參見以下文章:
【16】網站的 SEO配置 是干神馬的?
SEO,Search Engine Optimization,即搜索引擎優化。指在了解搜索引擎自然排名機制的基礎上,對網站進行內部及外部的調整優化,改進網站在搜索引擎中關鍵字的自然排名,獲得更多的展現量,吸引更多目標客戶點擊訪問網站,從而達到網絡營銷及品牌建設的目標。
此篇博客轉自 http://www.cnblogs.com/Braveliu/ 感謝~