Давненько, когда я только взял в руки Drupal, я обратил внимание на особый язык, который используется в Drupal. Не так чтобы было не понятно, что там Drupal имеет в виду, но определенные вопросы возникали. И уже по ходу создания курса по Drupal и не только, у меня родилась идея составить небольшой словарик Drupal из самых страшных слов Drupal. Итак.
Первое страшное слово Drupal – нода. Что такое нода (node)? В переводе это просто узел. Node является единицей всего контента (материала) в Drupal. То есть заметка (story), запись блога, страница (page) и т.д. являются нодами.
Откуда взялось такое название – нода (node)? Скорее всего название возникло из-за того, что нода может служить родительским элементом для других материалов (как это реализуется в модуле Book в Drupal). При этом родитель служит как бы узлом, от которого ответвляются потомки. Кроме того, к ноде могут быть прицеплены и комментарии, которые сами не являются нодами, а также прикреплены файлы или изображения. Всё это подчеркивает узловую, аккумулирующую роль node.
Следующие термины Drupal (так сказать, не отходя от кассы) Page и Sory, то бишь Страница и Заметка. Точнее, что это такое и так понятно, самое главное – чем в Drupal страница отличается от заметки? Ответ, возможно, вас удивит – а никакой! Просто так исторически сложилось, что в Drupal существуют эти два типа. Хотя комрады утверждают, что разница раньше была.
Page в Drupal используется для создания статических страниц, например страница “Об авторе”. Аналог в Wordpess – Страницы, аналог в Joomla – Статические страницы.
Story в Drupal используется для размещения статей или новостей. Аналог в WordPress – Посты, аналог в Joomal – Динамические статьи.
Небольшая разница между Page и Story обнаруживается при создании того или другого элемента Drupal: Page не содержит информацию об авторе, времени создания, комментарии и др., а Story как раз и содержит этот функционал по умолчанию. Хотя всё это можно настроить.
Ещё одно страшное словечко Drupal, с которым мы сталкивается буквально при установки – cron. Обычно cron – это механизм для запуска заданий по расписанию с определённой периодичностью. А задание, в свою очередь – это какая-либо программа.
В Drupal функциональность cron несколько другая. Благодаря системе обработчиков (callback) и ловушек (hook), при запуске cron.php или вызове функции запускающей cron, в модулях происходит вызов функций, предназначенных для взаимодействия с cron. Обычно это функции, которые необходимо выполнять с определённой периодичностью, например индексация нового материала для системы поиска Drupal или сбор новостей в формате RSS с других сайтов.
Следующий термин Drupal – тизер. В Drupal тизер – это начальная часть материала (страницы, статьи и т.д.), обычно 1-2 первых абзаца. В Joomla используется термин Водная статья, в WordPress также предусмотрен механизм вывода анонса поста.
С одной стороны – это удобно. С другой стороны, такая специфика Drupal заставляет нас размещать анонс в первых строках создаваемой страницы с материалом, что может оказаться неудобным или даже неприемлимым. Однако, существует специальные модули, которые позволяют добавить к форме создания материала отдельное поле для тизера и, таким образом, решить эту проблему.
И напоследок – самый страшный тармин Drupal – таксономия. Таксономия, словарь, термин – это научные понятия, которые сводятся к механизму категоризации материала. Ну и чтобы стало более понятно, обратимся к описанию комрада.
Замените слово таксономия, на категоризатор. Тогда, эти страшные словари на самом деле просто группы категорий, а непонятные термины – это просто категории внутри этих групп категорий. Ещё одно замечание касается подкатегорий. Несмотря на то, что такие слова как подтермин в Drupal не используются, слово подкатегория встречается довольно часто. Подкатегория – это тот же термин в словаре, но термин, родителем которого является другой термин. Когда говорят о свободных тегах – имеют в виду также категории, всё отличие которых от терминов в том, что они создаются пользователями при создании материала, а не заносятся в группы категорий в процессе администрирования этих самых групп категорий.
Маленький пример. Допустим вы повар и хотите создать сайт с каталогом разных блюд. При этом, вы понимаете, что хорошо было бы как-то упорядочить этот каталог. Самое простое, что приходит в голову – это разделить блюда на супы, напитки, салаты, второе и гарниры.
Но при достаточно большом каталоге вы понимаете, что этого не достаточно, например вы бы хотели как-то выделить отдельно мясные и рыбные блюда, а мясные в свою очередь разделить на блюда из свинины, говядины, баранины и курятины! Также хорошо было бы дать возможность выбирать блюда по времени приготовления! С помощью таксономии это всё возможно!
Итак вы создаёте словарь: “Тип блюда”, содержащий термины: “напиток”, “салат”, “суп”, “второе”, “гарнир”. Далее словарь “Время приготовления”, содержащий термины: “10 минут”, “20 минут”, “30 минут”, “1 час” и т.д. Далее словарь “Состав”, содержащий, например, термины: “Мясное”, с подтерминами: “(Курятина”, “Свинина”, “Говядина”, “Баранина”), “Молочное”, “Мучное”.
При создании словарей, не забудьте указать тип материала к которому они будут привязаны. Например, если вы будете создавать рецепты в виде заметок (Story), то соответственно и указывайте этот тип материала. Теперь при создании рецепта блюда, вы увидите в форме ваши созданные словари и сможете выбрать для каждого блюда нужные параметры, например для котлеты: второе, мясное+говядина, 30 минут.
Друпаль!
Popularity: 12% [?]