Советы по добавлению базового динамического поведения в статический веб-сайт
Я разрабатываю сайт для местного бизнеса, и я закончил дизайн и верстку в Photoshop, и теперь я готовлюсь начать создавать HTML и CSS. Я пытаюсь решить, какую технологию использовать на стороне сервера, чтобы добиться следующего базового динамического поведения:
- Включите верхний и нижний колонтитулы сайта на всех страницах, чтобы код не содержался во всех исходных файлах (например, на стороне сервера).
- Разрешить пользователю редактировать несколько страниц через веб-интерфейс и публиковать изменения.
- Есть формы обратной связи / опроса.
Решения, доступные через их текущий веб-хостинг: PHP, ASP, ASP.NET 2.0, Drupal, Joomla и Wordpress.
Как вы думаете, что будет хорошим (читай: простым) путем? У меня есть опыт работы с VB.NET и C# (но не ASP.NET). Я открыт для изучения любого инструмента, который лучше всего подходит для работы.
Спасибо!
2 ответа
Для всех точек PHP будет работать прекрасно. Для включений верхнего и нижнего колонтитулов у вас может быть одна страница, которая принимает переменную GET целевой страницы (например, "home", "calendar", "news"...). В зависимости от того, какую переменную GET вы получаете, вы можете включить разные страницы.
if($_GET['page']=="home"){
include(inc/home.php);
}
Если вы не хотите отображать уродливые переменные GET в URL, вы можете изобразить их с помощью некоторой магии apache! (Googling 'маскировка URL' или 'перенаправление Apache' должны помочь)
Что касается остальных ваших требований, PHP имеет преимущество в виде небольшой кривой обучения и большого количества доступной документации (как онлайн, так и вне ее). Сочетание PHP и MySQL должно быть достаточно для того, что вам нужно. Большинство веб-хостов предлагают это.
Если у вас нет опыта ни в одном из этих событий, это будет дерьмо! Drupal, Joomla, Wordpress или любая другая CMS с открытым исходным кодом, вероятно, предоставит вам необходимые функции (и даже больше) без необходимости изучать язык программирования. Прочитайте их список функций, несколько учебников, чтобы увидеть, как вы решите основные задачи в каждом из них. Если они не обладают необходимой вам гибкостью или мощью, вам, вероятно, придется изучать язык программирования (в этом случае лично я бы держался подальше от параметров, специфичных для Microsoft- ваш следующий клиент может не работать под Windows машины и ваши вложения будут потрачены впустую).
Удачи!