Особенности функциональности движка Drupal. Движок друпал


Плюсы и минусы Drupal, движок для сайта Drupal

Drupal — это система управления сайтом (cms), которая написана на php коде и которая имеет свои положительные стороны и свои недостатки. В качестве хранения данных использует MySQL (так же PostgreSQL). Drupal —  бесплатный двигатель для сайта, который распространяется по GPL лицензии. Данный движок отлично подходит для построения сайтов с разной структурой, начиная от блогов и заканчивая различными новостными сайтами и форумами. Полный пакет и дополнительные модули для dpupal можно скачать с официального сайта. Основатель этой системы является Dries Buytaert.

Плюсы и важные функции Drupal

1) Создаёт короткие ссылки URL

Каждый новый создаваемый материал на сайте получает свой уникальный адрес состоящий из уникального ID, данная ссылка будет не измена на протяжение всего времени существования сайта. Drupal использует mod_rewrite в сервере Apache.

2) Имеет встроенный поиск по сайту

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

3) Имеет механизм защиты сервера при перегрузке.

Механизм в автоматическом режиме производит отключение ненужных модулей и плагинов при сильной нагрузке на сервер. Такое бывает при большой посещаемости или DDOS атаках.

4) Имеет общую авторизацию между сайтами партнёров!

5) Глубина вложенности категорий может быть безгранична.

6) Поддерживает XML форматы

7) Drupal — пользователи имеют право настраивать вид сайта по своему желанию. Пользователь может выбирать, ставить и менять темы и набор информационных блоков для лучшего отображения сайта.

8 ) Кэш страниц

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

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

Недостатки Drupal

Множество администраторов данной CMS отмечают то что очень слабо развит и мало используется PHP.

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

В общем самые важные плюсы и минусы мы обговорили, а теперь поговорим о внутренних функциях.

Комментирование — любой посетитель сайта может оставлять комментарий к любому материалу. Конечно если Администратор сайта разрешил эту возможность для этого документа или раздела. Для анонимов имеется форма комментариев (e-mail, имя, фамилия), но её так же можно отключить администратором.

Темы оформления — так же как и любая другая cms на сегодняшний день имеет огромный набор сменных тем. Изменение дизайна происходит без изменения содержимого и структуры сайта. Создатель сайта может сам как создавать тему  так и выбирать из готовых решений.

Сегодня последняя версия вышедшая от производителя — это drupal 7

drupal 7 можно скачать с официального сайта. Но не следует забывать что последние версии которые вышли ещё не полностью стабильны и я бы рекомендовал скачать вам и установить drupal 6 и в последствии работы когда будет сообщение на официальном сайте о том что drupal 7 стала стабильной версией произвести автоматическое обновление.

Рекомендую посмотреть следующие статьи:

seoprodvig.ru

Терминология Drupal с пояснениями | Drupal

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

      A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

A

Account – учетная запись Запись, содержащая сведения, которые пользователь сообщает о себе Drupal-сайту. Учётная запись содержит сведения, необходимые для идентификации пользователя при подключении к системе, информацию для авторизации и учёта. Как правило – это имя пользователя и пароль. API (Application Programming Interface) – интерфейс программирования приложений API ([эй-пи-ай]; по-русски чаще произносят [апи]) – набор методов (функций), который программист может использовать для доступа к функциональности программного компонента (программы, модуля, библиотеки). API является важной абстракцией, описывающей функциональность «в чистом виде», безотносительно того, как реализована эта функциональность.

Back to Top

B

Block – блок Маленький, самодостаточный элемент информации. Блоки используются для показа навигации или содержания. Обычно расположены в левой (left sidebar) или в правой (right sidebar) боковой панели, но можно самостоятельно определить любое местоположение блока. Информация, содержащаяся в блоках, берется из узлов. Блоки – не узлы, они – только способ позиционирования данных на странице. Blog – блог Сокращение от «web log» (сетевой журнал или дневник событий). Это веб-сайт, основное содержимое которого – регулярно добавляемые записи, изображения или мультимедиа. Для блогов характерны недлинные записи временной значимости, отсортированные в обратном хронологическом порядке (последняя запись сверху). Отличия блога от традиционного дневника обусловливаются средой: блоги обычно публичны и предполагают сторонних читателей, которые могут вступить в публичную полемику с автором (в отзывах к блог-записи или своих блогах). Не будет преувеличением, если сказать, что Drupal является самой удобной системой для создания блогов и интернет-сообществ. Breadcrumbs – хлебные крошки, строка навигации, навигационная цепочка Tермин был позаимствован из сказки «Хансель и Гретель» Братьев Гримм. В этой сказке Хансель и Гретель оставляли хлебные крошки вдоль своего пути, чтобы найти дорогу из леса обратно домой. На жаргоне программистов – это раздел, обычно вверху страницы, который показывает путь, который вы проделали, чтобы достичь текущей страницы. Например, такая навигационная цепочка: Главная → Орех Австралийский → Текущие события → Новые Статьи – означает, что вы начали с базовой страницы, щелкнули на меню «Орех Австралийский», затем выбрали «Текущие События» в подменю и, наконец, перешли на «Новые Статьи».

Back to Top

C

Callback – обработчик меню, обратный вызов PHP функция, которая специальным образом регистрируется в системе меню Drupal. Эта функция-обработчик вызывается системой меню при выборе пунктов меню либо как обработчик пути. CCK (Content Construction Kit) – набор для конструирования типов контента Мощный модуль, который позволяет администраторам определять новые типы данных. В Drupal существует такое понятие, как узел. Другими словами это страничка вашего сайта или блога. Каждый узел содержит какой-то контент (информационное наполнение). Контент может быть разного типа. Модуль CCK позволяет конструировать такие типы используя веббраузер. Примеры типов контента: изображение, видеофайл, предложение_о_продаже_подшипника, статья_о_вашей_кошке и т.д. Core или Drupal core – ядро или ядро Drupal Это все файлы и модули, которые включены в стандартную поставку проекта Drupal. Ядро содержит минимальный набор инструментов, необходимых для работы сайта. Core committers – разработчики ядра Группа разработчиков Drupal, которые принимают решение о том, будет ли включено предложенное изменение к ядру Drupal в следующую версию. Они единственные, кто имеет доступ на запись к системе управления версиями. Core contributor – соучастник разработки ядра Друпаллург, который вносит изменения в ядро Drupal. Изменение оформляется в виде патча, сравнивается и затем выбирается разработчиками ядра для включения в следующую версию Drupal. Замечание: Самый лучший вариант для развития Друпал - это клонировать модуль или ядро, сделать патч и опубликовать его на drupal.org. Code Freeze – заморозка кода Относится к дате, когда новая функциональность не может быть добавлена в следующую версию Drupal, кроме специфичных исключений, сделанных разработчиками ядра, и тогда и только тогда, когда влияние вносимых изменений на другие части ядра минимально. В это время основной упор делается на исправлении ошибок и улучшении имеющейся функциональности. Это время, когда разработчики модулей могут приступать к модификации кода, чтобы он работал со следующей версией Drupal. Cron – хрон Сокращение от «хронограф» (англ. chronograph) – это программа-планировщик, которая автоматически выполняет команды или скрипты (группы команд) через определенные промежутки времени. Drupal использует хрон для выполнения периодических задач. CVS (Concurrent Versions System) – CVS Хранилище версий Drupal. Программный продукт, относящийся к разряду систем управления версиями (англ. version control system). Хранит историю изменений определённого набора файлов, как правило, исходного кода программного обеспечения, и облегчает совместную работу группы программистов над одним проектом.

Back to Top

D

Drupal – Друпал, Drupal Cистема управления содержимым (сайта) (англ. Content Management System, CMS), написанная на языке PHP и использующая в качестве хранилища данных реляционную базу данных (поддерживаются MySQL, PostgreSQL и другие). Drupal является свободным программным обеспечением, защищённым лицензией GPL и улучшается усилиями энтузиастов со всего мира. Название drupal является искажённым произношением голландского слова druppel (капля) и появилось в результате забавной ошибки. В 2000 году несколько студентов антверпенского университета использовали общий ADSL-модем для доступа в интернет и для общения пользователей этой маленькой локальной сети Дрис Байтаерт создал внутренний сайт. Программа, на которой работал сайт, не имела имени, пока Дрис не собрался регистрировать доменное имя для нового сайта и в результате опечатки вместо dorp.org (от голландского dorp – деревня, вполне уместное имя для небольшого сообщества) был зарегистрирован drop.org (drop на английском – капля). Drupaller – друпаллург Человек, активно работающий над проектом Drupal.

Back to Top

E

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

Back to Top

F

Filter – фильтр Фильтрует контент перед выводом на страницу браузера. Используется для управления выводом содержания на страницу. Фильтры могут удалять нежелательный контент (например, «опасные» теги HTML), форматировать его (например, добавлять перевод строки после абзаца или задавать оформление гиперссылок) и т.п. В Drupal есть возможность создания собственных фильтров.

Back to Top

G

Back to Top

H

Hack – хак Модификация кода программы, позволяющая уменьшить размер программы, расширить функциональность и/или ускорить её работу. Наконец, просто красивое программистское решение (хороший хак обязательно должен быть красив с точки зрения программистов). Изначально это понятие родилось в университете Беркли и ничего общего со взломом защиты не имело. Соответствует английскому термину «brilliant hack». Hook – хук, ловушка Дословный перевод – крючок, ловушка. Позволяет модулям взаимодействовать с ядром Drupal. Хук – это PHP функция, которая имеет название foo_bar(), где «foo» – название модуля (имя файла foo.module), а «bar» – название самого хука. В отличие от обработчика меню, функция-хук не регистрируется специальным образом в системе Drupal, а вызывается по маске имени «foo_bar()» ядром при включении модуля. О том, как реализованы хуки и обработчики меню смотрите комментарий на форуме. Для расширения функциональности тех или иных частей Друпала, нужно реализовать соответствующий хук. Когда Друпал хочет взаимодействовать с модулями, он определяет какие хуки предоставляются модулями и вызывает эти хуки для всех включённых на сайте модулей. Хуки можно понимать, как внутренние события системы Drupal.

Back to Top

I

Back to Top

J

Back to Top

K

Back to Top

L

Log – журнал регистрации Список зарегистрированных событий, содержащих информацию о работе системы, произошедших ошибках, предупреждающих сообщениях и другой технической информацей. Журнал регистрации событий ведется регистратором Drupal.

Back to Top

M

В Drupal термин меню используется для обозначения двух разных понятий. Во-первых, это активизируемые щелчком мыши навигационные элементы страницы. Во-вторых, это внутренняя система Drupal для обработки запросов. Когда в Drupal посылается запрос, система меню использует полученный URL для определения того, какие функции вызывать. Module – модуль Оформленный специальным образом функционально самостоятельный блок кода. Разбиение программы на модули существенно облегчает её разработку, документирование, отладку, модификацию и сопровождение. Модуль добавляет новые функциональные возможности в систему. Модули, не входящие в ядро Drupal, могут быть установлены отдельно. Замечание: убедитесь, что версия модуля, который вы используете, совпадает с версией используемого вами ядра Drupal. Multi-site – мультисайт Мультисайтинг (англ. multi-siting) или многосайтовость – это множество независимых или зависимых (имеющих общее содержимое) веб-сайтов, реализованных на одной системе Drupal. Различают два вида мультисайтинга. 1) Мультисайтинг с общим движком. Сайты используют один движок Drupal, при этом каждый сайт может иметь свою отдельную базу данных. 2) Мультисайтинг с общими таблицами. Сайты используют одну базу данных, при этом каждый сайт может иметь свой движок Drupal. Есть смешанный вариант мультисайтинга – сайты используют один движок Drupal и одну базу данных. Причем даже в третьем случае сайты могут быть абсолютно независимыми и иметь свой собственный уникальный контент, тему оформления и конфигурацию. Мультисайтинг – это архитектурное решение, позволяющее облегчить управление, поддержку и обновление большой группы сайтов на Drupal.

Back to Top

N

Node – узел, материал, документ Независимая единица содержимого, которая публикуется на Drupal-сайте. Узел может быть страницей, новостью, заметкой, записью в блоге или форуме, опросом, изображением, аудио- и видеозаписью и т.п. Данное понятие имеет несколько различных переводов. Для новичка в Drupal или непрограммиста лучше подойдет перевод «материал» и «документ». Но для специалиста лучше использовать слово «узел». Узел в математике – это вершина графа, математической фигуры, состоящей из точек (вершин) и отрезков их соединяющих. В логистике узел – это фиксированная точка с собранными в ней объектами (транспортный узел, узел связи, складской узел и т.д.). Практически все содержимое Drupal собрано в узлах.

Back to Top

O

Back to Top

P

Patch – заплатка, патч Специальным образом оформленный код, который вносит изменения в работу ядра или модуля Drupal. Часть программы, или небольшая отдельная программа, используемая для устранения проблем в программном обеспечении. Сюда входит исправление ошибок, изменение внешнего вида, улучшение эргономичности или производительности программ, и любые другие изменения, которые кто-то пожелал сделать. Бывает, что и сами патчи становятся причиной новых неполадок. Обычно исправления появляются с новой версией модуля. Но случается разработчики не вносят исправления в официальный релиз сразу или вообще. Или исправления делаются не разработчиком. В этом случае нужные исправления можно получить в виде файла с именем «kakoe-to-imia.patch». Path – путь То же самое, что и URL. Drupal может использовать чистые ссылки (имеется в виду URL без «?q=»). В шестой версии Drupal чистые ссылки включаются сразу при установке системы. Permissions – привилегии, права, полномочия 1) Для Drupal привилегии регулируют доступ к созданию контента, а также к управлению сайтом. Сначала администраторы назначают привилегии ролям, а затем назначают данные роли пользователям. Пользователь с идентификатором равным единице (uid=1) автоматически получает все привилегии независимо от того, к какой роли он принадлежит. Анонимный (незарегистрированный на сайте) пользователь имеет идентификатор равный нулю (uid=0).

2) В операционных системах Unix/Linux/Windows – привилегии являются настройками безопасности, которые запрещают или позволяют пользователям выполнять определенные функции на уровне операционной системы. Для файлов на Unix или Linux системах существуют три типа привилегий: право на чтение, право на запись и право на выполнение.

phpTemplate – PHP-шаблон Это движок тем, который позволяет использовать файлы шаблонов, написанные на PHP. PHP-шаблон является очень быстрым по сравнению с другими движками тем. Поэтому он является движком тем по умолчанию начиная с версии 4.7 и входит в ядро Drupal. Файлы PHP-шаблона заканчиваются на «.tpl.php». Post – сообщение Отдельно взятое сообщение в форуме или блоге. Сообщения в форуме или блоге в чём-то похожи на почтовые – каждое из них имеет автора, дату, тему и собственно содержание. Но для того, чтобы отправить («запостить») сообщение, не нужна никакая дополнительная программа – нужно просто заполнить соответствующую форму на сайте.

Back to Top

Q

Back to Top

R

Role – роль Набор привилегий, которые могут быть назначены пользователям. Пользователи могут иметь более одной роли. Drupal устанавливает две роли по умолчанию: зарегистрированный пользователь (authenticated user) и анонимный пользователь (anonymous user). Зарегистрированные пользователи – имеют свою учетную запись. Анонимные пользователи либо не имеют учетной записи, либо не вошли в систему. Этим двум ролям по умолчанию можно изменить права, но их нельзя удалить или переименовать. Самый первый пользователь (uid=1), который получает все привилегии, может настраивать роли по умолчанию и создавать новые роли. Акроним от Really Simple Syndication (очень простое приобретение информации). Это семейство XML-форматов, предназначенных для описания лент новостей, анонсов статей, изменений в блогах и т. п. Информация из различных источников, представленная в формате RSS, может быть собрана, обработана и представлена пользователю в удобном для него виде специальными программами-агрегаторами. Обычно с помощью RSS 2.0 даётся краткое описание новой информации, появившейся на сайте, и ссылка на её полную версию. Интернет-ресурс в формате RSS называется RSS-каналом, RSS-лентой или RSS-фидом. Drupal имеет RSS ленту по-умочанию. Однако RSS возможности могут быть расширены при помощи модулей «Comment RSS» и «Site map».

Back to Top

S

Style – стиль Tехнология оформления веб-страниц. Стиль реализуется при помощи CSS файлов (англ. Cascading Style Sheets, каскадные таблицы стилей). CSS используется создателями и посетителями веб-страниц для задания цветов, шрифтов, расположения объектов и других аспектов представления документа. Основное назначение, для которого технология CSS была разработана, это разделение содержимого (написанного на HTML или другом языке разметки) и представления документа (написанного на CSS). Разделение содержимого и представления увеличивает доступность документа, предоставляет большую гибкость, а также уменьшает сложность и повторяемость в структурном содержимом.

Back to Top

T

Tag – ключевое слово, метка, тег Ключевое слово, метка для категоризации чего-либо. Используется для поиска какой-либо информации или для форматирования текста. В программировании – элемент языка разметки гипертекста (англ. HyperText Markup Language, HTML). Применяется для форматирования текста, иллюстраций, создания таблиц. Например, текст, заключенный между начальным тегом <small> и конечным тегом </small> предписывается отображать меньше основного текста. Tarball – тарбол Архив, который был создан командой tar. В вычислительной технике tar (сокращение от «tape archive», хранилище на магнитных лентах) – это и формат файла и имя программы, которая применяется для обработки таких файлов. Тарболы используются разработчиками программ для того, чтобы объединять наборы файлов в один большой файл, который позволяет сохранять информацию о файловой системе внутри тарбола. Ядро Drupal и все его модули можно бесплатно скачать из интернета в виде тарболов. Taxonomy – таксономия Учение о том, как классифицировать и систематизировать предметы и явления. Таксономия (от греческого «расположение по порядку + закон») – механизм классификации содержимого сайта при помощи терминов. Это гибкий инструмент с множеством расширенных функций. Teaser – анонс Дословный перевод – приманка. Предварительный просмотр. Обычно первые несколько слов или предложений и ссылка на все содержимое узла. Template – шаблон Код, описывающий структуру страницы сайта. Шаблон определяет, какие объекты выводить на страницу и где они будут расположены. Дизайн сайта на Drupal строится на основе сменных тем оформления. Как таковой нет единственной схемы построения дизайна, взамен Drupal даёт возможность использовать различные движки тем, использующие шаблоны, удобные для редактирования (шаблоны XML в движках xtemplate и Smarty или шаблоны на HTML + встроенный PHP в движке phpTemplate и т. п.), либо создавать темы оформления напрямую обращающиеся к API Drupal. Theme – оформление, тема оформления Набор файлов (php, theme, css, jpg, gif, png и т.д.), которые определяют оформление сайта. В Drupal темой оформления по умолчанию является Garland. Она состоит из трёх колонок. Центральная колонка называется колонкой содержания. Левая и правая колонки называются боковыми панелями. Обычно в них размещают блоки меню, также в них обычно помещают наиболее комментируемые и (или) самые популярные статьи. Theme Engine – движок тем (оформления) Это набор скриптов, которые интерпретируют код и помогают сделать оформление вашего сайта более простой задачей. Для Drupal начиная с версии 4.7 по умолчанию используется движок тем оформления PHP-шаблон. Thumbnail – миниатюра Сильно уменьшенное изображение, дающее приблизительное представление об оригинале. Применяется обычно в анонсах.

Back to Top

U

URL (Uniform Resource Locator) – адрес (страницы), ссылка Адрес, используемый Web-браузером для поиска ресурса в интернете. URL представляет собой стандартизованную строку символов, указывающую местонахождение ресурса, документа или его части в Internet. Строка адреса состоит из типа протокола (http, ftp и т.д.), имени хоста (www.drupal.org), номера порта (80), пути к файлу, имени файла и передаваемых параметров. Например: http://www.drupal.org:80/path/to/file/index.html?value1=v1&value2=v2&val... User – пользователь Тот, кто пользуется сайтом. Пользователь может быть либо зарегистрированным, имеющим учетную запись, либо незарегистрированным, анонимным пользователем. Эти два типа пользователей соответствуют двум ролям по умолчанию, которые создаются при установке Drupal.

Back to Top

V

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

Back to Top

W

Weight – вес Свойство объекта, определяющее его положение в списке. Объект с более легким весом (-10) размещается в начале списка, а объект с более тяжелым весом (+10) располагается в конце списка. Drupal использует это понятие для определения приоритета или порядка следования, в котором обрабатываются функции или отображаютя на странице блоки и узлы. Начиная с шестой версии Drupal, поле вес настраивается с помощью технологии drag-and-drop (перетаскивается мышкой). WYSIWYG – что видишь, то и получишь WYSIWYG (сокращение от «What You See Is What You Get», что видишь, то и получишь, произносится как «ви-зи-виг») – способ редактирования, при котором редактируемый материал в процессе редактирования выглядит в точности так же, как и конечный результат. Обычно этот термин используется в отношении текстовых процессоров (текстовых редакторов), но может применяться и к другим типам прикладных программ. Watchdog – регистратор Буквально переводится, как «сторожевая собака». В широком смысле – это программа-сторож, которая охраняет данные. В Drupal эта программа ничего не сторожит, а просто регистрирует события, произошедшие в системе. Поэтому термин «регистратор» больше всего подходит по смыслу к действиям этого модуля.

Back to Top

X

Back to Top

Y

Back to Top

Z

Back to Top

Благодарности

Словарь дополняется и уточняется в соответствии с комментариями от сообщества Drupal. Если вы считаете, что в словаре нет важных терминов, либо они недостаточно хорошо описаны, либо есть грамматические ошибки – опишите их в комментариях, и после обсуждения изменения будут внесены в словарь.Автор благодарен друпаллургам gleb, neochief, seaji, [email protected] приславшим свои замечания к словарю.

Используемые материалы

drupal.ru

Выбор поискового движка для сайта

Прозводился поиск поискового движка, позволяющего произвести тонкую настройку.Как минимум, к поисковому движку предъявлялись такие требования:

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

Так же, было желательно удовлетворение следующим требованиям:

* Запуск индексации по расписанию* Настройка синонимов* Типы индексируемых документов: pdf / doc / xls /etc* Поиск по БД и другим источникам кроме веб* Индексация нескольких доменов - управление зоной индексации* Простота установки и конфигурации* Работает на крупных русскоязычных проектах, дает релевантную выдачу для русского языка, хорошо понимает морфологию русского* Имеет активное, устойчивое сообщество пользователей ( саппорт для платного варианта )* Бесплатен / стоимость приемлема* Имеется официальная документация

Для поиска удовлетворяющих требованиям систем использовались среди прочих, источники ниже:

* http://www.sphinxsearch.com* http://www.developers.org.ua/archives/aleks_raiden/2008/07/24/full-text-...* http://company.yandex.ru/technology/server/* http://api.yandex.ru/server/doc/concepts/About.xml* http://code.google.com/intl/ru/enterprise/gsave/* http://static.googleusercontent.com/external_content/untrusted_dlcp/www....

После анализа, определились 2 наиболее подходящие системы: Яндекс.Сервер и Sphinx. Так же, дополнительно был исследован Google Search Appliance Virtual edition (GSAVe).Сравнительная таблица в приложении.Подробный анализ систем показал:

Яндекс.Сервер удовлетворяет ВСЕМ требованиям, имеет отличную документацию, очень гибко конфигурируется, работает по множеству источников данных, в том числе по БД.

Sphinx удовлетворяет основным требованиям, но работает только с БД и XML, т.е. не индексирует дополнительные типы документов. В целом подходит. Возможно есть нестандартные индексаторы/краулеры, но они не распространены. Очень быстрая и мощная система, хорошо ладит с русской морфологией. Есть модули под Drupal (что не избавляет от необходимости ручной конфигурации движка поиска)

GSAVe - не поддерживается и не распространяется в настоящий момент, официального описания возможностей системы и документации нет. Возможности Коммерческого продукта GSA показал, что система умеет то же самое, что яндекс-сервер, кроме того включает:

* Разграничение прав* Self-Learning Scorer* Query Suggestions* User-Added Results* adjust search results for different user groups* Alerts* File Types Search more than 220 file types, including HTML, Microsoft Office, PDF, PostScript, WordPerfect, Lotus, and many others. (яндекс только распространенные форматы)* Search Quality Feedback Toolkit

При этом, какие из этих возможностей и как реализованы в GSAVe неизвестно.Известно что при жизни, GSAVe имел ограничение на индексацию 50k страниц/документов, а его основное назначение было предоставление разработчику "опытного кролика", пока готовился к выходу GSA.Поиск документации и дистрибутива GSAVe не привел к рузультатам.Таким образом, 'GSAVe' - не проходит по требованию индексации неограниченного кол-ва документов, при этом есть ряд других явных и потенциальных сложностей.

Таким образом, выбор поисковой системы осуществлялся между Sphinx и Яндекс.Сервер, обе из которых удовлетворяли нашим требованиям в большей или меньшей степени.Яндекс.Сервер во всех отношениях предпочтительной, кроме скорости поиска(хотя она весьма удовлетворительна) и условий использования.Sphinx работает с огромной скоростью, но только по БД - необходимо писать свои парсеры под другие типы документов (возможно они и есть, но не распространены или не распространяются открыто).Т.к. скорость индексации не являлась критически важным параметром, решено было остановить выбор на Яндекс.Сервер.

Вскоре был написан модуль интеграции Я.Сервер и Друпал, подробнее тут:Интеграция Яндекс Сервер с Друпал

drupal.ru

Основные преимущества и недостатки! Что можно разработать на Drupal

Движок Drupal бесплатный, разработанный с использованием PHP и поддерживающий все СУБД с библиотекой PEAR, с кодировкой UTF-8. Применим для создания корпоративных сайтов, информационных ресурсов, блогов. Разработчики предоставляют большой выбор модулей, которые помогают расширить функциональность сайта.

Характеристики Drupal

Достоинства Drupal

 

Недостатки Drupal

 

Системные требования

Drupal используется на платформе LAMP, но может быть применено другое программное обеспечение. Из операционных систем подходит Unix или любые, работающие с интерпретаторами PHP. Возможность адаптировать к любым СУБД. Версия PHP не ниже 4.3.3.

Агрегатор фриланс бирж FreelanceGrab, искать заказы на фрилансе стало еще проще. 8 крупных бирж, удобный поиск и фильтрация по проектам,моментальное обновление ленты без перезагрузки страницы

x-twig.ru

Особенности функциональности движка Drupal.

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

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

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

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

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

sitey.ru

CMS система Drupal и ее особенности

CMS система Drupal

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

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

Итак, по традиции рассмотрим для начала преимущества работы с системой Drupal:

Вслед за преимуществами стоит также выделить ряд недостатков Drupal:

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

hostciti.net

За что я люблю Drupal / Хабр

По моему скромному мнению, CMS Drupal наиболее близко подошла к понятию «идеальная CMS». Очень многое в Drupal сделано для облегчения жизни разработчиков. В этой статье мне хочется рассказать об основных моментах, которые мне нравятся в Drupal. Материал рассчитан на пользователей, мало знакомых с Drupal. Иногда мне придется говорить очень простые вещи, но именно из-за этих простых мелочей и складывается очень приятное впечатление от Drupal.

Сразу стоит предупредить, что Drupal это не готовое решение. После установки вы не получите настроенную и работающую социальную сеть, интернет магазин и т.д. В Drupal действует принцип «предоставление возможностей по мере необходимости». Именно поэтому на Drupal не делают сателиты и ГС в промышленном масштабе и, возможно, именно поэтому количество рабочих сайтов на Drupal уступает таким CMS как Joomla и Wordpress, любимым CMS строителей сателитов и ГС.

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

Ноды
Все типы материалов (Статья, Страница и т.п.) в Drupal являются дочерними от ноды (node) и имеются одинаковую базовую структуру. В отличии от многих других CMS в Drupal можно создавать свои типы материалов (например Товар, Видео и т.д.). Зачем это нужно? Такой вопрос может возникнуть только если представлять себе типы материалов как два поля: Заголовок и Содержание. Но это Drupal и, как некоторые наверно уже догадались, в нем можно создавать свои поля (стандартные: простая строка, список, файл, изображение и т.п., из сторонних модулей: e-mail, ссылка, телефон и т.п.). Причем все это создание осуществляется через удобный административный интерфейс. Разумеется у каждого поля есть множество своих настроек, что позволяет настроить их под свои нужды.

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

У каждой ноды есть системное имя, например node/105. Помимо этого к каждой ноде можно определить синоним, т.е. дополнительный адрес по которому данная нода будет открываться на сайте. Фактически это адрес страницы. Причем (мне это особенно хочется выделить, т.к. для меня это одна из самых важных функций), адрес синонима можно поменять на любой другой в любое время, в не зависимости от любых других условий (наличие материала в определенной категории например). Казалось бы такая простая возможность, как полное контролирование адреса страницы, реализована в других CMS очень плохо. Модуль Global Redirect делает 301 редирект с системных адресов на синоним, так что проблем с дублями материалов в поисковых системах не будет.

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

Таксономия
В плане создания категорий, тегов и т.д. Drupal не отстает от своих принципов предоставления не готовых решений, а инструментов для создания нужных вам решений. В Drupal разделение материалов по различным категориям называется страшным словом Таксономия, в котором, на самом деле, ничего сложного нет. В обычных CMS вам дается возможность создания одного набора категорий, тегов. Например в наборе категорий можно создать дополнительные категории и подкатегории, для тегов же предоставляется одна специальная категория, позволяющая добавлять множество произвольных тегов. Drupal, как обычно, стоит над этими решениями, предоставляя инструменты для создания неограниченного количества наборов категорий и их элементов с неограниченной вложенностью (в понятия Друпала это Словарь и Термин). Причем каждый такой набор категорий может быть выбран в качестве работы как теги (например поля для тегов про Софт, поле для тегов про Железо и т.п.). Разумеется, каждую категорию можно привязать к любому (нескольким или даже всем, напоминаю Друпал разработчика ничем не ограничивает) типам материалов. Просто для применения этих возможностей просто неограниченный.
Формат ввода
В Drupal есть такая удобная возможность, как Формат ввода. Он служит для ограничения разрешенных тегов при написании материалов и для автоматического преобразования определенной последовательности символов в код (например [videp: ссылка] в видео плеер). Можно создать сколько угодно форматов ввода, назначать ролям пользователям любое количество форматов ввода. Разумеется все это делается через админку и с широкими возможностями по настройке разрешенных фильтров.

Как известно, стандартно в Drupal нет визуального редактора, если вам он нужен, то с помощью модуля Wysiwyg можно к каждому формату ввода присоединить свой визуальный редактор (например сделать 10 форматов ввода и присоединить к каждому свой визуальный редактор). Пример с 10 разными редакторами надуманный, но на реальном сайте очень удобно пользоваться данной возможностью, например для комментариев отключить редактор, для модераторов новостей сделать простой редактор, а для админа полноценный).

Пользователи
В Drupal можно создать неограниченное количество пользователей, настроить им разнообразные права доступа (без всяких ограничений), в том числе доступ по материалам, по полям, по модулям. В профилях пользователя можно создавать неограниченное количество своих полей (дата рождения, ссылки на профили в соц. сетях и т.п.).
Модули
Без сторонних модулей невозможно представить Drupal. Великолепное API, позволяющему создавать свои модули не влезая в код ядра, привело к созданию огромного количества модулей. Причем они, как и Друпал, предоставляют инструменты для решения проблем. Стоить отменить еще одну особенность модулей для Drupal — это их взаимосвязанность, удивительную взаимосвязанность. Это значит что модули не дублируют функционал друг друга, а работаю используя друг друга. При работе с Drupal вам не раз придется встретится со множеством ситуаций, что один модуль зависит от другого, а второй от третьего и т.д. Может сложиться впечатление, что таким образом придется устанавливать много «лишних» модулей, но это не так, обычно если вам нужен какой-то модуль, который зависит от еще двух, то эти два уже или установлены и используются или вы в скором времени их будете использовать. Drupal сильно зависит от сторонних модулей, сайт средней сложности использует более 30-40 модулей. Сейчас невозможно представить современный сайт на Drupal не использующие модули.

Все модули располагаются в одном месте — на официальном сайте Drupal.org, так что нет необходимости искать по всему интернету необходимый модуль. Все модули на Drupal.org бесплатны и не бывает таких ситуаций, когда автор модуля в будущем начинает требования денег за свой модуль. Платные модули в Drupal распространены очень слабо.

Views
Разговаривая о сторонних модулях никак нельзя обойти самый популярный, самый сложный и самых функциональный модуль для Drupal — Views. Гениальная и простая идея (как и все в Drupal) модуля состоит в том, чтобы предоставлять удобных инструмент для настройки вывода информации. Любой. В любом месте.

Модуль Views заменяет собой сотни других модулей в других CMS. Вам необходимо вывести последние пять новостей в блоке с возможностью настройки вывода именно так как вам нужно? Вам нужно создать страницу, на которой выводится все страницы с количеством комментариев больше 10 и датой публикации за три последних месяца? Вам нужно создать блок, в котором выводится 200 первых символов их последней страницы в определенном разделе? Вам нужно вывести информацию из специального типа материала в виде таблицы с 7 полям разбитой на страницы, отсортированной по определенному полу за период с январь по июль прошлого года? В других CMS вам пришлось бы искать модули под такие индивидуальные задачи или писать самому запросы к базе данных для выдирания информации. В Drupal для решения всех этих и множества других проблем связанных с выводом информации служит модуль Views. Просто выберите в административной странице какие поля вам нужны, настройте фильтры (по дате, по типу материала и т.д.), настройте сортировку (по дате, по каком-то полю и т.д.) и получите то что хотите.

Любой модуль может добавить дополнительные поля, критерии сортировки и т.д. во Views. Помните вначале был пример с отключением модуля комментариев? Так вот, при его отключении вы ни увидите поля связанные с комментариями во Views, соответственно, включив модуль комментариев поля, критерии сортировки и т.д. появятся на своих местах во Views. Таким вот простым способом модули взаимодействуют друг с другом.

Token
Модуль Token предоставляет токены — специальные маркеры, заменяющиеся своими значениями, например: заголовок материала, дата публикации, название поля, значение поля и т.д, их очень много (минимум 150), другие модули могут расширять их список своими токенами. Этот модуль активно используются другими модулями, например для генерации адресов страниц, заголовком страниц, автоматического переименования файлов и т.д. Все это управляется через админку.
Panels
Модуль продолжает идею Views, но только Panels предоставляет инструмент для вывода информации в виде панелей на страницах или в блоках. В этих панелях можно выводить различную информацию — любую ноду, последние материалы, комментарии, представления сделанные в модулей Views и т.д. Например можно создать страницу, состоящую из двух панелей, вывести в одну содержание какой-то ноды, а в другую представление из Views со списком материалов из какой-то рубрики. Разумеется, все это делается в админке.
Rules
Модуль Rules позволяет создавать правила, срабатывающие при определенных условиях. Это могут быть самые различные правила, например перевод пользователя из одной роли в другую при достижении 100 добавленных комментариев или удаление нод, расположенных в какой-то категории, имеющих меньше 5 комментариев и опубликованные больше года назад. Все правила настраиваются через удобный административный интерфейс.

Описание отдельных модулей может занять не одну статью, ведь сторонних модулей создано более 12,5 тысяч. Важно одно: большинство из них предоставляют инструменты для разработчика, а не конкретное полностью готовое решение (это касается крупных модулей). Найти модуль по ваши требования легко, ведь модули имеют ясно название, из которого четко понятно что для чего нужен модуль. Например, нужна капча — модуль CAPTCHA и его подмодули, нужно добавить Google Analytics — модуль Google Analytics к вашим услугам (с множеством настроек разумеется), нужно автоматически формирования названия нод — вам поможет модуль Automatic Nodetitles и т.п.

Написание своих модулей
Рано или поздно вам захочется написать свой модуль. В этом ничего сложного нет, вы даже поймете, что разрабатывать свои модули и предоставлять их сообществу выгодно, т.к. вы получаете дополнительных пользователей для тестирования вашего полезного модуля. В разработке вам поможет документация api.drupal.org и модуль для разработчиков Devel. А модуль Coder даже автоматически проверит ваш код на соответствие принципам написания кода, принятым в сообществе Drupal (а он стандартизирован и его придерживаются все сторонние разработчики, в результате не сложно разобраться в коде других модулей). Ну а после, вам необходимо будет пройти песочницу, в которой ваш код более подробно осмотрят профессионалы. Особое внимание уделяют защищенности кода.
Локализация
Как вы переводите дополнительные модули/плагины/компоненты и т.п. в свой любимой CMS? Можно перевести самому, найти выполненный кем-либо перевод на просторах интернета, но когда дополнительных модулей/плагинов и т.д. становится много, то очень трудно уследить за обновлениями переводов (если их конечно делают). В Drupal данная проблема с поиском переводов отсутствует как класс, все переводы для всех языков (а их не мало) хранятся в одном месте на официальном сервере localize.drupal.org, причем не нужно даже вручную их переносить оттуда, с помощью модуля Localization update можно автоматически импортировать переводы в свой сайт на Drupal. Модуль автоматически проверяет наличие обновлений (по расписанию) и если хоть одна новая или обновленная строчка перевода появилась, он вам об этом сообщит. Представьте с какой легкостью вы можете создавать многоязычные сайты, теперь вам не придется искать переводы для всех модулей на множестве языков, особенно которых вы не знаете (вы когда нибудь делали многоязычный сайт на десяти языках, включая китайский и японский, с множеством модулей; представляете сколько времени потребовалось бы на поиск переводов? с Drupal такой проблемы нет вообще).
Темы
Поскольку Drupal создан для разработчиков, то и множество тем на drupal.org представлено для разработчиков. Существует так называемые чистые темы, в которых реализованы все стандартные страницы шаблонов темы и минимум необходимых CSS для нормального функционирования Drupal. Создание своих тем на их основе одно удовольствие. Мне особенно нравится чистая HTML5 тема Framework.

Темизации поддается все выводы информации, генерируемые другими модулями. Создатели модулей предусматривают специальные функции/файлы темы, которые можно переопределить в своей теме, настроив темизацию под свои нужды, т.е. не приходится править другие модули для настройки темы.

Drupal также предоставляет механизм создание под-тем, в которых переопределены только необходимые изменения по сравнению с основной темой, таким образом при обновлении основной темы, изменения сделанные в вашей под-теме не потеряются.

Стоит отметить, что админка в Drupal может иметь любую тему, хоть ту которая идет по умолчанию, хоть любую стороннюю тему для админки, хоть просто тему для основного сайта. Никаких ограничений.

Drupal.org
Drupal.org заслуживает отдельного упоминания. Особенно хочется упомянут структуру страниц модуля/темы/инсталяционного профиля. На каждой странице модуля представлено подробное описание возможностей модуля, ссылки для скачивания последней стабильной версии модуля и версии для разработчиков. У каждого модуля/темы/инсталяционного профиля показано количество рабочих сайтов (в действительности реально работающих сайтов будет больше, т.к. статистика учитывается только если включен модуль проверки обновлений), использующих данный модуль/тему/инсталяционного профиля. Сравните это с абстрактным количеством скачиваний в других CMS. Скачать модуль могут много раз, а вот в реальности его могут использовать в разы меньше. Drupal.org покажет вам реальную информацию о популярности модуля.

У каждого модуля/темы/инсталяционного профиля есть свой раздел Issues, своеобразный форум, в котором обсуждаются баги, предлагаются новые возможности и т.д. касательно только данного модуля/темы/инсталяционного профиля. Сравните это с форумами дополнительных модулей/плагинов и т.д в в других CMS. Обычно в них свалено обсуждение всех модулей в один форум, в котором очень трудно разобраться или, что еще хуже, обсуждение модуля вынесено на дополнительный сайт. На drupal.org таких проблем нет.

Литература
Для Drupal, в отличии от других CMS, представлено много литературы по разработке сторонних модулей, тем и т.д. В том числе и на русском языке. Хочется выделить два издания одной книги, подробно рассказывающее приемы написания дополнительных модулей, тем, инстраляционных профилей с использованием API Друпала. Также в них есть главы описывающие принятый в сообществе Drupal стиль написания кода, методы написания защитного когда и т.д.
  1. Тодд Томлинсон CMS Drupal 7. Руководство по разработке системы управления веб-сайтом 3-е издание
  2. Джон Вандюк CMS Drupal 6: система для создания сайтов и управления ими 2-е издание
Для начинающих можно порекомендовать следующие книги по использованию Drupal:
  1. Байрон А., Берри Э., Хог Н., Уокер Д., Роббинс Д., Итон Д. Drupal. Создание и управление сайтом
  2. Дэвид Мерсер Drupal 6. Создание надежных и полнофункциональных веб-сайтов, блогов, форумов, порталов и сайтов-сообществ
На английском языке книг вышло намного больше, смотрите Drupal.org/books.

Главная проблема при изучении CMS — это понимание логики работы. Поймете логику — значит сможете решить любую проблему. Drupal в плане логичности работы очень прост, поэтому не обращайте внимание на ходящие в сети заявления, что Drupal это очень сложно, а попробуйте его и убедитесь в обратном. Главная проблема (и главное преимущество) Drupal — это его неограниченные возможности.

Это небольшое описание того, что мне нравится в Друпале, призванное заинтересовать пользователей других CMS.

А что Вам нравится в Drupal?

habr.com


Prostoy-Site | Все права защищены © 2018 | Карта сайта