Начало создания сайта на движке CMS Друпал (Drupal).

Когда в руки попадает какое-нибудь новое устройство, то обычно его начинают крутить, вертеть, нажимать-давить на кнопочки, если они есть, вообщем исследовать. "Глубина" этого исследования зависит чаще всего от ценности или цены этого устройства. Чем выше цена-ценность, тем раньше берётся в руки инструкция, чтобы понять для чего эта кнопочка и как этим пользоваться.

При первом знакомстве с платформой по созданию сайтов CMS Drupal (Друпал) я также "давил" на кнопочки-ссылочки и пытался разобраться как из этого конструктора по созданию различных сайтов собрать то, что мне нужно. Со временем пришло понимание последовательности действий, определяемых особенностями CMS Друпал:

Это наверно основные моменты для начала работы с CMS Drupal.

Март 2006
http://www.firsthand.ru/

Установка CMS Drupal локально на Windows-машине.

Для устаноки CMS Drupal на своём компьютере потребуется сервер, РНР и другое необходимое. Самым популярным в интернете в настоящее время является Apache HTTP server.

Существует несколько способов сделать возможным исследовать интернетовские идеи на своём компьютере. Но самый простой, на мой взгляд, это установить Denwer - Джентльменский набор Web-разработчика («Д.н.w.р», читается «Денвер» — почти как название города) — набор дистрибутивов, используемый Web-разработчиками (программистами и дизайнерами) для отладки сайтов на «домашней» (локальной) Windows-машине без необходимости выхода в Интернет..

Денвер включает в себя всё необходимое для отладки сайтов. Устанавливается легко. Фактически не требует настройки и если Вы не пожелаете потом синхронизировать локальный сайт с сайтом в Интернет, то проблем не наблюдалось.

Последнюю версию дистрибутива Денвера можно всегда скачать по следующему адресу:
http://www.denwer.ru/dis/latest. Помимо базового пакета понадобиться пакет расширения РНР4. Он содержит некоторые модули, которые не входят в состав базового пакета, но нужны будут для нормальной работы Drupal 5.0. Все пакеты расширений для Денвера можно скачать со страницы http://www.denwer.ru/dis/ . Все пакеты расширений устанавливаются только после установки базового пакета.

После скачивания этих двух файлов, надо запустить на выполнение файл базового пакета, затем файл пакета расширения. В процессе установки будут выводиться сообщения и вопросы. Если читать сообщения и отвечать осмысленно на вопросы, то проблем не должно быть. Практически на все вопросы можно отвечать нажатием на клавишу Enter.

После того как Denwer установлен нужно его запустить через созданный на рабочем столе ярлык Start servers, запустить Internet Explorer и в строке адреса набрать http://localhost/. Если появиться страница с надписью Ура, заработало!, то Денвер работает. Если не работает, то обращайтесь на сайт http://www.denwer.ru/base.html для поиска причины.

На момент написания этого материала у меня установлено:
Базовый пакет: Base_2006-10-04_a1.3.33_p4.4.3_m4.1.16_pma2.6.1.exe
Пакет расширения: PHP4_2006-10-04_4.4.4.exe

Затем скачиваем с официального сайта http://drupal.org/ архив дистрибутива Drupal. Это архив .tar в архиве .gz, который понимает большинство архиваторов и поэтому с распаковкой проблем не должно быть. При помощи архиватора распаковываем содержимое архива Drupal в папку Z:\home\figures.ru\www. Здесь Z:\home уже созданная Денвером папка, а figures.ru и в ней www нужно создать самим. figures.ru - название тестового сайта, а www - папка, где будут храниться файлы сайта. Более подробно о том как добавлять проекты в Denwer, хорошо написано на сайте Денвера.

После распаковки должно получиться что-то вроде этого

Каталог сайта

Следующим шагом будет создание базы данных. Все данные в Друпал хранятся в базе данных MySQL, но прежде чем что-то в ней хранить надо её сначало создать. Используем для этого возможность, предоставляемую Денвером. На главной странице Денвера, это где "Ура, заработало!", в первой строке щёлкаем по ссылке "Утилиты", а затем по "Заведение новых БД и пользователей MySQL". Заполняем поля:

Пароль администратора MySQL: оставляем пустым
Имя базы данных: figures
Логин пользователя: figures
Пароль: pass
...еще раз: pass

И нажимаем на "Создать БД и пользователя".

Второй строкой должна появиться надпись "База данных и новый пользователь заведены".

Для того чтобы Drupal работал на сайте figures.ru и с нужной базой, надо внести изменения в файл настройки settings.php необходимые изменения. Этот файл расположен в Z:\home\figures.ru\www\sites\default\. Открываем файл настройки в любом текстовом редакторе, ищем строки и делаем необходимые изменения.

* Database URL format:
* $db_url = 'mysql://username:password@localhost/databasename';
* $db_url = 'mysqli://username:password@localhost/databasename';
* $db_url = 'pgsql://username:password@localhost/databasename';
*/
$db_url = 'mysql://figures:pass@localhost/figures';
$db_prefix = '';

/**
* Base URL:
*
* The URL to your Drupal installation. It is not allowed
* to have a trailing slash; Drupal will add it for you.
*
* Examples:
* $base_url = 'http://www.example.com';
* $base_url = 'http://www.example.com:8888';
* $base_url = 'http://www.example.com/drupal';
* $base_url = 'https://www.example.com:8888/drupal';
*/
# $base_url = 'http://www.example.com'; // NO trailing slash!
$base_url = 'http://figures.ru';

Сохраняем изменения и перезапускаем Денвер - Restart server.

Теперь в Internet Explorer в адресной строке набираем http://figures.ru/install.php
Если всё сделано правильно, то Друпал создаст необходимые таблицы базы данных и в браузере появиться страничка с сообщением из нескольких строк, что установка завершена и что Вы можете посетить Ваш новый сайт.

Drupal installation complete
All necessary changes to ./sites/default/settings.php have been made. It has been set to read-only for security.
Congratulations, Drupal has been successfully installed.

Please review the messages above before continuing on to your new site.

Щелкаем по ссылке your new site в последней строке и попадаем на первую страницу Вашего нового сайта, построенного на основе CMS Drupal 5.0.

Для дальнейшей работы с Друпал необходимо зарегистрировать первого пользователя. Это будет пользователь номер один или самый главный администратор. Самое интересное, что большинство почему то выбирают в качестве логина для главного пользователя ADMIN. Главному администратору сайта или портала не обязательно иметь логин admin, можно любой другой. И другой, с точки зрения безопасности, даже лучше. Ну а если Вам хочется иметь логин Admin, то Вы можете создать группу администраторов и зарегистрировать в этой группе этот логин на себя. Но это потом, а сейчас на главной странице находим ссылку create the first account и жмем на неё.

В поле Username: вводим Admin (не будем нарушать стереотип), в поле E-mail address: вводим к примеру admin@figures.ru и жмём на кнопку Сreate new account тем самым создавая первого пользователя. Почтовый адрес указывать лучше реальный. Это нужно на случай Вашей плохой памяти. Дело в том что Денвер позволяет просматривать все письма, которые отправляются из под него. Ему не важен Ваш почтовый адрес (http://localhost/Test/sendmail/index.php -- Проверка отладочной заглушки для sendmail ). А вот если Вы вздумаете закачать базу данных в Интернет, то реальный почтовый адрес может очень пригодиться для восcтановления пароля, если Вы вдруг его забудете.

После регистрации, можно записать пароль, который выдал Друпал или лучше установить свой собственный. Для чего в двух окошках под Password: и Confirm password: набираем новый пароль, например ''pass'' или ''asdfghjkl'' и нажимаем на кнопку Submit внизу страницы.

Если Вы вдруг забудете пароль, то можете смело его востанавливать (Request new password), а письмо отосланное Вам можно посмотреть по ссылке http://localhost/Test/sendmail/index.php -- Проверка отладочной заглушки для sendmail, которая расположена на главной странице Денвера в таблице тестирования работы Денвера. В этом письме будет строка типа
http://figures.ru/?q=user/reset/1/1169362702/e188bf7e50d028724c451204f50c78b7
её надо скопировать и вставить в адрес Internet Explorer. Перейти по этой ссылке и нажать на кнопочку Log in. Попадаете на страницу своей учетной записи, где нужно определить новый пароль.

Если для Вас английский язык не является проблемой, то нет проблем, а если Вам хочется что бы Друпал заговорил по русски, то надо провести локализацию. Drupal имеет модульную структуру и по умолчанию в Drupal включены модули самые основные и необходимые для работы. Остальные модули включаются по усмотрению администратора или пользователя, если у него есть такие права. Возможность локализации, по умолчанию, в Drupal отключена.
Как включить и что надо для руссификации смотрите Локализация или многоязычность Drupal. Руссификация..

Вот вроде и всё. Сайт на Drupal создан и теперь можно изучать возможности и проводить эксперименты.

Январь 2007
http://www.firsthand.ru/

Локализация (перевод) или многоязычность Drupal. Русификация.

Если для Вас английский язык не является проблемой, то нет проблем и Вы можете пользоваться Drupal в том виде в котором он есть, с английским интерфейсом. И если Вы будете делать сайт на Drupal для англоязычных или англоязыкопонимающих пользователей, то вообще проблем никаких. Если же язык Ваших предполагаемых посетителей отличается от английского и Вам самим более удобен другой, то у Drupal есть возможность перевода языка интерфейса с английского на нужный Вам. Эта возможность в Drupal называется Localization - локализацией. И эту возможность обеспечивает модуль Locale - Enables the translation of the user interface to languages other than English, который при начальной установке Drupal отключен, то есть не работает и чтобы он заработал - его надо включить (или подключить).

Для включения модуля локализации жмем на Administer, затем на Site building, затем на Modules. Появляется список, в котором ставим галочку напротив Locale (Enables the translation of the user interface to languages other than English) и внизу страницы жмем на кнопочку Save configuration.

После того как Вы подключили модуль, в разделе меню Administer - Site configuration должен появиться пункт Localization. Щелкаем по нему и щелкаем на появившейся странице на закладке Add language. В окошке под Language name: выбираем из списка Russian (Русский) и жмем на кнопку Add language.

В списке из English и Russian ставим галочку и точку напротив Russian и жмем на кнопку Save configuration. Теперь Drupal готов принять русский язык и самое простое что можно теперь сделать, это скачать руссификаторы с официального сайта в разделе http://drupal.org/project/Translations и произвести импорт (Import) перевода на свой сайт. Правда там не всегда есть перевод на свежие версии и поэтому можно попробовать использовать переводы от младших версий Drupal, например Drupal 4.7. Перевод конечно будет не полный, но основные термины скорее всего переведены будут.

Для версии Drupal 5.0 есть перевод на http://drupal5.ru/ Перевод сообщений ядра и некоторых модулей. Этот же перевод Вы можете скачать и с этой страницы. Но он от 5 декабря 2006 года, а на http://drupal5.ru/ может быть и более свежий.

Так же есть Полный русский перевод Drupal 5.0 на http://drupal.ru/. Там же можно найти переводы для некоторых модулей: Переводы модулей для Drupal 5.0. Этот перевод используется на этом сайте.

Все руссификаторы или файлы локализации на другие языки обычно заархивированы. Перед тем как делать импорт, эти файлы нужно разархивировать. Сами файлы являются текстовыми, но имеют они расширение .po . Например, ru-2006-12-05.po.

Делаем импорт руссификатора. Для этого на странице Localization щелкаем по закладке Import, выбираем в строке Language file: файл руссификации (ru-2006-12-05.po), который вы скачали и распаковали (разархивировали) и жмем на кнопку Import . О том что перевод произошел Вы сразу увидите по русским пунктам меню.

Переводы для CMS Друпал (Drupal) можно также поискать на следующих сайтах:
http://drupal.ru/
http://drupal.htdogs.ru/
http://drupal.kiev1.org/

ВложениеРазмер
ru-2006-12-05.zip254.83 кб
ru-2006-12-05.rar76.22 кб

Drupal, Denwer, phpMyAdmin и кодировки cp1251, utf8.

Если Вы задумаете обмениваться базами данных между своими Друпал (Drupal) сайтами, например сайтом на Вашем компьютере и сайтом в сети Интернет, то может возникнуть проблема с отображением текста Ваших страничек. Это связано с тем, что Друпал работает с кодировкой utf8, а Денвер работает с кодировкой cp1251.

По незнанию, я устанавливал Друпал по умолчанию, то есть установил Денвер и тут же установил Друпал. У меня работало вроде всё нормально, но потом было замечено что не работает поиск по русским буквам. Поиски по Интернету дали только то, что Друпал нормально работает с utf8.

Потом появились проблемы при использовании импорта/экспорта базы данных. В интернет базы MySQL работают в основном с кодировкой utf8. В другую кодировку текст преобразовывается сервером при передачи текста в браузер. Денвер преобразовывает текст в кодировку cp1251.

При экспорте базы MySQL данные сохраняются в cp1251 и при импорте в другую базу они также идут в кодировке cp1251, но приемная база считает что это utf8 и при выдаче в браузер происходит ещё одна перекодировка, ненужная, и получается непонятно что.

Что бы этого избежать, мною были внесены некоторые изменения в настройки базы MySQL и phpMyAdmin.

Кодовая таблица для базы данных MySQL определяется в файле my.cnf, его можно открыть для редактирования из любого текстового редактора. Только надо сначала открыть редактор, а потом в редакторе открыть этот файл. Если установка Денвера происходила по умолчанию или по рекомендациям, то этот файл будет расположен в Z:\usr\local\mysql4\my.cnf

Делаем замены, устанавливающие кодовую таблицу utf8 вместо cp1251

[client]
port = 3306
socket = /tmp/mysql.sock
# ==============================================================
# === БЫЛО === default-character-set = cp1251
# ==============================================================
default-character-set = utf8
character-sets-dir = /usr/local/mysql4/share/charsets

#
# Параметры MySQL-сервера.
#
[mysqld]
# Использовать режим совместимости с клиентами MySQL 3.x и MySQL 4.0.
old-passwords

# Кодировка баз данных по умолчанию.
default-character-set = utf8 # было cp1251
init-connect = "set names utf8" # было cp1251


Перезапускаем Апач ( Restart server )

На момент написания этого материала у меня установлено:
Базовый пакет: Base_2006-10-04_a1.3.33_p4.4.3_m4.1.16_pma2.6.1.exe
Пакет расширения: PHP4_2006-10-04_4.4.4.exe
Если у Вас установлены другие версии, то возможно отличие, но принцип остаётся - надо ср1251 заменить на utf8 .

Так как в основном для импорта/экспорта используется phpMyAdmin, то нужно и там сделать некоторые изменения. Справа на главной странице http://localhost/Tools/phpmyadmin/index.php выбираем
Language -> Russian (ru-utf-8),
Сопоставление соединения с MySQL -> utf8_general_ci
должно быть: MySQL-кодировка: UTF-8 Unicode (utf8)

В самом низу страницы возможно возникнет сообщение:

Ваш конфигурационный файл содержит настройки (пользователь root без пароля), которые относятся к привилегированному пользователю MySQL (по умолчанию). Ваш MySQL сервер запущен с этими настройками по умолчанию, открытый для вторжений, поэтому Вам настоятельно рекомендуется устранить эту дыру в безопасности.
The mbstring PHP extension was not found and you seem to be using multibyte charset. Without mbstring extension phpMyAdmin is unable to split strings correctly and it may result in unexpected results.

Сообщение на английском говорит о том, что для нормальной работы phpMyAdmin с кодировкой utf8 необходим модуль расширения mbstring для PHP. Данный модуль есть в расширении для PHP для Денвера, Скачиваем это расширение и устанавливаем если Вы его ещё не установили.

Далее ищем файл Z:\usr\local\php\php.ini и в нем убираем ";" в начале строки

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Динамически загружаемые расширения ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Убираем ; перед двумя следующими строками
extension=php_gd2.dll -- графическая библиотека
extension=php_mbstring.dll -- работа с уникодом.

перезапускаем Денвер и проверяем обновлением страницы http://localhost/Tools/phpmyadmin/index.php

Если надпись

The mbstring PHP extension was not found and you seem to be using multibyte charset. Without mbstring extension phpMyAdmin is unable to split strings correctly and it may result in unexpected results.

изчезла, то проблемы решены и всё должно работать нормально. Во всяком случае у меня все работает и поиск и импорт/экспорт.

Таксономия или как разделить одну кучу на более мелкие.

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

В Большой энциклопедии Кирилла и Мефодия о таксономии можно прочитать:

«ТАКСОНОМИЯ (от греч. taxis — расположение, строй, порядок и nomos — закон), теория классификации и систематизации сложноорганизованных областей действительности, имеющих обычно иерархическое строение (органический мир, объекты географии, геологии, языкознания, этнографии и т. д.). Термин (предложен в 1813 швейцарским ботаником О. Декандолем) длительное время употреблялся как синоним систематики. В 60-70-х гг. 20 в. возникла тенденция определять таксономию как раздел систематики, как учение о системе таксономических категорий, обозначающих соподчиненные группы объектов — таксоны.»

Если сформулировать это покороче, то получится что ТАКСОНОМИЯ - это теория классификации и систематизации.

В той же энциклопедии смотрим что такое теория.

"ТЕОРИЯ (от греч. theoria — рассмотрение, исследование), система основных идей в той или иной отрасли знания; форма научного знания, дающая целостное представление о закономерностях и существенных связях действительности."

Опять же если покороче, то ТЕОРИЯ - это форма научного знания.

"КЛАССИФИКАЦИЯ (от лат. classis — разряд, класс и ...фикация), в логике — система соподчиненных понятий (классов объектов) какой-либо области знания или деятельности человека, используемая как средство для установления связей между этими понятиями или классами объектов. Научная классификация выражает систему законов, присущих отображенной в ней области действительности. Различают естественные классификации, основания которых — существенные признаки объектов (напр., периодическая система химических элементов), и искусственные классификации, в которых используются несущественные признаки; к искусственным классификациям относятся т. н. вспомогательные классификации (алфавитно-предметные указатели, именные каталоги в библиотеках)."

То есть КЛАССИФИКАЦИЯ — это система понятий какой-либо области знания или деятельности человека.

Теперь получаем что ТАКСОНОМИЯ - это знания системы понятий и их систематизации.

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

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

Например понятие инструмент. Определим это понятие как: то что помогает человеку выполнять работу. Инструмент может быть механический и электрический, садовый и столярный. Вот уже есть система понятий, описывающая инструмент. В данном случае понятиями здесь выступают: инструмент механический, инструмент электрический, инструмент садовый, инструмент столярный. Теперь осталось добавить к этим понятиям признаки, описания и перечень свойств по которым можно определять относится предмет к инструменту электрическому или инструменту садовому и у нас готовая система классификации.

Таксономия - процесс создания систем классификации.

Так как Друпал предназначен для Интернет, а в Интернет в основном находится информация, то и таксономию в данном случае есть смысл рассматривать в отношении к информации. То есть, деление информации, по каким либо признакам, в Друпал называется таксономией.

То есть определение о чем будет сайт, какая информация будет представлена на сайте, какие темы эта информация будет освещать и как определить куда, в какие темы, будет добавляться новый материал и есть таксономия.

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

Таксономия на практике или всё по полочкам.

Таксономия – учение о том, как распределять сложноорганизованные области действительности по классам, группам.

Каждый день, как только мы начинаем, что-либо группировать или распределять, сами того не ведая, мы пользуемся таксономией. Мы используем свой практический и, возможно, теоретический опыт для создания систем, по которым будем распределять или группировать предметы или что-нибудь ещё. Мы создаём системы, которые помогают нам разложить всё по полочкам, по ящичкам.

Как это выглядит на практике?

Представим, что мы собираем или изготавливаем фигурки определенных размеров, цветов и формы (хобби такое). Чтобы не хранить всё это в куче, попробуем их сгруппировать по каким либо признакам. Первое что пришло мне в голову, это разложить их по размерам на разные полочки

Фигуры на полочках по размеру

Как видим, ничего здесь сложного нет. Все легко и понятно, пока фигурок немного. Но представим, что фигурок становится все больше и больше и если нам понадобятся все красные фигурки среднего размера, то нам придется перебрать всю верхнюю полку, с её огромным количеством фигурок. Появляется естественное желание перегруппировать, разделить большое количество на более мелкое, еще по какому-нибудь признаку, например - цвету. И тогда на стеллажах со средними, маленькими и большими фигурками появляются дополнительные полочки, на которых фигурки располагаются по цвету.

Фигуры на полочках по размеру и цвету

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

В результате получили что то вроде этого:

Фигуры на полочках по размеру, цвету и форме

Если представить всё это в словесной форме, то получим линейную, иерархическую классификацию наших фигурок.

Фигурки:

  1. Средние
    1. Красные
      1. Круглые
      2. Пентагон
    2. Синие
      1. Круглые
      2. Треугольные
    3. Зеленые
      1. Круглые
  2. Маленькие
    1. Красные
      1. Круглые
      2. Пентагон
      3. Треугольные
    2. Синие
      1. Круглые
      2. Пентагон
      3. Треугольные
    3. Зелёные
      1. Круглые
      2. Пентагон
      3. Треугольные
  3. Большие
    1. Красные
      1. Треугольные
    2. Синие
      1. Пентагон
    3. Зеленые
      1. Круглые
      2. Треугольные

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

Такое деление или такая система предлагается в качестве примера в Друпал, когда вопрос заходит о таксономии. В качестве словаря, в данном случае, определяется «Фигурки:». Размер, цвет, форма – это термины в этом словаре.

Данная линейная, иерархическая классификация вроде удовлетворяет нашим потребностям. Фигурки раскладывать удобно. Но если нам понадобятся все круглые фигурки, то придется просматривать все полки, так как нет однозначного местоположения круглых фигурок среди полок. Например, среди больших - круглые только зеленые, среди маленьких - круглые есть всех цветов. Это неудобно. Неудобно ещё и то, что если захочется собирать фигурки какого-нибудь ещё размера, например – огромного, то помимо добавления этого пункта нужно в нём создавать цветовые подпункты, а в них подпункты формы.

Таксономия на практике или всё по ящичкам.

Таксономия – учение о том, как распределять сложноорганизованные области действительности по классам, группам.

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

Фигуры по ящечкам по размеру и цвету

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

Фигуры по ящечкам по размеру и цвету

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

Как пример, могу предложить эту систему для классификации программ. Представьте, что вместо размера – область применения программ: бизнес, оптимизация системы, графические редакторы, Интернет, звонилки и так далее. Вместо цвета – условия использования: демо, триал, бесплатная, платная. Теперь, если интересуют бесплатные программы, то выбираем по вертикали, если определенной области применения, то выбираем по горизонтали, ну а если определенной области применения и бесплатные, то ищем пересечение.

Но вернемся к нашим фигурам и попробуем выделить ещё один признак, с тем же требованием – он не должен быть составной частью, он должен быть самостоятелен. Этот признак – форма. Чтобы осуществить такое разделение необходимо добавить для каждого вида формы набор коробочек для фигур разного размера и цвета. Получается такая слоёная система. В верхнем слое расположены круглые фигуры, в среднем слое расположены треугольные фигуры и в нижнем слое расположены фигуры пентагон или пятиугольники.

Фигуры по ящечкам по размеру, цвету и форме

Теперь, если нам нужны фигуры красного цвета, то берем их в коробочках, расположенных в левой вертикальной плоскости, то есть в левом вертикальном ряду каждого слоя. Если нужны фигуры среднего размера, то берем их в коробочках, расположенных в верхней горизонтальной плоскости, то есть в верхнем горизонтальном ряду каждого слоя. Если нужны фигуры формы треугольника, то берем их в коробочках расположенных в среднем слое. Если нужны фигуры определенного цвета, размера и формы, то ищем их на пересечениях вертикальных, горизонтальных плоскостях и слоях. Например, нужны синие большие треугольники. Фигуры синего цвета расположены в средней вертикальной плоскости, большие фигуры расположены в нижней горизонтальной плоскости, на их пересечении получился такой столбик ящичков с синими большими фигурами. Но нужны треугольной формы, а они в среднем слое, и там ничего нет, потому что в данной коллекции их нет, но место для них уже зарезервировано.

В Друпал данная система реализуется при помощи создания трех словарей и терминов в этих словарях.

Цвет:

  1. Красный
  2. Синий
  3. Зеленый

Размер:

  1. Средний
  2. Маленький
  3. Большой

Форма:

  1. Круглые
  2. Треугольные
  3. Пятиугольные

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

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

В Drupal таксономия упоминается в том смысле, что CMS (CMP) Друпал позволяет легко изменять систему классификации материалов, которые уже опубликованы или когда-нибудь будут опубликованы на сайте. Вы можете как угодно экспериментировать и самыми различными способами группировать свою информацию, причём, например, одна и таже статья может принадлежать разным группам (Таксономия на практике или всё по ящечкам.), а в группах - разным подгруппам (Таксономия на практике или всё по полочкам.).

Как и в других науках, в таксономии есть свои правила, особенности, как и в других науках в таксономии используется своя терминология. В Друпал таксономия использует в качестве терминологии такие понятия как - категории, словари и термины.

Словари и категории в Друпал означают одно и тоже. В Друпал - это синонимы и не понятно почему в одном месте используется категории, а в другом - словари.

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

Например, Вы решили группировать статьи, материалы в три группы - по количеству слов (а почему бы и нет?).
1 = меньше 1000 слов;
2 = больше 1000 - меньше 2000;
3 = больше 2000.
Но в какой то момент Вы понимаете что эта классификация удобна только вам и больше никому. Тогда Вы просто добавляете другие системы классификации и "переносите" статьи, материалы во вновь созданные словари. Или можно оставить старую систему, и вместе с ней использовать новую.

Словари и термины - это картотека документов сайта и когда Вы указываете что этот документ принадлежит этому термину в том словаре, то фактически, вы заводите карточку на документ и уже эту карточку помещаете в этот термин в том словаре. Вы можете "переносить" карточки на документ из группы (термина) в группу (термин), можно размножать карточки и помещать в различные термины, - на сам документ это никак не скажется (Node - завяжем всё в узлы.).

Словари (категории) создаются на странице "Словари"
Управление » Управление публикациями >> Добавить словарь
Administer >> Content management >> Categories
Здесь нужно ввести название словаря, описание, справочный текст и типы материалов, которые будут принадлежать этому словарю.

Для того что бы создать термин (название группы)надо в словаре выбрать "редактировать термины (edit terms)" далее "добавить термин" и ввести название, описание и синонимы (если захотите).

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

Все глобальные изменения в Друпал может делать человек у которого есть такие права. Поэтому войдем на сайт под первым пользователем.

Категории, словари и термины создаются на странице "Словари". Для этого последовательно переходим по пунктам меню - Administer >> Content management >> Categories , затем на закладку Добавить словарь (Add vocabulary) . Так как термин входит в состав словаря, то конечно, сначала надо создать словарь или словари, а потом термины, которые будут входить в этот словарь или словари. Причём термины можно добавлять в любой последовательности, в любом, уже существующем, словаре.

Создаём словарь "Фигуры". В поле "Название словаря" вводим "Фигуры", в поле "Описание" - Геометрические фигуры, в поле "Справочный текст" - Если речь о геометрических фигурах. Выбираем типы, на которые будет распостраняться данный словарь или просто ставим галочку напротив страница. Иерархия - множественная, остальное не трогаем и нажимаем на кнопку Отправить . Словарь создан.

В списке словарей появляется словарь и в этой же строке "изменить термин". Термин - это название группы ("полочки"), в которую Вы будете сладывать карточки на ваши документы (node) сайта.

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

Далее добавим сначала оставшиеся словари - это размер, цвет, форма. Для разделения этих двух систем классификации выбираем тип, на который будут распостраняться данные словари - страница. Или просто ставим галочку напротив страница для каждого вновь созданного словаря.

а затем в каждый словарь добавим соответствующие термины.

Теперь есть готовые системы классификации и можно добавлять материалы-документы и тем самым приумножать информационное богатство сайта.

Март 2006
http://www.firsthand.ru/

Node - завяжем всё в узлы.

Node - узел. Любой документ попадающий в Друпал становиться узлом. Этому узлу присваивается свой уникальный номер. В Друпал нет двух документов с одинаковыми номерами. Вы можете изменить содержимое документа, его заголовок, но номер документа в Друпал неизменяем.

Узел обычно связывает что-то между собой. Node связывает между собой всё что относится как то к нему. Это и размещение документа в Вашей системе классификации, и представление документа читающему, это и оформление документа.

Когда вы помещаете на сайт какой-то документ, то сначала Вы выбираете его тип - статья, страница, страница дневника и так далее. После того как Вы нажмёте на кнопку "Сохранить" ему присваивается уникальный номер. Когда Вы выбираете к какому словарю и термину (группе документов) он принадлежит, то фактически Вы создаете ссылки на свой новый документ.

Словари и термины - это своего рода картотека Вашего сайта. Эту картотеку или картотеки можно представить по разному, например в виде ящечков (Таксономия на практике или всё по ящечкам.) или полочек (Таксономия на практике или всё по полочкам.) и когда Вы указываете какому термину и словарю принадлежит документ, Вы фактически "кладёте" на полочку или в ящичек карточку с именем вашего документа у которого есть свой уникальный номер. Гибкость систем классификации в Друпал как раз этим и обеспечивается. Вы можете создать сколь угодно много словарей и терминов (картотек сайта) и затем как угодно раскладывать карточки, указывающие на документ. Сам документ остаётся на своем месте.

На компьютере можно создать что-то аналогичное, если все документы разместить в одной папке и эту папку назвать "node". В этой папке не будет двух документов с одинаковыми названиями, то есть, по названиям каждый документ будет уникален. Теперь, для того чтобы было легче искать документы в этой папке, создадим другую папку и дадим ей название "Фигуры" (Таксономия на практике или всё по полочкам.). Эта папка будет аналогом словаря в Друпал. Затем в этой папке создаём папки "Средние", "Маленькие" и "Большие". Эти папки будут аналогами терминов словаря в Друпал. А в эти папки мы помещаем ЯРЛЫКИ (ССЫЛКИ) на документы, описывающие средние, маленькие и большие фигуры соответственно.
То есть, получается что классификацию документов мы произвели при помощи ЯРЛЫКОВ (ССЫЛОК), сами документы не перемещаются и остаются на том же месте. Мы можем перемещать ЯРЛЫКИ (ССЫЛКИ) из папки в папку или создавать копии этих ссылок в других папках и тем самым как бы добавлять документы в различные группы документов. Мы можем по разному классифицировать документы не перемещая их, и не переименовывая. То есть все ярлыки (ссылки) на документ будут как бы привязаны к этому документу, а сам документ является узлом, к которому тянуться все ниточки.

Февраль 2006
http://www.firsthand.ru/

Добавляем материал или наполняем сайт контентом.

Ценность любого сайта определяется информацией, которая расположена на нём. Причём ценность информации определяется посетителем сайта. Кто-то не обратит внимания, а кто-то тут же сохранит на диск, да ещё распечатает вдобавок.

Для удобства представления информации, её по разному оформляют. Её можно оформить в виде графиков, рисунков, рассказов (статей), обсуждений (форумы), результатов мнений (опросы) и так далее. Всё зависит от того, что и как Вы хотите сказать своему гостю. Уже по оформлению посетитель может определять вид информации - читает ли он статью или находится на форуме или знакомиться с опросом по какому-либо вопросу. Хотя в последнее время мне попадались сайты сделанные на основе форумных движков. Честно скажу, не сразу понимал что у меня перед глазами. А с другой стороны почему бы и нет, на то и интернет.

В CMS Друпал (CMS Drupal) доступно различное представление информации. Без учёта дополнительных модулей это: запись в дневник, опрос, статья, страница, страница книги, тема форума и комментарии.

Добавление материала происходит на странице "добавить материал". Этот пункт в меню появляется если у вас имеется право на добавление материала.

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

Напомню что в качестве примера группировались фигуры:

  1. большая-красная-треугольная
  2. большая-синяя-пентагон
  3. большая-зелёная-треугольная
  4. большая-зелёная-круглая
  5. средняя-красная-круглая
  6. средняя-красная-пентагон
  7. средняя-синяя-треугольная
  8. средняя-синяя-круглая
  9. средняя-зелёная-круглая
  10. маленькая-красная-круглая
  11. маленькая-красная-треугольная
  12. маленькая-красная-пентагон
  13. маленькая-синяя-круглая
  14. маленькая-синяя-треугольная
  15. маленькая-синяя-пентагон
  16. маленькая-зелёная-круглая
  17. маленькая-зелёная-треугольная
  18. маленькая-зелёная-пентагон

Добавляем в "по полочкам". Для этого переходим на страницу добавления материалов и выбираем "страница" - добавить материал >> страница .

В заголовке, для первой фигуры, пишем - "Полочка-Большая-красная-треугольная". В категориях выбираем соответственно то же самое и в содержимое добавляем тоже заголовок. В конце страницы не забываем нажать на кнопку "Отправить".

Остальные добавляются аналогично.

Добавляем в "по ящечкам". Для этого переходим на страницу добавления материалов и выбираем "статья" - добавить материал >> статья .

В заголовке, для первой фигуры, пишем - "Ящичек-Большая.Красная.Треугольная". В категориях выбираем соответственно то же самое и в содержимое добавляем тоже заголовок. В конце страницы не забываем нажать на кнопку "Отправить".

Остальные добавляются аналогично.

При добавлении в "по полочкам" при выборе категории появляется довольно длинный список из названий групп.

При добавлении в "по ящечкам" данные категории выглядят намного компактнее.

Март 2006
http://www.firsthand.ru/

Создаём меню или как добраться до контента.

Какой бы ценной информация не была на вашем сайте, если до неё трудно добраться, то скорее всего о ценности вашей информации будете знать только Вы.

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

Ну а если материалы добавляются постоянно и их количество увеличивается и увеличивается, то необходима какая нибудь навигация по вашей информации.

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

Если Вы заранее думали над тем как будут сгруппированы материалы и создавали категории-словари и термины, то у вас есть возможность создать навигацию, основанную на категориях-словарях и терминах. Для этого можно создать новое меню или добавить новые пункты в уже существующее. Делается это на странице администрировать>>меню. Далее выбирается либо добавить меню а затем добавить пункт меню или сразу добавить пункт меню. Если добавляется меню, то оно появиться внизу страницы администрировать>>меню, но чтобы оно появилось на ваших страничках сайта необходимо включить его отображение. Для этого нужно перейти на страницу администрировать >>блоки, найти в списке "Отключено" название Вашего меню, поставить галочку в графе "включено", выбрать место где оно должно отображаться и нажать на кнопку "Сохранить блоки" внизу страницы. Если в меню нет пунктов, то оно не появиться. Поэтому переходим на страницу администрировать>>меню и добавляем пункты меню.

При добавлении пунктов меню небходимо будет ввести название пункта (заголовок), описание данного пункта, путь к материалам данного пункта меню, выбрать какому меню или пункту меню будет принадлежать и вес.

Добавить пункт меню

С названием (заголовком) пункта меню и описанием названия (заголовка) пункта меню ничего сложного нет. Что касается пути, то здесь можно указывать не только путь к конкретному материалу, но и использовать пути-ссылки, которые присваиваются терминам при создании системы классификации в словарях-категориях. Чтобы узнать эти пути достаточно перейти на страницу >>администрировать>>категории выбрать необходимый словарь и нажать на ссылку "изменить термины". Появиться список всех терминов данного словаря. Теперь если навести мышь на термин, то в строке статуса браузера ИЕ можно увидеть путь, принадлежащий данному термину. Можно также просто скопировать ярлык и вставить куда надо. Эти пути-ссылки имеют вид

http://вашсайт.ру/taxonomy/term/1

При создании навигации, основанной на категориях-словарях и терминах используется только часть полного пути, а конкретнее пути вида taxonomy/term/1. Друпал также позволяет использовать такие комбинации как:

taxonomy/term/1+2 - будут выводиться все материалы, принадлежащие терминам, имеющим пути-ссылки taxonomy/term/1 и taxonomy/term/2 (суммирование)

taxonomy/term/1,2 - будут выводиться только те материалы, которые принадлежат и термину, имеющему путь-ссылку taxonomy/term/1 и термину, имеющему путь-ссылку taxonomy/term/2 (пересечение).

taxonomy/term/1/1 - будут выводиться все материалы, принадлежащие термину, имеющему путь-ссылку taxonomy/term/1 и материалы на один уровень ниже. Если есть категория и у неё подкатегории, которые также имеют подкатегории, то выводиться будут материалы категории и материалы подкатегорий первого уровня. Материалы подкатегорий второго и следующих уровней выводиться не будут.

taxonomy/term/1/all - будут выводиться все материалы, принадлежащие термину, имеющему путь-ссылку taxonomy/term/1 и материалы, принадлежащие всем подкатегориям данного термина.

Эти комбинации и используются для создания основной навигации.

Допустим нужно создать навигацию, основанную на ранее рассмотренной иерархической системе (Таксономия на практике или всё по полочкам). Сначала добавляем меню "Фигуры", включаем отображение этого меню, затем добавляем пункты меню, причем для размера и цвета, чтобы отображались все материалы данной категории и подкатегорий, в конец пути добавляем all. То есть нужно будет ввести нижеприведённые данные:

Большие = "taxonomy/term/1/all"
--Зелёные = "taxonomy/term/6/all"
----Круглые = "taxonomy/term/29"
----Треугольные = "taxonomy/term/30"
--Красные = "taxonomy/term/4/all"
----Треугольные = "taxonomy/term/28"
--Синие = "taxonomy/term/5/all"
----Пентагон = "taxonomy/term/27"

Маленькие = "taxonomy/term/3/all"
--Зелёные = "taxonomy/term/9/all"
----Круглые = "taxonomy/term/24"
----Пентагон = "taxonomy/term/26"
----Треугольные = "taxonomy/term/25"
--Красные = "taxonomy/term/7/all"
----Круглые = "taxonomy/term/21"
----Пентагон = "taxonomy/term/23"
----Треугольные = "taxonomy/term/22"
--Синие = "taxonomy/term/8/all"
----Круглые = "taxonomy/term/18"
----Пентагон = "taxonomy/term/20"
----Треугольные = "taxonomy/term/19"

Средние = "taxonomy/term/2/all"
--Зелёные = "taxonomy/term/12/all"
----Круглые = "taxonomy/term/17"
--Красные = "taxonomy/term/10/all"
----Круглые = "taxonomy/term/13"
----Пентагон = "taxonomy/term/14"
--Синие = "taxonomy/term/11/all"
----Круглые = "taxonomy/term/15"
----Треугольные = "taxonomy/term/16"

После добавления всех пунктов меню получаем вполне работоспособную навигацию.

Март 2006
http://www.firsthand.ru/

ВложениеРазмер
14-1.png13.64 кб

Учебная база данных CMS Drupal с информацией о фигурах.

При написании материалов по освоению CMS Drupal мною был фактически создан сайт о фигурах. У него есть навигация, основанная на иерархической системе классификации и на матричной системе классификации. Есть примитивный набор материалов, распределённый согласно систем классификации и позволяющий проводить некоторые эксперименты с созданием новых систем классификации и навигации. Так же можно проверять работу новых модулей, которые не идут вместе с дистрибутивом Друпал, но которые можно скачать с официального сайта CMS Drupal, со страницы модулей http://drupal.org/project/Modules/.

Эту базу можно установить вместо базы, поставляемой с Друпал.
На ней хорошо проверять работу модулей, обеспечивающих навигацию по сайту и создающих карту сайта. Всё видно наглядно.

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

Скачать учебную базу данных "Фигуры" для CMS Drupal 5.0 - figures.sql.zip - часть 1
Скачать учебную базу данных "Фигуры" для CMS Drupal 5.0 - figures.sql.zip - часть 2

Для входа используйте
Логин: Admin
Пароль: pass

Хотя в Денвере любой пароль можно получить через режим восстановления пароля. Достаточно знать логин, а пароль придёт письмом, которое можно посмотреть через http://localhost/Test/sendmail/index.php - Проверка отладочной заглушки для sendmail.

Если у Вас с вашим сайтом - порталом что-то не получается или запортили, то в Denwer это легко исправить. Надо перейти в phpMyAdmin 2.6.1 - администрирование СУБД MySQL на странице Утилит (http://localhost/Tools/), выбрать вашу базу данных, выделить все таблицы и удалить (уничтожить) их из базы. Затем снова произвести импорт этой учебной базы и можно работать и портить её снова.

Желаю удачи тем, кто воспользуется этим предложением.

Март 2006
http://www.firsthand.ru/

2006-04-26
--------------------------------
+ добавлены страницы для проверки создания многоаспектной (матричной) системы навигации

2006-04-25
--------------------------------
+ Определены дополнительные роли-группы пользователей сайта
+ Добавлены правила доступа для их проверки
+ Добавлен словарь-категория "Тесты" для тестовых статей-страниц. Для проверки работы разных модулей-фильтров и других пришедших в голову идей.
* Изменено отображение блоков навигации на страницах
* И ещё что-то, чего уже не помню

ВложениеРазмер
figures5-2007-01-24-1.sql_.zip203.9 кб
figures5-2007-01-24-2.sql_.zip121.13 кб