Вы не можете вызывать функцию php напрямую с HTML-элементами.
Трудно сравнить CMS (например, Drupal, WordPress) с платформой MVC, потому что они находятся в различных категориях.
Для специфического ответа на вопрос о преимуществе платформы MVC по CMS преимущество платформы MVC состоит просто в том, что это позволяет Вам разрабатывать точное веб-приложение, в котором Вы нуждаетесь с нуля.
Что касается Вашей конкретной ситуации:
Используя существующий CMS, такой как WordPress или Drupal была бы превосходная идея, если они соответствуют Вашим потребностям. Это старается не изобретать велосипед, экономит Вам время, и CMSs может быть довольно удобным для пользователя (в различных степенях). Если Вы планируете делегировать задачу довольных обновления нетехнического пользователя, то могло бы быть благоразумно выбрать благоприятный для новичка CMS вместо того, чтобы вращать Ваше собственное с платформой MVC, возможно приведя к приложению, которое требует, чтобы больше технической экспертизы поддержало.
Если, однако, Вы предположите это, то веб-сайт потребует большой пользовательской бизнес-логики, которую было бы трудно реализовать в рамках ограничений CMS, то Вы, возможно, должны были бы использовать платформу MVC.
Спасибо все для Ваших ответов. Я изложил доводы для использования Framework или Drupal, но было решено, чтобы мы пошли с Wordpress, или по крайней мере начать основываться на Wordpress и видеть, как это идет.
FWIW здесь являются примечаниями, которые я придумал:
http://wordpress.org/ http://mu.wordpress.org/
Персональный инструмент публикации, платформа блоггинга
Платформа управления контентом, набор конструкции CMS, инструменты для создания сайтов. Для 'не программисты' для создания веб-сайтов, стандартных блоков
Это позволяет Вам разрабатывать точное веб-приложение, в котором Вы нуждаетесь с нуля
Как кто-то, кто работал над различными домашними прокрученными системами CMS для большой части прошлого десятилетия мой совет, не делают самокрутки. Если у Вас есть некоторое уникальное приложение затем, MVC является хорошим способом кодировать веб-приложения, но это - простота, не уравновесит тысячи человеко-часов, тратят здание, и миллионы хитов страницы тестирования OSS имеют.
Drupal не является только хорошей системой CMS, но также и является довольно хорошей платформой для создания сделанной на заказ веб-функциональности, таким образом, Вы добираетесь много бесплатно и только должны провести время, работая над тем, что уникально для Вашего сайта. (после изучения, как кодировать в drupal системах),
Вы не можете действительно сравнить WP или Drupal и платформу MVC. То, что можно сделать, должно решить, использовать ли существующую систему управления контентом или развернуть собственное и сравнить ROI, TCO, затраты на разработку, и т.д.
Можно создать довольно расширяемый сайт на основе WP или Drupal, но можно столкнуться с набором ограничений дизайна на основе того, что платформы были разработаны, чтобы сделать. Drupal/WP являются системами управления контентом в ядре, поэтому если Вы не управляете содержанием, Вы не используете платформу эффективно. Если Вы создаете все больше кода обходить эти ограничения, то у Вас есть причина создать из царапины или использовать легкую платформу.
Я в настоящее время создаю сайт с платформой CakePHP MVC, и я настоятельно рекомендую его. По моему скромному мнению, это удовлетворяет все Ваши преимущества.
Гибкость CMS имеет предел, хотя с Drupal, что предел становится меньшим. Существует кривая обучения для выполнения то, что Вы хотите, и это не могло бы быть самое изящное решение, если необходимо уклониться от него вместе с существующими расширениями. Конечно, можно всегда разворачивать функциональность любого CMS сами, но это может занять больше времени, чем использование хорошей платформы во-первых.
Я недавно имел этот тот же dilemna, и после попытки Drupal, в конечном счете пошел с платформой CodeIgniter MVC PHP вместо этого. Вероятно, стоящий наделения несколько дней CMS сначала, заняться расследованиями, если это возможно. Если Вы затем решаете, что это будет слишком трудно, использовать платформу MVC вместо этого.
Microsoft ASP MVC (например), является платформой для создания Ваших веб-сайтов на, Drupal является системой управления контентом, где Вы "разрабатываете" свои страницы, но не должны писать код.
Я сказал бы, что преимущество использования платформы MVC к самокрутке вместо того, чтобы использовать WP или Drupal:
Если бы Вы собираетесь стремиться к платформе MVC затем, необходимо тщательно посмотреть, который Вы выбрали бы - они не создаются равные. Некоторые из них установят ограничения для Вашего кода и расположения веб-сайта таким же образом, CMS был бы.
Я предполагаю, что это действительно до того, насколько сложный требования и как хорошо CMS или платформа встретят их. Для относительно простой доставки контента это может быть опция записать Ваш собственный легкий MVC и положиться на это.
Я советовал бы Вам сильно против WordPress, это замечательно для сайтов с некоторыми статическими страницами и одним разделом блога/новостей, но я сделал двуязычный веб-сайт продукта на основе WP 2.2, и это был главный ЛАВАШ с большим взламыванием и написанием достигающего базы данных кода в шаблон для позволения.
Теперь я разрабатывал в Drupal, и это действительно лучше для больших проектов (хотя требуется больше времени для установки простого блога по сравнению с WP) - это имеет замечательную модульную архитектуру, которая позволила мне решать любой запрос/проблему до сих пор путем записи модуля вместо того, чтобы взломать ядро.
Что касается MVC/Drupal: имейте взгляд, что делает Drupal, если можно получить результат путем изменения Drupal, затем это является большим и сохранит Вас много времени, не имея необходимость кодировать обычный материал (регистрация пользователя, ввести санитизацию, устойчивую обработку формы и проверку, theming инфраструктура, абстракция устройства хранения данных, уровень абстракции веб-сервисов (Сервисный модуль) и так далее...).
Против Drupal: по сути медленный, из-за модульного (я представляю список объектов, давайте назовем все модули, которые реализуют theme_list, чтобы узнать, хотят ли они изменить его), архитектура, поэтому если Вы делаете следующий Твиттер, получаете быструю платформу MVC вместо этого. И для кэширования содержания для зарегистрированных пользователей все еще нужна партия работы, чтобы быть эффективным (теговый кэш должен быть в ядре), таким образом, сайты, когда пользователи обычно зарегистрированы, могут быть медленными.
Я считаю, что Drupal является MVC. Drupal использует theming систему, которая является Вашими представлениями и системой меню, которая является Вашим контроллером. Модули являются Вашими моделями. Несомненно, меню фрагментируется в различные модули, но это - все еще в основном право MVC?