Урок 3. Добавление материалов, их типы. Фильтры HTML

Отметим на будущее, что будем создавать web-сайт типа "блог". Блог представляет собой регулярно обновляемый сайт статей, отсортированных в хронологическом порядке, и предполагающий комментарии читателей.

Первая страница, которую мы создадим, будет называться "О сайте". Обычно все приличные сайты имеют такую страницу; на ней может содержаться информация о том, какой теме посвящен данный сайт, его структура, принципы, цели, предположительная аудитория, авторские права, контакты и др.

Для того, чтобы добавить контент в Drupal, нажмите в меню Создать публикацию(или Создать материал). Материалы сайта бывают разным по своему назначению и содержанию. Это может быть запись, основное назначение которой информировать посетителей сайта, ставить их перед фактом; или это может быть запись, предполагающая коллективное обсуждение (запись блога, например); или материал, главной частью которого является изображение или видеозапись; также бывает материал, представляющий собой коллекцию ссылок на другие материалы, объединенные по тому или иному признаку. От типа материала зависит, какие части могут быть у содержимого страницы. Поэтому форма создания каждого типа материала может иметь свои нюансы и особенности, но не обязательно. По умолчанию в системе Drupal включены только два типа материала: Page (страница) и Story (заметка, рассказ). По своей структуре эти материалы ничем не отличаются, но имеют разное смысловое назначение. Page предназначен для более "статичного" материала: того, который реже меняется. Такой тип как раза больше всего подходит для создания страницы "О сайте".

После выбора Page перед вами откроется форма для заполнения. В поле Titleвписывается название статьи, в поле Body – ее текст. Сочините и напишите два-три абзаца о вашем сайте. Теперь развернем раздел Параметры меню. Название ссылки в меню может быть таким же, как ее заголовок, хотя может и отличаться (если заголовок статьи очень длинный, то ссылки в меню стараются сделать немного короче). Сложнее обстоит дело с выбором места расположения ссылки. На сайте может быть несколько меню. Есть те, которые уже созданы самой системой Drupal (Primary links, Secondary links), однако большинство меню вы будете создавать сами. Любое меню представляет собой блок, и как любой блок может быть отключено или расположено в любой области сайта. По умолчанию меню Primary links включено, его расположение зависит от темы (обычно где-нибудь вверху), а мы его не видим лишь потому, что на данный момент в нем нет ни одной ссылки. Оставим в списке Родительский пункт вариант Primary links и сохраним материал.

После этого вы увидите, как выглядит готовая страница. Обратите внимание на адресную строку браузера, там будет значиться developer.home/node/1. Это адрес данной страницы. В системе Drupal принято статьи называть нодами (node). Не трудно догадаться, что следующая статься будет иметь адрес developer.home/node/2. Перейдите на главную страницу сайта (заметьте, что она осталась прежней) и затем щелкните по ссылке "О сайте", которая должна была появиться в верхней его части.

При написании статьи, скорее всего, вы создавали новые абзацы одним нажатием Enter. Так происходит во всех текстовых процессорах, но не в системе Drupal. Здесь один Enter означает разрыв строки (<br>), а два Enter – формирование абзаца (<p>). Если вы посмотрите исходный код страницы, на которой расположена нода "О сайте", и найдете там свой текст, то увидите, что он весь обрамлен единственным контейнером <p> … </p>, внутри которого встречаются один-два тега <br/>. Отредактируйте статью, нажав на кнопку Редактировать (Изменить) около ее названия: вставьте между абзацами пустые строки. Теперь снова посмотрите исходный код страницы, отметьте разницу.

Добавленная нами статья не появилась на главной странице сайта. Это связано с настройками типа материала Page: по умолчанию статьи туда не выводится. Но это вовсе не значит, что мы не может поместить на главную страницу какую-нибудь избранную статью. На странице редактирования материала раскройте раздел Параметры публикации (он находится в конце). Установите флажок Помещать на главную и сохраните материал. Теперь перейдите на главную страницу сайта; она изменилась: приглашение исчезло, появилась статья в урезанном виде (если конечно, она не слишком маленькая, тогда вы увидите ее целиком). Надо понимать, что это не сама нода, а лишь ее "представление", ссылка на нее. По мере добавления материала на сайт на главной странице сверху будут появляться ссылки и усеченные версии новых статей (если, конечно, для них установлен флажок Помещать на главную), а более старые будут опускаться вниз.
Нода "О сайте" нам на главной странице не нужна, поэтому отредактируйте материал снова, убрав соответствующий флажок.

На странице Управление в разделе Управление содержимым выберите пункт Содержимое. Перед вами откроется форма, позволяющая видеть, какие материалы есть на сайте, искать (фильтровать) материалы определенного типа, осуществлять с ним ряд действий. Эта страница бывает весьма полезна, если надо снять с публикации несколько статей или разместить их на главной странице. Редактировать каждую из них было бы достаточно трудоемко. Пока, как мы видим, на сайте существует только одна статья, так что пока нам здесь делать нечего.

Сайт будет блогом. Запись в блоге — это особый тип материала, это не Page и не Story. Включить тип материала Запись в блоге можно на странице Модули (модуль Blog). Теперь при попытке создать материал, помимо страниц и историй, вам будет предложена возможность создать блоговую запись.

Создадим свою первую запись в блоге. В качестве материала можете взять статью "Краткая история языков программирования" (1). Поместите ее заголовок в поле Заголовок, а все остальное в Содержимое, разделите содержимое на абзацы и сохраните материал. Убедитесь, что усеченный материал статьи появился на главной странице, а адрес самой статьи — developer.home/node/2.

Статья получилась неоформленной, по-идее в ней должны быть подзаголовки (<h2>или <h3>) и выделение терминов курсивом (<em>). Ничего нам не мешает отрыть статью на редактирование и прописать соответствующие теги. Однако сначала надо определиться с уровнем подзаголовков. Понятно, что они должны быть младше, чем основной заголовок статьи. Чтобы выяснить, какого он уровня, посмотрим исходный код страницы. Если заголовок статьи второго уровня, то логично будет выделять подзаголовки третьим уровнем. Заходим в редактирование, обрамляем подзаголовки в контейнер <h3> … </h3>, а термины — в <em> … </em>.

Сохранив статью, видим, что курсив сработал, а заголовки — нет. Об этом же свидетельствует и исходный код страницы: там нет тегов <h3>. Почему? Давайте вернемся на страницу редактирования и раскроем там раздел Формат ввода. Здесь переключатель по умолчанию стоит на варианте Filter HTML, а среди допустимых тегов нет тега <h3>. Именно поэтому он не был интерпретирован. Переключитесь на вариант Full HTML и сохраните изменения. Теперь заголовки третьего уровня есть. Хотя их вид может оставлять желать лучшего, но они все-таки есть.

Однако предпочтительнее использовать именно формат ввода Filter HTML, что связано с безопасностью сайта. Поэтому сделаем немного по-другому. Сначала снова включим вариант Filter HTML для статьи, а затем перейдем на страницу Управление ? Форматы ввода (находится в разделе Настройка сайта). Здесь выберем Настроитьнапротив Filter HTML, а далее следует щелкнуть на кнопке Настройки вверху. В поле Допускаются только следующие HTML теги через пробел надо дописать тег <h3> и сохранить изменения. Тем самым мы изменили сам фильтр.

Добавьте еще пару записей в блог: "Языки программирования. Общая характеристика" (2) и "Некоторые причины и тенденции развития языков программирования" (3). При этом разметьте соответствующие части статей с помощью тегов HTML (списки - <ol>,<ul>, усиление - <strong>).

Посмотрите, как выглядит главная страница.

Создано