2008-09-16 60 views
3

我正在設計一個基於PHP的內容管理系統供個人使用,並最終分發。我知道有很多CMS已經在那裏,但我真的沒有找到滿足我所有需求的產品,我也希望有學習經驗。安全性是一個重點,可擴展性和易用性。對於那些建立了自己的CMS的人,你可以提供什麼建議?什麼功能對核心至關重要?什麼是必須有附加組件?在開始之前,你希望你知道些什麼?什麼是最大的潛在障礙/問題?任何和所有的建議是受歡迎的。建立分佈式CMS的建議?

編輯:任何關於營銷的建議做的和不要的也不勝感激。

回答

4

那麼,構建自己的CMS實際上意味着它不是企業級產品。這意味着你將無法真正實現使CMS用戶滿意的所有功能。甚至沒有大多數功能。我想澄清的是,CMS實際上是指創建Web應用程序或網站的平臺,而不是博客平臺或縮小版本。從個人經驗來看,我可以告訴你我最需要的CMS內容。
1.可擴展 - 提供一個乾淨而強大的API,以便程序員可以通過代碼完成大部分工作,而不是使用UI。2.易於創建和編輯頁面 - 使用模板,爲單個頁面提供多個URL,提供URL重寫的選項
3.使其基於組件。允許用戶添加自定義功能。讓別人輕鬆添加他的代碼來做點什麼
4.讓它對SEO友好。這包括元數據,URL重寫,網站地圖等。

現在有這些企業功能,我也喜歡,但我懷疑你會有從一開始就潛入他們的實施的願望。它們包括工作流程(用於內容創建的批准過程,可定製),用於常見功能(博客,電子商務,新聞)的內置模塊,編寫自己的模塊的能力,針對不同用戶的權限,內置聯合等。

畢竟我從開發者的角度講話,我的觀點可能不是主流,所以最終你必須自己決定。就像ahockley所說 - 你必須知道你爲什麼需要建立自己的CMS。

0

我知道這不是直接回答你要找的東西,但如果你還沒有看過它,我建議檢查CMS made simple。它比其他CMS的膨脹小得多,而且速度快,效率高。它是開源的,所以它可能是你遇到的任何問題的一個很好的參考點。

6

在建設的CMS的幾個迭代,一些關鍵的東西竟然是:

  • 擁有一個良好的富文本編輯器 - 最終用戶真的不想做的HTML。最近的一致看來,FCKEditor是最好的 - 最近在這裏有幾個問題
  • 允許人們添加新頁面並輕鬆創建菜單/選項卡結構或頁面之間的交叉鏈接
  • 確定如何將內容合併到模板中和/或允許用戶自行開發模板
  • 弄清楚如何(以及是否)讓人們從Microsoft Word中粘貼內容 - 轉換魔術引號,emdashes和奇怪的Wordish HTML
  • 包括拼寫檢查功能(雖然Firefox有內置的東西,iespell可以爲IE做這項工作)

一些不太重要,但有用的功能是: - 能夠動態地創建可讀性和SEO友好的URL(在StackOverflow的方式不壞) - 能夠顯示早期版本的內容它的修改 後 - 能夠有一個沙盒以便在發佈之前對其進行校對或檢查 - 處理多種語言和非英文/非ASCII字符

2

如果向100位不同的CMS用戶詢問有關CMS最重要的事情,獲得80多個不同的答案。

最大的障礙可能是人們問你爲什麼從頭開始建立一個新的CMS。 如果你不知道這個問題的答案,我不知道你爲什麼要走這條路。

有一點需要記住的是,對於互聯網CMS來說,人們將需要與許多「常用」服務的集成點。在構建您自己的專有解決方案之前,利用現有的服務,例如照片共享網站,Twitter,OpenID等。

2

嗯,我寫了個人使用的CMS,並將它發佈到啁啾蟋蟀的最大合唱!儘管如此,沒有什麼大不了的。我確實學到了很多,我鼓勵你前進。我的客戶使用它,喜歡它,它保持良好。

但如果我是重新開始(我可能)這裏的意見,我會給自己:

  1. 擦洗一切一切一切從用戶輸入
  2. 用戶管理是一種產品區別。能夠處理某人從WORD複製/粘貼的積分。
  3. 可擴展性。我收到的評論中有90%是來自希望使用cms託管「部分」網頁而不是其他網站頁面的開發人員。或者他們想要將自定義腳本嵌入到內容中的頁面中。我的下一個cms將會像我可以處理的那樣模塊化。
  4. 很多人都對清潔網站絕對狂熱。
1

從市場營銷的角度來看:

1)讓它模板能夠

2)製作CMS SEF並製作搜索引擎優化網址。

-2

只需使用Drupal。

開箱即用,非常輕巧,快速。你爲幾乎所有東西都添加模塊,這樣可以讓人望而生畏,但它太棒了。

它的安全性(美國國家航空航天局和白宮使用它),它的模塊化,開放源代碼,它得到了很好的支持,擁有良好的API聲譽,並且擁有數百個從搜索引擎到Wysiwyg的模塊......

+0

你不應該通過告訴人們如果想開發自己的東西來使用現成的創新而不鼓勵創新。重新發明車輪使我們有經驗的採用更好的東西從頭開始學習基礎知識。 – Lenin 2012-12-13 15:15:18

1

如果您需要構建自定義功能,其中您的CMS實際上是其他業務層的窗口,請使用基於CodeIgniter框架的PyroCMS或FuelCMS。

開發人員通常會在Drupal和Joomla的雜草中迷失方向!/WordPress隨着時間的推移,很快就會變成意大利麪代碼。它已經從Kool-aid衝杯中喝了多少。

+0

「隨着時間的推移,意大利麪代碼包含doozies」我希望我可以給你更多的投票。哈哈哈! – ProfK 2011-12-29 04:21:44