Структура многостраничного сайта: Как устроена организация многостраничного сайта? — Хабр Q&A

Содержание

html — Как выглядит структура папок многостраничного сайта?

Как у меня в голове это всё:

  • в корне создать папку pages и в ней создавать папки с названием страницы и уже в этих папках index.html (pages/about/index.html)
  • Если страницы разные, то создаю новые файлы в папке css (которая в корне) отдельные файлы .css (about.css, portfolio).

Я просто видел уже чужие проекты (где не одна страница) и там по разному у всех. У одного в папке pages .html файлы, а в папке css файлы .css к этим новым страницам. У второго все .html файлы лежат тупо в корне без каких либо папок.

Вопрос:

  • или это просто дело вкуса. То есть кому как удобно.
  • как быть с файлами ксс если главная страница наполовину или даже меньше половины похожа на все остальные? То есть даже если хоть немного страницы различаются, то создавать отдельные ксс?
  • html
  • css
  • css3
  • html5
  • dom

1

Правильнее делать один общий css и к каждой странице добавочные css. Это верно, если страницы различаются хотя бы на треть.
Если же брать сайт из реальной жизни, а не из каких-то примеров, то так не бывает, страницы отличаются сугубо контентом, но не стилями и единственно правильное решение — только один css на все страницы.
Что-то подобное — разные стили для разных компонентов, включаемых на разных страницах — используется в битриксе, но там сложный механизм кеширования, создающие разные варианты кеша для разных страниц, у вас статика и кеширование отсутствует как класс…
И не идите на поводу у слова ВКУС. Вкусы — понятие субъективное, а вот требования гугла и яндекса к качеству сайтов — формализованы и тщательно прописаны, разные css будут отражаться на скорости загрузки страницы и т.д.

Зарегистрируйтесь или войдите

Регистрация через Google

Регистрация через Facebook

Регистрация через почту

Отправить без регистрации

Почта

Необходима, но никому не показывается

Отправить без регистрации

Почта

Необходима, но никому не показывается

Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки

mvc — Структура папок сайта.

Как грамотней?

Вопрос задан

8 лет 10 месяцев назад

Изменён 5 лет 2 месяца назад

Просмотрен 19k раза

В общем, планируется несложный сайт-визитка с небольшим количеством PHP, для вывода из базы данных товаров. Встал такой вопрос — как грамотно организовать структуру папок сайта, что к чему подключать и как разделять код? Можно коротко, думаю, я пойму общую идею. Пока что есть такой вариант:

/css
/js
/images
/includes
index.php
page1.php
page2.php
page3.php

PHP-файлы просто связаны между собой ссылками (в меню сайта), в нужные места этих файлов подключаются файлы из папки includes, которые выводят какие-то данные из базы. Как вариант — создать папку template для шаблонов, тогда туда буду передаваться данные из файлов папки includes и уже в главные файлы будут делаться не php-вставки, а вставляться шаблоны.

То есть, получается, что index.php, page1.php, page2.php, page3.php это просто файлы с html-разметкой и php-вставками (или шаблонами). Есть еще какие-то, более грамотные варианты разделения?

  • mvc
  • веб-программирование

6

В идеале любой сайт должен иметь такую структуру:

app (корневая папка)
--core
--components
--models
--other code-related stuff
--templates
--public - именно эта папка смотрит "наружу"
----assets
----images
----js
----css
----index.php
--logs

Здесь главное — не названия папок, а то, что наружу смотрит всего одна папка и один исполняемый файл, в результате сайт у вас оказывается наименее уязвимым. И не забывайте применять intval() и подобные операции к приходящим айдишникам.

update: Еще одна вещь, которую необходимо отметить — если заливаются какие-то файлы, то надо их хранить

вне публичной директории, либо (если, например, это пользовательские изображения, которые должны показываться) фильтровать их по расширению и быть уверенным, что сервер не может исполнять файлы с таким расширением. Буквально на этой неделе сталкивался с тем, что так сломали самопис (а в свое время так уронили тысячи сайтов на вордпрессе).

1

Зарегистрируйтесь или войдите

Регистрация через Google

Регистрация через Facebook

Регистрация через почту

Отправить без регистрации

Почта

Необходима, но никому не показывается

Отправить без регистрации

Почта

Необходима, но никому не показывается

Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки

Создание нескольких страниц с меню навигации

Содержание

  • 1 Введение
  • 2 меню HTML5
  • 3 Инструменты главного HTML-меню — ссылки, якоря и списки
  • 4 Потребность в гибкости
  • 5 Различные типы меню
    • 5.
      1 Внутристраничная навигация (оглавление)
    • 5.2 Навигация по сайту
      • 5.2.1 Создание у посетителей ощущения «Вы здесь»
      • 5.2.2 Сколько опций вы должны предоставить пользователям одновременно?
    • 5.3 Контекстные меню
    • 5.4 Файлы Sitemap
    • 5.5 Пагинация
  • 6 Когда списков недостаточно — карты изображений и формы
    • 6.1 Настройка горячих точек с картами изображений
    • 6.2 Экономия места на экране и предотвращение перегрузки ссылок формами
  • 7 Куда поместить меню и предложить варианты его пропуска
  • 8 Резюме
  • 9 вопросов для упражнения

Введение

В этой статье учебного плана по веб-стандартам мы поговорим о навигации по веб-сайту и меню. Вы узнаете о различных типах меню и о том, как их создавать в HTML. Мы также коснемся темы удобства использования и доступности меню. Мы пока не будем углубляться в стилизацию меню, но в этой статье мы заложим основы.

К этой статье можно загрузить примеры кода — мы будем ссылаться на них на протяжении всего руководства.

HTML5

Оставить комментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *