Я занимаюсь разработкой системы управления контентом на основе PHP для личного использования и, в конечном итоге, для распространения. Я знаю, что существует множество CMS, но я действительно не нашел ни одной, которая бы отвечала всем моим потребностям, и я также хотел бы получить опыт обучения. Безопасность - это большое внимание, равно как и расширяемость и простота использования. Какой совет вы можете дать тем из вас, кто создал свою собственную CMS? Какие функции необходимы для ядра? Какие дополнения должны быть у вас? Что вы хотели знать перед тем, как начать? Какая самая большая потенциальная проблема / препятствие? Любые советы приветствуются.
Обновлено: любые советы по маркетингу, что можно и чего нельзя делать, также будут оценены.






Я знаю, что это не прямой ответ на то, что вы ищете, но если вы еще не смотрели его, я бы рекомендовал проверить CMS стало проще. В ней гораздо меньше наворотов, чем в других CMS, она быстрая и эффективная. Это открытый исходный код, поэтому он может быть хорошей отправной точкой для любых вопросов, с которыми вы столкнетесь.
При создании нескольких итераций CMS оказались ключевыми моментами:
Вот некоторые менее важные, но полезные возможности: - Возможность динамически создавать читаемые и оптимизированные для SEO URL (способ StackOverflow неплох) - Возможность показывать более ранние версии контента после его изменения - Возможность иметь песочницу для контента, чтобы его можно было вычитать или проверить перед выпуском. - Обработка нескольких языков и неанглийских / не-ASCII символов
Если вы спросите 100 разных пользователей CMS о самом важном в их CMS, вы, вероятно, получите более 80 разных ответов.
Самым большим препятствием, вероятно, будут люди, которые спросят вас, почему вы создали новую CMS с нуля. Если вы не знаете ответа на этот вопрос, я не уверен, почему вы идете по этому пути.
Следует иметь в виду, что для интернет-CMS людям понадобятся точки интеграции со многими «обычными» сервисами. Используйте существующие службы, такие как сайты обмена фотографиями, Twitter, OpenID и т. д., Прежде чем создавать собственные проприетарные решения.
ну, я написал CMS для личного использования и выпустил ее для самого большого хора щебечущих сверчков! но ничего страшного. Я многому научился, и я призываю вас двигаться вперед. мои клиенты используют его, и он им нравится, и он держится хорошо.
но если бы я начал (а мог бы), вот совет, который я бы дал себе:
С точки зрения маркетинга:
1) Сделайте его templateспособный.
2) Сделайте CMS SEF и оптимизируйте URL.
Что ж, создание собственной CMS на самом деле означает, что это не продукт корпоративного уровня. Это означает, что вы не сможете реализовать все функции, которые делают пользователей CMS счастливыми. Даже не большинство функций. Я хочу уточнить, что под CMS я на самом деле имею в виду платформу для создания веб-приложений или веб-сайтов, а не платформу для ведения блогов или уменьшенную версию. По личному опыту я могу сказать вам, чего я больше всего хочу от CMS.
1. Расширяемость - предоставьте чистый и надежный API, чтобы программист мог делать большинство вещей через код вместо использования UI
.
2. Простое создание и редактирование страниц - используйте шаблоны, укажите несколько URL-адресов для одной страницы, предоставьте параметры для перезаписи URL-адресов
3. Сделайте его покомпонентным. Разрешить пользователям добавлять настраиваемые функции. Сделайте так, чтобы кто-то мог легко добавить свой код, чтобы что-то сделать
4. Сделайте его оптимизированным для SEO. Это включает в себя метаданные, снова переписывание URL, хорошую карту сайта и т. д.
Теперь есть эти корпоративные функции, которые мне тоже нравятся, но я сомневаюсь, что у вас возникнет желание погрузиться в их реализацию с самого начала. Они включают в себя рабочий процесс (процесс утверждения для создания контента, настраиваемый), встроенные модули для общей функциональности (блоги, электронная коммерция, новости), возможность писать собственные модули, разрешения для разных пользователей, встроенная синдикация и т. д.
В конце концов, я говорю с точки зрения разработчика, и мое мнение может не быть общепринятым, так что в конце концов вам придется решать самостоятельно. Как сказал Ахокли - вы должны знать, зачем вам создавать собственную CMS.
Просто используйте Drupal.
Из коробки он очень легкий и быстрый. Вы добавляете модули практически для всего, так что это может показаться сложным, но зато фантастическим.
Его безопасный (его используют НАСА и Белый дом), его модульность, его открытый исходный код, он хорошо поддерживается, имеет репутацию чистых API-интерфейсов и имеет сотни модулей от SEO до Wysiwyg ....
Если вам нужно создать настраиваемую функциональность, при которой ваша CMS действительно является окном для остальных бизнес-уровней, используйте что-то вроде PyroCMS или FuelCMS, основанных на фреймворке CodeIgniter.
С Drupal и Joomla разработчики обычно теряются в траве! / Wordpress со временем быстро превратился в спагетти-спагетти с кодами. Это сколько вы уже выпили из чаши для пунша Kool-aid.
"спагетти, замешанные на коде бездельники с течением времени" Хотел бы я дать вам больше голосов за это. Ха-ха-ха!
Вы не должны препятствовать инновациям, говоря людям использовать уже готовые, если они хотят разработать что-то свое. Повторное изобретение колеса дает нам опыт в освоении лучших вещей, изучая основы с нуля.