2009-04-05 38 views
5

TẠI SAO ?! ... Có lẽ đó là suy nghĩ đầu tiên của bạn khi đọc tiêu đề của chủ đề này.Phát triển CMS của riêng tôi

Có nhiều CMS nguồn mở khác nhau để phù hợp với nhu cầu của mọi người. Và tôi đoán bạn đúng ... thực ra tôi rất đồng ý.

Nhưng chủ đề này là dành cho các lập trình ngây thơ và bướng bỉnh như bản thân mình, những người thực sự thích ý tưởng phát triển CMS của riêng họ từ đầu. Nhưng tôi nên bắt đầu từ đâu và những điểm trọng tâm chính của tôi trong việc lập kế hoạch cho CMS này là gì?

Có bất kỳ hướng dẫn hay, bài viết, sách vv nào về việc phát triển CMS của riêng bạn từ đầu không?

Nếu không, có thể một số bạn đã cố gắng phát triển CMS của riêng mình ... nếu vậy hãy chia sẻ trải nghiệm tốt và xấu.

Cảm ơn trước

+0

Tôi đã tự viết tại kitgui.com và cách tiếp cận rất khác với SAAS, dựa trên nguồn cấp dữ liệu và có chỉnh sửa HTML5 trên trang. Có thể cung cấp cho bạn một số ý tưởng cho riêng bạn trong điều khoản của việc làm một cái gì đó mà tận dụng những gì web bây giờ, không phải những gì các trang web được. –

Trả lời

10

Nếu bạn không có câu trả lời cho những câu hỏi đó, có thể bạn đang bắt đầu sai loại dự án. Một CMS, thậm chí là một cơ bản, có thể là một con quái vật rất phức tạp, đây là một vài điều mà bạn cần phải đưa vào tài khoản:

  • Làm thế nào cơ sở dữ liệu của bạn sẽ trông
  • Làm thế nào linh hoạt bạn sẽ cho phép người dùng có trên thông tin trang (tức là, làm thế nào tùy biến là tài sản)
  • Làm thế nào mọi người sẽ chỉnh sửa dữ liệu trang
  • Làm thế nào bạn sẽ xem phiên bản đã xuất bản của một trang
  • Làm thế nào bạn sẽ hỗ trợ versioning
  • những loại trang web nên là mục tiêu cho CMS

Câu trả lời cho những câu hỏi này sẽ giúp xem cơ sở dữ liệu trông như thế nào, cách dự án được chia nhỏ, cách xử lý những người muốn tạo trang, v.v. Tôi muốn đề xuất rằng bạn bắt đầu bằng cách xem xét các dự án CMS nguồn mở, và có cảm giác về cách họ đã sử dụng nó, nó sẽ cung cấp cho bạn nhiều ý tưởng hơn khi tìm cách tự sản xuất. Nếu không, bạn hoàn toàn có thể dễ dàng bị cuốn hút bởi các tùy chọn.

Sửa - Chỉ cần nghĩ rằng tôi muốn thêm, tôi đóng góp cho một mã nguồn mở CMS (Umbraco) vì vậy tôi quen thuộc với những gì cần phải được thực hiện cho một CMS, tôi không chỉ là tiêu cực

1

Một câu hỏi rất quan trọng là nếu bạn muốn nó được nhiều mặt máy chủ hoặc phía khách hàng, tùy thuộc vào bạn hoặc là gần gũi hơn với một wiki hoặc một blog. Ngoài ra những gì ngôn ngữ và những gì quy mô? Nó có thể là một cơ hội tốt để học một cái gì đó mới nếu bạn muốn tiếp tục làm việc trên nó một thời gian, nhưng nếu bạn chỉ muốn nhận được hơn với nó sử dụng một ngôn ngữ mà bạn biết.

3

Thực hiện theo các bước nhỏ, đầu tiên một phần chức năng, một lớp khác, sau đó thêm một lần nữa. Nếu bạn cố gắng xác định tất cả các chức năng mong muốn trước và thử thực hiện nó, bạn có thể sẽ thất bại. Làm theo từng bước. Và đừng quên đánh giá và tái cấu trúc mã thông thường.

8

Có một CMS có thể lớn, nhưng chúng có thể bắt đầu nhỏ và như một dự án học tập/vui vẻ khá tốt, và điểm bán thực sự là bạn có thể tự mình sử dụng nó. Nếu tôi xây dựng một CMS khác, đây là một vài điều tôi sẽ/sẽ không làm.

1) Không dựa 100% Xsl để tạo nội dung của bạn - trông giống như đặt cược hợp lý vào năm 2001 và tôi đã sai.

2) Đừng cố gắng để viết riêng Javascript/Flash chỉnh sửa giàu kiểm soát của bạn - quá nhiều những người tốt ngoài kia đã

3) Bạn tạo một CMS mà làm điều gì đó độc đáo - Cá nhân tôi muốn yêu một CMS điều đó sẽ cho phép tôi tạo các truyện tranh - hãy tìm kiếm một niche

4) Làm sớm thiết kế máy chủ/DB tốt.

5) Đừng chỉ làm điều đó ...

0

Một dòng "Tôi đã xây dựng CMS của riêng tôi trong năm 2009" hoặc tương tự "Với CMS rất riêng của chúng tôi .." trong một giới thiệu công ty có thể là một dấu trừ lớn trong danh sách của tôi khi tôi phải quyết định thuê anh ta/họ.

Có thể không phải là loại câu trả lời bạn mong đợi, nhưng nếu tôi là bạn, tôi sẽ xem xét phát triển một số mô-đun thực sự mới cho CMS hiện tại. Cá cược của tôi là trên Drupal, nhưng bạn có thể tìm thấy nhiều tùy chọn khác.

Dành thời gian tốt hơn, IMHO.

5

Nghe có vẻ giáo dục với tôi. Bất chấp những lo ngại của người khác, nếu bạn quan tâm để hiểu các vấn đề cần được giải quyết trong CMS, cách tốt nhất để tìm hiểu một vấn đề là xây dựng của riêng bạn hoặc ít nhất là xây dựng một số phần thú vị của một. Tôi sẽ không sử dụng một homebrew cho kho lưu trữ của riêng tôi. Nhưng, như xây dựng một trình biên dịch và một thông dịch viên đã giúp tôi hiểu các công nghệ tốt hơn, điều tương tự cũng áp dụng cho CMS. Tôi không sử dụng trình biên dịch hoặc thông dịch viên mà tôi đã tạo cho "công việc thực sự", nhưng tôi rất vui vì đã xây dựng chúng.

4

Tôi đã phát triển các cm riêng của mình, cho bản thân và khách hàng của tôi. Tôi ghét sử dụng các chương trình của người khác trừ khi hoàn toàn phải. Ngoài ra, kể từ khi Im liên tục phát triển các trang web mới, nó thuận tiện hơn nhiều bằng cách sử dụng các cm riêng và chỉ đơn giản là điều chỉnh nó lên một chút mỗi lần. Dù sao. Làm thế nào để làm nó? Chỉ cần bắt đầu làm điều gì đó. Mọi người gặp khó khăn vì họ nghĩ rằng trước tiên họ nên tìm ra một cấu trúc hoàn hảo và vân vân. Thư giãn, nó thật tuyệt vời. Có thể bạn sẽ phải thực hiện một số thay đổi sau đó. Nhưng trong kinh nghiệm m, làm điều gì đó sai trái và sửa chữa nó vẫn còn nhanh hơn là chờ đợi tầm nhìn của một giải pháp hoàn hảo để soi sáng bạn. Vì vậy, chỉ cần ngồi xuống và bắt đầu viết trang theo trang: thêm trang, chèn trang, cập nhật trang ... Bạn sẽ nhận ra những gì khác là cần thiết trong quá trình này.

+0

điểm tốt về việc làm điều gì đó sống động. các ứng dụng web không bao giờ hoàn hảo và phấn đấu cho điều đó chỉ là một cái gì đó để đẩy lùi khi bạn giao hàng. – GSto

1

Tôi sẽ bắt đầu bằng cách giải quyết một số điểm chung mà tất cả các CMS sẽ cần và sau đó xây dựng từ đó. Dưới đây là một vài ví dụ:

  • User Authentication Bạn sẽ cần để có thể xử lý những khách hàng sẽ chỉnh sửa nội dung, và người sử dụng có thể khác nữa.
  • Bảng điều khiển quản trị - Khách hàng của bạn sẽ chỉnh sửa nội dung bằng cách nào? Nó sẽ cần phải linh hoạt để hỗ trợ một số up thiết lập khác nhau.
  • Chỉnh sửa trang - Hầu hết các trang web đều có các trang tĩnh đơn giản, bạn sẽ cần một số cách để lưu trữ/chỉnh sửa chúng.
  • Nội dung được cung cấp - Một điều khác mà hầu hết các trang web đều có, như nguồn cấp dữ liệu tin tức hoặc mục nhập blog.

Nếu bạn đã làm tất cả điều này, bạn sẽ có sự khởi đầu của một CMS đơn giản.

1

Tôi khuyên bạn không nên tạo các cm của riêng bạn. Thời gian để bạn viết, hoàn thiện, chứng minh giả, viết tài liệu, kiểm tra khả năng sử dụng, kiểm tra các loại máy chủ, thị trường, trừ khi bạn có một nhóm và bạn được tài trợ tốt, nó không đáng giá.

Có những thứ khác mà bạn cũng sẽ phải xem xét, giấy phép, phí pháp lý và cập nhật hệ thống. Bên cạnh việc người mua của bạn sẽ tự tin rằng một chủ sở hữu duy nhất sắp sửa cung cấp thông tin cập nhật như thế nào. Tôi nói về kinh nghiệm tuyệt vời trong lĩnh vực này vì tôi đã phát triển CMS của riêng mình trong tích lũy nhiều năm và việc bán các cm trở nên khó khăn hơn nhiều so với Joomla, wordpress và drupal có một mức giá mà bạn không thể hoàn thành.

+0

Nhiều nhận xét của bạn không áp dụng được nếu OP đang phát triển CMS cho các hoạt động nội bộ của riêng mình. – Rob

Các vấn đề liên quan