• Как правильно делать большие сайты? обязательно ли писать каждую страницу по отдельности?

    @tgarl
    Забавно, вопрос звучит об одном, вам дают ответ о другом и вроде как ответ получен.

    Но в целом ответ на ваши вопросы будет таким(вдруг кто-то будет искать и натолкнется):
    многостраничники на чистом html не делают, в первую очередь их поддерживать проблематично(хотя насколько я знаю есть локальные программы в которых можно хранить наполнение и производить генерацию готовых html-файлов, а их в свою очередь уже как сайт использовать), к тому же в зависимости от направленности сайта некоторые элементы должны быть персонализированы(например цены->цены со скидкой по какому-то условию, в html нет возможности это регулировать), поэтому все используют шаблоны(верстка элементов/страниц), базы данных и серверные языки (бек) для их объединения в готовый результат. Базы данных тоже штука специфическая - что считать базой данной, есть системы управления сайтом для которых БД это просто текстовые файлы .txt/.csv/.xml к которым обращаются скипты считывают их, обрабатывают и результат вставляют в тот или иной блок шаблона.

    Так что если вы хотите полностью сами все делать, то изучать и серверную часть вам нужно, хотя бы на минимальном уровне. Если же нет, то как и вам уже посоветовали используйте готовые движки сайтов и готовые к ним шаблоны/модули.
    Или занимайтесь клонированием страниц, но это неблагодарное занятие если у вас их перевалит за десяток(до этого как по мне еще терпимо).

    По фишкам: изучайте javascript, с его помощью некоторые вещи можно делать для создания эффекта динамики, и чтения данных из файлов
    Ответ написан
    Комментировать
  • Как правильно делать большие сайты? обязательно ли писать каждую страницу по отдельности?

    Вопрос в том, насколько вы задолбались копипастить и как часто вы меняете дизайн и структуру вашего сайта. Если просто делать всё индивидуальными страничками, то поменять дизайн, даже если изменения совсем небольшие, будет болью в одном месте. Поэтому, что-то бэкендо-подобное вам надо будет изучать. Это вам не повредит, поверьте. React сейчас полным ходом несётся в сторону рендеринга на сервере, поэтому вам придётся это учить.

    Итого, есть три пути:

    1. Беспроигрышный. Это Wordpress. Берете, делаете, все счастливы. Туториалов миллиарды, плагинов ещё больше, всё будет зашибись. Проблема одна: если надо будет тонко настраивать, то надо будет хоть немного изучить PHP.

    2. Когда надо быстро что-то добавить, даже с мобилы или с компьютера девушки, и чтобы оно сразу отобразилось на сайте, то либо смотрим в сторону п.1, либо если не хотите изучать PHP, выбираете себе CMS на базе Javascript. Есть даже так называемые headless cms, которые генерируют вам только JSON, а вы у себя на фронтенде сами его обрабатываете и рисуете всё на основе полученных данных.

    Это самый сложный вариант из трёх

    Вот список некоторых из таких CMS
    https://jamstack.org/headless-cms/

    3. Если вам не нужна молниеносная публикация новых материалов, и вы можете потерпеть до доступа к рабочему ноуту, то можно выбрать генератор статических сайтов.

    Сразу посоветую вам Astro https://astro.build/

    Прелесть Astro в том, что новый контент вы можете писать в Markdown. Это такой простейший язык разметки текстовых документов. Вы сможете его выучить за час, не больше. Там всё настолько интуитивно и просто, что больше времени вам не понадобится. При этом формат мощный, убедиться в этом можно, посмотрев почти любой репозиторий на Гитхабе. Практически каждый из них имеет файл README.MD, где как раз всё написано в Markdown (MD)

    В Astro вам надо будет создать несколько шаблонов astro (html). Шаблон хедера, футера, сайдбара, основного контента, разных типов страниц (статья, список статей, и т.д.). И в этих шаблонах будет указано, где нужно выводить сгенерированный из Markdown контент. И далее новые странички вы будете добавлять путём добавления в соответствующие папки файликов с Markdown разметкой. Это очень просто, быстро и не напряжно.

    После добавления этих файликов вы запустите генерацию сайта, и Astro сгенерирует вам кучу готовых html страничек, которые вы просто зальёте на сервак. Профит!

    Берите youtube, набирайте там "Astro markdown", и изучайте туториалы. Процесс всего этого чрезвычайно прост, вы много времени не потеряете, зато сэкономите себе массу времени на создании новых материалов на сайте

    Можете посмотреть и другие генераторы статических сайтов тут https://jamstack.org/generators/
    Ответ написан
    Комментировать