創(chuàng)建具有開源CMS的Web開發(fā)項目
作為一個開發(fā)者意味著你必須學會​​閱讀你所做的每個網站的源代碼和項目。你要了解哪些項目需要一組代碼,以及哪些項目可以完全從頭開始創(chuàng)建。這個過程是通過行業(yè)內足夠的重復和技能的經驗教訓。
我想用這篇文章來討論一些細節(jié)問題與開放源碼的Web開發(fā)。創(chuàng)建基于免費的CMS項目的往往是走的最快和最簡單的方法。但你需要知道如何處理開放源代碼的腳本,并避免碰壁。這需要一些練習,但也只是一些時間,致力于與您所選擇的腳本播放。
為什么是內容管理系統(tǒng)?
你可能會問,為什么要在項目與CMS中創(chuàng)建,而不是建立在一個簡單的PHP或Ruby代碼庫中?有很多偉大的例子如CodeIgniter或CakePHP的。但這些需要更多的后端開發(fā),基本上開發(fā)到PHP,你需要從頭開始編程您的應用程序。
但CMS已經具備很多功能使你在網站建設的時候隨時可以使用。當您下載并安裝WordPress的時候,它并沒有主要的PHP定制要求。即使是沒有經驗的程序員可以設置自己的WordPress的博客或網站。并同樣適用于編輯和更新網站的內容。
PHP框架CakePHP的網站布局設計
如果你是一個真正具有獨特的想法,熱愛編程的人,那么你應該嘗試一些后端框架。對于開發(fā)人員來說,只需要一個快速的開源解決方案你就可以使用內容管理系統(tǒng)來堅持設計的每一步。它有很多不同的選擇供挑剔的你所需,并從中找到一個合適的解決方案。
建立一個通用的解決方案
如果你是自由職業(yè)者,CMS的后端開發(fā)將能夠完美的匹配你的大部分工作項目。這些可以包括投資組合的網站,企業(yè),電子商務商店,甚至網上討論區(qū)。目前開源軟件幾乎兼容任何你可以考慮到的腳本。
但更有趣的是定制很多類似主要的平臺。WordPress和Drupal是兩個令人第一時間想到的令人難以置信的可定制系統(tǒng)。事實上,很多開發(fā)商會說Drupal是一個PHP平臺,恰好包括一個CMS。一旦你理解了其內容,幾乎所有的程序都可以使用Drupal的頂尖技術來創(chuàng)建。
在使用WordPress的插件系統(tǒng)時,你還可以更輕松的將自己所擁有的功能復制到這里。WordPress擁有數量多得令人驚訝的免費插件!你可以結合一系列的組合使用,甚至建立自己的插件來擴展與WordPress的功能,以及更多的自定義插件。
編程系統(tǒng)
我通常會建議任何Web開發(fā)人員應該嘗試至少2個或3個不同的CMS解決方案。有些剛剛完成的項目可能會與別的項目不同,因而你可能需要一點時間來了解更多的一些資料。同樣重要的是要考慮在任何給定的項目環(huán)境下你的典型需求是什么。
例如,開源項目中的fork CMS配備了多語言網站的支持。你可以基于網頁的語言快速地追加子域,它甚至支持2~3種甚至更多種不同的語言,F在,Drupal和WordPress用戶也可以使用這種功能,但絕對不是以同樣的方式。所以,如果你正在構建需要多語言支持的一個項目,你應該花一點時間來對這些程序來進行更多的了解。
你是否曾經花時間來了解這些系統(tǒng)?這是一個有趣的問題,并且答案明顯根據不同的設計師而異。你應該問自己你最喜歡的CMS系統(tǒng)是什么?哪個是你在大多數web項目上使用的?你需要給出你第一時間想到的那個答案。
如果你愿意花上幾個禮拜的時間來學習Fork系統(tǒng)的使用,那并不是在浪費時間。你會發(fā)現,Fork是一個偉大的CMS系統(tǒng),但這并不意味著它能完全滿足你的需求。所以,你還需要更多時間去了解別的操作系統(tǒng)。
翻閱腳本
調查最后的其中一點是不同的開源腳本的想法。內容管理是一個多樣化的詞,它通常指的是靜態(tài)的,基礎的網站內容。小型企業(yè)或在線零售商往往需要通過后臺來管理頁面的內容。
但也有一些其他的漂亮替代的開源解決方案,它們與內容管理系統(tǒng)差別并不大。Pligg CMS是我最喜歡的是舊Digg風格的用戶投票系統(tǒng)的克隆版本之一。你可以推出自己的社交新聞社區(qū),用戶可以在這里注冊一個帳號,并提交文章到你的網站。
Pligg CMS安裝后的強大功能是令人難以置信的,同時也是任何其他的開源項目無法比擬的。而這也正是為什么fork和pligg能夠流行這么久-因為他們是開源市場填補缺口所迫切需要的。你可以理解為何類似功能的phpBB為什么是更好的開源論壇之一。
開源論壇板腳本phpBB的MySQL的網站
我想,如果有任何更好的方法代替以上這些,你可以發(fā)散你的思維去想象一下。不要害怕嘗試使用你從來沒有聽說過的新腳本或資源。Web開發(fā)人員最喜歡為他們的無畏飛躍進入未知和意愿調整到新的環(huán)境。與如此龐大的開源社區(qū)這一過程變得前所未有的簡單。
尋求答案
這最后一點是非常重要的。沒有人可以只使用WordPress幾個星期,并立即知道所有的主要發(fā)展點。你將需要花費很長一段時間來測試和調試你選擇的CMS程序。所以,如果你在連續(xù)一段時間用這些程序之后發(fā)現仍然存在問題,請不要氣餒。
同樣不要害怕問問題以及在技術支持上求助。大多數開源項目團隊中有非常熟練的開發(fā)人員在,它們可以回答你各種亂七八糟的請求。無論你選擇的是一對一服務還是在一個公開論壇,它都能夠為你在項目工作中所遇到的大大小小的問題提供優(yōu)質的資源。
WordPress StackExchange#網絡問題答案的支持
同樣也有非常熟悉的開發(fā)人員社區(qū)像WordPress StackExchange 非常樂意幫助你解決創(chuàng)造性的問題。不要讓代碼混亂成為完成你的項目開發(fā)路上的障礙。走出去,社交,學習新的東西,不要害怕問問題。
最后的思考
互聯(lián)網是一個充滿巨大的數據的地方,它每天都越來越大。Web開發(fā)人員已加入了開放源代碼運動,因為它提供了有經驗的程序員與更多沒有經驗的編碼人員分享他們所知道的方法。這也是一個偉大的方式讓你在幫助別人的同時分享一下你已完成的項目成果。
我希望這篇文章可以讓你想完全開源庫建設項目。它有很多甚至能夠替代編程語言的選擇。你將不得不花時間尋找到解決方案,并仔細測試每一個程序。但隨著時間的推移你會找出其中最適合你使用的CMS產品,這些都是值得學習的系統(tǒng)。