Joomla!/Joomla! 1.5 ăшлăх менеджмент системипе палашни

Wikibooks
Перейти к навигации Перейти к поиску

Joomla! - это система управления содержимым (Content Management System - CMS) веб-сайтов, распространяемая с открытыми исходными текстами, которую можно загрузить совершенно бесплатно с сайта http://joomla.org/ . Отличается простотой развертывания и обслуживания, качеством организации Веб-интерфейсов. Практический каждый может загрузить, установить и запустить Joomla! на своем веб-сервере. В Интернете под управлением системы Joomla работают миллионы веб-сайтов.

Joomla! позволяет производить все операции по обслуживанию сайта через панель управления, имеющую Веб-интерфейс, что позволяет управлять сайтом из любой точки Земли где есть доступ в Интернет. Joomla!

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

По мере своего развития Joomla! использует все большее число организаций. Самое главное преимущество этой системы - ее гибкость, что подтверждается широким разнообразием сайтов, построенных на ее основе:

  • Корпоративные сайты.
  • Школьные и университетские сайты.
  • Сайты электронной коммерции.
  • Сайты малого бизнеса.
  • Сайты некоммерческих и общественных организаций.
  • Сайты правительственных организаций.
  • Корпоративные сайты во внутренних и внешних сетях.
  • Персональные или семейные домашние страницы.
  • Порталы сообществ.
  • Сайты журналов и газет.

Первая версия под названием Joomla! 1.0 появилась в Интернете в 2005 году. Последняя версия Joomla! 1.5 стала доступна в 2007 г. Joomla! вошла в список 50 лучших проектов Open Source 2006 г. В 2007 г. Joomla! получила награду лучшего проекта Open Source для Linux (Best Linux Open Source Project).

Что такое программное обеспечение с открытыми исходными текстами[тӳрлет]

Joomla! - это пример программного обеспечения, распространяемого с открытыми исходными текстами. Авторские права на этот продукт принадлежат некоммерческой организации Open Source Matters. Это открытый проект, и над его улучшением трудится сообщество добровольных разработчиков со всего мира. Примерами подобных программных продуктов, о которых вы могли слышать, являются Mozilla Firefox, Apache, MediaWiki, GNU/Linux, OpenOffice.org. Все они распространяются с открытыми исходными текстами и во многом превзошли свои коммерческие аналоги. Если вам интересно узнать, как и почему люди стремятся создавать мощные программные продукты, распространяемые бесплатно, то информацию об этом вы найдете на следующих сайтах:

История веб-дизайна[тӳрлет]

В первые годы становления WWW для создания Веб-страницы нужно было знать язык HTML (Hypertext Markup Language). Различными компаниями были созданы редакторы HTML-кода вроде Adobe Dreamweaver и Microsoft FrontPage, упрощающие создание Веб-страниц. Некоторые из таких редакторов позволяли управлять всеми этапами создания сайта — от написания HTML-кода до загрузки этого кода на сервер. При этом знание самого кода для создания простых страниц не требовалось, т.к. редакторы предлагали визуальные средства создания страниц.

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

Чтобы решить проблему обновления сайта, а именно — автоматизировать само обновление, крупные информационные компании вроде Newsweek и TIME были вынуждены начать разработку нового типа программного обеспечения — систем управления контентом (CMS). CMS не только автоматизирует управление содержимым сайта, но и позволяет пользователям, не знакомым с различными техническими тонкостями, например, писателям и журналистам, размещать свои материалы в системе непосредственно через интерфейс пользователя. Понятно, что теперь пользователям для размещения материалов на сайте не нужно знать ни HTML, ни вникать в технические подробности самого процесса обновления сайта.

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

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

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

Концептуально веб-страницы объединяют в себе два аспекта: информационное наполнение и его представление. За последнее десятилетие были пройдены следующие этапы в развитии взаимодействия этих двух аспектов:

  • Статические веб-страницы - информационное наполнение и средства его представления располагаются в одном файле.
  • Каскадные таблицы стилей для веб-страниц - содержимое и средства его представления размещаются отдельно.
  • Динамические веб-страницы — содержимое и средства его представления размещаются отдельно от самой страницы.

Статические веб-страницы[тӳрлет]

Веб-страница состоит из набора инструкций расширяемого гипертекстового языка разметки (extensible Hypertext Markup Language - XHTML), которые сообщают броузеру, как должно быть представлено содержимое веб-страницы. Например, код разметки может информировать о следующем: «Нужно взять заголовок 'This is a web page' и вывести его на экран крупным полужирным шрифтом».

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

  • Содержимое страницы (текст "This is a web page") и информация о его представлении (крупный полужирный шрифт) располагаются вместе. Если потребуется изменить цвет всех заголовков, придется просмотреть все страницы на сайте и внести необходимые изменения.
  • Файлы с такими страницами имеют большие размеры. Так как стиль каждого элемента информационного наполнения описывается индивидуально, страницы быстро разрастаются в размерах, что влечет за собой увеличение времени загрузки. Большинство экспертов согласны с тем, что такое положение вещей снижает эффективность поисковой оптимизации, так как большие страницы сложнее индексировать.

Каскадные таблицы стилей[тӳрлет]

Следующим шагом к пониманию механизмов управления содержимым является разработка веб-стандартов - обобщенного набора «правил», которые используются такими броузерами, как Internet Explorer или Firefox, при выводе веб-страниц на экран. Один из этих стандартов регламентирует использование каскадных таблиц стилей (Cascading Style Sheets - CSS) для управления представлением содержимого веб-страниц. CSS представляют собой простой механизм добавления в веб-документы стилей отображения (например, определяющих шрифты, цвета, отступы и т. п.). Вся эта информация о представлении располагается в самостоятельном файле, отдельно от содержимого.

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

Использование каскадных таблиц стилей для управления представлением имеет следующие важные преимущества:

  • Такие страницы стало намного проще поддерживать и изменять. Если вдруг потребуется изменить цвет всех заголовков, достаточно будет исправить лишь одну строку в файле CSS.
  • Размеры обоих файлов значительно меньше, что позволяет загружать их гораздо быстрее, чем без использования CSS.
  • Использование файла CSS дает дополнительное преимущество, связанное с кэшированием содержимого таблиц стилей (сохранением) на локальном компьютере, что ликвидирует необходимость загружать его всякий раз, когда посетитель открывает страницу.

Динамические веб-страницы[тӳрлет]

Динамические страницы создаются самой CMS. CMS для содержимого — это то же самое, что CSS для представления. Каскадные таблицы стилей позволили отделить представление от содержимого, a CMS дают возможность отделить содержимое от страницы. На первый взгляд может показаться, что от самой страницы ничего не осталось, но на самом деле этот остаток является своего рода «шаблоном».

Инструкция «put some content here» (поместить здесь содержимое) сообщает системе CMS о необходимости извлечь из базы данных некоторое содержимое, «чистую информацию», и поместить его на заданное место на странице.

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

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

Еще один хороший пример CMS - блоги. В них есть «шаблон», представляющий все содержимое (в данном случае - записи), и блоги легко редактировать и публиковать в Интернете. Рост числа использований систем управления содержимым для оснащения веб-сайтов в некоторой степени обусловлен ростом популярности инструментальных средств ведения блогов, таких как Blogger и LiveJournal.

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

Диапазон доступных CMS чрезвычайно широк - от версий масштаба предприятия, цена которых достигает $300000, до бесплатно распространяемых релизов, таких как Joomla. Современные системы CMS обычно определяются по их возможностям управлять содержимым и публиковать его. Как правило, они обеспечивают поддержку всего процесса — от создания содержимого до его публикации. Большинство систем готово предложить гораздо больше: они обладают возможностью увеличивать функциональность сайта за счет добавления разнообразных расширений и дополнений. Для Joomla имеется более 2000 дополнительных расширений, от форумов до рассылки новостей, многие из которых созданы сторонними разработчиками и распространяются бесплатно. Официальный каталог расширений можно найти на сайте www.extensions.joomla.org, а каталог коммерчески распространяемых расширений - на сайте www.extensionprofessionals.com. Оба сайта имеют систему рейтингов и обзоров расширений (которая сама по себе является расширением!).

Сайт расширений для Joomla и www.extensionprofessionab.com имеют систему рейтингов и обзоров. Следует быть особенно внимательным при использовании рейтингов. Расширения с наивысшим рейтингом располагаются на верхнем уровне сайта. Их просматривает большое число посетителей, что, в свою очередь, ведет к еще большему росту рейтинга. Нередко можно найти замечательные расширения, скрытые в категориях. Определенно, стоит потратить час-другой на просмотр всех расширений, чтобы найти то, которое может оказаться полезным.

Качество расширений также изменяется в широком диапазоне. Если расширение предполагается использовать на каком-нибудь важном сайте, не поленитесь - узнайте, что за разработчик создал это расширение, и посетите его сайт.

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

Что такое система управления содержимым[тӳрлет]

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

Большинство систем управления содержимым стоит достаточно дорого — от $50 ООО до $300 000. Но с каждым годом растет число свободно распространяемых разработок. Системы управления содержимым, распространяемые с открытыми исходными текстами, становятся все более надежными и все чаще используются в важных проектах компаний и некоммерческих организаций.

Для чего нужна система управления содержимым[тӳрлет]

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

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

Системăн кун-çулĕ[тӳрлет]

2005 сулхи çурла уйăхĕнче Mambo тăваканĕсенчен нумайĕшĕ Mambo проектран уйрăлчĕç. Вĕсем хăйсен Open Source Matters ятлă ушкăн йĕркелерĕç. Авăн уйăхĕнче вара вĕсем Joomla 1.0 ĂМС-не кăларчĕç.

2007 çулта ĂМС çĕнĕлĕхне (версине) кăларчĕç. Вăл Joomla! 1.5 ятпа тухрĕ.

Отличия версии Joomla! 1.0 от 1.5[тӳрлет]

Cписок самых значительных изменений в версии Joomla! 1.5:

  • полностью переработанная панель управления;
  • более совершенное средство предварительного просмотра шаблонов;
  • новый менеджер плагинов;
  • поддержка редактирования CSS-файлов;
  • полная поддержка новостных лент Atom 1.0 и RSS 2.0;
  • больше внимание уделено локализации, в частности поддерживается UTF8, RT L, а перевод на другой язык осуществляется с помощью ini-файлов, привычных пользователям Windows;
  • поддержка LDAP (Lightweight Directory Access Protocol, облегченный протокол доступа к каталогам);
  • поддержка XML-RPC;
  • поддержка Ajax-приложений;
  • полностью переработанный интерфейс разработчика.

Функции Joomla![тӳрлет]

Административные функции:

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

Функции управления контентом и возможность взаимодействия посетителей и CMS:

  • встроенные WYSIWYG-редакторы (What You See Is What You Get), позволяющие создавать страницы сайта без знания HTML;
  • автоматический поиск по сайту;
  • полная поддержка новостных лент форматов RSS и Atom;
  • встроенная возможность создания опроса (голосования);
  • управление рекламными баннерами;
  • плагины для организации интернет-магазинов, например, корзина, галерея изображений и др.;
  • многоязычность.

Особенности Joomla!:

  • полная открытость исходного кода — вы загружаете исходный код и имеете право его изменять;
  • поддержка операционных систем Linux и Windows;
  • поддержка кэширования страниц для повышения производительности сайта.

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

Принципы работы Joomla![тӳрлет]

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

Схема работы Веб-сервера без установленной CMS. Сначала браузер отправляет запрос Веб-серверу. Веб-сервер получает HTML-код из статического HTML-файла (имя файла указывается в запросе браузера, например, http://www.example.com/index.html) и отправляет его браузеру пользователя. Поскольку HTML-файл статический, то пользователь получит его код без всяких изменений, как он сохранен на Веб-сервере.

Если на Веб-сервере установлена система управления контентом сайта, то схема усложняется. На этот раз браузер пытается получить не статический HTML-файл, а PHP-сценарий, но, несмотря на это, адрес страницы почти идентичен предыдущему — http://www.example.com /index.php. Этот запрос загружает часть Joomla!: ее основной файл index.php. Интерпретатор РНР, установленный на Веб-сервере, обеспечивает выполнение PHP-сценариев (РНР — это язык программирования, на котором написана Joomla!). Другими словами, происходит запуск Joomla!, которая сразу после запуска определяет, какая страница запрошена, устанавливает соединение с сервером баз данных MySQL, получает текст страницы, оформляет его в соответствии с шаблоном и отправляет в браузер. Обратите внимание, что CMS, используя текст, полученный из базы данных, и шаблон оформления, формирует HTML-код, который и отправляется в браузер.

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

Разработка неофициальных расширений[тӳрлет]

Уникальность Joomla, отличающая ее от других открытых CMS, заключается в количестве неофициальных разработчиков, создающих свои расширения. Очень сложно отыскать сайт на базе Joomla, который не использовал хотя бы одно из расширений. Истинная мощь Joomla заключена в широчайшем диапазоне разнообразных расширений.

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

Возможности Joomla[тӳрлет]

Система Joomla обладает рядом замечательных возможностей. Когда вы загружаете Joomla с сайта www.joomla.org, вы получаете zip-архив (размером примерно 5 Мб) с программой, которую необходимо установить на веб-сервер. Делается это путем извлечения всех файлов из архива и наполнения базы данных определенным содержимым. Ниже перечислены некоторые возможности, которые включены в базовую установку:

  • Простота создания/изменения содержимого с использованием текстового редактора, доступного как в открытой, так и в закрытой части сайта.
  • Регистрация пользователей и ограничение доступа к страницам в соответствии с правами пользователя.
  • Контроль за редактированием и публикацией содержимого пользователем в соответствии с уровнем его административных прав.
  • Голосования.
  • Простые контактные формы.
  • Общедоступные статистики сайта.
  • Закрытые подробные статистики сайта.
  • Встроенный механизм поиска по сайту.
  • Возможность распечатать или отправить любую статью в формате PDF другу по электронной почте.
  • Создание каналов RSS (и других форм синдицирования).
  • Простая система определения рейтинга содержимого.
  • Отображение полос новостей с других сайтов.

Вокруг Joomla сплотилось обширное сообщество разработчиков (более 30000), создавших более 2000 расширений, большинство из которых распространяется бесплатно. Ниже приводится список наиболее популярных типов расширений:

  • Форумы.
  • Тележки покупателя для интернет-магазинов.
  • Новостные рассылки по электронной почте.
  • Календари.
  • Средства управления документами.
  • Галереи.
  • Формы.
  • Каталоги.

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

Чтобы придать своему сайту более узкоспециализированную направленность, вы можете просто отыскать расширения, удовлетворяющие вашим потребностям.

Элементы веб-сайта на базе Joomla[тӳрлет]

Веб-сайт на базе Joomla состоит из нескольких элементов, которые все вместе образуют веб-страницу. Основными являются три элемента — содержимое, модули и шаблон. Содержимое - это основа веб-сайта, шаблон определяет внешнее представление веб-сайта, а модули добавляют дополнительную функциональность в деталях.

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

Содержимое[тӳрлет]

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

Фактически в системе Joomla для содержимого имеется особый термин - основная часть страницы. Как правило, это самая большая колонка, размещенная посередине.

Содержимое основной части создается из компонентов. Самый большой и самый важный компонент в Joomla - тот, что занимается обслуживанием статей и отдельных элементов информационного наполнения на сайте. Фактически этот компонент настолько важен, что он часто будет встречаться вам под названием Content Articles (Статьи содержимого).

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

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

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

Модули[тӳрлет]

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

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

Шаблоны[тӳрлет]

Шаблон - это просто набор правил, которые определяют представление информации. Например, шаблон может задавать количество колонок или цвет шрифта заголовков. Шаблон также определяет расположение компонентов веб-страницы.

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

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

Ссылки[тӳрлет]

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

Форумы сообщества:

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

Обратите внимание: в этот список не попали национальные сайты Joomla. В большинстве стран имеются местные сайты, посвященные Joomla, со своими форумами. Например, в Германии имеется сайт www.joomla.de , в России www.joomla.ru

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

Основная информационная база: