Книга
Книга
_•_ Самоучитель
Joomla!
Дэн Рамел
Apress
Д ►сехгетп /сх
Установка и настройка системы и сопутствующих приложений
Планирование содержимого сайта и разработка меню
Администрирование, резервное копирование и безопасность
Разработка шаблонов и расширений системы Сбор и анализ статистики сайта, поисковая оптимизация
bhvbhvСоздание фотогалереи и поддержка электронной коммерции
bhv
bhv
Beginning Joomla!
From Novice to Professional
® ® ■
Dan Rahmel
Apress*
Дэн Рамел
Самоучитель —
Joomla!
Санкт-Петербург«БХВ-Петербург»2008
УДК 681.3.06
ББК 32.973.26-018.2
Р12
Рамел Д.
PI2 Самоучитель Joomla!: Пер. с англ. — СПб.: БХВ-Петербург. 2008. — 448 с.: ил.
ISBN 978-5-9775-0285-6
Описан простой и быстрый процесс разработки полнофункциональных сайтов с использованием бесплатой системы управления кошешом loomla* В кише рассматривается: установка и настройка системы и сопутствующих приложений, планирование содержимого сайта, добавление статей, разработка меню, администрирование Joomla!, резервное копирование сайта, проблемы безопасности, создание собственных шаблонов, обзор расширении системы и примеры их разработки, поддержка функций Web-сообщества, сбор и аид-нн статистики сайга, создание фотогалереи, поддержка электронной коммерции, поисковая оптимизация и др
Д чя интернет-разработчиков
УДК 681.3.06
ББК 32.973.26-018.2
Группа подготовки издания:
Главный редактор
Зам । равного редактора
Зав редакцией
Перевод с английского Редактор
Компьютерная верегка Корректор
Дизанп серии Оформление обложки
Зав произволе том
Екатерина Кондх ко ;1 Евгений Рыбаков
Григорий Добин Дениса Кочисничекко Анна Кузьмина Очъги Сергиенко Виктория Пиотровская Инны Гичинои Елены Беляевой Николай Тверских
Original English language edition publislted by Apress 2855 felcgraph Avenue #600, Berkeley, CA 94705 USA Copyright < 2008 by Apress L P Russian edition copyright © 2008 by Bl IV—St Petersburg. All ights reserved No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or by any informaflbn storage or retnet al system, without the prior written permission of die copyright owner and the pubhslter
Авторизованный перевод английской редакции, выпущенной Apress 2855 Telegraph Avenue. #600. Bcrkclev CA 94705 USA Copyright © 2008 by Apress L.P. Перевод на рхсский язык ЪХВ-Петербург", © 2008. Все права защищены Никакая часть настоящей книп! не может быть воспроизведена или передана в какой бы то ни было форме и какими бы то ни было средствами, будь то электронные или механические. включая фотокопирование и запись на магнитный носитель, а также через другие носители и информационные системы, если на то нст письменного разрешения собственника нрав и издательства
Лицензия ИД № 02429 от 24.07.00. Подписано в печать 17.07.08.
Формат 70х100'/16. Печать офсетная. Усл. печ. л. 36,12.
Тираж 2000 экз. Заказ № 468"БХВ-Петербург", 194354, Санкт-Петербург, ул. Есенина, 5Б.
Санитарно-эпидемиологическое заключение на продукцию№ 77.99.60.953.Д.003650.04.08 от 14.04.2008 г. выдано Федеральной службойпо надзору в сфере защиты прав потребителей и благополучия человека.
Отпечатано с готовых диапозитивовв ГУП "Типография Наука"199034, Санкт-Петербург, 9 линия, 12
ISBN 978-1-59059-848-1 (англ.)ISBN 978-5-9775-0285-6 (рус.)ISBN 978-1-59059-848-1 (англ.)ISBN 978-5-9775-0285-6 (рус.)© 2008 by Apress LP.
ISBN 978-1-59059-848-1 (англ.)
ISBN 978-5-9775-0285-6 (рус.)
ISBN 978-1-59059-848-1 (англ.)
ISBN 978-5-9775-0285-6 (рус.)
© 2007 by Don Rahmcl
© Перевод на русский язык "БХВ-ПетербурГ 2008
Оглавление
Об авторе11
О техническом рецензенте12
Благодарности13
Глава 1. Знакомство с Joomla!15
Обзор системы управления контентом17
Почему все не переходят на CMS?18
Преимущества Joomla!19
Функции Joomla!20
Как Joomla! работает22
Отличия версии Joomla! 1.0 от 1.523
Joomla! — один из 50 лучших проектов Open Source24
Резюме 24
Глава 2. Быстрый старт: построй свой сайт на базе Joomla! за 20 минут25
Установка Joomla!26
Загрузка Joomla!27
Распаковка архива Joomla!28
Загрузка Joomla! на Web-сервер по протоколу FTP29
Подготовка хостинга Go Daddy для Joomla!31
Использование мастера установки Joomla! 37
Изменение параметров Joomla! 48
Создание новой статьи50
Редактирование главного меню55
Удаление модулей58
Сокрытие всего меню59
Изменение логотипа сайта61
Изменение текста Newsflash66
Создание своего опроса (голосования)68
Изменение горизонтального (верхнего) меню71
Резюме73
Глава 3. Установка и настройка75
Обзор файлов и каталогов Joomla!76
Установка ХАМРР79
Компоненты ХАМРР и операционная система80
Установка индивидуальных серверов WAMP/LAMP/MAMP86
Установка и настройка сервера Apache86
Установка и настройка PHP98
Установка и настройка MySQL103
Создание базы данных Joomla! с помощью MySQL Administrator111
Настройка прав доступа к файлам и каталогам.116
Установка файлов Joomla!117
Решение проблем117
Проблемы с сервером Apache118
Проблемы с PHP121
Проблемы с MySQL123
Резюме 127
Глава 4. Добавление контента129
Планирование содержимого сайта129
Разделы и категории Joomla!130
Некатегоризированный или статический контент133
Реинкарнация Web-сайта LoanStraircase в Joomla!140
Создание разделов и категорий141
Удаление демо-данных (статей, категорий и разделов)141
Добавление новых разделов и категорий143
Выбор текстового редактора145
Сравнение редакторов TinyMCE и XStandard Lite145
Без редактора 148
Добавление статей149
Установка основных параметров статьи149
Установка расширенных параметров статьи150
Установка метаданных статьи152
Добавление статьи на сайт153
Добавление второй статьи157
Связь меню со статьями158
Создание прямого меню для некатегоризированной статьи159
Отображение меню категории 161
Установка нового шаблона 163
Ваш сайт и ваши пользователи166
Резюме168
Глава 5. Администрирование Joomla!169
Администрирование дизайна169
Менеджер шаблонов170
Менеджер языков 172
Управление материалами173
Менеджер материалов174
Менеджеры разделов и категорий175
Менеджер главной страницы176
Медиаменеджер176
Менеджер корзины177
Системное администрирование178
Панель управления178
Менеджер общих настроек179
Менеджер пользователей184
Менеджер расширений192
Менеджер модулей193
Менеджер плагинов195
Почтовый менеджер197
Менеджер массовой рассылки198
Сброс блокировок199
Информация о системе200
Резервное копирование201
Создание резервной копии с помощью phpMyAdmin202
Восстановление из резервной копии203
Резервное копирование с помощью MySQL Administrator203
Резервное копирование файлов204
Безопасность205
Каталоги, доступные для записи207
Резюме207
Глава 6. Создание собственных шаблонов209
Быстрое руководство: создание шаблона Hello Joomla!210
Создание файлов шаблона Hello Joomla!211
Добавление модулей и компонентов в шаблон Hello Joomla!215
Изменение существующих шаблонов216
Создание шаблонов с помощью Web-редакторов. ..219
WYSIWYG-редакторы220
Редакторы кода226
Создание настоящего шаблона231
Части мозаики: структура шаблона232
Пошаговое создание шаблона234
Установка шаблона260
Предварительный просмотр шаблонов261
Проверка кода шаблона262
Резюме263
Глава 7. Расширения Joomla! 265
Разница между модулями, компонентами и плагинами265
Плагины: самые сложные расширения..266
Компоненты и модули268
Типы модулей269
Модули по умолчанию271
Модуль Wrapper (modwrapper)272
Модуль Random Image (modrandomimage)273
Модули Banners и Advertisement 274
Модуль Breadcrumbs (modbreadcrumbs)276
Модуль Syndication (mod syndicate)277
Модуль Feed Display (modfeed)277
Модули Main Menu, Key Concepts, User Menu, Examples Pages, Top Menu и
Resources (mod mainmenu)279
Модули администратора282
Компоненты сайта 283
Компонент Banners283
Компонент Contacts286
Компонент Newsfeeds288
Компонент Polls289
Компонент Weblinks291
Плагины сайта292
Резюме293
Глава 8. Функции для Web-сообщества295
Профиль сайта295
Определение аудитории сайта296
Посмотрите на свое сообщество297
Что нужно вашему сайту?297
Создание домашнего сайта для других групп299
Сообщество изменяет направление вашего сайта300
Технологии Joomla! для построения Web-сообщества300
Подписка на новостные ленты301
Рейтинг статей301
Создание опросов303
Добавление гостевой книги306
Разрешение комментариев пользователей315
Реализация календаря событий .. 323
Создание форума327
Добавление поля предложений335
Использование Community Builder336
Резюме340
Глава 9. Статистика сайта. 341
Web-аналитика342
Анализ Web-протоколов 342
Маркировка страниц 343
Автономные пакеты анализа протоколов 344
Webalizer344
AWStats348
Расширения для Joomla!349
Google Analytics350
Код маркера страницы350
Отчеты Google Analytics353
Резюме354
Глава 10. Фотогалерея355
FTP-сервер для управления галереей355
Активация FTP-сервера в Linux356
Активация FTP-сервера в Mac OS357
Установка сервера FileZilla в Windows357
Easy Gallery359
Загрузка и установка Easy Gallery361
Настройка Easy Gallery362
Управление Easy Gallery364
Создание меню для компонента 366
Пользовательский интерфейс Easy Gallery 367
Gallery 2367
Загрузка и установка Gallery2369
Настройка Gallery2372
Использование Gallery2 вместе с Joomla!378
Установка Gallery2 Bridge378
Другие плагины для Gallery2381
Резюме381
Глава 11. Joomla! и электронная коммерция383
VirtueMart: The Joomla! Store .383
Системные требования384
Версии установки385
Создание виртуального магазина387
Панель управления VirtueMart387
Налоговые ставки388
Общая настройка389
Настройка магазина391
Создание категорий392
Добавление продуктов393
VirtueMart и Secure Socket Layer398
Способы оплаты399
Группы покупателей и управление пользователями403
Управление производителями/брэндами404
Модуль доставки404
Управление заказами404
Резюме406
Глава 12. Поисковая оптимизация и Joomla!407
SEO на Joomlal-сайте407
Делаем Joomla! "дружественной" к поисковым машинам 408
Использование заголовков, МЕТА-тегов и ключевых слов413
Карты сайта ....415
Навигационная строка416
Создание SEF-шаблона для Joomla! 418
Общие методы оптимизации420
Проблемы JavaScript, Flash и Ajax421
Соотношение "HTML/текст"421
Эмулируем работу поискового паука421
Проверка ранга страницы423
Использование ключевых слов423
Выборочное исключение страниц сайта из поиска424
Стратегия размещения ссылок425
Избегайте поискового спама!426
Резюме426
Глава 13. Создание расширений427
Разработка модуля 427
Структура модуля428
XML-файл модуля modhellofrom428
РНР-файл430
Разработка модуля администратора Missing Metadata 432
Создание XML-дескриптора433
Создание файла модуля 434
Структура компонента Suggestion Box438
Файл XML-дескриптора 439
РНР-файл кода440
Установка компонента443
Резюме444
Предметный указатель445
числе DBMS American Programmer и Internet Advisor.числе DBMS American Programmer и Internet Advisor.
числе DBMS American Programmer и Internet Advisor.
числе DBMS American Programmer и Internet Advisor.
Об авторе
Дэн Рамел (Dan Rahmel) известен прежде всего своими книгами по базам данным, PHP и Visual Basic. Обладает многолетним (более 14 лет) опытом разработки и внедрения информационных систем и клиент-серверных решений средних масштабов с использованием MySQL, Microsoft SQL Server, Microsoft Access и Visual FoxPro. Как автор. Дэн начинал свою работу в различных журналах, в том
Является автором дюжины книг, переведенных на китайский, японский, испанский, французский и португальский языки. В 2006 году совместно с Focal Press издал книгу в Индии.
О техническом рецензенте
Стив Бурж (Steve Burge)— генеральный директор Alledia (www.alledia.com), одной из лидирующих компаний, занимающихся Joomlai-разработкой. Является автором книги "Joomla! SEO eBook" и создателем блога, посвященного вопросам поисковой оптимизации Joomla!-сайтов (www.alledia.com/blog). Родом из Великобритании, сейчас живет и работает в Атланте, Джорджия.
Благодарности
Работа над этой книгой совместно с сотрудниками издательства Apress доставила огромное удовольствие. Хочу персонально поблагодарить Джейсона Гилмора (Jason Gilmore) за веру в эту книгу, начиная с самого начала и до ее публикации. Огромное спасибо Трейси Браун Коллинс (Tracy Brown Collins) за ее помощь и поддержку. Также хочу поблагодарить Деймона Ларсона (Damon Larson), Мерилин Смит (Marilyn Smith), Кэти Стене (Katie Stence) и всех, кто помогал мне создавать и редактировать эту книгу.
Отдельная благодарность моей жене Элизабет и моей дочери Александре за их терпение и понимание, а также за все пропущенные уикенды. Встреча с Элизабет — это лучшее, что когда-либо случалось со мной, и я рад, что моя интуиция представила меня моей лучшей половине.
Также хочу поблагодарить моих родных братьев (Дэвида и Дарлина) и друзей (Дэвида Рахмела, Грега Микки, Джона Тэйлора, Хуана Леонффу, Эдда Джил- дреда и Велда О'Коннора) за их поддержку. Я очень благодарен Сандре Вил- лагран, которая всячески помогала мне.
Но высшую похвалу заслуживает команда разработчиков JoomlaL Они работают с минимальным вознаграждением для создания самого фантастического OpenSource-приложения в мире. Все мы извлекаем выгоду из их великодушия.
Но больше всего хочу поблагодарить вас, читателей. Купив эту книгу, вы поддерживаете издательское дело. Я надеюсь, что информация в этой книге вас не разочарует. Спасибо!
ГЛАВА 1
Знакомство с Joomla!
Изо всех подобных систем, которые можно встрети гь в Интернете, Joomla! мне понравилась больше всего. Joomla! — довольно молодая система, появившаяся на Web-арене в 2005 году. Однако она сразу завоевала доверие про стотой развертывания и обслуживания. Используя Joomla!, вы сразу избавитесь от плохо организованных Web-интерфейсов. Вы только посмотрите на рис. 1.1 — так выглядит сайт, построенный с помощью Joomla!, сразу после установки самой Joomla!. Можете представить, как он будет выглядеть после того, как вы приложите немного усилий.
В этой книге мы поговорим обо всем, что связано с Joomla! — от установки системы до написания собственных расширений. Когда вы дочитаете книгу, то сможете построить на базе Joomla! сайт любой сложности. Но прежде чем приступить к изучению Joomla!, давайте поговорим о ее преимуществах перед другими системами управления содержимым сайтом (иногда будет использоваться термин CMS, Content Management System). После прочтения этой главы вы убедитесь, что сделали правильный выбор!
История Mambo или история рождения Joomla!
Хотя Joomla! была представлена миру в 2005 году (именно в 2005 году появилась версия 1.0), нам нужно вернуться в 2001 год, когда появилась первая версия открытой системы управления сайтом Mambo. Вообще система Mambo начала свою жизнь как внутренний продукт австралийской компании Miro Corporation, но в апреле 2001 года данная система была представлена сообществу Open Source. На то время Mambo была лучшей CMS с открытым исходным кодом.
Mambo пользовалась огромной популярностью. Множество независимых разработчиков и дизайнеров создавали для нее расширения и шаблоны. И все это благодаря открытому коду — ведь если бы система была "закрытой", доступ к ее коду, а следовательно, и к написанию расширений получила бы только определенная группа людей — ее разработчиков. А так как система была открытой, присоединиться к ее развитию мог любой желающий. Понятно, что Mambo стала самой популярной CMS с открытым кодом.
В 2005 году произошло разногласие между реальными разработчиками Mambo и владельцами торговой марки Mambo. В итоге в августе 2005 года большая часть разработчиков Mambo отделилась от проекта.
Вскоре появилась новая CMS— Joomla! 1.0. Во многих аспектах новая CMS была полностью совместима с Mambo, хотя интерфейс пользователя и панели управления были немного упрощены.
Joomla! появилась относительно недавно — не прошло и трех лет (на момент перевода этих строк) с момента появления первой версии, но несмотря на это, Joomla! была загружена более 2,5 миллионов раз. На момент написания этих строк было зарегистрировано более 65 000 независимых разработчиков Joomla!, принимающих активное участие в написании расширений, а значит, в развитии CMS. Joomla! была адаптирована для многих стран — Бразилии Италии, Китая, Нидерландов, США, Австралии.
Примечание переводчика
Слово "открытая" означает, что система бесплатно доступна всем желающим, доступен ее исходный код, и систему можно распространять безо всяких ограничений. Идея открытого кода поддерживается сообществом Open Source, название которого так и переводится — "открытый код".
Рис. 1.1. CMS Joomla! сразу после установки
Обзор системы управления контентом
С появлением Word Wide Web. Всемирной паутины, любой желающий мог создать свою, пусть даже самую простую, Web-страничку, но для ее создания нужно было знать язык HTML (HyperText Markup Language). Различными компаниями были созданы редакторы HTML-кода вроде Adobe Dreamweaver и Microsoft FrontPage, упрощающие создание Web-страниц. Некоторые из таких редакторов позволяли управлять всеми этапами создания сайта— от написания HTML-кода до загрузки этого кода на сервер. При этом знание самого кода в большинстве случаев (для создания именно простых страниц) не требовалось— ведь редакторы предлагали визуальные средства создания страниц.
Но, несмотря на все преимущества HTML-редакторов, обслуживание сайта становилось все сложнее и сложнее. Ведь с развитием информационных технологий, выросли и сайты. Поддержание такой простой функции, как карта сайта, требовало от Web-мастеров много усилий. Ведь нужно проследить все ссылки, проверить навигацию между страницами, создать меню, добавить форум— все это требовало постоянного внимания и занимало много времени.
Чтобы решить проблему обновления сайта, а именно— автоматизировать само обновление, крупные информационные компании вроде Newsweek и TIME были вынуждены начать разработку нового типа программного обеспечения— систем управления контентом (CMS). CMS не только автоматизирует управление содержимым сайта, но и позволяет пользователям, не знакомым с различными техническими тонкостями, например, писателям и журналистам, размещать свои материалы в системе непосредственно через интерфейс пользователя. Понятно, что теперь пользователям для размещения материалов на сайте не нужно знать ни HTML, ни вникать в технические подробности самого процесса обновления сайта.
С внедрением CMS, большинство сложностей, связанных с обновлением сайта, исчезает. Та же карта сайта формируется автоматически, причем от пользователя вообще ничего не требуется. К тому же CMS позволяет воплотить дополнительные функции сайта, например, форум, корзину для заказа (если у вас интернет-магазин), галерею изображений — все эти функции реализованы в виде расширений CMS. Все, что нужно, — установить то или иное расширение.
CMS позволяет всем пользователям сконцентрироваться на выполнении именно их задач. Например, для Web-дизайнера сайт— это набор визуальных шаблонов, определяющих представление содержимого сайта пользователю. Дизайнеру нужно изменить всего один шаблон, ему не нужно, как
раньше, изменять дизайн всех страниц сайта. Когда автор публикует материал на сайте, он будет автоматически "одет" в установленный Web-дизайнером шаблон дизайна, и новая страница будет выглядеть так же, как и все остальные страницы сайта.
В начале 1990-х, когда мир WWW еще только зарождался, CMS были доступны только крупным корпорациям. Ведь стоимость разработки и внедрения обходилась в сотни тысяч долларов. Согласитесь, не каждый пользователь может потратить 100—200 тыс. долларов на систему управления своей домашней страничкой Малым организациям такой ценник тоже был не по карману. Кроме того, многие первые CMS были настолько сложны в использовании, что обслуживание сайта требовало пристального внимание со стороны эксперта по CMS Поэтому многие компании отказывались от CMS, даже если могли себе ее позволить.
Что же касается Joomla!, то она не только бесплатная, но и одна из самых простых в использовании CMS. Практический каждый может загрузить, установить и запустить Joomla! на своем сервере. На все про все уйдет не более 20 минут. Поэтому Joomla! доступна не только малым и средним организациям, но и обычным домашним пользователям.
Почему все не переходят на CMS?
Итак, почему же все владельцы сайтов не переходят на Joomla! или другую CMS, если преимущества такого перехода— на лицо? Тому есть несколько причин. Первая причина— это инерция или привычка. Человек привыкает к использованию HTML и не желает ничего менять, даже если переход на CMS сулит все прелести автоматизации управления сайтом Переход от HTML к CMS может занимать годы...
Примечание переводчика
Помню, как создал свой первый сайт. Сайт был размещен на narod.ru и написан на чистом HTML (а больше ничего narod.ru и не поддерживает). Поскольку на сайте было много статей, мне понадобились годы, чтобы перейти на другой хостинг и написать свою CMS.
Вторая причина — это тысячи уже существующих HTML-страниц, которые нужно конвертировать из формата HTML в базу данных CMS. В большинстве случаев это придется делать вручную Для большого сайта такая операция займет довольно много времени, а это означает простой сайта и, возможно, финансовые потери для компании. Конечно, переход на CMS вполне окупит себя, учитывая многократное сокращение времени обслуживания сайта.
Остается только один барьер, препятствующий переходу на CMS — технический. Для работы практически любой современной CMS необходимо наличие на хостинге интерпретатора PHP и сервера баз данных MySQL. Пять лет назад было относительно немного хостинг-провайдеров, предоставляющих эти функции. Сейчас ситуация изменилась к лучшему, и найти хостинг с поддержкой PHP и MySQL не составляет труда.
Преимущества Joomla!
Интересно, что, несмотря на наличие многих других CMS, Joomla! используется не только частными лицами, но и общественными организациями, корпорациями, некоммерческими и другими организациями.
Одна из причин популярности Joomla! — легкость использования. Если у вас есть опыт в разработке сайтов или CMS. вы поймете, почему Joomla! получила такое распространение.
Непринужденность использования Joomla! обусловлена ее внутренним устройством. В дополнение к стандартным встроенным функциям Joomla!, доступно более 200 бесплатных и коммерческих расширений (плагинов), позволяющих построить на базе Joomla! сайт практически любой сложности Расширения Joomla! позволяют за несколько минут создать форум, чат, интернет-магазин, аукцион и т. д.
Расширения Joomla! заслуживают золотую медаль, но оказывается, что это не главное. Главное— простой, интуитивно понятный интерфейс пользователя. Большинство новичков в состоянии самостоятельно установить и настроить Joomla!. А шаблоны оформления, разработанные профессиональными дизайнерами, позволяют в одно мгновение преобразить любой сайт. Давно прошли те дни, когда для того, чтобы сайт более или менее нормально выглядел, нужно было привлекать профессионального дизайнера. Некоторые шаблоны Joomla! выглядят лучше, чем дизайны некоторых сайтов, за разработку которых были выложены миллионы долларов. А все это благодаря присутствию профессиональных дизайнеров, тщательно продумавших каждую деталь того или иного шаблона.
К тому же многие CMS требуют от пользователя некоторой квалификации для настройки и обслуживания сайта. Joomla!, напротив, позволяет производить все операции по обслуживанию сайта через простую и изящную панель управления (рис. 1.2). А поскольку у панели управления Web-интерфейс, то управлять своим сайтом вы можете с любой точки Земного шара — на работе, дома, на отдыхе — лишь бы у вас был доступ к Интернету.
В следующих разделах мы рассмотрим некоторые функции и принцип работы Joomla!.
Рис. 1.2. Панель управления Joomla!
Функции Joomla!
Казалось бы, мощность и простота— не совместимы, в это трудно поверить, особенно, если вы раньше не использовали никакую другую CMS Однако любой Web-мастер сразу же обратит внимание на следующие особенности Joomla!:
полноценное управление сайтом через Web-интерфейс;
Web-интерфейс позволяет управлять основными элементами сайта — страницами, графикой, файлами и другими данными;
функции одобрения контента, позволяющие модерировать материал, публикуемый удаленными авторами (никто не сможет опубпиковать на вашем сайте материал без вашего одобрения);
иерархическое управление группами пользователей;
автоматизированное управление меню сайта:
возможность автоматической публикации и удаления материала по расписанию;
защита пользовательских учетных записей.
Но более внушительно выглядят функции у правления контентом (содержимым сайта) и возможность взаимодействия посетителей и CMS:
встроенные WYSIWYG-редакторы (What You See Is What You Get), позволяющие создавать страницы сайта без знания HTML;
автоматический поиск по сайту;
полная поддержка новостных лент форматов RSS и Atom;
встроенная возможность создания опроса (голосования):
управление рекламными баннерами;
плагины для организации интернет-магазинов, например, корзина, галерея изображений и др.;
многоязычность (полная поддержка русского языка и русских кодировок символов).
Но и это еще не все. В дополнение ко всему вышесказанному нужно отметить следующие особенности Joomla!:
полная открытость исходного кода — вы загружаете исходный код и даже имеете право его изменять;
поддержка операционных систем Linux и Windows (в целях эксперимента можно даже установить Joomla! на домашний компьютер);
поддержка кэширования страниц для повышения производительности сайта.
С помощью плагинов вы можете расширить возможности Joomla!, добавив в нее новые функции. При желании вы можете даже создать собственные расширения и поделиться (тоже при желании) ими с другими пользователями. Несмотря на открытость исходного кода Joomla!, вы вправе создавать и продавать коммерческие расширения для Joomla!.
В следующем разделе мы рассмотрим принцип работы Joomla!.
Как Joomla! работает
Сейчас мы не будем рассматривать технические подробности работы Joomla!: для эффективного использования CMS вам достаточно знать только основы ее работы, а техническая часть пусть останется программистам. В общих чертах все просто: Joomla! должна отыскать запрошенный пользователем контент, отформатировать его в соответствии с шаблоном и отправить его в браузер пользователя. Пользователь увидит контент сайта, оформленный в выбранный администратором сайта шаблон.
На рис. 1.3 показано, как работает обычный Web-сервер без установленной CMS. Сначала браузер отправляет запрос Web-серверу. Web-сервер получает HTML-код из статического HTML-файла (имя файла указывается в запросе браузера, например, http://www.example.com/index.html) и отправляет его браузеру пользователя. Поскольку HTML-файл у нас статический, то пользователь получит его код без всяких изменений, как он сохранен на Web- сервере: ничего больше и ничего меньше.
Теперь посмотрим, что получится, если на Web-сервере установлена система управления контентом сайта (рис. 1.4). На этот раз браузер пытается получить не статический HTML-файл, а PHP-сценарий, но, несмотря на это, адрес страницы почти идентичен предыдущему — http://www.example.com /index.php. Теперь начинается самое интересное. Этот запрос загружает часть Joomla!: ее основной файл. Интерпретатор PHP, установленный на Web- сервере, обеспечивает выполнение PHP-сценариев (PHP— это язык программирования, на котором написана Joomla!). Другими словами, происходит запуск Joomla!, которая сразу после запуска определяет, какая страница запрошена, устанавливает соединение с сервером баз данных MySQL, получает текст страницы, оформляет его в соответствии с шаблоном и отправляет в браузер. Обратите внимание, что CMS, используя текст, полученный из базы данных, и шаблон оформления, формирует HTML-код, который и отправляется в браузер.
Рис 1.4. Принцип работы CMS
Как видите, содержимое страниц сайта хранится не в статических HTML- файлах, а в таблицах базы данных, а HTML-код формируется динамически, т. е. "на лету". Такой подход очень эффективен. Вы только представьте, что у вас есть сто статических HTML-страниц и вам нужно изменить дизайн сайта. Вам придется изменять код каждой страницы! При использовании CMS эта проблема исчезает— вам достаточно изменить шаблон и все ваши страницы (сколько бы их не было) будут выглядеть одинаково.
Отличия версии Joomla! 1.0 от 1.5
Чуть ранее было сказано, что Joomla! — непосредственный родственник Mambo только у Joomla! — открытый код, Mambo является коммерческой CMS. Joomla! версии 1.0 в основном отличалась от Mambo интерфейсом пользователя, а внутренняя структура была идентичной, что подтверждалось полной совместимостью модулей, компонентов и плагинов этих двух CMS. Можно было сказать, что Joomla! и Mambo— одна и та же CMS, просто Joomla! — бесплатная, a Mambo — коммерческая.
Но все изменилось с появлением версии Joomla! 1.5. Если сейчас вы используете версию 1.0, то переход на новую версию будет подобен глотку чистого воздуха! В версии 1.5 упрощено развертывание системы, да и интерфейс администратора стал еще более удобным по сравнению с версией 1.0.
Если же вы разработчик и когда-нибудь писали расширения для Joomla! 1.0, то по сравнению со старой версией, новая — просто революция. Новая версия обладает встроенным редактором PHP, очень сильно напоминающим популярный редактор Dreamweaver. Понятно, что редактор реализован в виде Web-приложения, и это позволяет запускать его из любой точки Земли.
Вот список самых значительных изменений в новой версии:
полностью переработанная панель управления;
более совершенное средство предварительного просмотра шаблонов;
новый менеджер плагинов;
поддержка редактирования CSS-файлов;
полная поддержка новостных лент Atom 1.0 и RSS 2.0;
больше внимание уделено локализации, в частности поддерживается UTF8, RTL, а перевод на другой язык осуществляется с помощью IN1- файлов, привычных пользователям Windows;
поддержка LDAP (Lightweight Directory Access Protocol, облегченный протокол доступа к каталогам);
поддержка XML-RPC;
поддержка Ajax-приложений;
полностью переработанный интерфейс разработчика.
Поскольку многие читатели, возможно, уже использовали предыдущие версии Joomla!. в книге, где есть существенные различия между версиями Joomla!, я добавил соответствующие примечания. Если же вы используете Joomla! в первый раз. можете не обращать на них внимания.
Joomla! — один из 50 лучших проектов Open Source
В 2006 году проходил конкурс лучших проектов с открытым исходным кодом. Joomla! попала в список 50 лучших проектов Open Source. А на момент написания этих строк Joomla! получила награду лучшего проекта Qpen Source для Linux (Best Linux Open Source Project). Кроме этих, самых "громких" наград. были еще и другие, менее известные. И при всем этом Joomla! остается бесплатной. Как видите, за хорошее совсем не обязательно платить!
Резюме
Если до того, как вы начали читать эту главу, вы не понимали всю мощь системы управления сайтом, надеюсь, что после ее прочтения ваше мнение изменилось и вы согласны со мной, что построение сайта вручную — дело неблагодарное и рутинное. Joomla! обладает достаточной гибкостью, необходимой для построения сайта любой сложности— от блога до сайта корпорации. И при этом она остается бесплатной.
Лучший способ познакомиться с Joomla! — установить ее, чем мы и займемся в следующей главе. Мы рассмотрим установку, настройку Joomla! и создание простого сайта на базе этой CMS
ГЛАВА 2
Быстрый старт: построй свой сайт на базе Joomla! за 20 минут
Процесс установки Joomla! довольно сложный, учитывая особенности подсистем безопасности различных операционных систем, и включает в себя три этапа: установку Web-сервера, интерпретатора PHP и сервера баз данных MySQL. Велика вероятность возникновения ошибок-на каждом этапе.
Поэтому в гюве 2 будет много иллюстраций, описывающих каждый шаг процесса установки. Если вы столкнетесь с проблемой, не волнуйтесь. Переведите дыхание и подумайте, что вы сделали не так. Отчасти вам поможет разд. "Решение проблем" гнавы 3, а также посещение форума http:// forum.joomla.org/. Как показывает практика, на этом форуме вы очень быстро получите точный и компетентный ответ.
Все иллюстрации этой главы будут соответствовать Windows-платформе. Вообще Joomla! — кроссплатформенная система, и операционная система особой роли не играет, но развертывание системы на Windows осуществляется проще.
Итак, давайте приступим!
Примечание переводчика
Русскоязычным пользователям можно порекомендовать посетить форум http://joomlaforum.ru: на нем вы можете задать вопрос и получить ответ на русском языке!
Примечание
Существует несколько способов установки Joomla!. В этой книге описывается ручная (не автоматическая) установка — ведь именно так приходится устанавливать эту CMS большинству пользователей. Некоторые хостинг-провайдеры предоставляют специальные сценарии для установки различньх CMS, например, Fantastico (http://netenberg.comfantastico.php). Fantastico помимо всего прочего умеет устанавливать Joomla!, но это частный случай, потому что такие
сценарии не всегда есть, да и установку вручную никто не отменял. Также можно использовать Joomla! Stand Alone Server (http://jsas.joomlasolutions.com) для установки всех необходимых серверов (Web, MySQL, PHP) на ваш компьютер.
Установка Joomla!
Перед установкой Joomla! убедитесь, что хостинг, на который вы планируете установить CMS, соответствует следующим минимальным системным требованиям:
♦ Apache версии 1.13 или выше;
PHP версии 4.2 или выше;
MySQL версии 3.23 или выше.
Практически все Web-узлы соответствуют приведенным требованиям, но перед покупкой хостинга лучше убедиться в этом, чем потом требовать возврата средств и в спешке искать новый хостинг.
Примечание переводчика
Где лучше всего купить хостинг? Не хочется делать рекламу никакому хостинг- провайдеру, поэтому посоветую следующее. Введите в любой поисковик слово "хостинг" — вы найдете столько ссылок, что за день не сумеете все пересмотреть. Далее выберите несколько приемлемых для вас вариантов и зайдите на сайт http://hostobzor.ru/. На этом сайте вы сможете прочитать отзывы пользователей о различных хостинг-провайдерах. Вам останется только выбрать лучшего провайдера и заключить с ним договор на обслуживание.
Примечание
Интерпретатор PHP должен поддерживать сервер баз данных MySQL, XML и zlib. Если PHP не поддерживает хоть что-то из этого списка, Joomla! работать не будет. Получить точную информацию об установленных библиотеках PHP вы можете у своего хостинг-провайдера. Конечно, при установке Joomla! сообщит, что поддерживается, а что нет.
Для работы с Joomla! вам нужен современный браузер. Дело в том, что некоторые браузеры не совсем корректно отображают содержимое панели управления Joomla!. Любая версия Internet Explorer (не ниже версии 5.5) работает отлично. Также корректно отображают Joomlai-сайты все версии Mozilla Firefox и Apple Safari. Убедитесь, что в вашем браузере включены скрипты JavaScript. Посетителям вашего сайта совсем не обязательно включать JavaScript, но многие расширения используют JavaScript для организации взаимодействия с пользователем. Панель управления также требует включения JavaScript, поэтому убедитесь, что вы его включили до начала установки
При установке Joomla! мы будем считать, что пользователь работает под Windows, но устанавливает Joomla! на Web-сервер под управлением Linux. Если ваша конфигурация отличается от нашей, вы можете следовать приведенным далее инструкциям, даже если ваш графический интерфейс пользователя будет отличаться от иллюстраций. После установки Joomla! ее Web- интерфейс будет одинаков на всех платформах.
Загрузка Joomla!
Первым делом нужно загрузить архив с наиболее стабильной версией Joomla!. Когда я пытался загрузить Joomla! впервые, то был сильно смущен огромным списком файлов, доступных для загрузки. Команда разработчиков Joomla! довольно часто выпускает патчи, исправляющие небольшие ошибки или возможные дыры в системе безопасности. Поэтому список файлов довольно большой. Поскольку мы собираемся устанавливать Joomla!, нам нужен полный стабильный релиз, а не набор пачтей.
Зайдите на сайт www.joomla.org и перейдите по ссылке Download (рис. 2.1). Вы увидите список доступных для загрузки файлов.
.'^ Joomla!"
IX ’OUW «У1П VJ\ZOC ттдУгПNUn Mews »<^ «urn twee**»»
• Fiexibie• Simple* Bezant• Customizable• PowerfJ• Fiexibie• Simple* Bezant• Customizable• PowerfJCutting Edge Content Management
• Fiexibie
• Simple
* Bezant
• Customizable
• PowerfJ
• Fiexibie
• Simple
* Bezant
• Customizable
• PowerfJ
Joofriai к ore o^e most p w fiJ Open ource < < al over ths woieX everything ‘rom am^e web te hstal srnde to тЛк . and reiible
Demo Download Details
Рис. 2.1. Нажмите ссылку Download для доступа к файловому архиву Joomla!
Вам нужно скачать файл Joomla_L5.x-Stable-Full_Package.zip (рис. 2.2). Это и есть архив с Joomla!.
Если вы не видите стабильного полного пакета, используйте навигацию. Когда я в первый раз загружал Joomla!, то нашел стабильную версию лишь на восьмой странице.
Обратите внимание, что можно скачать ZIP-архив или архив с расширением tar.gz. Если вы работаете в Windows, нужно загрузить ZIP-архив, а если в Linux — архив tar.gz.
Joomla1515-Joomla_1 5 1-Stable-Full_Package tar bz2311Mb22695
ProductionJStable
5Joomla_1 5.1-Stable-Futl_Package tar gz3 59 Mb32121
Producnon/Stabte
5 -<^Joornla_l 5 1-Stable Fult_P ackage zip^2^>5 2 Mb150166
Product! orVStabte^—1 1— ■—~*^
Joomiai 5 1 updatesJoomiai 5 1 updates5 -joomla_i 6 O_tc_i 51-Stable-86 06 Kb4263
Joomiai 5 1 updates
Joomiai 5 1 updates
Production/Stable Patch_Pacl<age tar bz2
5 -JoomiaJ 5 O_to_t 5 i-Slable-Palch_Package tar gz102 62 Kb5182
Production/Stable
Рис. 2.2. Нужно найти самую последнюю стабильную версию Joomia1
Щелкните на подходящей ссылке и сохраните файл на жесткий диск вашего компьютера.
Распаковка архива Joomia!
После того как вы скачаете архив с CMS, его нужно распаковать в любой каталог на жестком диске и загрузить на Web-сервер. Если у вас Windows ХР. просто дважды щелкните на загруженном ZIP-архиве. В более старых версиях Windows для открытия архива нужно использовать ZIP-архиваторы, например, WinZip или 7-Zip.
На рис. 2.3 изображено содержимое архива с Joomia!. Для распаковки архива просто перетащите файлы в нужный каталог на жестком диске.
Рис. 2.3. Содержимое архива Joomia!Рис. 2.3. Содержимое архива Joomia!
Рис. 2.3. Содержимое архива Joomia!
Рис. 2.3. Содержимое архива Joomia!
Я создал каталог \Joomlal_5install, а затем распаковал в него все файлы и каталога Joomla!. Имя каталога не имеет значения, главное, чтобы вы помнили, куда распаковали архив. Следующий шаг будет заключаться в копировании файлов на Web-сервер.
Загрузка Joomla! на Web-сервер по протоколу FTP
Большинство FTP-клиентов похожи друг на друга, и это не удивительно — ведь все они выполняют одну и ту же функцию. Если вы уже использовали какой-нибудь FTP-клиент и успели к нему привыкнуть, для загрузки Joomla! используйте его. А если же у вас нет предпочитаемого FTP-клиента, я рекомендую программу FileZilla, которую можно скачать по адресу: http://filezilla.sourceforge.net/.
FileZilla— это полноценный, мультиплатформенный (есть версии для Windows, Linux, Mac OS X, Mac OS 9), бесплатный FTP-клиент с открытым кодом. Я буду использовать FileZilla для демонстрации загрузки Joomla! на Web-сервер, но вы с успехом можете сделать это с помощью любого другого FTP-клиента.
Примечание
Кроме программы FileZilla вы также можете скачать программу FileZilla FTP Server. Если вы самостоятельно создаете сервер для вашего сайта, то можете использовать эту программу для организации FTP-сервера, после чего сможете обращаться к вашему компьютеру с помощью любой FTP-программы.
После установки FileZilla запустите ее (или запустите ваш любимый FTP- клиент). Чтобы получить доступ к FTP-серверу, введите параметры доступа (имя хоста, имя пользователя и пароль) в поля быстрого соединения. Можно также нажать кнопку Открыть менеджер хостов (рис. 2.4, крайняя левая кнопка на панели инструментов) и создать новый сайт. Я рекомендую создать сайт, потому что впоследствии, когда вам снова понадобится FTP-доступ, вам не придется опять вводить параметры соединения.
В поле Хост укажите адрес FTP-сервера (будет выглядеть наподобие ftp.example.com). В качестве значения поля Порт нужно указать 21 — в большинстве случаев используется этот порт.
Имя пользователя и пароль нужно указать в одноименных полях. Будьте внимательны при указании пароля: в большинстве случаев хостинг-провайдеры устанавливают различные пароли для FTP-доступа и панели управления хостингом. Убедитесь, что вы вводите правильный пароль!
Рис. 2.4. Программа FileZilla
После ввода параметров соединения нажмите кнопку Быстрое соединение. FileZ'lla отобразит процесс регистрации на FTP-сервере. В правой части окна вы увидите содержимое вашего сайта. В большинстве случаев вы сразу окажетесь в корневом каталоге сервера, и можно будет сразу приступить к копированию файлов. Если ваш сервер автоматически не перешел в корневой каталог, это нужно сделать самостоятельно.
В левой части окна вы увидите список дисков локального компьютера. Перейдите в каталог, в который вы ранее распаковали файлы и каталоги Joomlal. Можно приступить к загрузке Joomlal.
В FileZilla достаточно выделить файлы и каталоги, затем щелкнуть на них правой кнопкой мыши и выбрать команду Загрузить на сервер. Выбранные файлы и каталоги начнут копироваться на сервер, а в правом нижнем углу вы увидите какой объем информации еще нужно скопировать на сервере (рис. 2.5). Когда будут скопированы все файлы и каталоги, счетчик станет равным 0.
Рис. 2.5. В правом нижнем углу FileZilla показывает информацию о процессе загрузки файлов
После загрузки файлов нужно настроить MySQL, который будет использоваться для хранения данных Joomla!. Если MySQL уже настроен, можно приступить сразу к чтению разд. "Использование мастера установки Joomla!" далее в этой гчаве.
Примечание
После загрузки файлов Joomla! на сервер не удаляйте их — они вам еще пригодятся.
Подготовка хостинга Go Daddy для Joomla!
Go Daddy (www.godaddy.com)— очень популярный и недорогой хостинг- провайдер, идеально подходящий для размещения ЗоотЫ-сайтов. Go Daddy рассматривается в этой книге исключительно из-за своей популярности и доступности.
Если у вас другой хостинг-провайдер, иллюстрации будут отличаться, хотя сам процесс в общих чертах будет таким же.
Если вы хотите настроить собственный Web-сервер и запустить Joomla!, обратитесь к следующей главе для получения соответствующих инструкций.
Совет
Некоторые хостинг-провайдеры специализируются только на Joomlal-сайтах, оптимизируя свои серверы для Joomla!, что позволяет повысить производительность сайта. В этом заключается их преимущество по сравнению с Go Daddy, особенно, если у вас будет сайт с большой посещаемостью. Вы можете найти список таких хостинг-провайдеров по адресу: http://forum.joomla.org /index.php/topic,6856 O.html. Проведя небольшое "исследование", вы получите информацию об особенностях каждого Joomlal-хостинга (поддержка, производительность, цена и т. д.).
В этом разделе будет описан процесс установки Joomla! на хостинг Go Daddy. Вы должны знать, что хостинг Go Daddy уже содержит Joomla! в виде VAA-
приложения (Value-Added Application). Установить Joomla! с помощью VAA намного проще, чем вручную, но есть, по крайней мере, две причины устанавливать Joomla! вручную: выбор каталога для установки и контроль версии.
Если вы устанавливаете Joomla! с помощью VAA, то не можете выбрать каталог, в который будет произведена установка. По умолчанию выбирается не корневой каталог, а каталог \joomla. Учитывая этот факт, адрес главной странички вашего сайта будет примерно таким:
http://www.example.com/joomla/index.php
В большинстве случаев такой адрес нас не устроит. Если вы будете устанавливать Joomla! самостоятельно, URL главной страницы будет таким:
http://www.example.com/index.php
Второй недостаток VAA-установки заключается в том, что с помощью VAA вы не можете установить самую свежую версию Joomla!. А ведь самая новая версия может содержать новые функции, важные патчи, исправляющие ошибки и повышающие безопасность вашего сайта. Если вы устанавливаете Joomla! самостоятельно, то можете скачать с wtvw.joomla.org самую последнюю версию.
Определение
операционной системы Go Daddy
Перед установкой Joomla! нужно убедиться, что мы можем запустить ее на сервере Go Daddy. Это означает, что ваш виртуальный сервер должен работать под управлением Linux/PHP. Если ваш сервер работает под управлением Windows/ASP, вы не сможете запустить Joomla!. Не волнуйтесь, если это так — вы всегда сможете перейти на Linux, однако имейте в виду, что после этого вы не сможете запускать ваши ASP-приложения.
Зарегистрируйтесь в панели управления сайтом и откройте ваш список узлов (Managed Host list). На рис. 2.6 в этом списке есть только один мой сайт joomlajumpstart.com. Перейдите по ссылке Open, находящейся напротив имени сайта.
Панель управления отобразит конфигурацию вашей учетной записи. В области Account Summary вы увидите используемую в данный момент операционную систему. Напомню, что для установки Joomla! необходима Linux (рис. 2.7).
Если у вас неподходящая операционная система, вернитесь к списку узлов, включите флажок напротив учетной записи, параметры которой вы хотите изменить. Перейдите по ссылке Switch Operating System (рис. 2.8) для изменения операционной системы на Linux.
Bulk Regiitration!Bulk Regiitration!иьнн гоth 0« Wwitl•jj3 ;;.<миьнн гоth 0« Wwitl•jj3 ;;.<мtOBAWtOBAW2 naw G D PiusHtenou I ;й accuse Seat a# tier2 naw G D PiusHtenou I ;й accuse Seat a# tier
Bulk Regiitration!
Bulk Regiitration!
иьнн гоth 0« Wwitl•jj3 ;;.<м
иьнн гоth 0« Wwitl•jj3 ;;.<м
tOBAW
tOBAW
2 naw G D PiusHtenou I ;й accuse Seat a# tier
2 naw G D PiusHtenou I ;й accuse Seat a# tier
Don tin , HI _ >Ие- * [ В; r S Л
Go Daddy Home My Cert My Account LogoutGo Daddy Home My Cert My Account LogoutHello, Dan Rahtmei W
Go Daddy Home My Cert My Account Logout
Go Daddy Home My Cert My Account Logout
You've missed out on $312,60 savings. Opt i n to oir email
Domain NamesDomain NamesRenewals*Renewals*A3 Pnnt® ReceiptsA3 Pnnt® Receiptsл-Ж Hosting „ Чет—Web _ pl* I Secure _ «У OtherHel&Email* Sites* Certs Г ЫЗ Stuff *л-Ж Hosting „ Чет—Web _ pl* I Secure _ «У OtherHel&Email* Sites* Certs Г ЫЗ Stuff *► CA^A^daE*» C^1* R ЧЕТ Drwx^► CA^A^daE*» C^1* R ЧЕТ Drwx^To apply a Free Hosting credit, dick on the "Use Credit IlnK Free Hosting CredHs: 3 Use CreditTo apply a Free Hosting credit, dick on the "Use Credit IlnK Free Hosting CredHs: 3 Use CreditManage HostingManage HostingРис. 2.6. Перейдите no ссылке Open напротиа имени сайтаРис. 2.6. Перейдите no ссылке Open напротиа имени сайтаManaging Your Hosting #Сбей i ftafrw • f a H. ng A p . в»» ж41 юДвав 1вг ihaManaging Your Hosting #Сбей i ftafrw • f a H. ng A p . в»» ж41 юДвав 1вг ihaOfc •• -Яй the uostiу;<nj erds, Ri4 p. ase su.•■spurt eftOfc •• -Яй the uostiу;<nj erds, Ri4 p. ase su.•■spurt eftРис. 2.7. Используется операционная система, подходящая для устаноаки Joomla1Рис. 2.7. Используется операционная система, подходящая для устаноаки Joomla1
Domain Names
Domain Names
Renewals*
Renewals*
A3 Pnnt
® Receipts
A3 Pnnt
® Receipts
л-Ж Hosting „ Чет—Web _ pl* I Secure _ «У Other
Hel&Email* Sites* Certs Г ЫЗ Stuff *
л-Ж Hosting „ Чет—Web _ pl* I Secure _ «У Other
Hel&Email* Sites* Certs Г ЫЗ Stuff *
► CA^A^daE*» C^1* R ЧЕТ Drwx^
► CA^A^daE*» C^1* R ЧЕТ Drwx^
To apply a Free Hosting credit, dick on the "Use Credit IlnK Free Hosting CredHs: 3 Use Credit
To apply a Free Hosting credit, dick on the "Use Credit IlnK Free Hosting CredHs: 3 Use Credit
Manage Hosting
Manage Hosting
Рис. 2.6. Перейдите no ссылке Open напротиа имени сайта
Рис. 2.6. Перейдите no ссылке Open напротиа имени сайта
Managing Your Hosting #
Сбей i ftafrw • f a H. ng A p . в»» ж41 юДвав 1вг iha
Managing Your Hosting #
Сбей i ftafrw • f a H. ng A p . в»» ж41 юДвав 1вг iha
Ofc •• -Яй the uosti
у;<nj erds, Ri
4 p. ase su
.•■spurt eft
Ofc •• -Яй the uosti
у;<nj erds, Ri
4 p. ase su
.•■spurt eft
Рис. 2.7. Используется операционная система, подходящая для устаноаки Joomla1
Рис. 2.7. Используется операционная система, подходящая для устаноаки Joomla1
2 Зак 468
Рис. 2.8. Перейдите по ссылке Switch Operating System для изменения ОС
Создание базы данных MySQL
Перед запуском инсталлятора Joomla! нужно создать базу данных MySQL, которую будет использовать Joomla! для сохранения контента сайта. Создание базы данных обычно требует специальных прав доступа, поэтому многие хостинг-провайдеры не разрешают приложениям создавать базу данных автоматически, и пользователю приходится формировать ее вручную. Если вы создаете базу данных вручную, вам нужно разрешить Joomla! создавать таблицы и вставлять в них данные.
Примечание
Если у вас есть права администратора на вашем MySQL-сервере, вы можете разрешить Joomla! создать базу данных для вас Поскольку данная процедура невозможна у большинства хостинг-провайдеров, в этой главе мы будем создавать базу данных вручную, а об автоматическом создании базы данных поговорим в главе 3.
Вернитесь в окно панели управления, внизу окна будет область Databases, а в ней — кнопка MySQL (рис. 2.9). Нажмите эту кнопку, чтобы открыть страницу управления базами данных MySQL.
Страница управления MySQL отображает список доступных в данный момент баз данных. На моем сайте пока нет никаких баз данных. Сразу после списка баз данных вы обнаружите кнопку CREATE NEW DATABASE, нажмите ее (рис. 2.10).
Рис. 2.9. Нажмите кнопку MySQL для отображения страницы управления MySQLРис. 2.9. Нажмите кнопку MySQL для отображения страницы управления MySQL
Рис. 2.9. Нажмите кнопку MySQL для отображения страницы управления MySQL
Рис. 2.9. Нажмите кнопку MySQL для отображения страницы управления MySQL
При установке Joomla! нужно будет указать имя базы данных, которую вы сейчас создадите. В поле Description введите JoonilaDBMain Тот же самый текст введите в поле User Name (рис. 2.11).
Home > Databases MySQL
й OH^RSMESй OH^RSMES■ WB STRTrejKS■ WB STRTrejKSd MySQL Database Information
й OH^RSMES
й OH^RSMES
■ WB STRTrejKS
■ WB STRTrejKS
MySQL is з database server that you can use hi conjunction with PHP ar * scripting languages to create dynamic Web sites
To set up a new MySQL database on your account click Create New D.To set up a new MySQL database on your account click Create New D.Help CenterHelp CenterF*tF*tMySQL Databases(Oof 10>MySQL Databases(Oof 10>Database NameDatabase NameDescriptionDescriptionStatus ManagerStatus Manager
To set up a new MySQL database on your account click Create New D.
To set up a new MySQL database on your account click Create New D.
Help Center
Help Center
F*t
F*t
MySQL Databases(Oof 10>
MySQL Databases(Oof 10>
Database Name
Database Name
Description
Description
Status Manager
Status Manager
СВЕЙТЕ NEW 0ЙТВ8Й8ЕСВЕЙТЕ NEW 0ЙТВ8Й8ЕNa MySQL databases exist for this hosting account
СВЕЙТЕ NEW 0ЙТВ8Й8Е
СВЕЙТЕ NEW 0ЙТВ8Й8Е
I
Рис. 2.10. Для создания новой базы данных нажмите кнопку Create New Database
Возможно, вас смущает, что имя пользователя совпадает с именем создаваемой базы данных. Ничего необычного в этом нет, напротив, одинаковые име-
на для пользователя и базы данных существенно упрощают администрирование сайта.
Use the description field to assign a reference name to the database
MySQL Daub^x Informition
Description|joomlaDBMain
MySQL DauiMse Connection Infonrurtion
Confirm Password •••• сочини* спискеConfirm Password •••• сочини* спискеUser NamepCOnlaUB Main
Confirm Password •••• сочини* списке
Confirm Password •••• сочини* списке
Рис. 2.11. Имя пользователя и базы данных могут совпадать
Обратите внимание, что имя пользователя не должно превышать 16 символов и быть уникальным в пределах MySQL-сервера. На хостинге Go Daddy множество пользователей взаимодействуют с одним и тем же MySQL-сервером, поэтому имя базы данных тоже должно быть уникальным в пределах сервера— оно не должно совпадать с именем базы данных, созданной другим пользователем.
После ввода имен базы данных и пользователя, введите пароль и его подтверждение, затем нажмите кнопку CONTINUE.
Далее вас попросят проверить введенную информацию. Для продолжения нажмите кнопку Create Database. После создания базы данных вы вернетесь на страницу управления MySQL. Вы увидите только что созданную базу данных (рис. 2.12), в качестве статуса будет указано Pending Setup— это означает, что сервер Go Daddy выполняет служебные операции с этой базой данных.
Обычно серверу нужно примерно 15 минут, чтобы "привести в чувства" созданную базу данных, но в загруженные дни этот процесс может занять несколько часов. Обновите страницу, чтобы увидеть текущий статус базы данных. Как только настройка будет завершена, статус базы данных изменится на Setup (рис. 2.13) и станет доступной кнопка Open Manager, вызывающая приложение phpMyAdmin.
На этом базовая настройка Go Daddy завершена. Оставшаяся часть установки выполняется с помощью мастера установки Joomla!.
Home Databases MySQLHome Databases MySQLП mi»fnl iП mi»fnl iumer Feedbackumer FeedbackDatabase NameDatabase Name’uvnidbc lAdrt’uvnidbc lAdrt• HOME• SETTHGS• CONTENT• DATABASES• HOME• SETTHGS• CONTENT• DATABASESJ MySQL Database frifanruttfonJ MySQL Database frifanruttfonМ-~^ - a data!* e server u ' vdcanu* scr ptrig tangueg s to create - 'Dm WebМ-~^ - a data!* e server u ' vdcanu* scr ptrig tangueg s to create - 'Dm Web। with PhP ai d other। with PhP ai d otherTo set up a new M SQL database or Dur account, c kk Create New DatabaseTo set up a new M SQL database or Dur account, c kk Create New DatabaseHelp CenterHelp CenterMySQL Databases(2 of 10)MySQL Databases(2 of 10)DescriptionJoumlaDS^MainDescriptionJoumlaDS^MainStatus Manager Action*Pcndng ^2X2=23 ” . X SetupStatus Manager Action*Pcndng ^2X2=23 ” . X SetupСКЕЙТЕ HEW DM ABASEСКЕЙТЕ HEW DM ABASE
Home Databases MySQL
Home Databases MySQL
П mi»fnl i
П mi»fnl i
umer Feedback
umer Feedback
Database Name
Database Name
’uvnidbc lAdrt
’uvnidbc lAdrt
• HOME
• SETTHGS
• CONTENT
• DATABASES
• HOME
• SETTHGS
• CONTENT
• DATABASES
J MySQL Database frifanruttfon
J MySQL Database frifanruttfon
М-~^ - a data!* e server u ' vdcanu* scr ptrig tangueg s to create - 'Dm Web
М-~^ - a data!* e server u ' vdcanu* scr ptrig tangueg s to create - 'Dm Web
। with PhP ai d other
। with PhP ai d other
To set up a new M SQL database or Dur account, c kk Create New Database
To set up a new M SQL database or Dur account, c kk Create New Database
Help Center
Help Center
MySQL Databases(2 of 10)
MySQL Databases(2 of 10)
Description
JoumlaDS^Main
Description
JoumlaDS^Main
Status Manager Action*
Pcndng ^2X2=23 ” . X Setup
Status Manager Action*
Pcndng ^2X2=23 ” . X Setup
СКЕЙТЕ HEW DM ABASE
СКЕЙТЕ HEW DM ABASE
L^enUaeL^enUae* Hosting Manager
L^enUae
L^enUae
Рис. 212 Статус Pending Setup означает, что сервер настраивает базу данных
Hosting ManagerHosting Manager<W<W*♦ pnl 1йпн*♦ pnl 1йпн
Hosting Manager
Hosting Manager
<W
<W
*♦ pnl 1йпн
*♦ pnl 1йпн
Home Databases MySQLHome Databases MySQLaaМ’М’Help CenlerHelp Cenler■ HOME■ SETTMGS■ CUHTENT* database.■ HOME■ SETTMGS■ CUHTENT* database.^MySOLDatabate Information^MySOLDatabate InformationdaiaLdaiaLrent jeani nc * ur t n wthPhPoMoth"* < l < W«rent jeani nc * ur t n wthPhPoMoth"* < l < W«То set up a new Mv* _L database ^ у jU account click Create New DatabaseТо set up a new Mv* _L database ^ у jU account click Create New Database
Home Databases MySQL
Home Databases MySQL
a
a
М’
М’
Help Cenler
Help Cenler
■ HOME
■ SETTMGS
■ CUHTENT
* database.
■ HOME
■ SETTMGS
■ CUHTENT
* database.
^MySOLDatabate Information
^MySOLDatabate Information
daiaL
daiaL
rent jeani nc * ur t n wthPhPoMoth"* < l < W«
rent jeani nc * ur t n wthPhPoMoth"* < l < W«
То set up a new Mv* _L database ^ у jU account click Create New Database
То set up a new Mv* _L database ^ у jU account click Create New Database
Cu«l omer ГевштскCu«l omer ГевштскDatabase NameDatabase NameMySQL Databases(1 of 10)MySQL Databases(1 of 10)DescriptionJoomlaUb_MdinDescriptionJoomlaUb_MdinStilus Manager ActionsSetup K23MEB23ai w/XStilus Manager ActionsSetup K23MEB23ai w/XCREATE NEW DATABASECREATE NEW DATABASE’.I’.I
Cu«l omer Гевштск
Cu«l omer Гевштск
Database Name
Database Name
MySQL Databases(1 of 10)
MySQL Databases(1 of 10)
Description
JoomlaUb_Mdin
Description
JoomlaUb_Mdin
Stilus Manager Actions
Setup K23MEB23ai w/X
Stilus Manager Actions
Setup K23MEB23ai w/X
CREATE NEW DATABASE
CREATE NEW DATABASE
’.I
’.I
Рис. 2.13. Когда настройка базы данных будет завершена, статус изменится на Setup
Использование мастера установки Joomla!
Вы уже загрузили Joomla! на сервер и создали базы данных MySQL? Тогда откройте браузер и введите адрес вашего сайта, например, http:// tvTvw.example.com. При первом запуске Joomla! вы увидите мастер установки. который попросит вас первым делом выбрать язык сайта (рис. 2.14).
joomta. Установк-i
ШагиЖннй языкаНачаЩ ная проверкаШагиЖннй языкаНачаЩ ная проверкаВыберите языкВыберите я«ыкВыберите язык установкиВыберите языкВыберите я«ыкВыберите язык установкиЛ тензияБаза данныхЛ тензияБаза данныхконфигурация FTPКонф» гурация7:3аверш ниеконфигурация FTPКонф» гурация7:3аверш ниеeu-ES - Basque (Euskara eslandarra) fa-IR - Persian^.^)fi-FI - Finnish (Suomi) fr-FR - French (Fr) he-IL- Hebrew(IL) hi-lN - Devanagan/Hindi (India) hr-HR - Croatian (Hr) hu-HU - Hunganan (Magyar) it-lT - Italian (Italy) ja-JP - Japanese(JP)lo-LA - Lao (Та To ТэТэ Tola Ta)It-LT - LithuanianIv-LV - Latviannb-NO - Norsk bokmSl (Norway) nl-NL - Nederlands (NL-BE) pl-PL - Polish (Poland)pt-BR - PortuguGs (Brasil) pt-PT - Portugues(pl-PT) ro-RD - Romand (Romania)eu-ES - Basque (Euskara eslandarra) fa-IR - Persian^.^)fi-FI - Finnish (Suomi) fr-FR - French (Fr) he-IL- Hebrew(IL) hi-lN - Devanagan/Hindi (India) hr-HR - Croatian (Hr) hu-HU - Hunganan (Magyar) it-lT - Italian (Italy) ja-JP - Japanese(JP)lo-LA - Lao (Та To ТэТэ Tola Ta)It-LT - LithuanianIv-LV - Latviannb-NO - Norsk bokmSl (Norway) nl-NL - Nederlands (NL-BE) pl-PL - Polish (Poland)pt-BR - PortuguGs (Brasil) pt-PT - Portugues(pl-PT) ro-RD - Romand (Romania)kPU - P-. t wCIStkPU - P-. t wCISt
Шаги
Жннй языка
НачаЩ ная проверка
Шаги
Жннй языка
НачаЩ ная проверка
Выберите язык
Выберите я«ык
Выберите язык установки
Выберите язык
Выберите я«ык
Выберите язык установки
Л тензия
База данных
Л тензия
База данных
конфигурация FTP
Конф» гурация
7:3аверш ние
конфигурация FTP
Конф» гурация
7:3аверш ние
eu-ES - Basque (Euskara eslandarra) fa-IR - Persian^.^)
fi-FI - Finnish (Suomi) fr-FR - French (Fr) he-IL- Hebrew(IL) hi-lN - Devanagan/Hindi (India) hr-HR - Croatian (Hr) hu-HU - Hunganan (Magyar) it-lT - Italian (Italy) ja-JP - Japanese(JP)
lo-LA - Lao (Та To ТэТэ Tola Ta)
It-LT - Lithuanian
Iv-LV - Latvian
nb-NO - Norsk bokmSl (Norway) nl-NL - Nederlands (NL-BE) pl-PL - Polish (Poland)
pt-BR - PortuguGs (Brasil) pt-PT - Portugues(pl-PT) ro-RD - Romand (Romania)
eu-ES - Basque (Euskara eslandarra) fa-IR - Persian^.^)
fi-FI - Finnish (Suomi) fr-FR - French (Fr) he-IL- Hebrew(IL) hi-lN - Devanagan/Hindi (India) hr-HR - Croatian (Hr) hu-HU - Hunganan (Magyar) it-lT - Italian (Italy) ja-JP - Japanese(JP)
lo-LA - Lao (Та To ТэТэ Tola Ta)
It-LT - Lithuanian
Iv-LV - Latvian
nb-NO - Norsk bokmSl (Norway) nl-NL - Nederlands (NL-BE) pl-PL - Polish (Poland)
pt-BR - PortuguGs (Brasil) pt-PT - Portugues(pl-PT) ro-RD - Romand (Romania)
kPU - P-. t wCISt
kPU - P-. t wCISt
Рис. 2.14 Мастер устаноаки Joomla! позволяет вам выбрать язык сайта
Примечание
Если Joomla! не загрузилась, сложно сказать, что произошло. Возможно, ваш сервер не поддерживает PHP или Joomla! была скопирована в другой каталог, отличный от введенного URL. В разд. "Решение проблем' главы 3 мы поговорим о различных проблемах при установке Joomla!.
Все пользовательские интерфейсы (интерфейс сайта, панели управления и программы установки) будут представлены в выбранном вами языке. У Joomla! отличная языковая поддержка. На момент написания этих строк Joomla! поддерживала следующие языки: английский, арабский, болгарский, китайский, чешский, хорватский, датский, голландский, эстонский, финский, французский, немецкий, греческий, японский, литовский, польский, шведский, турецкий, итальянский, корейский,испанский, русский и др.
Выберите ваш язык и нажмите кнопку Далее в правом верхнем углу экрана.
Примечание
После установки Joomla! вы можете добавить дополнительные языки для пользовательского интерфейса путем добавления соответствующих языковых пакетов. Joomla! позволяет изменять язык интерфейса даже обычному пользователю.
Предынсталляционная проверка
Второй шаг мастера установки — это предынсталляционная проверка системы. На рис. 2.15 показано, что на сервере установлены актуальные версии PHP и MySQL, а конфигурационный файл configuration.php доступен для записи.
Рис. 2.15. Предынсталляционная проверка сообщит о возможных проблемах, которые могут возникнуть при установке Joomla!
Примечание переводчика
Автор книги совершенно забыл о таком понятии, как права доступа в Linux/UNIX, или же его сервер настроен с несоблюдением основных правил безопасности. Ведь обычно на этапе проверки мастер установки сообщает, что файл configuration.php недоступен для записи, поэтому установку продолжить нельзя. Для продолжения установки Joomla! вам нужно установить права доступа 666 для файла configuration.php. Но самое удивительное в том, что этот файл нельзя создать, поскольку права доступа к каталогу, в котором он должен находиться, не разрешают сделать этого, поэтому самого файла configuration.php вы не найдете. Нужно установить права доступа 777 для каталога, в котором установлена Joomla!. В моем случае — это каталог joomla, поэтому нужно передать FTP-серверу команду chmod 777 jomla. Если вы используете FileZilla, то передать команду серверу можно с помощью команды меню Сервер | Ввести команду.
Но и это еще не все. Нужно установить права доступа 777 к следующим каталогам:
administrator/backups/;
administrator/components/;
administrator/cache/;
administrator/modules/;
administrator/templates/;
cache/;
components/;
images/;
images/banners/;
images/stories/;
language/;
plugins/;
plugins/content/;
plugins/editors/;
plugins/editors-xtd/;
plugins/search/;
plugins/system/;
media/;
modules/;
templates/;
tmp/.
Когда установите необходимые права доступа, нажмите кнопку Повторить проверку (правый верхний угол окна мастера установки).
Более подробно о правах доступа в Linux/UNIX вы можете прочитать в книге Колисниченко Д. Н. Серверное применение Linux. — СПб.: БХВ-Петербург, 2008, а дополнительные сведения об установке Joomla! вы найдете в другой книге Колисниченко Д. Н. Движок для вашего сайта. CMS Joomla!, Slaed, РНР- Nuke. — СПб.: БХВ-Петербург, 2008.
Если настройки вашего сервера не соответствуют требованиям Joomla!, вам нужно проконсультироваться с вашим хостинг-провайдером: без него проблему вам не решить. Если хостинг-провайдер не может вам помочь, вам нужно найти другого провайдера, серверы которого позволяют запускать Joomla!.
В области Рекомендуемые установки отображаются опции, весьма желательные, но не обязательные. Среди этих опций вы найдете опции интерпретатора PHP, например, Safe Mode, Register Globals, Magic Quotes Runtime и др. Вы не можете изменить эти опции — это под силу только администратору сервера.
Если все в порядке, нажмите кнопку Далее в правом верхнем углу экрана.
GNU General Public License
Следующий шаг (рис. 2.16)— вы должны прочитать и принять лицензию GPL. Я настоятельно ее рекомендую прочитать, чтобы ознакомиться со всеми правами и ограничениями распространяемого по этой лицензии программного обеспечения.
omlo! Установкаomlo! Установка
omlo! Установка
omlo! Установка
ШагиШагиI: Выбор языкаI: Выбор языкаЛицензия GNU GPL:Лицензия GNU GPL:2: Н-тыльнтя проверка2: Н-тыльнтя проверкаTable of ContentsTable of Contents
Шаги
Шаги
I: Выбор языка
I: Выбор языка
Лицензия GNU GPL:
Лицензия GNU GPL:
2: Н-тыльнтя проверка
2: Н-тыльнтя проверка
Table of Contents
Table of Contents
Лицензия
3: Лицензия3: Лицензия4: База данных4: База данных
3: Лицензия
3: Лицензия
4: База данных
4: База данных
GNU GENEkAL PUBLIC LICENSE
hwrbh
. TERMS AND CWDITIONS FOR C0PYIN6epiSTP8UTI0N AMD MODIFiCAT №1
Howto Apply These Terms to > out New Programs
5: Конфигурация FTP
GNU GENITAL PUBLIC LICENSE
6: Конфигурация
Version 2, June 1891
7: Завершение7: ЗавершениеCopyright (C) 1909, 1991 Free Software Foundation, Inc.
7: Завершение
7: Завершение
59 Tenple Place - Suite 330, Boston, MA 02111-1307, USA
PreamblePreambleEveryone is permitted to copy and distribute verbatim copies of this license docueent, but changing ic is not allowed.
Preamble
Preamble
The ficenses ror most software are designed to take away your freedom to sha e and change it By contri and change free software-io make sure the software s free for ail its users This General Public License program whose art hots commit to using it (Some other Free Software Foundation software is covered b^ programs, too
V*ien we speak of free software, we are referring |o freedom, not price Our General Public Licenses are software (and charge for this service if you wish), that you receive sou ce code or can get R if you wart that you know you can do these things
То protect your rights, we need to make restrictions that forbid anyone Io deny you these rights or to ask you if you distribute cofites of the software, or if you modify it
Рис. 2.16. Вы должны принять лицензию GPL
Наиболее важными являются следующие условия этой лицензии:
вы можете использовать программу по любому назначению;
вы имеете право получить ее исходный код и изменить его;
вы можете распространять программу и ее исходный код;
вы можете распространять модифицированные версии программы;
ваша версия программы должна тоже распространяться по лицензии GPL (вы не можете продавать программу, основанную на исходных кодах GPL-программы).
Если вы согласны с этими условиями, тогда нажмите кнопку Далее, чтобы перейти к настройке базы данных. Параметры базы данных зависят только от вашего хостинг-провайдера, поэтому приведенные на иллюстрациях значения у вас работать не будут.
Microsoft и GNU GPL
Не секрет, что лицензия GNU GPL не нравится Microsoft. Microsoft больше всего раздражает тот факт, что измененное программное обеспечение тоже должно распространяться по лицензии GPL, т. е. свободно и бесплатно Представители Microsoft неоднократно выступали против лицензии GPL.
Стратегией Microsoft всегда была монополия на рынке программного обеспечения. А сообщество OpenSource с его открытой лицензией GPL — это как пилюля яда для Microsoft Понятно, почему представителям Microsoft не нравится GPL.
Конфигурация базы данных MySQL
Страница конфигурации базы данных MySQL изображена на рис. 2.17. Раскрывающийся список Тип базы данных позволяет выбрать используемую базу данных, обычно это mysql, но скоро Joomla! будет поддерживать Oracle и Microsoft SQL Server.
Рис 2.17. Конфигурация MySQL
Если вы запускаете Joomla! на собственном сервере, в качестве названия хоста нужно указать localhost. Это означает, что сервер баз данных и Web- сервер запущены на одном и том же компьютере.
Но у некоторых хостинг-провайдеров серверы MySQL запускаются отдельно от Web-серверов (на разных компьютерах). Например, для Go Daddy нужно указать адрес сервера MySQL, на котором хранится ваша база данных. Имя
сервера вы можете узнать в панели управления Go Daddy, зайдите в нее и щелкните по кнопке Connection Settings (рис. 2.18).
Domain N-mt
Home ^ Databases > MySQLHome ^ Databases > MySQL□□■ OA ABASES■ OA ABASESDatabase NameJooniaDBJS^iDatabase NameJooniaDBJS^iWIPRRWTEWIPRRWTEHelp Ceiifci■ейг*Help Ceiifci■ейг*d MySQL Database MormatisnMySQL « a database server that you can use in con unceon ЫЬ PHP and other scnptng languages to create dynamic Web sitesd MySQL Database MormatisnMySQL « a database server that you can use in con unceon ЫЬ PHP and other scnptng languages to create dynamic Web sitesI с set up a new MySUL daiebase on your account chck Create New DatabaseI с set up a new MySUL daiebase on your account chck Create New DatabaseMySQL Databases(2 of 10}MySQL Databases(2 of 10}DescriptionJbombDBJ^arnDescriptionJbombDBJ^arnStatus Manager Actions setup еееп ЧУ кStatus Manager Actions setup еееп ЧУ кCREATE ME* ОАТЙ8ЯВЕCREATE ME* ОАТЙ8ЯВЕ
Home ^ Databases > MySQL
Home ^ Databases > MySQL
□
□
■ OA ABASES
■ OA ABASES
Database Name
JooniaDBJS^i
Database Name
JooniaDBJS^i
WIPRRWTE
WIPRRWTE
Help Ceiifci
■ейг*
Help Ceiifci
■ейг*
d MySQL Database Mormatisn
MySQL « a database server that you can use in con unceon ЫЬ PHP and other scnptng languages to create dynamic Web sites
d MySQL Database Mormatisn
MySQL « a database server that you can use in con unceon ЫЬ PHP and other scnptng languages to create dynamic Web sites
I с set up a new MySUL daiebase on your account chck Create New Database
I с set up a new MySUL daiebase on your account chck Create New Database
MySQL Databases(2 of 10}
MySQL Databases(2 of 10}
Description
JbombDBJ^arn
Description
JbombDBJ^arn
Status Manager Actions setup еееп ЧУ к
Status Manager Actions setup еееп ЧУ к
CREATE ME* ОАТЙ8ЯВЕ
CREATE ME* ОАТЙ8ЯВЕ
Рис. 2.18. Нажмите кнопку Connection Settings для получения настроек MySQL
Рис. 2.19. Параметры доступа к MySQLРис. 2.19. Параметры доступа к MySQL
Рис. 2.19. Параметры доступа к MySQL
Рис. 2.19. Параметры доступа к MySQL
После этого появится всплывающее окно, отображающее важную информацию для установки MySQL-соединения. На рис. 2.19 показаны имя пользова-
теля, имя базы данных и имя сервера MySQL. Если окно с мастером установки J oom 1а! все еще открыто, просто скопируйте полученную информацию в окно мастера установки.
Совет
После нажатия кнопки Get Permissions Joomla! попытается подключиться к вашему серверу MySQL. Вполне возможно, что вы увидите сообщение об ошибке (рис. 2.20), например, "Cannot connect to MySQL" ("Невозможно подключиться к MySQL"). Решение проблем с MySQL-соединением описано в следующей главе
Рис. 2.20. Получить полномочия не удалось
Теперь введите имя пользователя и пароль. Если у вас есть полные права администратора, вы можете нажать кнопку Get Privileges (Получить полномо-
Примечание переводчика
В последней на момент написания этих строк версии Joomla! кнопки Get Privileges не было, поэтому вы не найдете ее на других иллюстрациях. Очевидно, эта функция работала некорректно, поэтому от нее решили избавиться.
После нажатия кнопки Get Privileges вы также увидите некоторые дополнительные параметры MySQL, например, кодировку по умолчанию. Обычно эти параметры не нужно изменять.
В качестве значения поля Имя базы данных нам нужно ввести имя созданной нами ранее базы данных — JoomlaDB Main.
Почти все готово для создания таблиц Joomla!. Но не спешите нажимать кнопку Далее. Нажмите кнопку Расширенные настройки Вы увидите дополнительные опции, позволяющие удалить уже существующие таблицы (если Joomla! была ранее кем-то установлена) или создать их резервную копию, а также выбрать префикс для таблиц Joomla!. Как показано на рис. 2.22, была выбрана опция Создавать резервную копию старых таблиц, чтобы сохранить имеющиеся в них данные.
Основные установки
Эго Обычно Irpysof.Это обычно 3L\a^.Эго Обычно Irpysof.Это обычно 3L\a^.Имя пользователя dkwsorgu_denПарольИмя пользователя dkwsorgu_denПарольИмя базы данных dkwsorgu_shopИмя базы данных dkwsorgu_shopТип базы данных mysql Название хоста localhost
Эго Обычно Irpysof.
Это обычно 3L\a^.
Эго Обычно Irpysof.
Это обычно 3L\a^.
Имя пользователя dkwsorgu_den
Пароль
Имя пользователя dkwsorgu_den
Пароль
Имя базы данных dkwsorgu_shop
Имя базы данных dkwsorgu_shop
Бредите wr^fibs нагеля БД выданное *о -ером, to локальной сервера обычна игголь -уется учетная запись 'root без пароля
Для безопасное та сайта рекоменд wear» использова ть галс >ь для vys/ account
Ьекот-зрь» тортырафеыают устанавливать тоныр огражченное кол-во баз данных. Использу^е префиксе тем случае, когда необходимо различать таблицыразных сайтов построенных на Эосгг?а.
Р<кш«|^нные установкиУдалить существующие таблицыР<кш«|^нные установкиУдалить существующие таблицы
Р<кш«|^нные установки
Удалить существующие таблицы
Р<кш«|^нные установки
Удалить существующие таблицы
Префикс таблицJOS_Префикс таблицJOS_Создавать резервную копию старых Любой существующий Озкал таблиц о т предыдущем таблицустановки будет з иснен
Префикс таблиц
JOS_
Префикс таблиц
JOS_
Не используйте OftiJ. поскольку он применяется три резервом ко, wosaretii таблиц
Рис. 2.22. Расширенные установки
Примечание переводчика
Используя манипуляции с префиксом таблиц, вы можете защитить ваш сайт от атак вида "SQL-инъекция" или же установить несколько копий Joomla! в одну базу данных
Начнем с атак. Атакующий подразумевает, что используется префикс jos_ (по умолчанию) и будет использовать его в своих запросах. Если же мы изменим имя префикса (его будем знать только мы), то все его запросы не будут выполнены, следовательно, взломать сайт не получится.
Если у вас всего одна база данных (некоторые хостинг-провайдеры не разрешают создавать более одной БД), тогда вы можете установить две и более ко-
пии Joomla! в одну базу данных. Но чтобы данные таблиц не перемешались, установите разные префиксы таблиц для разных копий Joomla!, например, jos1_— для первой и jos2_— для второй.
Конфигурация FTP
Страница конфигурации FTP (File Transfer Protocol) может появиться (рис. 2.23), а может и не появиться — это зависит от настроек вашего хостинг-провайдера. Если вы установите параметры FTP. то Joomla! сможет автоматизировать операции, связанные с файловой системой сервера, например, автоматическую загрузку и установку шаблона. Сейчас можете не изменять параметры FTP— вы всегда сможете это сделать с помощью панели управления Joomla!.
ШагиКонфигурация FTPMe ад Д4ле»ШагиКонфигурация FTPMe ад Д4ле»1: Выбор язьея>: Начальная прожарка3: Лицензия4 ■ Каза дтиных«гшфкмм шяН6: КонфигурацияГ:Завершение1: Выбор язьея>: Начальная прожарка3: Лицензия4 ■ Каза дтиных«гшфкмм шяН6: КонфигурацияГ:ЗавершениеКонфигурация FTP*Конфигурация FTP*Прмме'миие F ^вь yTTeH-wHeoereMo WfirfwB iKW-StitПрмме'миие F ^вь yTTeH-wHeoereMo WfirfwB iKW-Stitмоень» raw#mВкточить FTP-клиентFTP польюветегьFTP гиюольПуть к корню FTPАвтол — к пути FTP Проа- рить установки FTPмоень» raw#mВкточить FTP-клиентFTP польюветегьFTP гиюольПуть к корню FTPАвтол — к пути FTP Проа- рить установки FTPИ.Ш»' Ы*У KSOtRHIИ.Ш»' Ы*У KSOtRHI
ШагиКонфигурация FTPMe ад Д4ле»
ШагиКонфигурация FTPMe ад Д4ле»
1: Выбор язьея
>: Начальная прожарка
3: Лицензия
4 ■ Каза дтиных
«гшфкмм шяН
6: Конфигурация
Г:Завершение
1: Выбор язьея
>: Начальная прожарка
3: Лицензия
4 ■ Каза дтиных
«гшфкмм шяН
6: Конфигурация
Г:Завершение
Конфигурация FTP*
Конфигурация FTP*
Прмме'миие F ^вь yTTeH-wHeoereMo WfirfwB iKW-Stit
Прмме'миие F ^вь yTTeH-wHeoereMo WfirfwB iKW-Stit
моень» raw#m
Вкточить FTP-клиент
FTP польюветегь
FTP гиюоль
Путь к корню FTP
Автол — к пути FTP Проа- рить установки FTP
моень» raw#m
Вкточить FTP-клиент
FTP польюветегь
FTP гиюоль
Путь к корню FTP
Автол — к пути FTP Проа- рить установки FTP
И.Ш»' Ы*У KSOtRHI
И.Ш»' Ы*У KSOtRHI
«*rf • Распространяется по «чемзим GNU/GPI
Рис. 2.23. Конфигурация FTP
Основная конфигурация
После очередного нажатия кнопки Далее вы перейдете к странице Главная конфигурация (рис. 2.24). Здесь вы можете указать названия вашего сайта адрес электронной почты администратора и его пароль. Joomla! автоматически сгенерирует для вас пароль. Если он вас не устраивает, вы можете ввести свой пароль в поля Пароль администратора и Подтверждение пароля.
Вы можете указать свой основной электронный адрес, но учтите, что он будет доступен каждому желающему, и этим непременно воспользуются спам-
меры. Спаммеры запускают программы, сканирующие Web-узлы на предмет адресов электронной почты, и вы автоматически попадете в их список рассылки.
Вы можете установить демо-данные, которые помогут вам познакомиться с Joomla! поближе. Если вы до этого никогда не работали с Joomla!, настоятельно рекомендуется нажать кнопку Установить демо-данные (рис. 2.25).
1Ь».\д Далее1Ь».\д ДалееГлавная конфигурация
1Ь».\д Далее
1Ь».\д Далее
Название сапта:
Введите название вашего сбита.
Название сайта Joomla JurnpStart
E-mail и пароль администратора.
Введите е тя! адрес. Это будет e-mai адрес супер администратора сайта. Ниже вы видите пароль, г торыи был сгенер ■ ромн автоматически и предлагается вам как пароль по умолчанию Одна о, вы можете ввести и ■двои вариант по желанию.Введите е тя! адрес. Это будет e-mai адрес супер администратора сайта. Ниже вы видите пароль, г торыи был сгенер ■ ромн автоматически и предлагается вам как пароль по умолчанию Одна о, вы можете ввести и ■двои вариант по желанию.ВашЕ-таЙВашЕ-таЙdhsilabs@rnail rudhsilabs@rnail ruПароль администратораПодтверждение пароляПароль администратораПодтверждение пароля
Введите е тя! адрес. Это будет e-mai адрес супер администратора сайта. Ниже вы видите пароль, г торыи был сгенер ■ ромн автоматически и предлагается вам как пароль по умолчанию Одна о, вы можете ввести и ■двои вариант по желанию.
Введите е тя! адрес. Это будет e-mai адрес супер администратора сайта. Ниже вы видите пароль, г торыи был сгенер ■ ромн автоматически и предлагается вам как пароль по умолчанию Одна о, вы можете ввести и ■двои вариант по желанию.
ВашЕ-таЙ
ВашЕ-таЙ
dhsilabs@rnail ru
dhsilabs@rnail ru
Пароль администратора
Подтверждение пароля
Пароль администратора
Подтверждение пароля
Загрузить скриптл*гра«н>**е>^ огртжжен быть саманна старо*сайте «ранее, стмрацтпоношьм »хтру*ента cOfn-rnigratornfeiBpy1»^. Введите грефикстаблги старого сайте и введитекаа^юа*у, испзг»зованную на старо* сайте (с*. аначен*в_150в «иыивон файле нт мврез негао браузера hfo encodng/sovce) Скрипт должен быть в жодироаже 1ЛР-8яимвть соответттвухнций префикс тдбти. Сжршт сладатзовак«>а«ндатв***1нл*однтс«в nar*e /wutaWation 'language/ru-ftU файл sampte_ data-iqLzip^^^К^1 Н»"^”':«^"»1'-*»^И>~Р>«'РГ»«»<»=»"™2™»*Пзефнсс таБ/ец старогоКодировка старого сайта-Нграциоыьй скрипт8ы загрузили скртт иьграц>ынасер8^> (негр поРТР/5Ф) Этоскгитт тграциис Joomla» 1 ОHt^e***»»**-Внимание! Некоторые из путей могут не иметь права наЗагрузить скриптл*гра«н>**е>^ огртжжен быть саманна старо*сайте «ранее, стмрацтпоношьм »хтру*ента cOfn-rnigratornfeiBpy1»^. Введите грефикстаблги старого сайте и введитекаа^юа*у, испзг»зованную на старо* сайте (с*. аначен*в_150в «иыивон файле нт мврез негао браузера hfo encodng/sovce) Скрипт должен быть в жодироаже 1ЛР-8яимвть соответттвухнций префикс тдбти. Сжршт сладатзовак«>а«ндатв***1нл*однтс«в nar*e /wutaWation 'language/ru-ftU файл sampte_ data-iqLzip^^^К^1 Н»"^”':«^"»1'-*»^И>~Р>«'РГ»«»<»=»"™2™»*Пзефнсс таБ/ец старогоКодировка старого сайта-Нграциоыьй скрипт8ы загрузили скртт иьграц>ынасер8^> (негр поРТР/5Ф) Этоскгитт тграциис Joomla» 1 ОHt^e***»»**-Внимание! Некоторые из путей могут не иметь права на
Загрузить скриптл*гра«н>**е>^ огртжжен быть саманна старо*сайте «ранее, с
тмрацтпоношьм »хтру*ента cOfn-rnigratornfeiBpy1»^. Введите грефикс
таблги старого сайте и введитекаа^юа*у, испзг»зованную на старо* сайте (с*. аначен*в_150в «иыивон файле нт мврез негао браузера hfo encodng/sovce) Скрипт должен быть в жодироаже 1ЛР-8яимвть соответттвухнций префикс тдбти. Сжршт сладатзовак«>а«ндатв***1нл*однтс«в nar*e /wutaWation 'language/ru-ftU файл sampte_ data-iqLzip
^^^К^1 Н»"^”':«^"»1'-*»^И>~Р>«'РГ»«»<»=»"™2™»*
Пзефнсс таБ/ец старого
Кодировка старого сайта-
Нграциоыьй скрипт
8ы загрузили скртт иьграц>ынасер8^> (негр поРТР/5Ф) Этоскгитт тграциис Joomla» 1 О
Ht^e***»»**-
Внимание! Некоторые из путей могут не иметь права на
Загрузить скриптл*гра«н>**е>^ огртжжен быть саманна старо*сайте «ранее, с
тмрацтпоношьм »хтру*ента cOfn-rnigratornfeiBpy1»^. Введите грефикс
таблги старого сайте и введитекаа^юа*у, испзг»зованную на старо* сайте (с*. аначен*в_150в «иыивон файле нт мврез негао браузера hfo encodng/sovce) Скрипт должен быть в жодироаже 1ЛР-8яимвть соответттвухнций префикс тдбти. Сжршт сладатзовак«>а«ндатв***1нл*однтс«в nar*e /wutaWation 'language/ru-ftU файл sampte_ data-iqLzip
^^^К^1 Н»"^”':«^"»1'-*»^И>~Р>«'РГ»«»<»=»"™2™»*
Пзефнсс таБ/ец старого
Кодировка старого сайта-
Нграциоыьй скрипт
8ы загрузили скртт иьграц>ынасер8^> (негр поРТР/5Ф) Этоскгитт тграциис Joomla» 1 О
Ht^e***»»**-
Внимание! Некоторые из путей могут не иметь права на
Рис. 2.24. На странице Главная конфигурация вы можете ввести имя сайта,электронный адрес администратора и сведения о данных загрузки
Загрузка демо-данных Миграция или Восстановление с резервной копни
ВАЖНОМ
Нвчинающмн рекомендуется установить дено-д*ее>*1
Ормгтальный скрнтт |луюст №1) содержит демо датые не английском языке Если вы хотите установить лскагызоеанюяе а ено-детые на русском языке, то выберите пужт № и установите дыы из специального скритта
Перед тем, как закончить установку, вы можете «грузить деио-дв^е локальным SQL-файл с пежвгызовангыми rpwepaw или восстановить старые дагеше из резертой к опт
Возможна загрузке из архивов Zo или Tar+GZ
Префикс архива и префгхс зф-офилта допита совладать
Установить демо-данные Для зтого выберите первую опцию и нажмите кнопку <Установись дено-данте».
Файл eql-офмпта, соемест wore с Joomial 1 5, может быть загружен с локапоной нашиты и выпогывн на сайте Вы можете использовать эту опцию для установки локатзоваьмых дано-данных или восстановления резеретаях даитых Скрипт должен содержать правильный префикс зыби таблиц должш теть кодцхеку UTF-8 и должен соответствовать схеме базы дагзых Joomla» 1 5
Миграция контента с гфедыду^ин версий Третья опция поддерж»еает миграцию дампов БД старых версии на новый сайт Joomla» 1 5 Требуемые преобразования вьгх»гн*отся "на-лет/ Файл скрипте может быть создан автоматически на старом сайте с поношыо компонента ссхпдг*#«ог'игнврг-»<ую согласно стдуюшт инструкции
Возможность загрузки файла поддержквавт несжатые sql-файлы, запакованные файгы в форматах гр или @2 Запакоеатные файлы могут содержать только од* sd-файл.
Чистая установка ест вы не отите ввести ясно данные, мигруовать детые о старого с»тга ну загрузить датыв из бзкапа, а
Рис. 2.25 Новичкам рекомендуется нажать кнопку Установить демо-данные
После их установки название кнопки изменится на Демо-данные успешно установлены, а ваши таблицы будут заполнены первыми статьями. Конечно, после того как научитесь работать в Joomla!, вы всегда сможете их удалить.
Если при установке демо-данных вы получите сообщение об ошибке, нажмите кнопку Назад и проверьте параметры MySQL— скорее всего, причина в них.
Совет
Существует старый добрый акроним KISS, что означает Keep it Super Simple (не нужно усложнять!). Он очень помогает в данной ситуации. Joomla! — довольно сложная и отлаженная система. Поэтому если возникла проблема с MySQL, то нужно не анализировать ее код, а пойти по пути наименьшего сопротивления — проверить параметры доступа к MySQL. Причина проблемы почти всегда в них, а не в Joomla!.
ЗавершениеЗавершениеПоздравляем вы установили Joomla'Поздравляем вы установили Joomla'Ггэ/К/>"- * "ЯК1 V>UV’‘ »УКУ1 -4 •Ггэ/К/>"- * "ЯК1 V>UV’‘ »УКУ1 -4 •Д« raw логина Адмнннс ра ор«Д« raw логина Адмнннс ра ор«Погмоватег® edrmПогмоватег® edrmНажмите кнопку Далее, и вы увидите экран, оповещающий об успешной установке Joomla! (рис. 2.26). Поздравляю! Вы только что установили Joomla!.
Завершение
Завершение
Поздравляем вы установили Joomla'
Поздравляем вы установили Joomla'
Ггэ/К/>"- * "ЯК1 V>UV’‘ »УКУ1 -4 •
Ггэ/К/>"- * "ЯК1 V>UV’‘ »УКУ1 -4 •
Д« raw логина Адмнннс ра ор«
Д« raw логина Адмнннс ра ор«
Погмоватег® edrm
Погмоватег® edrm
Шаги
I: Выбор н>ье«1
г • Нагюльная прове|*а
Кбй ад*е*«
3 • Кон^нвчкивм ПР
* Коифмги »sw
:t-wpw ОНИ»
Распространяется по мда»* CMJ/Q4
Рис. 2 26. Joomla! установлена
Внимание!
Старые версии Joomla! отказывались работать, если вы не удалите каталог installation с Web-сервера. Новые версии допускают работу с этим каталогом, но будьте очень осторожны. Если кто-нибудь запустит мастер установки из этого каталога, вся ваша база данных будет уничтожена! Поэтому весьма желательно удалить этот каталог немедленно!
Изменение параметров Joomla!
Наверное, сразу после установки Joomla! вы захотите увидеть, как она выглядит. Откройте Web-браузер и посетите ваш сайт. Вы увидите страницу, по-
добную изображенной на рис. 2.27. Чтобы вам было проще ориентироваться, некоторые элементы интерфейса Joomla! на рис. 2.27 подписаны.
Модуль NewsflashМодуль NewsflashJoomla!Joomla!aims .aims .irh a Web * of anyirh a Web * of any. are bt » * , rgc. are bt » * , rgcДЬеШ JeomtidДЬеШ JeomtidThe Сошнмя(уThe Сошнмя(уMwt МтшMwt МтшLatest NewsLatest News— Popular— PopularMore ,#hm« Jvui «WLb*«N«A« F»*it.More ,#hm« Jvui «WLb*«N«A« F»*it.t fekome to the Frontpaget fekome to the FrontpagePollsPollsЯвееинже-Явееинже-rialrialaakHKnW. №f« • >iornl 4f««i»v кни йз! I feh' USMHnmekHKnW. №f« • >iornl 4f««i»v кни йз! I feh' USMHnmeutM ii а Пел >j№i&mac4fm намк imfCT-iuwr |м fishery system «Xt^nedfcx qurcMyutM ii а Пел >j№i&mac4fm намк imfCT-iuwr |м fishery system «Xt^nedfcx qurcMyeMiny t*jti1> went .v.1rw i«M*iЛtiiyiiaye Wvb sW** vnii►d eCone wee itpptkatkN»eMiny t*jti1> went .v.1rw i«M*iЛtiiyiiaye Wvb sW** vnii►d eCone wee itpptkatkN»i* roi и mi *•« nedie (.«имХ. Muysi* roi и mi *•« nedie (.«имХ. MuysКл.жл* P<Nyv»Кл.жл* P<Nyv».Hey Ce^c eels.Hey Ce^c eelsPweed^^{JoomlaiPweed^^{JoomlaiJeomiai orovides an ea i a npHUss Dia manayvr •Jeomiai orovides an ea i a npHUss Dia manayvr •и ad bv organ. i Л, and Edranets ano i a p«и ad bv organ. i Л, and Edranets ano i a p«aiyv vt urn s rfaiyv vt urn s rfAl of frit AbAl of frit AbWho's OnlineWho's OnlineГлавное меню Логотип Дополнительное меню
Модуль Newsflash
Модуль Newsflash
Joomla!
Joomla!
aims .
aims .
irh a Web * of any
irh a Web * of any
. are bt » * , rgc
. are bt » * , rgc
ДЬеШ Jeomtid
ДЬеШ Jeomtid
The Сошнмя(у
The Сошнмя(у
Mwt Мтш
Mwt Мтш
Latest News
Latest News
— Popular
— Popular
More ,#hm« Jvui «W
Lb*«
N«A« F»*it.
More ,#hm« Jvui «W
Lb*«
N«A« F»*it.
t fekome to the Frontpage
t fekome to the Frontpage
Polls
Polls
Явееинже-
Явееинже-
rial
rial
a
a
kHKnW. №f« • >iornl 4f««i»v кни йз! I feh' USMHnme
kHKnW. №f« • >iornl 4f««i»v кни йз! I feh' USMHnme
utM ii а Пел >j№i&mac4fm намк imfCT-iuwr |м fishery system «Xt^nedfcx qurcMy
utM ii а Пел >j№i&mac4fm намк imfCT-iuwr |м fishery system «Xt^nedfcx qurcMy
eMiny t*jti1> went .v.1rw i«M*iЛtiiyiiaye Wvb sW** vnii
►d eCone wee itpptkatkN»
eMiny t*jti1> went .v.1rw i«M*iЛtiiyiiaye Wvb sW** vnii
►d eCone wee itpptkatkN»
i* roi и mi *•« nedie (.«имХ. Muys
i* roi и mi *•« nedie (.«имХ. Muys
Кл.жл* P<Nyv»
Кл.жл* P<Nyv»
.Hey Ce^c eels
.Hey Ce^c eels
Pweed^
^{Joomlai
Pweed^
^{Joomlai
Jeomiai orovides an ea i a npHUss Dia manayvr •
Jeomiai orovides an ea i a npHUss Dia manayvr •
и ad bv organ. i Л, and Edranets ano i a p«
и ad bv organ. i Л, and Edranets ano i a p«
aiyv vt urn s rf
aiyv vt urn s rf
Al of frit Ab
Al of frit Ab
Who's Online
Who's Online
Модуль Latest NewsМодуль Latest NewsМодуль опросовМодуль опросовМодуль вывода популярных статей - Popular
Модуль Latest News
Модуль Latest News
Модуль опросов
Модуль опросов
Рис. 2 27 Сразу после установки
Примечание переводчика
В дистрибутив входят только файлы русификации мастера установки, а файлы русификации пользовательского интерфейса и панели управления нужно устанавливать отдельно. Именно поэтому интерфейс пользователя на рис. 2.27 англоязычный! С сайта www seo-joomla net можно скачать уже локализированную версию Joomla!, но понимаю, что для вас этот вариант не приемлем, потому что вы только что установили Joomla! с сайта www.joomla.org Поэтому я скопировал языковые файлы из архива seo-joomla-1.5.1RE.zip и запаковал их в архив joomla15-ru.zip, который доступен по адресу http://www.dkws.org.ua /index.php?page=show&file=downloads. Распакуйте этот файл. В нем вы увидите два каталога: administrator и language. Закачайте эти каталоги на свой сайт с помощью FileZilla (или любого другого FTP-клиента). Далее зайдите в панель управления сайтом:
http://eaiu_caum/administrator/
В форме входа укажите имя пользователя admin, пароль, который вы указали при регистрации, и выберите русский язык. Затем зайдите в раздел Языки, вы-
берите русский язык и нажмите кнопку По умолчанию (она будет в правом верхнем углу экрана).
Все последующие иллюстрации будут приведены на примере локализированной версии.
В следующем разделе мы поговорим об изменении интерфейса Joomla!, т. е об изменении каждого элемента пользовательского интерфейса. Зная базовые элементы страницы Joomla!, вы можете приступить к модификации своего сайта. Управление сайтом осуществляется с помощью Web-интерфейса панели управления.
Примечание
Если у вас возникли проблемы с использованием панели управления, убедитесь, что ваш браузер поддерживает JavaScript и выполнение сценариев JavaScript разрешено. В случае с Internet Explorer сценарии JavaScript разрешены на среднем уровне безопасности. Изменить параметры безопасности можно на вкладке Безопасность окна Свойства обозревателя (Сервис | Свойства обозревателя)
Создание новой статьи
Текст— это главный тип контента, которым управляют CMS вроде Joomla!. Хотя CMS может управлять и другими видами контента, например, картинками, статическими HTML-страницами, мультимедиафайлами, текст— главный для большинства Web-сайтов В этом разделе мы научимся добавлять новые статьи на ваш сайт.
Сейчас мы добавим статью от имени администратора сайта. Администратор может предоставить права зарегистрированным пользователям добавлять статьи и другие виды контента. В последующих главах мы поговорим о предоставлении прав удаленным автором. После добавления статьи удаленным автором (пользователем сайта) она должна быть одобрена администратором или модератором сайта.
Первым делом вам нужно зарегистрироваться в панели управления сайтом. Для этого в адресной строке браузера введите следующий URL:
http://вaш_caйт/administrator/index.php
Вы увидите страницу управления сайтом, подобную изображенной на рис. 2.28. Я рекомендую добавить эту страницу в закладки браузера — так вы сможете быстро ее открыть.
Введите имя пользователя и пароль. Поскольку это ваш первый вход в панель управления и вы еще не успели создать дополнительных пользователей, в качестве имени пользователя можете использовать имя admin. Пароль вы указали при установке Joomla! — его и нужно ввести здесь. Если вы ввели
правильные имя пользователя и пароль, то увидите интерфейс администратора — панель управления. Панель управления содержит кнопки, используемые для быстрого доступа к тем или иным функциям интерфейса администратора.
Если интерфейс администратора кажется вам немного сложным, не волнуйтесь (рис. 2.29). Очень скоро вы привыкните к нему, поэтому его использование не будет вызывать у вас дискомфорта. Для добавления новой статьи нажмите кнопку Добавить материал (она находится в левом верхнем углу).
Joomla! отобразит страницу редактора, обладающего превосходным WYSIWYG-интерфейсом.
Чтобы создать новую статью, вы должны указать ее заголовок, выбрать раздел и категорию и, конечно же, ввести текст страницы. На рис. 2.30 я создал простую статью и установил ее основные параметры.
Заголовок статьи появится в карте сайта, поэтому он должен быть информативным, но в то же время не слишком длинным. Раскрывающиеся списки Раздел и Категория используются для управления контентом. Более подробно об управлении контентом мы поговорим в главе 4, а сейчас в качестве раздела выберите News, а в качестве категории — Latest
Текст статьи можно ввести любой, я ввел вот такой текст:
Joomla — простейший способ создать свой сайт! Не нужно бояться Joomla: она настолько проста, что с ней мог бы разобраться даже пещерный человек! <— не забывайте использовать смайлики на своих страницах!
Joomkar Joomla Jumpstart
Версия 1.5.0
Сайт Все менки Материалы Компоненты Расширения Инструменты Ломотца
W просмотр о 86 1 О Вьйти
» Welcome lo Joomht;
Congratdaiions on choosing Joomla! as your cortert management system We hope you are able to create a successful Web site with our program and maybe you wi be at* lo give sornethng back to the community later
To make your start wth Joon*1 as smooth as pcssbie we wart to give you some pointers lo docixnertetion, common questions and help on securing your server A good place to start Es the "Absolute Beginners Guide to JoorW
For your most common questions the best place to start tookry lor answers is the Frequertty Asked Questions (FAQ) area If you are stuck on a particular screen in the Admostretton erea of Joon*! (which ts where you are now), then try clickrig on the Help looker button which you wl find on aknost al screens This wi lake you to a page about that screen on our Help Sie If you sti have questions then take a look on our forum which is most Italy the biggest resource on Joon* there is and you wl find almost every question antwered at least once, so please try usng the search function before asking your question
Security ts a big concern for us, which ts why we woe* Be you to subscribe to Iha announcemeri forum (by clicking on the Notify button) to always get the latest information on new releases for Joomla! You should atso read the JoomW Admristrator s Security Checklist and regularly check the security torum
Рис. 2.29. Панель управления Joomla1
Рис. 2.30. Введите название и текст статьи, выберите раздел и категорию
После ввода текста можно приступить к его форматированию. С помощью кнопки Bold Щ я изменил начертание шрифта, сделав его жирным. Аналогично можно использовать другие кнопки форматирования текста.
Затем я установил курсор перед символами <— и нажал кнопку Emotions С , чтобы добавить новый смайлик.
Цель этой простой демонстрации — показать, как Joomla! позволяет управлять сайтом пользователям без специальных технических знаний.
Когда статья будет готова, вы можете установить ее некоторые параметры вроде псевдонима заголовка, псевдонима автора (см. правую часть окна редактора). Все эти дополнительные параметры необязательны, и вы можете их не указывать.
Хотя один параметр вы все же наверняка захотите изменить — это дата публикации (поле Опубликовано). Вы можете установить любую дату публикации. Для изменения даты щелкните на пиктограмме календаря возле поля Опубликовано, появится календарь: с его помощью выбирать дату намного удобнее.
Примечание
Когда вы будете просматривать статьи с помощью Менеджера материалов, то увидите, что для статей, которые добавлены в базу, но еще не опубликованы, используется другая пиктограмма статуса — желтый восклицательный знак на фоне статьи.
Перед сохранением статьи и ее публикацией вернитесь к области редактора, где вы вводили название статьи. Здесь вы найдете параметр На главной. Если вы выберете значение Да, то созданная вами статья будет опубликована на главной странице сайта. На главной странице можно разместить статью, принадлежащую любому разделу и любой категории. Статья, опубликованная на главной странице, будет показана как на главной странице сайта, так и в выбранном вами разделе (категории).
Нажмите кнопку Сохранить. Статья будет сохранена, а вы вернетесь в панель управления Joomla!. После того как статья будет успешно сохранена, Менеджер материалов Joomla! сообщит вам об этом (рис. 2.31). В оставшейся части окна Менеджера материалов будет представлен список уже созданных статей. Возможно, вы сразу и не найдете только что созданную статью. Из раскрывающегося списка Выберите раздел выберите News. Таблица статей будет отфильтрована, и вы увидите только статьи из выбранного раздела.
Поздравляю! Вы только что опубликовали первую статью! Перейдите в окно браузера, отображающее главную страницу сайта, и нажмите кнопку Обновить. Если вы разрешили публикацию статьи на главной странице сайта, то сейчас ее увидите (рис. 2.32).
Рис. 2.31. Созданная нами статья сохранена в базе данных
Ноте
Mrm Menu
Поте
Joomto Overview
Joomia! License
Мене about Joomia!
FAO
The News
Web Linhs
News Feed»
Latest News
Joomia Jumpstartedl
Content Layouts
* The Joomiai Community
Welcome to Joomiai
Newsflash*
Popular
Joomiai Overview
Extensions
Joomiai License Guidelines
Welcome to Joomiai
What's New in 1 5?
J^ourcee
Joomia! Hom®
Joomia! For n ns
Joomia! Help OSM Home Ad ninishatof
Welcome to the Frontpage
Joomia JumpstartedT^)
» imwxn wt*
МО? Ю 40
Joomia - простейший способ создать свой сайт! Не нужно бояться joomia" она настолько проста,что с ней мог бы разобраться даже пещерный человек!
<- не забывайте использовать смайлики на своих страницах!
Рис. 2.32. Созданная статья на главной странице сайта
Как видите, добавить новый материал в Joomla! совсем просто. Обратите внимание, что заголовок и текст статьи отформатированы в соответствии с общим стилем сайта— как и остальные статьи. Кроме этого, отображается пользовательское форматирование и вставленный смайлик.
Редактирование главного меню
Существуют четыре основных вида меню: верхнее или горизонтальное меню (topMenu), главное или вертикальное меню (mainmenu), прочее меню (othermenu) и пользовательское меню (usermenu).
Верхнее меню расположено в верхней части страницы. Главное меню появляется слева и содержит большую часть опций. Другое меню появляется в левой нижней части экрана и обычно содержит ссылки на другие Web-сайты (Joomla! Home, Joomla! Forums, OCM Home и др.). Пользовательское меню не отображается до тех пор, пока пользователь не зарегистрируется на сайте и не войдет в систему. Это меню содержит ссылки редактирования профиля пользователя, ссылку выхода из системы и др.
Для редактирования меню используется Менеджер меню. Вернитесь на главную страницу панели управления (Сайт | Панель управления) и нажмите кнопку Меню (рис. 2.33).
Менеджер меню отобразит таблицу всех имеющихся в данный момент меню сайта. По умолчанию установлено шесть меню сайта. Справа от названия меню отображается тип этого меню.
Перейдите по ссылке Main Menu, чтобы отредактировать главное меню сайта (рис. 2.34). Вы можете изменить заголовок меню и описание меню. Измените название Main Menu на Joomla Jumpstart Menu и нажмите кнопку Сохранить.
После столбца Тип меню расположен столбец Элементы меню. Щелкните на значке, расположенном напротив меню Joomla Jumpstart Menu, из столбца Элементы меню. Вы увидите все пункты меню. Эти же пункты меню отображаются на главной странице сайта (рис. 2.35).
Конечно, все эти элементы меню вам не нужны, поскольку они относятся к установке Joomla!, а не к вашему сайту. Как примерный администратор, вы не станете их удалять, поскольку еще не завершили планирование своего сайта. Однако вы можете скрыть эти пункты меню, чтобы они больше не отображались в главном меню. Для сокрытия того или иного пункта меню нужно щелкнуть на зеленой галочке, стоящей напротив пункта меню в столбце Публикация.
Joomla! Joomla Jumpstart
Рис. 2.34. Редактор меню
Рис. 2.35. Элементы меню
Можно смело скрыть следующие пункты меню:
Joomla! Overview;
What's New in 1.5?;
Joomla! License;
More about Joomla!;
FAQ
Скрытые пункты меню будут помечены красным крестиком в столбце Публикация, в то время как отображаемые пункты меню будут отмечены зеленой галочкой (рис. 2.36).
Совет
Создание меню — довольно сложная и ответственная задача. "Скромные" меню препятствуют нормальной навигации, поскольку содержат не все необходимые элементы. Поэтому большинство Web-дизайнеров планирует меню в самом начале разработки сайта, разделяя элементы меню на отдельные области. Joomla! делает администрирование меню настолько удобным, что вы. можете изменять меню хоть несколько раз в день.
Рис. 2.36. Скрытые элементы меню помечены символом "красный крестик' Q
Удаление модулей
Страница Joomlai-сайта разделена на отдельные независимые области, называемые модулями. Например, область Poll (опросы), представленная на рис. 2.32, — это отдельный модуль Polls. Области Latest News и Popular — тоже модули, отображающие, соответственно, последние новости и наиболее популярный контент.
Рис. 2.37. Сокрытие модулей Latest News и Popular
Сейчас модули Latest News и Popular только загромождают главную страничку нашего сайта, поэтому давайте их спрячем. Выберите команду панели управления Расширения | Менеджер модулей. Вы увидите Менеджер модулей, отображающий список установленных в данный момент модулей. Для сокрытия того или иного модуля щелкните на соответствующей ему зеленой галочке в столбце Включен. После выключения модуля зеленая галочка будет заменена красным крестиком (рис. 2.37).
Joomla!Joomla!Если вы обновите окно браузера, отображающее главную страницу вашего сайта, то заметите, что модули Latest News и Popular исчезли с главной страницы (рис. 2.38).
Joomla!
Joomla!
Ju rnlairnvkws teasyioleun h a Wet) steer ему kind Wlwiher you wunte uro- hure site orwu era u u ng a large on] ne community. Joomiai allows you to deploy a new site in m notes and add extra tuny ona fly as you need it The hu dredsctvvailBbieExUfne<.«'swiilh81ptvexpindyoureiieandaH<3'wyoutud*ve newservicesthe!«не Jy^x reach Inta the Ttemet
.ewwirew.ewwirew■ »k:»n*if Home• Jow ibUfutia is• Joomia!»*• DSHfrsiw- a*iHuish >Tt«■ »k:»n*if Home• Jow ibUfutia is• Joomia!»*• DSHfrsiw- a*iHuish >Tt«Welcome to the FrontpageJoomla JumpstartedlWelcome to the FrontpageJoomla JumpstartedlPollsЗоопйл! К i ы iloi?£, Com ■* JiesО Public BraM Biteso eComm wetО BlogsО IntranetsQ Photo and Midia Sites (4 *11 of the Above!PollsЗоопйл! К i ы iloi?£, Com ■* JiesО Public BraM Biteso eComm wetО BlogsО IntranetsQ Photo and Midia Sites (4 *11 of the Above!Ahwil JeorttiFetWiMee News TheCoiamMy
.ewwirew
.ewwirew
■ »k:»n*if Home
• Jow ibUfutia is
• Joomia!»*
• DSHfrsiw
- a*iHuish >Tt«
■ »k:»n*if Home
• Jow ibUfutia is
• Joomia!»*
• DSHfrsiw
- a*iHuish >Tt«
Welcome to the Frontpage
Joomla Jumpstartedl
Welcome to the Frontpage
Joomla Jumpstartedl
Polls
Зоопйл! К i ы iloi?
£, Com ■* Jies
О Public BraM Bites
o eComm wet
О Blogs
О Intranets
Q Photo and Midia Sites (4 *11 of the Above!
Polls
Зоопйл! К i ы iloi?
£, Com ■* Jies
О Public BraM Bites
o eComm wet
О Blogs
О Intranets
Q Photo and Midia Sites (4 *11 of the Above!
jw* ti - простей - й способ создать свой с *йт> Не нужно бояться Joomla она настолько прост», что с ней мог бы разобраться даже пещерный чело ек!
Зь йг «aS vVe are Volunteers & ■*> -^Зь йг «aS vVe are Volunteers & ■*> -^^•— не забывайте использовать смай -««и на «сих стран, цаи
Зь йг «aS vVe are Volunteers & ■*> -^
Зь йг «aS vVe are Volunteers & ■*> -^
Welcome to Jvomlel
Рис. 2.38. Модули Latest News и Popular скрыты
Сокрытие всего меню
С помощью Менеджера меню вы можете скрыть целые меню, а не только отдельные элементы меню. Каждое меню в Joomla1 использует связанный с ним модуль, который отвечает за отображение меню на странице Если вы спрячете модуль, ассоциированный с меню, меню не будет отображаться на сайте. Сейчас мы попытаемся спрятать меню Key Concepts и Resources, отображающиеся ниже главного меню сайта: они нам просто не нужны. Для сокрытия этих пунктов меню зайдите в Менеджер модулей и щелкните на соответствующих этим пунктам зеленым галочкам в столбце Включен (рис. 2.39).
Вернитесь в окно браузера, в котором отображается ваш сайт, и обновите страницу. Скрытые меню исчезнут из поля зрения (рис. 2.40).
HomeHomeNUhMenuNUhMenuWelcome to the FrontpageWelcome to the FrontpageHome fhe News Web links Newt beedsHome fhe News Web links Newt beedsLogin FormLogin FormJoomla Jumpstarted IJoomla Jumpstarted I■ейший способ создать свой сайт! не нужно бояться Joon роста, что с ней мог Вы разобраться даже пещерный человек!■ейший способ создать свой сайт! не нужно бояться Joon роста, что с ней мог Вы разобраться даже пещерный человек!- не забывайте использовать смайлики на своих страницах!- не забывайте использовать смайлики на своих страницах!Имя пользователяИмя пользователяПарольПарольWelcome to JoomlaiWelcome to JoomlaiWo arc VolunteerWo arc VolunteerЗапомнить меня "1Запомнить меня "1[ Логин j[ Логин jт6ьпипар| ■ >' Вь ей Л! ин»^егистуир»итесьт6ьпипар| ■ >' Вь ей Л! ин»^егистуир»итесьЗпошЫ’ is a tree open source framework ami content puKishHMJ system designed for quickly ci eating highly intel active mi hb language Web sites, online coininunmes.
Home
Home
NUhMenu
NUhMenu
Welcome to the Frontpage
Welcome to the Frontpage
Home fhe News Web links Newt beeds
Home fhe News Web links Newt beeds
Login Form
Login Form
Joomla Jumpstarted I
Joomla Jumpstarted I
■ейший способ создать свой сайт! не нужно бояться Joon роста, что с ней мог Вы разобраться даже пещерный человек!
■ейший способ создать свой сайт! не нужно бояться Joon роста, что с ней мог Вы разобраться даже пещерный человек!
- не забывайте использовать смайлики на своих страницах!
- не забывайте использовать смайлики на своих страницах!
Имя пользователя
Имя пользователя
Пароль
Пароль
Welcome to Joomlai
Welcome to Joomlai
Wo arc Volunteer
Wo arc Volunteer
Запомнить меня "1
Запомнить меня "1
[ Логин j
[ Логин j
т6ьпипар| ■ >
' Вь ей Л! ин
»^егистуир»итесь
т6ьпипар| ■ >
' Вь ей Л! ин
»^егистуир»итесь
media portals. blogs anti eConitiieice
The Joomla' r ore Tear developer designers, managers who, togethe Work Grot; > of dedrcal members ha. = taken JThe Joomla' r ore Tear developer designers, managers who, togethe Work Grot; > of dedrcal members ha. = taken JРис. 2.40. Меню Key Concepts и Resources больше не отображаются
The Joomla' r ore Tear developer designers, managers who, togethe Work Grot; > of dedrcal members ha. = taken J
The Joomla' r ore Tear developer designers, managers who, togethe Work Grot; > of dedrcal members ha. = taken J
Теперь, когда вы избавились от ненужных элементов сайта, настало время изменения оставшихся элементов, чтобы сайт стал действительно вашим Один из главных признаков Web-сайта — это его логотип. О том. как изменить логотип сайта, мы поговорим в следующем разделе.
Изменение логотипа сайта
Можно сказать, что логотип — это лицо вашего сайта. Логотип особенно важен, если вы планируете заниматься коммерцией в Интернете В этом разделе мы заменим стандартный логотип Joomla! собственным логотипом.
Ранее вы распаковали файлы Joomla! на жесткий диск. На базе имеющегося логотипа мы создадим собственный логотип сайта. Сейчас для изменения логотипа мы будем использовать простой графический редактор Paint, входящий в состав Windows ХР (Пуск | Все программы | Стандартные | Paint). В последующих главах мы будем использовать программы Adobe Photoshop и GIMP для создания более эффектного логотипа.
Запустите Paint и выполните команду меню Файл | Открыть. Перейдите в каталог, в который вы распаковали файлы Joomla!. Файл логотипа называется mwjoomla. logo.png и хранится в подкаталоге images текущего шаблона. Путь к файлу будет выглядеть примерно так:
C:\Joomlal_5install\templates\rhuk_milkyway\images\mw_joomla_logo.png.
На рис. 2.41 изображен редактор Paint с загруженным логотипом Joomla!.
Рис. 2 41. Логотип Joomla1 в редакторе Paint
Приступим к созданию логотипа. Первым делом очистим существующий рисунок с помощью команды Рисунок | Очистить. Теперь у вас есть "болван-
ка", необходимая для создания логотипа. Осталось только его создать. Что рисовать? Да все, что захотите!
Вот что сделал я. Сначала я выбрал темно-синий цвет фона. Затем с помощью инструмента Заливка заполнил этим цветом весь рисунок. После я выбрал светло-голубой цвет и с помощью инструмента Распылитель создал некое подобие текстуры.
Перед добавлением текста я выключил режим Рисунок | Непрозрачный фон, чтобы текст был нанесен на только что созданный фон Потом я добавил текст "Joomla Jumpstart", а после немного изменил гарнитуру и размер шрифта, чтобы надпись выглядела привлекательно.
Когда все будет готово (рис. 2.42), выполните команду меню Файл | Сохранить как и сохраните получившийся файл под именем mw_joomlajumpstart_ logo.png.
Рис. 2.42. Создайте новый логотип и сохраните его в каталог \images
Теперь у нас есть логотип нашего сайта, причем наш логотип не отличается по своим размерам (ширине и высоте) от оригинального логотипа, что не нарушит существующего дизайна сайта.
Теперь нам нужно загрузить только что созданный логотип на сервер, чтобы Joomla! могла его использовать. Запустите ваш FTP-клиент и соединитесь с FTP-сервером. Вам нужно перейти в удаленный подкаталог images (находится на FTP-сервер) и загрузить в него созданный вами файл (рис. 2.43).
Хост: | /domains/dkws.org.ua/pubic htmV oomla/temp!at8$/rhuk m*.yway/images/ (За logs s3) media
1Д5 modules J5 plug™
Q Il5 templates ЙЬЬеег
Ы О rhukjrikywayi&css^ html
Ик О images
Имя файла / 6 rnw_header. jpg tfc^ !W_header_b.png Qtimw_headerJ_b png Omw_header_r_b png l$8mwjcc^aj77?.pngИмя файла / 6 rnw_header. jpg tfc^ !W_header_b.png Qtimw_headerJ_b png Omw_header_r_b png l$8mwjcc^aj77?.pngРазмер Тип10 595 ACDSee?.239 ACDSee?.236 ACDSee?.243 ACDSee?.6 021 ACDSee?.Размер Тип10 595 ACDSee?.239 ACDSee?.236 ACDSee?.243 ACDSee?.6 021 ACDSee?.ь.‘^^J^E™^^4 2X ACDSee 7.ь.‘^^J^E™^^4 2X ACDSee 7.Последнее из...17.03.2008 19:...17.03.2008 19:...17.03.2008 19:...17.03.2008 19:...17.03.2008 19:...Последнее из...17.03.2008 19:...17.03.2008 19:...17.03.2008 19:...17.03.2008 19:...17.03.2008 19:...
Имя файла / 6 rnw_header. jpg tfc^ !W_header_b.png Qtimw_headerJ_b png Omw_header_r_b png l$8mwjcc^aj77?.png
Имя файла / 6 rnw_header. jpg tfc^ !W_header_b.png Qtimw_headerJ_b png Omw_header_r_b png l$8mwjcc^aj77?.png
Размер Тип
10 595 ACDSee?.
239 ACDSee?.
236 ACDSee?.
243 ACDSee?.
6 021 ACDSee?.
Размер Тип
10 595 ACDSee?.
239 ACDSee?.
236 ACDSee?.
243 ACDSee?.
6 021 ACDSee?.
ь.‘^^J^E™^^4 2X ACDSee 7.
ь.‘^^J^E™^^4 2X ACDSee 7.
Последнее из...
17.03.2008 19:...
17.03.2008 19:...
17.03.2008 19:...
17.03.2008 19:...
17.03.2008 19:...
Последнее из...
17.03.2008 19:...
17.03.2008 19:...
17.03.2008 19:...
17.03.2008 19:...
17.03.2008 19:...
207
ACDSee?...
.17.03.200819;
384
ACDSee?...
17.03.2008 19:
709
ACDSee 7...
.17.03.2008 19:
273
lACDSee 7.0
PNG Image |ров 19:
225
ACDSee 7...
.17.03.2008 19:
307
ACDSee 7...
17.03.2008 19:
301
ACDSee 7...
.17.03.2008 19:
218
ACDSee?...
17.03.2008 19:
I^mw_line_o ey.png Ш2 mw_menu_cap J. png
I _menu_cap_r.png 1Й| mw_menu_norma1_bg.png 1 Smw_menu_separator.png Ц*Й ^readon.png utt| w_readon_rti.png JitisDatCLPDQ
Рис. 2.43. Новый логотип успешно загружен на сервер
Чтобы Joomla! использовала наш логотип, нужно изменить таблицу стилей, связав ее с новой картинкой.
Внимание!
Поскольку наш сервер работает под управлением Linux, имена файлов чувствительные к регистру. Например, если Paint сохранил файл под именем mwJoomlajumpstartJogo.PNG, а вы в template.css укажете имя файла mwjoomlajumpstartjogo.png, то ваша картинка не будет отображена! Перед тем как прописывать имя файла в таблице стилей, проверьте регистр символов и, если нужно, переименуйте файл на сервере.
Выберите команду меню панели управления Расширения | Менеджер шаблонов. Затем из списка шаблонов выберите шаблон по умолчанию и нажмите кнопку Правка (рис. 2.44).
Вы увидите параметры шаблона, но нам они не интересны. Нам нужно отредактировать CSS-файл шаблона, поэтому нажмите кнопку Редактировать CSS (рис. 2.45).
Примечание переводчика
Чтобы у вас не было проблем с редактированием шаблонов с помощью встроенного редактора шаблонов, вам нужно установить права доступа 777 для ка- тал< a /templates/rhuk_milkyway и всех его подкаталогов. Для всех файлов из этих каталогов нужно установить права доступа 666.
Рис. 2 45 Параметры шаблона
Нам нужно отредактировать файл template.css. Выделите его и нажмите
кнопку Правка (рис. 2.46).
Вы увидите содержимое CSS-файла template.css. В следующих главах мы подробно поговорим об использовании CSS-редактора, а сейчас нам нужно найти CSS-элемент с именем div#iogo. Пролистайте текст файла стилей, пока не найдете этот элемент. Нам нужно изменить его атрибут background, указав имя нашего файла логотипа (рис. 2.47).
После этого Joomla1 будет использовать указанный нами файл. Поскольку мы создавали его на базе стандартного логотипа, размеры картинки не изменены, поэтому больше ничего не нужно редактировать. Если же вы создали логотип с нуля, тогда вам нужно изменить параметры width и height, указав, соответственно, ширину и высоту картинки в пикселах.
home dkwsorgu doma ns -dkws.org ua publicJrtml joomiatempiate.cse
overflow: hidden; text-align: left; I
div#logo { position: absolute; left; 0; top: 0; float: left; width: Z98px; height: 75px;
background: url(../images/mw jooplaj unpstart] logo,png) 0 0 no-repeat; margin-left: 3Gpx; margin-top: 25px;
divSnewsflash (
width: auto;
margin-left: 350px; margin-right: 3Qpx;
border: Ipx solid flOOf;
Рис. 2 47. Изменение имени файла-логотипа
3 Зак 468
Нажмите кнопку Сохранить, после чего перейдите в другое окно браузера (где уже открыт ваш сайт) и нажмите кнопку Обновить. Вы увидите новый логотип (рис. 2.48).
Joomla JumpstartJoomla JumpstartThe one thing about э weo no it arrays changesi Joomia» makes neasyto add Articles, tontent, ma,ee. videos end mon Site a mimstr* tore can e It a dm«na_e co* »rfin-c meri by - • rg the Г-If Ink Wtbm»st»ra сея also edit content tn ugh a gra. that в I eve, i ■ c
Joomla Jumpstart
Joomla Jumpstart
AbeiS JotH dal F*W vea Heart TIm Community
Welcome to the Frontpage Joomla Jumpstarted!Welcome to the Frontpage Joomla Jumpstarted!Joomla простейший-лособ создать свой сайп He хужноВонгься Jo la онаяьстол ко проста что с ней ысг бы р* обвиться даже пащерн Й ч псе*к**®*<- не за8ы1*пе использовать сыаил-ви на сво • тоаницах)Joomla простейший-лособ создать свой сайп He хужноВонгься Jo la онаяьстол ко проста что с ней ысг бы р* обвиться даже пащерн Й ч псе*к**®*<- не за8ы1*пе использовать сыаил-ви на сво • тоаницах)Login FormИЫЯППП1.1 eren*Login FormИЫЯППП1.1 eren*Wei line to Joorr i!Wei line to Joorr i!We a e . nteerWe a e . nteerЭапсм и-ъм.ня П [ Логан^Эапсм и-ъм.ня П [ Логан^J<m»ii*£ « a 1i ее «nwti шьесе fi amewmfc nod corewKi il • Leigsyeiei ide bjiAdfiw qukKiy ае*ид iNgitiy евеЦеяме mutt ianwhigr Web «Ies. о il*»e сотпнииЬе», i unite po 1He. hlo<)s «nl eC w uwiceJ<m»ii*£ « a 1i ее «nwti шьесе fi amewmfc nod corewKi il • Leigsyeiei ide bjiAdfiw qukKiy ае*ид iNgitiy евеЦеяме mutt ianwhigr Web «Ies. о il*»e сотпнииЬе», i unite po 1He. hlo<)s «nl eC w uwiceThe ma m <* mi • ihjrflti r•aveiop de в a*nd-.na.-iwn , • i with a i. ge ran. ofWo к • roup. • с n mNm mt*rs ai .* ч^***/*'The ma m <* mi • ihjrflti r•aveiop de в a*nd-.na.-iwn , • i with a i. ge ran. ofWo к • roup. • с n mNm mt*rs ai .* ч^***/*'PollsJoond.i' It Hied f«tCommunity-, hot~) Pu - В and $9»• SegeQ I - w and Me*e SitesГ, .4 of the Above'" Голо иевгь || Результаты jWho’s OnlineAdvertisementPollsJoond.i' It Hied f«tCommunity-, hot~) Pu - В and $9»• SegeQ I - w and Me*e SitesГ, .4 of the Above'" Голо иевгь || Результаты jWho’s OnlineAdvertisement
Welcome to the Frontpage Joomla Jumpstarted!
Welcome to the Frontpage Joomla Jumpstarted!
Joomla простейший-лособ создать свой сайп He хужноВонгься Jo la онаяьстол ко проста что с ней ысг бы р* обвиться даже пащерн Й ч псе*к*
*®*<- не за8ы1*пе использовать сыаил-ви на сво • тоаницах)
Joomla простейший-лособ создать свой сайп He хужноВонгься Jo la онаяьстол ко проста что с ней ысг бы р* обвиться даже пащерн Й ч псе*к*
*®*<- не за8ы1*пе использовать сыаил-ви на сво • тоаницах)
Login Form
ИЫЯППП1.1 eren*
Login Form
ИЫЯППП1.1 eren*
Wei line to Joorr i!
Wei line to Joorr i!
We a e . nteer
We a e . nteer
Эапсм и-ъм.ня П [ Логан^
Эапсм и-ъм.ня П [ Логан^
J<m»ii*£ « a 1i ее «nwti шьесе fi amewmfc nod corewKi il • Leigsyeiei ide bjiAdfiw qukKiy ае*ид iNgitiy евеЦеяме mutt ianwhigr Web «Ies. о il*»e сотпнииЬе», i unite po 1He. hlo<)s «nl eC w uwice
J<m»ii*£ « a 1i ее «nwti шьесе fi amewmfc nod corewKi il • Leigsyeiei ide bjiAdfiw qukKiy ае*ид iNgitiy евеЦеяме mutt ianwhigr Web «Ies. о il*»e сотпнииЬе», i unite po 1He. hlo<)s «nl eC w uwice
The ma m <* mi • ihjrflti r
•aveiop de в a*nd
-.na.-iwn , • i with a i. ge ran. of
Wo к • roup. • с n mN
m mt*rs ai .* ч^***/*'
The ma m <* mi • ihjrflti r
•aveiop de в a*nd
-.na.-iwn , • i with a i. ge ran. of
Wo к • roup. • с n mN
m mt*rs ai .* ч^***/*'
Polls
Joond.i' It Hied f«t
Community-, hot
~) Pu - В and $9»
• Sege
Q I - w and Me*e Sites
Г, .4 of the Above'
" Голо иевгь |
| Результаты j
Who’s Online
Advertisement
Polls
Joond.i' It Hied f«t
Community-, hot
~) Pu - В and $9»
• Sege
Q I - w and Me*e Sites
Г, .4 of the Above'
" Голо иевгь |
| Результаты j
Who’s Online
Advertisement
Рис. 2.48. Новый логотип установлен
Изменение текста Newsflash
Мы только что установили собственный логотип сайта, но справа от логотипа все еще красуется стандартный текст модуля Newsflash. Наш следующий шаг — это изменение текста, чтобы он соответствовал тематике сайта.
Как мы уже знаем, текст справа от логотипа отображается модулем Newsflash. Если вы создадите новую статью как контент Newsflash, ваше сообщение отобразится возле логотипа сайта.
Примечание переводчика
Можно вообще не обращать внимание на Newsflash, а просто отключить его: присутствие этого модуля на сайте совсем не обязательно.
Находясь в панели управления, нажмите кнопку Добавить материал. Заголовок статьи можно установить абсолютно любой, а вот в качестве раздела нужно установить News, а в качестве категории — Newsflash (рис. 2.49).
Когда введете текст сообщения, нажмите кнопку Сохранить. Вы вернетесь в Менеджер материалов. Как обычно, в нем будет очень много статей, поэтому чтобы найти только что созданную статью, выберите категорию Newsflash из
раскрывающегося списка Выберите категорию (рис. 2.50). Менеджер материалов отобразит только статьи категории Newsflash. По умолчанию при установке Joomla! создается пять статей для модуля Newsflash.
Рис 2.49. Нужно выбрать раздел News и категорию NewsflashРис 2.49. Нужно выбрать раздел News и категорию Newsflash
Рис 2.49. Нужно выбрать раздел News и категорию Newsflash
Рис 2.49. Нужно выбрать раздел News и категорию Newsflash
МенеджерИз архива В арАивМенеджерИз архива В арАиво * *ПуСлиыщия Скрыть Пт ренос Копия Кор»о * *ПуСлиыщия Скрыть Пт ренос Копия Кор»
Менеджер
Из архива В арАив
Менеджер
Из архива В арАив
о * *
ПуСлиыщия Скрыть Пт ренос Копия Кор»
о * *
ПуСлиыщия Скрыть Пт ренос Копия Кор»
материалов
00•joornW Ove view•joornW Ove view22„AboutВсем . , .wmial„AboutВсем . , .wmialРис. 2.50. Выберите категорию NewsflashРис. 2.50. Выберите категорию Newsflash
0
0
•joornW Ove view
•joornW Ove view
2
2
„About
Всем . , .wmial
„About
Всем . , .wmial
Рис. 2.50. Выберите категорию Newsflash
Рис. 2.50. Выберите категорию Newsflash
Сейчас мы скроем статьи, добавленные при установке Joomla!. Вместо того чтобы щелкать на значке публикации каждой статьи, можно выделить все ненужные статьи и нажать кнопку Скрыть. Так вы можете скрыть сразу целую группу статей (рис. 2.51).
Рис. 2.51. Выберите группу статей и нажмите кнопку Скрыть
Теперь ваша статья будет одной-единственной в категории Newsflash. Обновите окно браузера, чтобы увидеть введенный вами текст справа от логотипа (рис. 2.52). Понемногу сайт начинает приобретать "ухоженный" вид.
Jdomla JumpstartJdomla JumpstartДо ) пожаловать н« ыо” сайт1 > ь вы найдете ыДо ) пожаловать н« ыо” сайт1 > ь вы найдете ыAbout Joomla!About Joomla!Редине»Редине»Пи со tnпиштуПи со tnпишту
Jdomla Jumpstart
Jdomla Jumpstart
До ) пожаловать н« ыо” сайт1 > ь вы найдете ы
До ) пожаловать н« ыо” сайт1 > ь вы найдете ы
About Joomla!
About Joomla!
Редине»
Редине»
Пи со tnпишту
Пи со tnпишту
Login FormИмя пользователяLogin FormИмя пользователяWelcome to the FrontpageWelcome to the FrontpageJoomla Jump^tartPdlJoomla Jump^tartPdlPollsJoomkYfsuseifror?PuBioIntranePhoto a J Medf tl OVPPollsJoomkYfsuseifror?PuBioIntranePhoto a J Medf tl OVP
Login Form
Имя пользователя
Login Form
Имя пользователя
Welcome to the Frontpage
Welcome to the Frontpage
Joomla Jump^tartPdl
Joomla Jump^tartPdl
Polls
JoomkYfsuseifror?
Pu
Bio
Intrane
Photo a J Med
f tl OVP
Polls
JoomkYfsuseifror?
Pu
Bio
Intrane
Photo a J Med
f tl OVP
Joomla - пр ствйший способ ci дать свой айп Не жно бояп R Jo ila она настолько npu‘"e,<r-' г ней мог бы • обратьсяда.ка 1 ♦ щ . -ый человек1 ^* - не забывайте использовать смайлики нз своих тваницах!
Рис. 2.52. Теперь Newsflash отображает наш текст1
Создание своего опроса (голосования)
Опрос по умолчанию наверняка не соответствует тематике вашего сайта. Настало время создать собственный опрос. Выберите команду меню панели
управления Компоненты | Голосования. Вы увидите Менеджер голосований. Нажмите кнопку Новый для создания нового голосования (рис. 2.53).
-*оопт з JumpSta *
Рис. 2.53. Нажмите кнопку Новый для создания нового голосования
Для своего сайта я создал голосование под заголовком "Какую операционную систему вы используете?". На рис. 2.54 видны заголовок голосования и варианты ответа, которые можно ввести в правой части окна. Создайте любое голосование и нажмите кнопку Сохранить.
JOOmla! Joomla JumpStart
Рис. 2.54. Создание голосования
Вы вернетесь к Менеджеру голосований и увидите только что созданное голосование, но по умолчанию оно не публикуется на сайте. Для публикации
omla Joomla JumpSta/t
Саш Вссменй Материалы Компоненты P . tun рения Инструменты Помощь^ -po
Менеджер голосованийМенеджер голосованийПуб/з»еци»1 СкрытьПуб/з»еци»1 СкрытьУднлм-tУднлм-t
Менеджер голосований
Менеджер голосований
Пуб/з»еци»1 Скрыть
Пуб/з»еци»1 Скрыть
Уднлм-t
Уднлм-t
Фильтр:[ Выполнить j[ Сброс ]
Г"Заголовок голосования
Г" Joomta! (з used for?
Г Какую оперов н, ю систему вы используете ?
Показать * 20 v
Рис. 2.55. Сокрытие (, ) и публикация (^) голосований
i Какую операционную систему вы используете?
I • Ноше
■ • The News
1 • Web Links
1 • News Feeds
Выберите голосование Какую операционную систем у
11Какую опер< ционную систему вы используете?
Windows ХР
00%
Linux
О 0%
Mac OS 00%
Solans
00%
FreeBSD
00%
A/UX
00%
AIX
00%
OpenBSD
О 0%
Other
Рис. 2.56. Голосование опубликовано
вашего опроса вам нужно скрыть уже созданный и опубликованный опрос и опубликовать только что созданный (рис. 2.55).
После публикации голосования вы можете увидеть на сайте (рис. 2.56).
Изменение горизонтального (верхнего) меню
Теперь сайт почти ваш. Постепенно вы заполните сайт своими статьями, но верхнее меню все еще напоминает о данных по умолчанию.
Примечание переводчика
В англоязычной литературе верхнее меню Joomla! часто называют "pill menu", поскольку кнопки меню напоминают таблетки (pill переводится с английского как "таблетка").
Внешний вид кнопок меню определяется таблицей стилей (CSS) шаблона. Мы не будем изменять стиль, но зато изменим сами элементы меню.
Выполните команду меню панели управления Все меню | Top Menu. Щелкните на элементе меню About Joomla. Откроется редактор меню, в котором нужно изменить заголовок меню на О Joomla Jumpstart (рис. 2.57).
Теперь нам осталось изменить ссылку этого элемента меню. В правой части окна вы увидите кнопку Выбрать, использующуюся для выбора статьи, ко-
торую будет открывать редактируемый элемент меню. Нажмите ее и выберите созданную нами ранее статью Joomla Jumstarted (рис. 2.58).
Для выбора статьи просто щелкните на ее заголовке. Обратите внимание, что курсор не изменяет форму при наведении на заголовок, но, тем не менее, если щелкнуть на заголовке, произойдет выбор статьи.
Joomla JumpstartJoomla JumpstartДобро пожаловать на мой сайт! Здесь вы найдете многДобро пожаловать на мой сайт! Здесь вы найдете мног
Joomla Jumpstart
Joomla Jumpstart
Добро пожаловать на мой сайт! Здесь вы найдете мног
Добро пожаловать на мой сайт! Здесь вы найдете мног
HomeHomeMain MenuMain MenuHomeThe NowsWel> LinksNews FeedsHomeThe NowsWel> LinksNews FeedsLogin FormLogin FormИмя пользователяИмя пользователяО Joomla Ju npstaiiО Joomla Ju npstaiiFeaturesFeaturesNewsNewsTtie CommunityTtie CommunityWelcome to the FrontpageWelcome to the FrontpageOnly one edit windowi How do I create "Read moreOnly one edit windowi How do I create "Read moreThis is now implemented by Inserting a Read moi e.. tag (the button Is located bek the editor area) a dotted line appears in the edited text showing the split tocaVon foi the Read more ^ new Plugin takes care of the reslIt is worth mentioning that thr doe1 not have a negative effect on migrated data fror older les The new implementation fully backward romnatibleThis is now implemented by Inserting a Read moi e.. tag (the button Is located bek the editor area) a dotted line appears in the edited text showing the split tocaVon foi the Read more ^ new Plugin takes care of the reslIt is worth mentioning that thr doe1 not have a negative effect on migrated data fror older les The new implementation fully backward romnatibleРис. 2.59. Измененное нами верхнее менюРис. 2.59. Измененное нами верхнее меню
Home
Home
Main Menu
Main Menu
Home
The Nows
Wel> Links
News Feeds
Home
The Nows
Wel> Links
News Feeds
Login Form
Login Form
Имя пользователя
Имя пользователя
О Joomla Ju npstaii
О Joomla Ju npstaii
Features
Features
News
News
Ttie Community
Ttie Community
Welcome to the Frontpage
Welcome to the Frontpage
Only one edit windowi How do I create "Read more
Only one edit windowi How do I create "Read more
This is now implemented by Inserting a Read moi e.. tag (the button Is located bek the editor area) a dotted line appears in the edited text showing the split tocaVon foi the Read more ^ new Plugin takes care of the resl
It is worth mentioning that thr doe1 not have a negative effect on migrated data fror older les The new implementation fully backward romnatible
This is now implemented by Inserting a Read moi e.. tag (the button Is located bek the editor area) a dotted line appears in the edited text showing the split tocaVon foi the Read more ^ new Plugin takes care of the resl
It is worth mentioning that thr doe1 not have a negative effect on migrated data fror older les The new implementation fully backward romnatible
Рис. 2.59. Измененное нами верхнее меню
Рис. 2.59. Измененное нами верхнее меню
Для сохранения изменений в меню нажмите кнопку Сохранить. Теперь обновите окно браузера, отображающее главную страницу сайта. Вы увидите, как изменилось название первой кнопки верхнего меню (рис. 2.59). Если вы нажмете эту кнопку, Joomla! отобразит статью Joomla Junistarted.
Резюме
После прочтения этой главы вы знаете, как установить Joomla! и выполнить ее базовую настройку. Теперь вы умеете добавлять статьи, производить базовые изменения шаблонов сайта, изменять логотип, публиковать и скрывать статьи, а также создавать собственные голосования.
Как вы уже догадались, мы рассмотрели далеко не все возможности Joomla!, но примерно за 20 минут вы научились управлять своим сайтом. Вы можете остановиться и даже не читать дальше — вы знаете достаточно, чтобы создать свой сайт. Однако надеюсь, вы хотите полностью ощутить всю мощь Joomla!.
В следующей главе мы подробно рассмотрим процесс установки и настройки Joomla!. После ее прочтения вы станете квалифицированным пользователем этой CMS.
ГЛАВА 3
Установка и настройка
В предыдущей главе мы рассмотрели быструю установку и настройку. Если все прошло успешно, теперь у вас есть свой сайт, поэтому вы с чистой совестью можете пропустить эту главу и перейти к следующей. Однако ее стоит прочитать, если вы хотите знать все об установке Joomla!. Эти знания помогут вам при более глубоких изменениях системы.
Если же при чтении прошлой главы вы пытались установить Joomla!, но у вас ничего не получилось, эта глава для вас. В дополнение к подробным инструкциям по установке мы рассмотрим настройку каждого компонента, используемого Joomla! (Apache, Microsoft Internet Information Server, PHP и MySQL), благодаря чему вы сможете установить Joomla! не только на коммерческий узел, но и на собственный сервер.
Даже если вы планировали установить Joomla! на коммерческий хостинг, на локальном компьютере гораздо удобнее осуществлять тестирование и разработку расширений для Joomla!. А вообще настройки, считающиеся лучшими для тестирования, нельзя применять на целевом узле. Из соображений безопасности, ваша локальная машина прекрасно подойдет для тестирования, но не для размещения сайта.
Множество программ, используемых JoomlaJ-сайтом, должно быть правильно сконфигурировано, иначе CMS не будет работать. На рис. 3.1 приведены две разные схемы организации работы Joomla!. Обе схемы будут рассмотрены в этой главе.
Поскольку для организации работы Joomla! необходимо так много компонентов, иногда довольно сложно определить источник проблемы. В этой главе будет представлено руководство по решению проблем, возникающих при работе с Joomla!. С помощью этого руководства вы сможете решить большую часть возникающих проблем. Даже если мы не сможем решить именно вашу проблему, данное руководство должно направить вас по правильному пути
JoomlaJoomlaPHPPHPСервер Apache ^ MySQL] QСервер Apache ^ MySQL] QWindows/Linux/Mac OSWindows/Linux/Mac OSJoomlaJoomlaPHPPHPWindowsWindowsMicrosoft InternetInformation Server (IIS'Microsoft InternetInformation Server (IIS'
Joomla
Joomla
PHP
PHP
Сервер Apache ^ MySQL] Q
Сервер Apache ^ MySQL] Q
Windows/Linux/Mac OS
Windows/Linux/Mac OS
Joomla
Joomla
PHP
PHP
Windows
Windows
Microsoft Internet
Information Server (IIS'
Microsoft Internet
Information Server (IIS'
Схема 2Схема 2Схема 1
Схема 2
Схема 2
Рис. 3.1. Схемы организации работы Joomla!
Прежде чем приступить к установке, мы рассмотрим организацию Joomla!- сайта, т. е. структуру каталогов, что поможет вам при дальнейшей настройке.
Обзор файлов и каталогов Joomla!
Система Joomla! насчитывает примерно 3200 файлов: система слишком большая, чтобы рассматривать отдельно каждый ее файл. Тем не менее, вам нужно знать структуру каталогов Joomla!, чтобы иметь представление, где искать файлы, требующие изменений.
На рис. 3.2 представлена базовая структура каталогов и основные файлы, находящиеся в корневом каталоге Joomla!. На рисунке представлена базовая система на локальном компьютере. На Web-сервере из соображений безопасности после установки системы нужно удалить каталог installation.
Названия каталогов Joomla! тщательно продуманы, поэтому вы сразу можете догадаться, что находится в том или ином каталоге. Тем не менее, мы все- таки рассмотрим назначение каждого каталога. Обратите внимание, что каталоги, отмеченные звездочкой (*), либо не существовали в предыдущей версии (до версии 1.5), либо были названы иначе:
корневой каталог— содержит главный файл index.php, запускающий установку системы после ее загрузки на Web-сервер. Если же index.php обнаружит наличие файла configuration.php (и нужные параметры в нем), то будет запущена Joomla!. Если вы хотите установить Joomla! снова, удалите файл configuration.php и запустите index.php;
administrator — содержит практически зеркало дерева каталогов, поскольку интерфейс администратора — это такой же сайт на базе Joomla!. Ровно
как возможности JoomW-сайта, возможности интерфейса администратора могут быть увеличены путем установки соответствующих расширений;
Рис. 3.2. Основные каталоги и файлы Joomla!
cache — в большинстве случаев вы никогда не будете заглядывать в этот каталог. Он используется системой для кэширования страниц, т. е. для повышения производительности. Здесь Joomla! хранит популярные страницы, которые отправляются в браузер прямо из этого каталога и не требуют обращения к PHP и MySQL, что повышает производительность;
components— в этом каталоге хранятся компоненты Joomla!. По умолчанию Joomla! содержит 11 компонентов, такие как новостная лента, компонент голосований, компонент поиска и т. д. Содержимое компонентов отображается на сайте с помощью связанных с ними модулей;
images — каталог содержит все картинки, используемые интерфейсом администратора, а также картинки статей, которые были загружены на сайте во время их написания. Подкаталог \smilies содержит смайлики, а подкаталог \stories — картинки, связанные со статьями. Подкаталог \banners содержит файлы баннеров;
includes— содержит PHP-файлы, используемые для автоматического вложения контента. В этом каталоге вы найдете несколько файлов, которые начинаются строкой "mambo" — это сделано для совместимости с предыдущими версиями Joomla!;
installation — содержит файлы, необходимые для начальной конфигурации системы при ее установке. Данный каталог должен быть удален сразу после установки. Старые версии Joomla! отказывались работать, если этот каталог существовал. Новые версии работать будут, но удаление этого каталога настоятельно рекомендуется:
♦ language— содержит языковые файлы, используемые для перевода сайта на другие языки. Языковый файл— это обычный текстовый файл, его формат напоминает формат известных в мире Windows INI-файлов. Все файлы сохраняются в кодировке UTF-8 (см. примечание "Кодировка UTF-8" в разд. "Настройка MySQL" далее в этой главе). Имена подкаталогов, содержащих файлы локализации для того или иного языка, стандартизированы. Первые две буквы — это код языка (по стандарту 1SO-639-2), после тире следуют еще два символа— код страны (по стандарту ISO-3I66). Например, локализация для Великобритании будет храниться в каталоге en-GB';
libraries — содержит основные библиотеки функций, используемые системой Joomla!. Joomla.'-сайт— по сути, это Web-приложения, использующее библиотеки из этого каталога. Загляните в каталог \libraries\Joomla!, и вы увидите библиотеки, реализующие различные функции Joomla!, например, database — функции для работы с базой данных, filesystem —для работы с файловой системой и т. д. Библиотеки сторонних разработчиков тоже хранятся в каталоге \libraries, точнее, подкаталогах этого каталога;
media — здесь хранятся мультимедиа-файлы;
modules — содержит модули, использующиеся для отображения той или иной информации. Стандартная инсталляция Joomla! содержит модули для отображения баннеров, последних новостей, формы входа на сайте, новостной ленты, голосований, случайных картинок и др. Модули, ровно как и панели, вызываются из шаблонов Joomla!. Очень часто модули отображают информацию, возвращаемую тем или иным компонентом;
plugins* — каталог для плагинов (расширений). В предыдущих версиях данный каталог назывался mambots (сокращение от Mambo robots). Плагины расширяют возможности Joomla! на более низком уровне, чем компоненты. Управление плагинами, в отличие от компонентов, осуществляется через меню Расширения панели управления;
templates— содержит каталоги каждого шаблона, установленного на Joomlal-сайте Имя подкаталогов в этом каталоге совпадает с названием шаблона. Например, файлы шаблона по умолчанию находятся в каталоге \rhuk_milkyway (сам шаблон называется rhukmilkyway);
Для России — в ru-RU. — Пер
♦ tmp* — каталог для временных файлов, а также для cookies, которые используются как панелью управления, так и пользовательским интерфейсом Joomla!;
♦ xmlrpc* — содержит, наверное, самую мощную новую функцию Joomla!: функцию удаленного вызова процедур посредством XML (extensible Markup Language Remote Procedure Call, XML-RPC). Интерфейс XML-RPC позволяет посылать серверу Joomla! запросы на вызов процедур, которые будут выполнены на сервере Joomla!.
Что дает интерфейс XML-RPC администратору Joomla!? С помощью XML- RPC вы можете с одного сервера управлять несколькими Joomlal-серверами. Также XML-RPC используется некоторыми блогами, например, w.bloggar. Блог w.bloggar предоставляет прекрасный Windows-интерфейс для управления блогом. Пользователи работают с Windows-приложением, которое напрямую передает информацию серверу Joomla! (загружает контент на сайт). В скором времени планируется поддержка других блогов, например, MetaWebBlog и MovableTypeAPl.
Примечание
Даже если вы никогда не слышали об XML-RPC, то наверняка слышали о его ближайшем родственнике — SOAP (Simple Object Access Protocol). SOAP был разработан на базе XML-RPC. Считается, что SOAP— более надежный, чем XML-RPC. Joomla! использует базовый XML-RPC, поскольку он работает быстрее, а дополнительные функции SOAP просто не нужны для Joomla!. Но разработчики Joomla! позаботились о поддержке SOAP; если она вам нужна, вы можете ее добавить с помощью встроенного SOAP-расширения для PHP 5.
В большинстве случаев вам не нужно редактировать файлы, содержащиеся в этих каталогах. Практически все настройки сайта можно выполнить с помощью Web-интерфейса администратора. Однако в некоторых особо сложных ситуациях может понадобиться редактирование исходного кода Joomla!, благо, эту операцию можно выполнить в любом текстовом редакторе.
Установка ХАМРР
Как уже было отмечено ранее, установка и настройка всех серверных программ, необходимых для запуска Joomla!, довольно сложны. Если, конечно, вы не квалифицированный администратор, для упрощения настройки всех серверов можете использовать ХАМРР. ХАМРР считают инсталлятором для ленивых, поскольку он содержит все необходимое (Apache, PHP и MySQL) "в одном флаконе".
Пакет ХАМРР был создан, чтобы вы могли быть полностью уверенными в том, что все серверы совместимы друг с другом и правильно настроены для
совместной работы. Первая буква зависит от операционной системы, а остальные буквы — это акроним от "Apache, MySQL, PHP, Perl". Хотя для работы Joomla! не нужен Perl, его наличие ей не повредит.
Примечание переводчика
Пакет ХАМРР для Windows так и называется — ХАМРР, для Linux — LAMPP, для Mac OS — МАМРР. Далее мы будем называть этот пакет ХАМРР без разделения на ОС.
Пакет ХАМРР доступен для следующих операционных систем: Windows. Linux, Sun Solaris и Mac OS. Вы можете скачать нужный вам инсталлятор с сайта ХАМРР:
www.apachefriends.org/en/xampp.html
После установки ХАМРР вам не нужно редактировать множество файлов или бороться с несовместимостями разного рода. Сразу после установки ХАМРР вы можете приступить к установке Joomla! на свой компьютер.
Примечание
Если вам нужен еще более простой способ установки Joomla!, вы можете выбрать Joomla! Stand Alone Server (JSAS, http://jsas.Joomlalsolutions.com) Однако если вам мало базовой реализации Joomla! и вы планируете построить сложный сайт, лучше устанавливать Joomla! вручную. Так вы лучше узнаете систему.
Компоненты ХАМРР и операционная система
Поскольку ХАММР— кроссплатформенное приложение, поэтому для каждой операционной системы в состав пакета ХАМРР входит уникальный набор приложений. Многие из этих приложений не нужны для работы Joomla!, но помогают администрировать ваш Web-сервер. Также вы можете расширить функциональность вашего сервера путем установки других серверных приложений, например, FileZilla FTP-сервер.
Как уже было отмечено, возможности пакета ХАМРР зависят от ОС.
Windows: пакет тестировался на Windows 98, NT, 2000, ХР и Vista. На момент написания этих строк, инсталлятор содержал следующее программное обеспечение: Apache, MySQL, PHP, PEAR, Perl, mod_php, modperl, modssl, OpenSSL, phpMyAdmin, Webalizer, Mercury Mail Transport System для Win32 и для NetWare Systems v3.32, JpGraph, FileZilla FTP server. MCrypt, eAccelerator, SQLite, WebDAV и mod_auth_mysql.
Linux: пакет тестировался в SUSE, Red Hat, Mandrake и Debian. На данный момент в составе пакета были: Apache, MySQL, PHP, PEAR, Perl, ProFTPD, phpMyAdmin, OpenSSL, GD, FreeType2, libjpeg, libpng, gdbm,
zlib, expat, Sablotron, libxml, Ming, Webalizer, PDF Class, ncurses, modjperl, FreeTDS, gettext, MCrypt, mhash, eAccelerator. SQLite й IMAP c-client.
Mac OS X: тестировался в Mac OS 10.4 и выше. На момент написания этих строк, инсталлятор содержал следующее программное обеспечение: Apache, MySQL, PHP, PEAR, SQLite, Perl, ProFTPD, phpMyAdmin, OpenSSL, GD, FreeType2, libjpeg, libpng, zlib, Ming, Webalizer, modjperl, eAccelerator и phpSQLiteAdmin.
Solaris: пакет тестировался на Solaris 8 и Solaris 9. В составе пакета вы найдете: Apache, MySQL, PHP, PEAR, Perl, ProFTPD, phpMyAdmin, OpenSSL, FreeType2, libjpeg, libpng, zlib, expat, Ming, Webalizer. PDF Class.
Перед установкой XAMPP вы должны для себя осознать, что это платформа предназначена для тестирования и разработки, но не для размещения сайта. Многие используют ее для размещения сайта, из-за чего сильно страдает безопасность. Вот несколько причин, по которым нельзя использовать ХАМРР для размещения сайта в Интернете:
у учетной записи администратора MySQL нет пароля;
демон MySQL открыт для всех пользователей сети;
Web-интерфейс MySQL — phpMyAdmin — открыт для всех пользователей сети;
стандартные имена пользователей Fi leZi 11а и Mercury известны всем.
Если вы все-таки решились использовать ХАМРР в качестве серверной платформы, убедитесь, что вы закрыли все дыры безопасности. Проверьте сайт ХАМРР для получения последних рекомендаций по безопасному использованию ХАМРР.
В этом разделе будет описана установка ХАМРР для каждой операционной системы.
Установка в Windows
После загрузки инсталлятора просто дважды щелкните на исполнимом файле (ехе) или на файле инсталлятора Microsoft (msi). Первым делом нужно выбрать язык установки (рис. 3.3). В большинстве случаев можно выбрать английский язык1 и нажать кнопку ОК.
Вы увидите окно приглашения, в котором нужно просто нажать кнопку Next. После этого следует выбрать каталог для файлов ХАМРР. При этом инсталлятор отобразит, сколько места на диске ему необходимо (примерно
Потому что русского в списке нет. — Пер.
220 Мбайт), и сколько свободно. Нажмите кнопку Next, чтобы принять установку в каталог c:\xampp (по умолчанию).
Рис. 3.3. Выбор языка
Программа установки ХАМРР распакует все необходимые файлы в выбранный вами каталог, а когда все будет готово, вы увидите ряд вопросов. Каждый раз инсталлятор будет спрашивать вас, хотите ли вы запускать то или иное приложение из состава ХАМРР (Apache, PHP, MySQL и т. д.) как службу.
Примечание переводчика
В оригинальном тексте книги описывается старая версия ХАМРР В новой версии перед установкой файлов нужно выбрать, какие компоненты ХАМРР вы хотите запускать как службы (сервисы). На рис. 3.4 представлен снимок окна более новой версии ХАМРР.
Рис. 3.4. Параметры установки
После установки ХАМРР будет запущена панель управления ХАМРР, позволяющая запускать и останавливать службы ХАМРР (Apache, MySQL, FileZilla), а также просматривать статус каждого приложения (рис. 3.5).
Рис. 3.5. Панель управления
Нажмите кнопку Admin справа от службы Apache. Вы увидите окно браузера, в котором сможете администрировать свой сервер. Вы можете поместить адрес страницы администрирования в закладки для быстрого доступа к ней.
Для запуска Joomla! вам совсем необязательно просматривать все ссылки Web-интерфейса ХАМРР. Однако ссылка Security (см. левую часть панели на рис. 3 6) довольно полезная, она показывает настройки безопасности вашего Web-сервера. Думаю, одного взгляда на эту страницу хватит, чтобы понять, что ХАМРР небезопасен.
Примечание переводчика
Практически напротив каждой службы на странице Security указано UNSECURE, что означает небезопасный...
Все готово для установки Joomla!. Перед установкой нужно отметить, что для хранения Web-страниц ХМАРР использует каталог \htdocs, т. е. если вы не изменяли каталог при установке, путь к Web-страницам будет такой: c:\xampp\htdocs.
WuLom 'jX *■ fur Wu-»>ws Vei non 1. .□ 11
Congratulations:
You have successfully installed XAMPP on this systemi
No* you can stan: using Apache and Co You should first try »status« on the left navigation tc make sure everything works fine.
For openssi support please use the test certificate with
For this release a special thanks to x •q for M excellent development and
compilation of all current * Special “ muuuiesi
Good luck, Kay Vogelgesang + Kai ‘Oswald* Seidler
Рис. 3.6. Страница настройки XAMPP (для Windows)
Примечание
В Windows ХР Service Pack 2 у вас могут быть проблемы с доступом к Web- серверу. Причина в том, что стандартный брандмауэр ХР блокирует необходимые для работы Web-сервера IP-порты. Подробнее этот вопрос мы рассмотрим в разд. "Решение проблем" далее в этой главе.
Установка в Linux
Для установки XAMPP вам нужно загрузить архив tar.gz. После загрузки введите следующую команду, чтобы получить права администратора (пользователя root):
SU
Теперь распакуем загруженный архив в каталог /opt. Для этого используйте следующую команду, изменив имя файла (у нас это xampp-linux-L5.tar.gz)— оно должно совпадать с именем файла загруженного архива:
tar xvfz xampp-linux-1.5.tar.gz -C /opt
Данная команда установит XAMPP в каталог /opt/lampp. Для запуска XAMPP-системы из консоли введите команду:
/opt/lanpp/lampp start
Для получения доступа к главной странице XAMPP-сервера запустите браузер и введите следующий URL:
http://localhost
Каталог для хранения Web-страниц — /opt/lampp/htdocs.
Внимание!
ХАМРР предназначен для использования в качестве платформы разработчика, его нежелательно применять для размещения сайта. Если вы хотите использовать ХАМРР в качестве платформы размещения, тогда убедитесь, что вы правильно настроили ХАМРР, поскольку по умолчанию он не использует никаких паролей доступа для администрирования. Подробнее о вопросах безопасности ХАМРР можете прочитать на сайте разработчиков.
В большинстве дистрибутивов Linux после установки ХАМРР не добавляется в сценарии инициализации системы, следовательно, после перезагрузки системы вам нужно будет опять запустить его вручную. Сейчас мы попытаемся настроить порядок загрузки системы так, чтобы каждый раз при ее загрузке загружался и ХАМРР.
Прежде всего, нужно определить уровень запуска по умолчанию. Для этого запустите egrep со следующими параметрами:
egrep :initdefault /etc/inittab
Вы должны увидеть примерно следующее:
id:3:initdefault
Число после id может быть 3 или 5. Если у вас Debian, число может быть равно 2. Перейдите в каталог, соответствующий уровню запуска (вместо X нужно подставить число, которое вы увидели в выводе egrep):
cd /etc/rc.d/rcX.d
Если каталог не существует, попробуйте перейти в каталог /etc/init.d/rcX.d или в каталог /etc/rcX.d. После этого создайте символьную ссылку для запуска ХАМРР:
In —s /opt/lanipp/lanipp S991ampp
Теперь создадим ссылку для завершения ХАМРР при разгрузке системы:
In —s /opt/lanipp/lanipp KOllampp
Теперь ваша операционная система будет загружать ХАМРР при запуске и автоматически завершать его работу, когда вы выключаете компьютер.
Примечание
У дистрибутива openSUSE 10.0 довольно специфическая процедура запуска. Посетите сайт ХАМРР (www.apachefriends.org/en/xampp.html) для получения дальнейших инструкций.
Установка в Mac OS
Установка ХАМРР в Mac OS— самая простая. Вам нужно загрузить ХАМРР-пакет, который доступен в архивах .sit и .tar. Я рекомендую исполь-
зевать Stuff! t-архи вы (.sit), поскольку для Mac OS это родной формат архива, да и программа Stufflt Expander обеспечивает дружественный интерфейс.
Распакуйте архив в любой каталог на вашем жестком диске, дважды щелкните на исполнимом файле инсталлятора, который установит ХАМРР в каталог /Applications/xampp.
Запустите терминал (Terminal shell) и, чтобы активировать учетную запись администратора, введите команду: sudo su
Для запуска ХАМРР введите команду:
/Applications/xampp/xamppfile s/mampp s tart
На этом все!
Установка индивидуальных серверов WAMP/LAMP/MAMP
Поскольку ХАМРР — это "все в одном флаконе", инсталляция ХАМРР занимает довольно много места на диске, а именно в три раза больше, чем собственно серверы, необходимые для работы Joomla!. Вы можете отдельно установить и настроить каждый необходимый сервер. Наборы программного обеспечения, позволяющие реализовать функции, подобные ХАМРР, получили названия: WAMP, LAMP и МАМР Первая буква в названии пакета совпадает с первой буквой названия операционной системы: Windows, Linux, Mac OS. Остальные буквы — это акроним для "Apache, MySQL, PHP".
При установке различных серверов могут возникнуть проблемы конфигурации. Решение наиболее частых проблем описано в разд. "Решение проблем" далее в этой главе. Хотя в этой главе я попытался затронуть практически все нюансы, касающиеся установки серверов, на всякий случай прочитайте файлы ReadMe, поставляющиеся вместе с устанавливаемым программным обеспечением.
Примечание
Если вы хотите устанавливать серверы отдельно, обратите внимание на их номера версий. При использовании версий, имеющихся в составе ХАМРР, вы минимизируете потенциальные проблемы.
В этом разделе мы рассмотрим пошаговую установку отдельных серверов.
Установка и настройка сервера Apache
Отладка ошибок сервера Apache может занимать много времени, потому что сам сервер вводит вас в заблуждение неоднозначностью сообщений об ошиб-
ках. Например, вы можете установить MySQL-плагин, версия которого будет несовместима с версией Apache. Вместо сообщения о несовместимости вы получите сообщение о том. что плагин не найден:
Cannot load...into server: No such file or directory
Такие сообщения сбивают с толку и отправляют администратора по заведомо ложному пути. В чем реально заключается проблема, можно только догадаться или же получить подсказку на форумах, где пользователи уже сталкивались с подобными проблемами.
Итак, давайте загрузим Apache и запустим его. Загрузить Web-сервер Apache можно с сайта www.apache.org. Зайдите на этот сайт и щелкните по ссылке HTTP Server. Не нужно загружать самую последнюю версию, достаточно скачать стабильный пакет во избежание потенциальных проблем с "сырыми" версиями.
Примечание
Web-сервер Apache уже есть в составе Mac OS, поэтому вам не нужно его устанавливать, однако вы можете его установить, если хотите использовать более новую версию. Настройка Web-сервера Apache в Macintosh (который Apple называет "Web Sharing") будет рассмотрена в разд. "Установка Apache в Mac OS" далее в этой главе.
Вы можете загрузить уже откомпилированный двоичный файл или же исходный код Web-сервера. В последнем случае вы должны сами знать, как его откомпилировать, тут я вам ничем не помогу. Для новичка оптимальный выбор — установка уже откомпилированных файлов. Откомпилированные двоичные файлы доступны в следующих форматах: aix, cygwin, darwin, freebsd. hpux, linux. macosx, netware, os2, os390. reliantunix, rpm, sinix, Solaris и Win32.
Для работы Joomla! необходима версия Apache 1.13 или более новая. На момент написания этих строк была доступна (и я рекомендую ее использовать) версия 2.2.
Установка Apache в Windows
Когда вы запустите инсталлятор Apache, то увидите окно, описывающее Web-сервер Apache. Инсталляция очень проста и состоит всего из нескольких шагов. Вам нужно ввести основные сведения о сервере — имя домена, имя сервера, e-mail администратора и выбрать порт (рис. 3.7).
Если вы устанавливаете Apache на частный сервер, ноутбук или рабочую станцию, возможно, у вас нет доменного имени (например, www.example.com). В этом случае в качестве домена и имени сервера укажите localhost, а в качестве e-mail администратора — admin@locahost.
Рис. 3.7. Перед установкой нужно задать базовые параметры Apache
Примечание
Если вы хотите сделать ваш Web-сервер доступным остальным компьютерам локальной сети, но у вас нет доменного имени, вы можете указать свой локальный IP-адрес в качестве значения первых двух полей. Если у вас запущен DNS- сервер, то вы наверняка знаете, что и как настроить.
Значение порта оставьте по умолчанию— 80, при условии, конечно, что у вас не установлены другие Web-серверы, например IIS. Если вы хотите, чтобы ваш Web-сервер был доступен только текущему пользователю (т. е. вам и только вам), выберите настройку порта only for the Current User и укажите порт 8080.
Примечание
Если вы делаете Web-сервер доступным всем пользователям (выбираете опцию for All Users), Apache будет автоматически запускаться как служба Windows (это отлично, если вы часто его используете). В пользовательском режиме (only for the Current User) вам нужно вручную запускать сервер после каждой перезагрузки системы. Иногда бывает полезным сделать сервер доступным для всех пользователей, даже если вы планируете использовать порт, отличный от 80. Вы можете изменить номер порта путем редактирования конфигурационного файла. Даже если сейчас вы выберете ручной запуск сервера, вы всегда сможете установить Apache как службу путем запуска apache.exe с ключом -к. Подробнее об этом вы можете прочитать в руководстве по серверу Apache.
Нажмите кнопку Next, и инсталлятор попросит вас выбрать тип установки — Topical (обычная установка) или Custom (выборочная установка). Начинающим пользователям нужно выбрать обычную установку, а более квалифицированным — пользовательскую.
Наконец, инсталлятор попросит вас выбрать каталог, в который нужно установить Apache. Для установки Joomla! прекрасно подойдет каталог по умолчанию, предложенный инсталлятором — C:\Program Files\Apachc Software Foundation\Apache2.2.
Запомните каталог, в который будет установлен Apache. Скоро он еще нам понадобится для правильной настройки PHP, MySQL и, чуть позже, Joomla!. Для продолжения установки нажмите кнопку Next, а затем — Install. Обычно процесс установки проходит без всяких проблем. Чтобы Apache корректно работал, после установки вам нужно изменить несколько опций в конфигурационном файле.
В Windows сервис Apache запускается от имени системного пользователя LocalSystem. При первом запуске Apache встроенный брандмауэр Windows (имеется в Windows ХР SP2 и в Windows Vista) спросит вас, не нужно ли блокировать его запуск (рис. 3.8): брандмауэр обнаружит попытку Web-сервера открыть порт 80. Для нормальной работы Apache нужно нажать кнопку Unblock (Разблокировать).
Рис. 3.8. Нажмите кнопку Unblock, чтобы Apache работал через брандмауэр
Если вы откроете окно браузера и введете адрес http://Iocalhost, то увидите стандартное приветствие Apache (рис. 3.9). Если вы при установке указали другой порт, например 8080, то в строке адреса браузера нужно ввести http://localhost-.8080/.
Примечание переводчика
Следуя инструкциям этой книги, я установил ХАМРР, проверил его работоспособность и забыл завершить работу службы Apache, входящей в состав ХАМРР. Затем, когда я установил и пытался запустить отдельный сервер Apache, между Web-сервером ХАМРР и установленным Apache произошел конфликт, поскольку оба Web-сервера пытались захватить порт 80, поэтому я получил сообщение об ошибке. Не повторите мою ошибку и, если вы уже установили ХАМРР, не забудьте деактивировать Web-сервер, входящий в его состав.
Рис. 3.9. Если Apache работает, вы получите это простое сообщение
Если в процессе установки вы получили сообщение, для подробного описания ошибки просмотрите файлы протоколов, находящиеся в подкаталоге logs основного каталога Apache. Если вы не изменяли каталог при установке, то файлы протоколов следует искать в каталоге C:\Program Files\Apache Software Foundation \Apache2.2\logs.
В каталоге logs вы найдете несколько файлов протоколов. Основными файлами являются error.log (содержит сообщения об ошибках) и install.log (содержит список операций, выполненных при установке). Оба файла являются обычными текстовыми файлами, и их можно открыть в любом текстовом редакторе, например, в Блокноте.
Совет
Если в процессе установки Apache возникли проблемы (кроме блокирования Web-сервера брандмауэром), то лучше всего устранить их, а затем удалить и заново установить Apache.
Установка Apache в Linux
Последовательность действий по установке Apache в Linux очень сильно зависит от используемого дистрибутива. Рекомендуется загрузить исходные коды и, используя компилятор C++, откомпилировать Apache для вашей версии Linux. Данный процесс выходит за рамки этой книги, но вы можете ознакомиться с ним по адресу http://httpd.apache.org.
Примечание переводчика
Видно, автор книги имеет весьма посредственные представления о Linux, в частности о компиляции исходного кода. Ведь намного проще установить уже откомпилированный пакет, нежели собирать исходный код вручную. Web-сервер Apache зачастую входит в состав практически всех современных дистрибутивов, но не устанавливается по умолчанию. Установка и настройка сервера Apache в разных дистрибутивах Linux подробно рассматривается в книге Колисниченко Д. Н. Серверное применение Linux — СПб.: БХВ-Петербург, 2008.
Установка Apache в Mac OS
Устанавливать Apache в Mac OS приходится довольно редко. Чтобы активировать его, выполните команду System Preferences из меню Apple. Затем выберите Sharing, и вы увидите вкладку File & Web. На этой вкладке нажмите кнопку Start в области Web Sharing: этим вы активируете Apache.
Чтобы увидеть стандартную страницу приветствия Apache, запустите браузер и введите следующий адрес: http://earu_IP_adpec. В качестве корневого каталога используется каталог /Library/Webserver Documents.
Настройка Web-сервера Apache
Конфигурация Apache после его установки — это самый сложный шаг. Поскольку Apache предоставляет множество функций. Его конфигурационный файл содержит множество опций, которые можно изменить.
Конфигурационные файлы Apache хранятся в подкаталоге \conf корневого каталога Apache (каталога, в который вы установили Apache). Если вы работаете в Windows, перейдите в этот каталог с помощью Проводника Windows. Главный конфигурационный файл называется httpd.conf. Откройте его в любом текстовом редакторе. Только не пугайтесь! Файл действительно очень большой. На момент написания этой книги в нем было более 530 строк.
В листинге 3.1 представлен небольшой фрагмент файла конфигурации Apache для демонстрации того, как определяются параметры Web-сервера. Сначала задается имя директивы, а потом, через пробел, значение. Некоторые директивы имеют числовые значения, некоторые — текстовые, некоторые — URL.
Листинг 3.1. Фрагмент файла httpdxonf: демонстрация присвоения значения = директивам
# httpd.conf — файл конфигурации Apache
##
#
Основан на конфигурационном файле сервера NCSA #
## Раздел 1: глобальное окружение #
ServerType может быть inetd или standalone. Значение Inetd
поддерживается только на UNIX
#
ServerType standalone
#
ServerRoot: задает корневой каталог сервера, в нем хранятся
конфигурационные файлы и файлы протоколов
ServerRoot "/usr/local/apache_t3.lbl" #
Timeout: задает тайм-аут для отправки и получения информации в секундах #
Timeout 300
#
KeepAlive: разрешает или запрещает постоянные соединения. Для
отключения укажите значение "Off"
#
KeepAlive On
Примечание переводчика
Комментарии из листинга 3.1 были переведены на русский язык.
При редактировании файла конфигурации вы будете часто использовать функцию поиска по тексту. Даже у простейших текстовых редакторов (вроде Блокнота) есть эта функция, поэтому с редактированием httpd.conf не должно быть проблем.
Вероятно, что единственные изменения файла конфигурации Apache будут связаны с проблемами интеграции с интерпретатором PHP. Поддержка PHP сервером Apache добавляется благодаря следующим строкам:
BEGIN PHP INSTALLER EDITS
PHPIniDir "C:\Program Files\Apache Software Foundation\Apache2.2\"
LoadModule php5_module "C:\Program Files\Apache Software FoundationX
Apache2.2\php5apache2_2.dll"
END PHP INSTALLER EDITS
Если данные строки отсутствуют после установки PHP, вы должны их добавить вручную.
Примечание переводчика
Обратите внимание, что в листинге 3.1 приводится фрагмент файла конфигурации из Linux-версии Apache (это можно определить по стилю задания пути к корневому каталогу), а строки, добавляющие поддержку PHP, приводятся для Windows-версии. Если у вас возникли проблемы с установкой связки Apache + PHP + MySQL в Linux, рекомендую книгу Колисниченко Д. Н. Серверное приме нение Linux. — СПб.: БХВ-Петербург, 2008.
Тестирование сервера Apache
Обратиться к локальному Web-серверу вы можете по одному из двух адресов: по символьному адресу или по IP-адресу. В большинстве случаев достаточно открыть окно браузера и ввести следующий адрес:
http://localhost/
Если вы увидели сообщение об ошибке вместо сгенерированной сервером домашней страницы, попробуйте указать IP-адрес локального компьютера: http://127.0.0.1
Если и в этом случае вы опять получили сообщение об ошибке, убедитесь, что Apache установлен на стандартный порт. Откройте ваш httpd.conf в любом текстовом редакторе и найдите директиву Listen. Значение 80 этой директивы говорит о том, что используется стандартный порт 80. Если директива Listen содержит другой номер порта (например, 8080), тогда его нужно указать в адресной строке браузера:
http://127.0.0.1:8080
Установка файла .htaccess
Файл гипертекстового доступа (обычно называется .htaccess) используется сервером Apache для определения уровня доступа к различным каталогам. Если файл .htaccess существует в одном из каталогов, адресуемых Web- сервером, вы можете задать в нем директивы конфигурации Apache, переопределяющие директивы, заданные в файле конфигурации Apache.
Директивы из файла .htaccess позволяют запретить или разрешить определенным пользователям доступ к каталогу, изменить стандартную страницу ошибок (она отображается, если запрошенный файл не существует), включить SSI (Server Side Includes), запретить доступ пользователей по IP-адресу, изменить страницу по умолчанию для каталога, настроить перенаправления, предотвратить хотлинкинг (попытку получения файлов, например, картинок, с другого сервера) и многое другое.
Файл .htaceess задает параметры доступа для каталога и для всех его подкаталогов. Однако если файл .htaceess есть в одном из покаталогов, то его директивы могут переопределять значения родительских директив (из родительского каталога).
Joomla! содержит пример файла .htaceess, предоставляющего правильные настройки каталога Joomla! для использования URL вида SEP (search enginefriendly), подробнее об этом мы поговорим в главе 12. Дистрибутив содержит файл htaccess.txt, который нужно переименовать на сервере в .htaceess, если вы хотите его использовать.
Совет
Проводник Windows не позволит переименовать файл в .htaceess, потому что он "увидит" только расширение, но без имени файла (вроде txt). Однако вы можете использовать команду rename или геп (в командной строке), и система переименует файл.
В листинге 3.2 показан файл htaccess.txt, который распространяется вместе с Joomla!. Руководство по Joomla! рекомендует не использовать этот файл без крайней необходимости, т. е. если после установки Joomla! у вас нет ошибок, связанных с правами доступа. Если в вашем каталоге уже есть файл .htaceess, вы можете сравнить директивы из листинга 3.2 и вашим файлом .htaceess.
Листинг 3.2. Стандартный файл htaceess из дистрибутива Joomla!
##
Oversion $Id: htaccess.txt 5973 2006-12-11 01:26:33Z robs $
@package Joomla! RE
@localized Авторские права (С) 2005 Joom.Ru — Русский дом Joomla!
@copyright Авторские права (С) 2005 Open Source Matters.
Все права защищены.
@license http://www.gnu.org/copyleft/gpl.html GNU/GPL
JoomlaI — свободное программное обеспечение.
@translator Sourpuss (Sourpuss@mail.ru)
##
===== ВНИМАНИЕ! ! ! =====
ОБЯЗАТЕЛЬНО УСТАНОВИТЕ CHM0D 644 НА ЭТОТ ФАЙЛ
#
Установка кодировки сайта по умолчанию. При необходимости,
закомментируйте.
AddDefaultCharset WINDOWS-1251
ErrorDocument 404 /404.php
Следующие строки — попытка исправить настройки PHP
для полного соответствия системным требованиям Joomla!.
Раскомментируйте (символ комментария — #) нужные строки,
если настройки вашего хоста не соответствуют
системным требованиям Joomla!.
При возникновении 500-й ошибки сервера, закомментируйте строку, # вызывающую ошибку, или все строки с php_value.
php_value register_globals 0
php_value display_errors 0
php_value file_uploads 1
php_value magic_quotes_gpc 1
php_value magic_quotes_runtime 0
# Пример явного указания каталога для записи сессий:
# для Windows — с:/temp
# для UNIX — /tmp
# Указанные каталоги должны физически существовать
# и быть доступными для записи
# При необходимости раскомментируйте строку ниже этой # php_value session.save_path с:/temp
#####################################################
ПРОЧТИТЕ ПОЛНОСТЬЮ, ЕСЛИ БУДЕТЕ ИСПОЛЬЗОВАТЬ ЭТОТ ФАЙЛ #
Строка ниже этого раздела: 'Options +FollowSyrriLinks' может вызвать
проблему при некоторых конфигурациях сервера. Она необходима для
использования модуля Apache mod_rewrite, но может быть уже настроена
администратором вашего сервера, и изменение этого параметра в .htaccess # может быть запрещено.
Если эта директива вызывает ошибку сервера, то закомментируйте строку
(добавьте символ # в начало строки), перезагрузите в браузере сайт и
протестируйте работу SEF-ссылок. Если они работают, то вам не надо
ничего менять здесь, т. к. все уже настроено администратором сервера. #
Используйте только один из двух разделов SEF, которые находятся ниже.
Строки, которые можно раскомментирвать (и использовать), имеют только
один символ #. Строки с двумя символами # раскомментировать не надо.
В разделах, которые вы не используете, все строки должны начинаться с # символа #.
Для стандартного SEE, используйте раздел стандартного SEE. Вы можете
закомментировать все строки с RewriteCond и уменьшить загрузку сервера, # если у вас в корне нет каталогов с названиями 'component' или 'content' #
Если вы используете сторонние компоненты SEE или Core SEE, то
раскомментируйте все строки в разделе
'SEE сторонних разработчиков или Core SEE' #
#####################################################
#### РЕШЕНИЕ ПРОБЛЕМЫ С НЕРАБОТАЮЩИМИ URL КОМПОНЕНТОВ #####
СПЕЦИАЛЬНОЕ ПРИМЕЧАНИЕ ДЛЯ ПОЛЬЗОВАТЕЛЕЙ SMF, ИСПОЛЬЗУЮЩИХ МОСТ
ИНТЕГРАЦИИ, ИЛИ ДЛЯ ТЕХ СЛУЧАЕВ, КОГДА НЕ РАБОТАЮТ URL КОМПОНЕНТОВ #
В обоих разделах: 'Стандартного SEE' и 'SEE сторонних разработчиков или # Core SEE' строка:
RewriteCond %{REQUEST_URI} л(/component/option,com) [NC,OR] ##опционально — смотрите примечания##
может быть раскомментирована. Если ваша Joomla!/Mambo работает в
подкаталоге, то в эту строку можно вставить название подкаталога.
Например, если ваша Joomla1/Mambo находится в подкаталоге /test/, # то измените:
RewriteCond %{REQUEST_URI) л(/component/option,com) [NC,OR] ##опционально — смотрите примечания##
на:
RewriteCond %{REQUEST_URI} j(/test/component/option,com) [NC,OR] ##опционально — смотрите примечания##
#
#####################################################
# Может быть закомментировано, если вызывает ошибку сервера. Смотрите
примечания выше.
Options +FollowSymLinks #
Включение mod_rewrite
RewriteEngine On
Раскомментируйте следующую строку, если URL вашего Web-сервера # не связаны напрямую с физическими путями файлов.
Обновите ВашКаталогJoomla! (используйте "/" для обозначения корня
сервера)
RewriteBase /
####### Начало раздела стандартного SEF
####### Используйте эту секцию ТОЛЬКО для работы встроенного SEE Joomla!
# ВСЕ (RewriteCond) строки в этой секции необходимы, только если
# на вашем сервере имеются каталоги с названиями content
# или component.
# Если каталоги с такими именами отсутствуют, то закомментируйте
## эти строки. #
RewriteCond %(REQUEST_FILENAME} !-f
RewriteCond %(REQUEST-FILENAME] !-d
#RewriteCond %{REQUEST_URI} "(/component/option,com) [NC,OR]
##опционально — смотрите примечания##
RewriteCond %(REQUEST_URI} (/I\.htm|\.php|\.html|/['.]*)$ [NC] RewriteRule "(content/|component/} index.php #
########## Конец раздела стандартного SEF
########## Начало раздела SEF сторонних разработчиков или Core SEF ########## Используйте этот раздел, если вы используете SEF-расширения
########## типа OpenSEF, 404_SEF, 404SEFX, JoomSEF, SEF Advance и т. д. #
#RewriteCond %{REQUEST_URI} л(/component/option,com) [NC,OR]
##опционально — смотрите примечания##
#RewriteCond %(REQUEST_URI} (/I\.htm|\.phpI\.html|/[~.J *)$ [NC] #RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %(REQUEST_FILENAME) !-d
#RewriteRule (.*) index.php #
######### Конец раздела SEF сторонних разработчиков или Core SEF
######### Начало — правила обработки запросов для блокировки
# распространенных уязвимостей
# If you experience problems on your site block out the operations
# listed below
# This attempts to block the most common type of exploit 'attempts' to ## Joomla!
#
Block out any script trying to set a mosConfig value through the URL RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_](1,21}(=|\%3D) [OR] # Block out any script trying to base64_encode crap to send via URL RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
Block out any script that includes a <script> tag in URL
RewriteCond %(QUERY_STRING} (\<|%3C).*script.*(\>I%3E) [NC,OR]
Block out any script trying to set a PHP GLOBALS variable via URL RewriteCond %{QUERY_STRING] GLOBALS(=|\[I\%[0-9A-Z](0,2}) [OR]
Block out any script trying to modify a _REQUEST variable via URL RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z](0,2}}
Send all blocked request to homepage with 403 Forbidden error! RewriteRule ''(.*)$ index. php [ F, L] #
########## Конец - Правила обработки (Rewrite rules) для блокировки
# распространенных уязвимостей
Примечание переводчика
В листинге 3.2 приводится локализированная версия файла htaccess.txt из дистрибутива локализированной версии Joomla!.
Установка и настройка PHP
После запуска Apache настало время установки и настройки PHP. PHP — это язык программирования, запускаемый с помощью Apache (или Microsoft IIS), на котором и написана Joomla!, т. е. интерпретатор PHP нужен для запуска Joomla! на вашем сервере.
Удобно то, что если вы работаете в Windows, то можете установить PHP как для Web-сервера Apache, так и для Web-сервера Microsoft IIS — в зависимости от ваших предпочтений.
Скачать PHP можно с сайта www.php.net.
Apache может взаимодействовать с PHP двумя способами: PHP может быть установлен как модуль Apache (это называется Server Application Programming Interface или SAP1) или же PHP может запускаться через интерфейс CGI (Common Gateway Interface, общий интерфейс шлюза). Интерфейс CGI довольно медленный, поэтому в этой книге мы будем рассматривать только SAPI, т е. установку PHP как модуля Apache.
Установка PHP на сервер Apache под управлением Windows
Первым делом нужно скачать инсталлятор для Windows и установить его. Чтобы PHP корректно работал с Apache, нужно добавить каталог PHP в список каталогов, задаваемый переменной окружения path. PHP будет установлен в каталог C:\Program Files\Apache Software Foundation\Apache2.2\.
Примечание переводчика
Наверное, автор немного ошибся. По умолчанию PHP устанавливается в каталог C:\PHP.
Чтобы добавить каталог PHP в список Path, выполните команду меню Пуск | Панель управления | Система. Вы увидите окно Свойства системы Перейдите на вкладку Дополнительно и нажмите кнопку Переменные среды (рис. 3.10).
Рис 3.10. Нажмите кнопку Переменные среды
Пролистайте список Системные переменные и найдите переменную Path (рис. 3.11). Выделите ее и нажмите кнопку Изменить. Появится окно Изменение системной переменной. Значение переменной path может быть очень длинным. Для перемещения в конец значения нажмите клавишу <End>. После этого добавьте точку с запятой (,) и укажите полное имя РНР-каталога. После этого нажмите кнопку ОК для установки нового значения. Затем еще два раза нажмите кнопку ОК— один раз в окне Переменные среды, а второй раз — в окне Свойства системы. Изменения вступят в силу только после перезагрузки вашего компьютера. Перезагрузите компьютер прямо сейчас и можете приступать к тестированию PHP на сервере Apache. Сразу после перезагрузки вы можете перейти к разд. "Тестирование PHP" далее в этой главе, пропустив неактуальные для вас разделы.
Внимание!
Во время написания этих строк модуль, использующийся для связки PHP 5 с Apache (php5apache2.dll), не работал правильно. Получить корректно работающую версию этого модуля можно на сайте www.apachelounge.com. Хотя со временем данная проблема должна быть устранена.
Примечание переводчика
Прогнозы автора книги подтвердились, новая версия (поставляется с последними версиями PHP 5) php5apache2.dll прекрасно работает с Apache 2, поэтому посещать сайт www.apachelounge.com не нужно.
Рис. 3.11. Выберите переменную Path в списке системных переменных
Установка PHP на сервер Apache под управлением Linux
В Linux я рекомендую откомпилировать исходный код PHP самостоятельно, а затем уже установить его. Поскольку существует множество разных дистрибутивов Linux, данный технический процесс выходит за рамки этой книги. Об установке PHP в UNIX/Linux вы можете прочитать по адресу: www php.net/manual/en/install.unix apacheZ.php.
Примечание переводчика
Опять не согласен с автором по поводу компиляции исходного кода PHP. Гораздо проще установить уже откомпилированные пакеты с PHP. О том, как это сделать, вы можете прочитать в книге Колисниченко Д. Н. Серверное применение Linux. — СПб.: БХВ-Петербург, 2008.
Установка PHP на сервер Apache под управлением Mac OS
Вы можете загрузить инсталлятор PHP для Mac OS, а затем установить с его помощью PHP. Подробную информацию об установке и настройке PHP в Mac OS вы можете получить по адресу:
http://developer.apple.com/internet/opensource/php.html
Последние версии Mac OS поддерживают свободную среду разработки Xcode. Xcode поддерживает много языков программирования, в том числе и PHP. Исчерпывающую информацию об Xcode вы можете получить по адресу:
http://developer.applc.com/internet/scripting/phpappledevtools.html
Установка PHP на Microsoft Internet Information Server
У многих Windows-пользователей уже установлен Microsoft Internet Information Server (IIS), поэтому из соображений экономии системных ресурсов, нет особого смысла устанавливать еще один Web-сервер. К тому же MS IIS оптимизирован для Windows и позволяет достичь большей производительности, чем Apache на Windows-платформе.
Загрузите инсталлятор PHP и запустите его. Когда инсталлятор спросит, какой Web-сервер вы будете использовать, выберите IIS и укажите его версию. По умолчанию PHP будет установлен в каталог C:\PHPV
Когда инсталлятор спросит вас, хотите ли вы добавить каталог PHP в список поиска (переменная Path), согласитесь (выберите Yes), что позволит IIS найти все необходимые для запуска PHP компоненты. Кроме этого, инсталлятор отобразит предупреждение, о том, что карта скриптов не зарегистрирована, и спросит, хотите ли вы ее зарегистрировать. Соглашайтесь.
По окончанию установки вы увидите следующее сообщение:
NT user may need to set appropriate permissions for the various php files and directories. Usually IUSR_MachineName (or the user your web server runs as) will need read writer access to the uploadtmp and session directories, and execute access for php.exe and php4ts.dll.
Примечание переводчика
Данное сообщение напоминает пользователям NT (Windows NT 2000, ХР, Server 2003, Vista), что нужно установить права доступа к файлам и каталогам PHP. В частности, пользователь 1и8Р_ИмяКомпьютера (или любой другой, от имени которого запускается I IS) должен иметь право чтения и записи каталогов uploadtmp и session, а также право запуска файлов php.exe и php4ts.dll. Права доступа нужно устанавливать, только если вы используете файловую систему NTFS.
После изменения переменной Path вам нужно перезагрузить компьютер, поэтому сделайте это прямо сейчас.
Тестирование PHP
После установки PHP нужно протестировать его путем написания небольшой PHP-программы. Откройте текстовый редактор (например. Блокнот) и введите следующую строку:
<?php phpinfof); ?>
Рис. 312. Информационная страница PHP
Сохраните файл под именем phpinfo.php и поместите его в корневой каталог документов вашего Web-сервера. Откройте браузер и введите следующий URL:
http://localhost/phpinfo.php
Ваш браузер отобразит информационную страницу PHP (рис. 3.12). Сохраните или распечатайте данную информационную страницу. В будущем, если у вас возникнут какие-либо проблемы с настройками сервера, вы сможете сравнить текущие параметры с установленными ранее параметрами (с печатной версией информационной страницы). Однажды это помогло мне выяснить причину проблемы.
Если ваш браузер не отобразил информационную страницу, а инсталлятор PHP сообщил, что установка прошла успешно, прочитайте разд. "Решение проблем" далее в этой главе, чтобы выяснить, что произошло. Сейчас вы можете только попытаться перезагрузить систему, чтобы убедиться, что модуль PHP загружен.
Установка и настройка MySQL
MySQL— превосходный бесплатный реляционный сервер баз данных, который по своим функциям ничем не уступает коммерческим проектам ценой в несколько тысяч долларов. Joomla! использует MySQL для хранения текстового контента и большинства настроек сайта. Установка MySQL довольно проста, настройка немного сложнее.
Загрузить MySQL можно с сайта W3wv.niysql.com. Щелкните на ссылке Downloads в левой части сайта. В большинстве случаев нужно скачать пятую версию MySQL, поскольку у нее больше новых функций, чем у предыдущих версий. Если по некоторым причинам нужно использовать четвертую версию, знайте, что Joomla! превосходно работает с ней.
Совет
Если у вас Mac OS Server Edition, то устанавливать MySQL вам не нужно — он уже установлен. Запустить MySQL Manager можно командой меню Applications | Server | MySQL Manager.
Существуют два вида инсталляторов MySQL: Essentials (базовый) и Complete (полный). Вам нужен базовый инсталлятор, хотя в книге будет использоваться его полная версия для более подробного описания.
После загрузки MySQL-сервера я настоятельно рекомендую отдельно скачать программу MySQL Administrator tool, предоставляющую графический интерфейс администратора: она сделает вашу жизнь проще. Программа абсолютно
бесплатна и находится в разделе GUI Tools на Web-сайте www.mysql.com Мы будем использовать ее в следующей главе.
После загрузки инсталлятора его нужно извлечь из ZIP-архива в любой каталог на жестком диске.
Установка MySQL
Инсталлятор MySQL одинаково работает на всех платформах. В этой главе мы рассмотрим процесс установки MySQL в Windows, но на остальных платформах он происходит аналогично. Для начала распакуйте инсталлятор на жесткий диск и запустите его (рис. 3.13). Нажмите кнопку Next, чтобы перейти к установке.
Рис. 313. Запуск инсталлятора
Для работы Joomla! вам не нужны все те утилиты, которые входят в состав полной (Complete) установки. Выберите тип установки Typical и нажмите кнопку Next.
Когда увидите экран подписки на MySQL.com. позволяющий подписаться на рассылку по e-mail-информации об обновлениях, выберите Skip Sign-Up for MySQL.com для отказа от подписки. Информация, предоставляемая командой MySQL.com, полезна, но не будем тратить на процесс подписки время.
Для начала установки вам нужно нажать кнопку Next. На большинстве компьютеров установка не займет и десяти минут. Хотя установка завершена,
это не еще не конец Вам предстоит выполнить базовую настройку MySQL, для этого не выключайте флажок Configure the MySQL Server now и нажмите кнопку Finish для запуска мастера настройки.
Настройка MySQL
После отображения мастером конфигурации экрана приветствия вам нужно будет выбрать между стандартной (Standard Configuration) и расширенной конфигурацией (Detailed Configuration), как показано на рис. 3.14. Даже если вы оставите все опции как есть, т. е. по умолчанию, вы получите подробное представление о настройке MySQL.
Рис. 3.14. Выберите вариант Detailed Configuration и нажмите кнопку Next
Далее нужно выбрать тип сервера (рис. 3.15). Поскольку в этой главе мы говорим о том, как настроить машину разработчика Joomla!, вы можете выбрать опцию Developer Machine (Машина разработчика). Если же компьютер будет сконфигурирован как MySQL-сервер или как выделенный MySQL- сербер', вы можете выбрать соответствующие опции — Server Machine или Dedicated MySQL Server Machine
Далее нужно выбрать предполагаемое использование сервера баз данных Поскольку Joomla! может адресовать сервер многими способами, вы можете оставить выбранной опцию Multifunctional Database (Многофункциональная
1 Когда на этом компьютере не запускаются серверы, кроме MySQL. — Пер.
база данных) и нажать кнопку Next (рис. 3.16). Если вы устанавливаете MySQL на сервере заказчика, где будет установлена Joomla!. или же на сервере виртуального сообщества, где будет много транзакций, возможно, нужно выбрать опцию Transactional Database. Однако в большинстве ситуаций оптимальным будет выбор по умолчанию.
Рис. 3.15. Для экспериментов с Joomla' выберите вариант Developer MachineРис. 3.15. Для экспериментов с Joomla' выберите вариант Developer Machine
Рис. 3.15. Для экспериментов с Joomla' выберите вариант Developer Machine
Рис. 3.15. Для экспериментов с Joomla' выберите вариант Developer Machine
MySQL Server Instance Conf gyration Wizard
MySQL Server Instance Configuration
Configure the MySQL Server 5.0 server Instance.
Please select the database usage.
'♦ Mu tifunchonal Database;
General purpose databases. This wilt optimize the server for the use of the fast transact onai InnoDB storage engine and the high speed MylSAM storage engine.
Transactional Database Only
Optimized for application servers and transactional web applications This will make InnoDB the main storage engine. Note that the
V i^<J MylSAM engine can still be used.
Non-Transactional Database Dnly
Suited for simple web applications, monitoring or logging apphcat ons as well as analysis programs. Only the non transactional MylSAM storage engine will be activated.
<Back j | №xt >| Cancel
Рис. 3.16. Выберите вариант Multifunctional Database и нажмите кнопку Next
Теперь вам предстоит выбрать расположение файлов данных MySQL. В большинстве случаев подойдет значение по умолчанию. Если вы хотите хранить файлы данных в другом месте, выберите иное расположение или другой диск. Для продолжения нажмите кнопку Next.
На следующем этапе настройки сервера вам нужно выбрать, как MySQL будет распределять конкурирующие соединения (рис. 3.17). Поскольку мы устанавливаем сервер разработчика, лучшим выбором будет вариант по умолчанию, т. е. Decision Support (DSS)/OLAP, поэтому просто нажмите кнопку Next Однако если вы устанавливаете MySQL на полноценном Web-сервере, выберите Online Transaction Processing (OLTP), и ваш сервер будет оптимизирован для большой загрузки, когда есть много конкурирующих пользователей.
Рис. 3.17. Выберите вариант Decision Support (DSS)/OLAP и нажмите кнопку Next
Следующий этап— сетевые параметры (рис. 3.18). Опция по умолчанию устроит большинство пользователей, поэтому можете просто нажать кнопку Next. Единственный параметр, который, возможно, вам нужно будет изменить — это номер порта (Port Number). Порт 3306 — это стандартный порт для MySQL. Однако некоторые брандмауэры запрещают использование этого порта, поэтому работать с MySQL невозможно. Если системный администратор сообщил вам номер доступного порта, вы можете указать его тут.
После выбора номера порта нужно задать используемую кодировку. Вы можете указать стандартный набор символов — Standard Character Set (будет
использоваться UTF-8) и нажать кнопку Next. Если вы планируете использовать другую кодировку, ее нужно выбрать здесь. При установке Joomla! вы должны выбрать эту же кодировку.
Убедитесь, что выбрана расширенная настройка и нажмите кнопку Next.
Рис. 3.18. Параметры TCP/IP по умолчанию изменять не нужно, просто нажмите кнопку Next
Примечание переводчика
Для нормальной поддержки русского языка лучше всего выбрать кодировку ср1251.
Удобно, чтобы MySQL запускался как фоновая служба (рис. 3.19), поэтому оставьте опции как есть и убедитесь, что флажок Launch the MySQL Server automatically включен.
Кодировка UTF-8
В этой книге мы уже не раз упоминали UTF-8, и, наверное, вам интересно знать, что это такое. Во времена стандартизации первых компьютеров символы хранились (в памяти или на жестком диске) и передавались (на принтер или по модему) как 7-битные числа. Бит— это один двоичный разряд, принимающий одно из двух значений: 1 или 0.
В кодировке, известной под названием ASCII (American Standard Code for Information Interchange), символы были представлены так: число 65 означало букву А, число 66— букву В и т. д. Всего в кодировке ASCII было определено 128 символов с номерами от 0 до 127 (это максимум, что можно представить, используя всего 7 битов).
Кодировка ASCII была превосходным решением, пока не возникла проблема локализации. При ограничении в 128 символов никак не сохранить тысячи китайских символов и символов других незападных языков.
Позже появилась другая кодировка — Unicode, использующая два байта (2x8 = 16 битов) для хранения одного символа. Это решило проблему нехватки символов, но удвоило размер памяти, необходимой для хранения одного символа.
UTF-8 создана для решения этой проблемы. UTF-8— это кодировка с переменной "длиной" символа. Один символ может занимать от 1 до 4 байтов. Большинство символов представляются как обычные ASCII-символы и занимают мало памяти (1 байт), но при необходимости UTF-8 может кодировать полный текст Unicode (например, китайский иероглиф).
Joomla! полностью поддерживает UTF-8. При добавлении контента вы не будете беспокоиться по поводу того, какую кодировку использует ваша система.
Рис. 3.19. Убедитесь, что флажок Launch the MySQL Server automatically включен, и нажмите кнопку Next
Следующий шаг— ввод пароля администратора MySQL. Вы можете не вводить этот пароль, но из соображений безопасности лучше этого не делать Вы можете ввести такой же пароль, который используете для учетной записи администратора в вашей системе. Если будете использовать другой пароль, убедитесь, что вы записали выбранный вами пароль и спрятали в безопасном месте. Пароль администратора MySQL вы будете вводить очень редко, поэтому можете забыть его, если не запишете где-нибудь. Только убедитесь, что вы спрятали его подальше от посторонних глаз.
Нажмите кнопку Execute для начала процесса конфигурации. Если в процессе конфигурации возникли ошибки, обязательно прочитайте разд. "Решение продаем" далее в этой главе. Если все настроено правильно, вы увидите список пройденных этапов конфигурации (рис. 3.20).
Сейчас ваш MySQL-сервер настроен и запущен. Если вы еще не скачали программу MySQL Administrator (часть пакета MySQL GUI Tools), самое время
Рис. 3.20. Успешно пройденные этапы настройки MySQL отмечаются синими галочками
Рис. 3.21. Введите имя пользователя и пароль администратора и нажмите кнопку ОК
сделать это. Установите программу, и вы сможете наблюдать за вашим новым сервером.
При первом запуске MySQL Administrator попросит вас указать основные параметры соединения (рис. 3.21). При следующем запуске вам не нужно будет вводить параметры соединения заново: программа запомнит все, кроме пароля. В нашем случае я регистрируюсь на локальном сервере MySQL Если у вас удаленный MySQL-сервер, конфигурационный диалог будет слегка отличаться от приведенного в книге.
Когда откроется интерфейс администратора, вы увидите общую информацию о сервере (рис. 3.22).
Рис. 3 22. Общая информация о MySQL-сервере
Создание базы данных Joomla! с помощью MySQL Administrator
Права доступа к удаленному Web-узлу — довольно сложный вопрос, и поэтому он подробно рассматривается в следующей главе. Одна из самых
сложных в настройке возможностей— это возможность какой-либо программы создавать новую базу данных. На некоторых Web-узлах такая возможность отсутствует.
Как только программа получает разрешение на создание базы данных, увеличивается потенциальная возможность взлома системы хакером. Поэтому мы не будем предоставлять Joomla! возможность создания базы данных, а создадим ее вручную во избежание многих проблем.
Вы можете создать базу данных с помошью всего лишь одной команды MySQL Administrator. Зарегистрируйтесь в MySQL Administrator, перейдите в область Catalogs, щелкните правой кнопкой на существующих схемах (левая часть окна программы) и из контекстного меню выберите команду Create New Schema (рис. 3.23).
Рис. 3.23. Щелкните правой кнопкой мыши и выберите команду Create New Schema
На моем сервере уже была существующая база данных Joomla! 1.0 (Joomla! 1.0 и 1.5 могут сосуществовать на одном сервере), поэтому новую
базу данных я назвал joomla!5. Вы можете использовать название базы данных Joomla!, если у вас нет других инсталляций Joomla!. Позже, после запуска инсталлятора Joomla!, вы можете просмотреть содержимое базы данных Joomla! с помощью MySQL Administrator (рис. 3.24).
Рис. 3.24. С помощью MySQL Administrator вы можете изучать таблицы Joomla!
С помощью MySQL Administrator вы также можете создавать пользователей MySQL. Можно создать пользователя для Joomla! и предоставить ему необходимые для доступа к базе данных полномочия. Нажмите кнопку User Administration (в левой части окна) и создайте нового пользователя с помощью кнопки Add new user. Имя пользователя может быть любым, например, joomla или joomlaAdmin. После создания пользователя, выделите его и перейдите на вкладку Schema Privileges. Данному пользователю нужно предоставить полный доступ к базе данных Joomla!.
На вкладке Schema Privileges нажмите кнопку «, чтобы переместить все привилегии из области доступных полномочий (Available Privileges) в область присвоенных полномочий (Assigned Privileges), как показано на рис. 3.25. Для подтверждения изменений нажмите кнопку Apply changes.
Рис. 3.25. Предоставление полномочий пользователю Joomla! для доступа к БД Joomla!
Вот и все. Теперь при установке Joomla! вы можете создавать таблицы в базе данных]оот!а15 с использованием учетной записи Joomla!.
Создание базы данных Joomla!
из командной строки MySQL
Если на вашем узле доступен только текстовый MySQL-интерфейс, в этом разделе мы поговорим о том, как создать базу данных Joomla! из командной строки. Если вы хотите использовать командную строку локального MySQL- сервера, выполните команду Пуск | MySQL | MySQL Server | MySQL Command Line Client. Текстовый клиент MySQL сначала попросит вас указать пароль пользователя root, а потом уже зарегистрируется на сервере MySQL.
Примечание переводчика
Если вы используете ХАМРР, то для запуска командной строки MySQL нужно выполнить следующие действия
Нажать комбинацию клавиш <®>+<R>, ввести команду and и нажать клавишу <Enter>.
Ввести команду c:\xampp\mysql\bin\mysql -u rear и нажать клавишу
<Enter>.
Если введенный пароль— правильный, вы увидите окно, подобное изображенному на рис. 3.26. На рисунке видно приглашение mysql^— вы можете вводить команды.
Рис. 3.26 Командная строка MySQL — вы можете вводить команды SQL
Для создания базы данных Joomla! нужно ввести всего одну команду:
mysql> CREATE DATABASE joomla;
В ответ вы должны увидеть Query ОК и сообщение о том, что обработана одна строка SQL-кода. Чтобы увидеть все существующие базы данных, доступные пользователю, под которым вы зарегистрировались на сервере MySQL, используется команда:
SHOW DATABASES;
Вы увидите список баз данных, подобный изображенному на рис. 3.27.
Рис. 3.27. Список доступных баз данных
Настройка прав доступа к файлам и каталогам
Правильная настройка прав доступа — один из самых важных аспектов настройки Joomlai-системы. В ОС UNIX/Linux для изменения прав доступа используется команда chmod.
Изменить права доступа к файлам и каталогам можно с помощью практически любого FTP-клиента. В FileZilla нужно щелкнуть правой кнопкой мыши на файле и выбрать команду Атрибуты файла Права доступа будут отображены в окне Изменить атрибуты файла (рис. 3.28). Вы можете изменить права доступа по своему усмотрению, отметив соответствующие флажки, а можете сразу ввести числовое значение прав доступа (например, 777).
Рис. 3.28 Изменение прав доступа с помощью FileZilla
MailWebmail Change
Password
FTP Fie Manager Disk us*ge
Manager
Рис. 3.29. Многие хостинг-провайдеры предоставляют cPanel для управления хостингом
Многие хостинг-провайдеры предоставляют панель управления хостингом cPanel (рис. 3.29). cPanel (или Control Panel) позволяет осуществлять всевозможные функции: от запуска инсталляционных сценариев (сценариев установки Joomia!, MySQL, Gallery2 и т. д.) до управления файлами Для измене-
ния прав доступа можно использовать утилиту File Manager из cPanel. File Manager позволяет перемещать, удалять, редактировать, переименовывать, копировать файлы и каталоги. Для нас же основной является функция изменения прав доступа к файлам и каталогам.
Рис. 3.31. Нажмите кнопку Change для установки новых прав доступаРис. 3.31. Нажмите кнопку Change для установки новых прав доступаВыберите файл или каталог, права доступа к которому вы хотите изменить, и щелкните на ссылке Change Permissions (рис. 3.30). Вы увидите Web- интерфейс для утилиты chmod, позволяющий изменять права доступа для владельца (User), членов группы владельца (Group) и остальных пользователей (World).
Рис. 3.31. Нажмите кнопку Change для установки новых прав доступа
Рис. 3.31. Нажмите кнопку Change для установки новых прав доступа
1-3 Index »php
Fife Typei PHP ecrpttext
Show F e «let® Fite
Edi* Fil*
Copy File Move Fite
Рис. 3.30. Нажмите на ссылке
Change Permissions
Установите права доступа и нажмите кнопку Change (рис. 3.31) для сохранения новых параметров. Если вы получите сообщение об ошибке, обратитесь к вашему хостинг-провайдеру.
Установка файлов Joomla!
В этой главе мы разобрались, как установить и настроить все серверы, необходимые для установки Joomla!. Теперь, когда все серверы запущены, вы можете, пользуясь инструкциями из предыдущей главы, установить Joomla! на свой сервер.
При наличии правильно настроенных ХАМРР, WAMPP, LAMPP или МАМР у вас не должны возникнуть трудности с установкой Joomla!. Если при установке Joomla! появится ошибка (например, ошибка доступа или проблема с соединением MySQL), обратитесь к следующему разделу.
Решение проблем
Если у вас возникли проблемы с одним из серверов, возможно, вы найдете решение проблемы в этом разделе. Технические проблемы могут быть настолько сложными и настолько разными, что невозможно рассмотреть все
возможные ситуации в одной книге. В этом разделе я попытался собрать проблемы, с которыми столкнулся сам лично, и проблемы, с которыми столкнулись другие пользователи Интернета. Для каждой проблемы приводится как минимум одно решение.
Помните, что довольно часто мы боремся не с причиной проблемы, а с ее симптомами. Часто вы пытаетесь решить, как вы думаете, не проблему, а ее следствие. Понятно, что все следствия будут устранены после решения причины. Поэтому даже если описание проблемы в этой главе не совсем соответствует вашей ситуации, вы обязательно прочитайте ее решение. Полагаю, что оно поможет вам найти решение именно вашей проблемы.
Проблемы с сервером Apache
В этом разделе мы рассмотрим общие проблемы, возникающие при установке и настройке сервера Apache. Помните, что ошибка может быть не только в самом Apache, но и в связке Web-сервера с PHP и MySQL. Прежде чем принять решение, прочитайте разделы, посвященные решению проблем с PHP и MySQL, чтобы убедиться, что причина сбоя именно в Apache.
Удаленный доступ к серверу
Я запустил сервер Apache на моем локальном компьютере под управлением Windows ХР, но не могу получить доступ к Web-серверу с других компьютеров сети. В чем проблема?
Решение 1
В Windows ХР Service Pack 2 есть брандмауэр, блокирующий все IP-порты, в том числе и порт 80, который Apache использует для общения "со всем миром". Если этот порт блокируется, Apache не будет работать!
Сначала убедимся, что проблема в брандмауэре. Выполните команду Пуск | Панель управления | Брандмауэр Windows. Выключите брандмауэр, после чего перезапустите Apache и попытайтесь получить к нему доступ с другой машины. Если по-прежнему вы не можете получить доступ к вашему Web- серверу, значит, причина не в брандмауэре, а в чем-то другом
Если же все работает нормально, включите брандмауэр снова. Ведь вы не хотите, чтобы ваша машина осталась незащищенной? Перейдите на вкладку Исключения (эта вкладка будет в окне настройки брандмауэра) и нажмите кнопку Добавить порт. Добавьте порт 80, как показано на рис. 3.32.
Для нормальной работы Joomla! вам нужно открыть несколько портов. Ведь вы можете устанавливать защищенные соединения по HTTPS (порт 443).
Также нужно открыть порт MySQL— 3306. Для серверов типа ХАМРР нужно открыть следующие порты:
FTP, порт 21:
SMTP, порт 25;
POP3, порт 110;
IMAP, порт 143;
AJP/1.3, порт 8009;
HTTP-ALT, порт 8080 (порт для Tomcat по умолчанию).
Ис >»Й - 1ГШ" >ИТрЫ ДЛЯСЬ I -ПИЯ ■■ ■ -фМЯ!рр
\Ve •. Чтооыгмт ии *■ . л тил;- • . "mi ik
да . ■ нгациипг.; .,-.■
Ика
Помор порта' вС!
I'lV/roi TCP ПпоогиОс
Изменить областьОтмена
Рис. 3.32. Для разрешения Web-сервера нужно открыть порт 80
Решение 2
По умолчанию Apache использует стандартный порт для Web-сервера — 80. Только одно приложение может использовать порт в одно и то же время. Возможно, некоторые другие приложения (например, Skype) могут блокировать этот порт. Первым делом попытайтесь завершить работу других интер- нет-приложений и перезапустите Apache.
Если это не сработает, вам нужно переконфигурировать Apache, указав иной порт. Для этого нужно изменить следующие директивы файла конфигурации httpd.conf:
Listen;
Port:
BindAddress.
В зависимости от версии Apache, некоторые директивы могут отсутствовать в вашем конфигурационном файле по умолчанию. Тем не менее, вы можете добавить их в ваш конфигурационный файл, и сервер распознает их.
Начните с директивы Listen. Установите другое значение (например, 8080) и перезапустите Apache. Проверить работоспособность конфигурации можно, добавив номер указанного порта к IP-адресу Web-узла, например:
http://127.0.0.1:8080
Проблемы с файлом .htaccess
После переименования файла htaccess.txt в файл .htaccess на Apache/PHP- сервере при обращении к любой ссылке генерируется ошибка 404'.
Решение
На вашем Web-сервере или, возможно, на сервере хостинг-провайдера включено кэширование файла .htaccess. Обычно перезагрузка кэша производится один раз в час. Подождите и повторите попытку снова. В большинстве случаев проблема исчезнет сама по себе.
Примечание
Возможность записи файла configuration.php можно включить с помощью панели управления cPanel.
Не работает SSI
SSI (Server Side Includes) не работает, и я получаю сообщение об ошибке "INCLUDES filter removed".
Решение
Проверьте вашу директиву Options, возможно, нужно добавить опцию includes. Может, данная директива перезаписывается в каком-нибудь конфигурационном файле. Просмотрите все .conf-файлы и измените директивы AllowOverride None на AllowOverride Options.
Странное поведение сервера Apache
Мой сервер Apache стал генерировать необъяснимые сообщения об ошибках, "обрезать" файлы, т. е. при загрузке с сервера файлы стали повреждаться.
Файл не найден. — Пер,
Решение
Вы установили расширение Apache, которое изменило некоторые параметры, использующиеся для ускорения передачи файлов (например, подкачку памяти, использование Winsock AcceptEx и т. д.). Вы можете отключить это расширение, добавив следующие три директивы в ваш файл httpd.conf: EnableMMAP Off EnableSendfile Off
Win32DisableAcceptEx
После этого перезагрузите Web-сервер. Если это не помогло, попытайтесь переустановить сервер.
Проблемы с PHP
Наиболее сложные проблемы с PHP возникают из-за неправильных настроек в php.ini. Конфигурационный файл очень большой, и в нем огромное количество опций, которые могут конфликтовать друг с другом.
Примечание переводчика
Если вы хотите более углубленно разобраться с инициализацией PHP, могу порекомендовать книгу Колисниченко Д. Н. Профессиональное программирование на PHP. — СПб.: БХВ-Петербург, 2007.
PHP-сценарии не выполняются
Я пытаюсь открыть созданную страницу phpinfo.php, но в браузере ничего не появляется.
Решение
Всякий раз, когда открываемая в браузере PHP-страница пуста, выполните команду меню браузера Вид | Просмотр HTML-кода. Вы увидите HTML- код, полученный от сервера. Если PHP-код не был обработан, как планировалось, будет возвращена абсолютно пустая страница. Возможно, был возвращен HTML-заголовок, что говорит о том, что PHP-код выполнялся, но произошла ошибка. Глядя на HTML-код, можно понять, выполнялся ли вообще РНР-код.
Если РНР-код вообще не выполняется, убедитесь, что PHP-расширения находятся в подкаталоге \ext каталога, в который был установлен Apache. С другой стороны, если при просмотре HTML-кода был некоторый вывод, воз-
можно, что при выполнении PHP-сценария произошла ошибка. Просмотрите файлы журналов сервера Apache: вы найдете в них описание ошибки или же включите директиву display errors для отображений ошибок. После этого нужно перезапустить Apache и заново запросить страницу с ошибкой.
Ошибка "No input file specified"
При попытке запуска PHP я получаю сообщение "No input file specified" и PHP не запускается.
Решение
Некоторые инсталляторы неправильно устанавливают директиву docroot, и это вызывает проблему, особенно на системах с несколькими Web-узлами. Проверьте ваш php.ini и удалите текущее значение директивы.
Изменения php.ini не вступают в силу
Когда я редактирую php.ini, создается впечатление, что изменения не вступают в силу.
Решение 1
Изменения в php.ini не вступят в силу до следующего перезапуска Web- сервера. В случае с Apache используйте команду Restart меню Apache Server Control. Если у вас Microsoft IIS, вы можете выполнить команду iisreset /stop для остановки сервера и команду net start w3svc для его запуска. После перезапуска сервера изменения вступят в силу.
Решение 2
В вашей системе установлено несколько файлов php.ini. Некоторые инсталляторы помещают файл php.ini в каталог Windows. Вы можете просто редактировать не тот файл. Найдите все файлы php.ini в вашей системе. Попробуйте переименовать их, добавив к имени файла суффикс InActive, чтобы определить, какой из файлов работает. После этого перезапустите Apache, и вы увидите, какой из файлов php.ini используется.
IIS возвращает ошибку 505, и PHP не запускается
При запуске PHP-сценария под управлением IIS сервер возвращает ошибку 505 "Указанный модуль не найден".
Решение
Иногда у инсталляторов PHP наблюдаются проблемы с длинными именами (длиннее, чем старые DOS-имена— восемь символов для имени файла и три
для расширения) файлов или каталогов, а также с пробелами, используемыми в них. Попытайтесь переместить каталог PHP в какой-нибудь каталог с простым именем, например, C:\php5. Если у вас PHP находится в каталоге \Program Files, будьте готовы к возможным ошибкам при выполнении некоторых сценариев.
Проблемы с MySQL
Вообще настройка PHP довольно проста, но иногда для того чтобы заставить PHP и MySQL работать вместе нужно потрудиться. Как уже я рекомендовал в предыдущей главе, нужно идти по пути наименьшего сопротивления, т. е. использовать знаменитый метод KISS (Keep It Super Simple).
Попытайтесь сузить проблему и провести ряд базовых тестов, постепенно усложняя их. Когда я сталкиваюсь с проблемой, то использую командную строку MySQL, чтобы устранить ряд проблем, связанных в том числе и с интерфейсом администратора. Из командной строки я могу понять источник проблемы, возникшей в моем РНР-коде.
Ошибка подключения к MySQL-серверу
При попытке подключения к серверу я получаю ошибку "Can't connect to MySQL server" ("He могу подключиться к серверу MySQL"). Сервер MySQL запущен, имя пользователя и пароль указаны правильно. В чем проблема?
Решение
Помешать соединению с MySQL-сервером может что угодно. Вот наиболее вероятные причины:
программа обычно подключается к серверу MySQL по протоколу TCP/IP, используя номер порта по умолчанию — 3306 Убедитесь, что номер порта задан правильно;
попытайтесь использовать IP-адрес 127.0.01 вместо символьного имени localhost в вашей программе (т. е. в PHP-сценарии). На некоторых системах имя localhost не разрешается в IP-адрес, поэтому вы не можете получить доступ к MySQL-серверу;
на момент написания этих строк, на хостинге Yahoo! вместо localhost нужно было использовать адрес mysql;
в Linux вы также можете подключиться к MySQL, используя UNIX- сокет— это файл, обычно называющийся /tmp/mysql.soc. Убедитесь, что файл существует и что вы правильно указали его имя. Имейте в виду, что периодически каталог /tmp очищается, поэтому файл сокета может быть удален;
♦ убедитесь, что программа, с помощью который вы подключаетесь к MySQL, поддерживает систему аутентификации, используемую MySQL- сервером. Например, система аутентификации MySQL 4 абсолютно несовместима с MySQL 5. Если программа пытается получить доступ к базе данных с неподдерживаемой системой аутентификации, вы получите сообщение о невозможности подключения к серверу, а не ошибку "Неправильное имя пользователя или пароль". Чуть позже будет показано, как с помощью программы, совместимой с MySQL 4, подключиться к серверу MySQL 5;
♦ в Windows число портов ограничено. В системе может быть открыто 5000 портов. С одной стороны этого достаточно, но не для Интернета. После открытия порт резервируется на 120 секунд, после этого он должен быть переназначен. Если у вас есть проблемы с соединением, попытайтесь уменьшить время резервирования порта. Запустите редактор реестра (regedit32.exe) и перейдите к ключу hkey_local_№Chinex system \CurrentControlSet\Services\Tcpip\Parameters. Добавьте следующий параметр: Имя — TcpTimedwaitDelay, тип — reg_dword, значение — ЗС Теперь время резервирования равно 30 секундам.
Невозможно создать Windows-службу MySQL
При установке MySQL (после нажатия кнопки Execute) я получаю сообщение "Cannot create Windows service for MySQL. Error: 0". Как мне исправить это?
Решение
Вполне возможно, что у вас уже установлен MySQL-сервер, знаете ли вы это или нет (его могла установить одна из используемых вами программ). Сейчас мы это проверим. Выполните команду меню Пуск | Панель управления | Администрирование | Службы и просмотрите список установленных служб. Вы можете увидеть службу MySQL, несмотря на то, что инсталлятор сообщает, что службу невозможно установить.
Чтобы удалить старую службу, перейдите в командную строку и введите команду:
sc delete mysql
Данная команда запускает утилиту Service Control. Вы должны получить следующий ответ:
[SC] DeleteService SUCCESS
После этого попытайтесь снова запустить инсталлятор— все должно быть нормально. Помните, что утилита sc есть в Windows ХР и в более поздних
версиях Windows (Server 2003, Vista). В более ранних версиях, например в Windows 2000, ее нет, и вам нужно загрузить ее с сайта Microsoft.
Ошибка соединения во время установки
Во время установки MySQL я получаю ошибку соединения (рис. 3.33). Как мне исправить ее?
Рис 3.33. Проблема соединения во время установки MySQL
Решение
Проблема в вашем брандмауэре. Простейший способ решить ее — запустить конфигуратор брандмауэра — Панель управления | Брандмауэр Windows. На вкладке Исключения нужно нажать кнопку Добавить порт и ввести номер порта MySQL (по умолчанию 3306), как показано на рис. 3.34. Нажмите кнопку ОК и попытайтесь продолжить инсталляцию MySQL. Все должно работать.
Проблема с подключением к MySQL 5
На моем Web-сервере запущен MySQL 5, но у меня возникла проблема с подключением Joomla! к MySQL. Я получил сообщение о том, что Joomla! не может подключиться к MySQL-серверу.
Решение
При переходе с четвертой к пятой версии MySQL был изменен метод аутентификации паролей. Новая система аутентификации более безопасна, но несовместима с приложениями, написанными ранее (для более старых версий
Рис. 3.34. Добавление порта
MySQL). Чтобы хоть как-то сгладить эту ситуацию, пятая версия поддерживает метод аутентификации, используемой в четвертой версии.
С помощью командной строки MySQL вы можете установить старый стиль аутентификации для отдельных пользователей. Запустите MySQL-клиента и зарегистрируйтесь на MySQL-сервере. Введите следующую команду, заменив имя пользователя (joomla) и пароль (mypass):
mysql> SET PASSWORD FOR 'joomla' = OLD_PASSWORD('mypass');
Если все нормально, то вы должны получить ответ:
Query ОК, 0 rows affected (0.02 sec)
Несмотря на то, что было обработано 0 строк, теперь ваша учетная запись будет использовать старый стиль паролей. Запустите приложение, пытающееся подключиться к MySQL, снова — проблема должна быть решена.
Если вы хотите, чтобы для всех учетных записей использовалась старая схема аутентификации, запустите программу MySQL Administrator. Перейдите на вкладку Security раздела Startup Variables. Включите параметр Use old passwords (Использовать старые пароли), как показано на рис. 3.35.
Рис. 3.35. Включите выделенный параметр для использования стиля аутентификации MySQL 4
Резюме
Если вы устанавливаете корпоративный сервер или сервер для Joomla!, теперь вы знакомы с различными способами установки и настройки вашей системы. Вы можете использовать ХАМРР для быстрой установки и настройки всех необходимых для Joomla! серверов. Альтернативно, можно настроить каждый сервер отдельно в конфигурации LAMP/WAMP/MAMP.
Поскольку Joomla! для своей работы требует четыре разных сервера, которые должны корректно работать вместе, при настройке вы можете столкнуться с множеством проблем. В этой главе было представлено базовое руководство по решению этих проблем. Используя эту информацию, вы сможете эффективно развернуть Joomla! в большинстве случаев.
ГЛАВА 4
Добавление контента
Контент— сердце вашего сайта. Потребность в управлении контентом — движущая сила для внедрения CMS вроде Joomla!. Очень скоро вы обнаружите, что добавление нового контента занимает большую часть времени, проводимого вами в Joomla! (разумеется, после первоначальной настройки). Перед добавлением новых статей в Joomla! вы должны потратить некоторое время на разработку концепции наполнения новым материалом.
Примечание переводчика
Контент (от англ, content) — содержимое сайта, материал.
Вы можете задать вполне уместный вопрос: "Почему вы должны сначала думать об организации материала, а уж потом добавлять новый материал?" Joomla! позволяет очень быстро и просто добавить новый материал. Через некоторое время статей накопится очень много, и сайт выйдет из-под контроля из-за плохой каталогизации.
Дезорганизованный сайт подобен компьютерному диску, где все файлы расположены в одном-единственном каталоге — найти в нем что-то становится невозможно! Создав соответствующие категории, вы организуете ваш материал иерархически (подобно структуре каталогов). Хорошо продуманные категории позволяют упростить процесс создания и поиска страниц сайта (статей).
Планирование содержимого сайта
Перед тем как приступить к планированию, вы должны понимать, как Joomla! управляет контентом. Joomla! не использует открытую систему, подобную структуре каталогов, у которой неограниченное количество уровней (имеют-
5 Зак 468
ся в виду подкаталоги). Вместо этого иерархия ограничивается двумя уровнями, чего вполне хватает даже для больших сайтов. Эти два уровня называются разделами и категориями.
Также Joomla! позволяет хранить статический материал (который не принадлежит ни одной из категорий). Статический материал —• это страницы, не соответствующие созданной иерархии сайта, например страница "О компании", и поэтому их нельзя объединить с остальным контентом. Некатегоризированный контент может быть также использован для хранения статей, категория которых пока не определена. В этой главе мы довольно подробно изучим статический контент.
Разделы и категории Joomla!
Joomla! — продвинутая в техническом плане CMS, поэтому статьи хранятся в таблицах базы данных, а не в каталогах на жестком диске Принадлежность страницы к разделу и категории задается специальными полями. Такая организация позволяет достаточно просто реорганизовывать контент: вместо перемещения файлов из одного каталога в другой достаточно установить новые атрибуты.
Весь контент Joomlal-сайта организован в двухуровневую (и только двухуровневую) иерархию. Самый верхний уровень — это разделы, второй уровень — категории. Некоторые пользователи Joomla! никак не могут понять разницу между разделами и категориями, поэтому не знают, как правильно организовать их.
Самый простой способ разобраться с организацией Joomlai-сайта— это представить сайт небольшой газетной компании. У каждого подразделения (отдел новостей, рекламный отдел и т. д.) или раздела есть своя комната в здании. В каждой в каждой комнате есть много ящиков для файлов. Категорию Joomla! можно сравнить с таким ящиком. В свою очередь, в каждом ящике есть много файлов — статей. Если иерархию Joomla! сравнить со структурой каталогов, то структура Joomlal-контента будет выглядеть так:
Раздел\Категория\Статья
Используя данный способ записи пути, путь к статье "Joomla! License Guidelines" из демо-данных Joomla! можно записать так:
About Joomla...\The Project\Joomla! License Guidelines
На рис. 4.1 показана карта Joomlai-сайта после установки демо-данных. Наивысший уровень содержит разделы (например, About Joomla!). В каждом
разделе есть определенное число категорий. Все разделы и категории могут редактироваться администратором сайта, также администратор может добавлять новые разделы/категории и удалять уже имеющиеся.
Категории
The Project
РазделыРазделыThe CMSThe CMSThe CommunityThe CommunityLatest NewsNewsflashArchiveLatest NewsNewsflashArchiveGeneralCurrent Users New to JoomlaLanguagesGeneralCurrent Users New to JoomlaLanguagesРис. 4.1. Карта Joomlal-сайта (используются демо-данные)Рис. 4.1. Карта Joomlal-сайта (используются демо-данные)Site Opening Soon New Joomla Release Subscribe to new SVN
Разделы
Разделы
The CMS
The CMS
The Community
The Community
Latest News
Newsflash
Archive
Latest News
Newsflash
Archive
General
Current Users New to Joomla
Languages
General
Current Users New to Joomla
Languages
Рис. 4.1. Карта Joomlal-сайта (используются демо-данные)
Рис. 4.1. Карта Joomlal-сайта (используются демо-данные)
Вы можете найти нужный вам контент с помощью интерфейса администратора, перемещаясь по дереву сайта от раздела до категории и, в конечном итоге, до нужного элемента контента. Однако Менеджер материалов в Joomla! отображает весь контент не в виде дерева а в виде простого списка.
Зайдите в Менеджер материалов'. По умолчанию отображаются только первые 20 элементов. Перейдите в нижнюю часть окна и из раскрывающегося списка Показать # выберите 100 (рис. 4.2).
Вы увидите, что всего в списке будет примерно 43 записи. Пролистайте список, пока не найдете статью "Joomla! Features" Теперь посмотрите на столбцы таблицы для этой статьи: вы увидите ее название, состояние публикации, флаг публикации на главной странице, права доступа, идентификатор (ID), раздел, категорию, автора, дату последней модификации и общее количество хитов (просмотров).
1 Панель управления Joomla’ | Все материалы. — Пер.
Рис. 4.2. Сколько элементов контента нужно показать за один раз
Joomla! умеет сортировать контент в любом выбранном порядке. В большинстве случаев Joomla! отображает контент в хронологическом порядке, поэтому последние статьи будут показаны первыми. Данный порядок сортировки очень удобен, но иногда нам нужно просмотреть только статьи, содержащиеся в определенном разделе или категории. Статья "Joomla! Features" находится в разделе About Joomla! и в категории The CMS. В верхней части таблицы из списка выбора раздела выберите раздел About Joomla! (рис. 4.3). После этого вы увидите список статей, принадлежащих только выбранному разделу. Также вы можете установить фильтр по категории, автору и по статусу публикации. Поле Фильтр предназначено для поиска статей: вы можете ввести часть заголовка статьи или ее идентификатор.
В списке выбора раздела можно выбрать Без категории для отображения статических статей, не принадлежащих ни к одному разделу.
Фильтр:I Выполнить ][сброо J#Г"Заголовок1ГExample Pages and Menu Links2Г"Wiat's New in 1 5?зГJoomla1 Overview4ГExtensionsФильтр:I Выполнить ][сброо J#Г"Заголовок1ГExample Pages and Menu Links2Г"Wiat's New in 1 5?зГJoomla1 Overview4ГExtensionsПублмкацшПублмкацшразделраздел- Выберите раздел - Без категории- Выберите раздел - Без категории*bo<^ Jootil»}*bo<^ Jootil»}News FADSNews FADSоооо22ООВыберите категори!Выберите категори!Доступ РаДоступ РаВсемВсемззВсемВсемAboAboAbo JoorAbo JoorAboAbo
Фильтр:I Выполнить ][сброо J
#Г"Заголовок
1ГExample Pages and Menu Links
2Г"Wiat's New in 1 5?
зГJoomla1 Overview
4ГExtensions
Фильтр:I Выполнить ][сброо J
#Г"Заголовок
1ГExample Pages and Menu Links
2Г"Wiat's New in 1 5?
зГJoomla1 Overview
4ГExtensions
Публмкацш
Публмкацш
раздел
раздел
- Выберите раздел - Без категории
- Выберите раздел - Без категории
*bo<^ Jootil»}
*bo<^ Jootil»}
News FADS
News FADS
о
о
о
о
2
2
О
О
Выберите категори!
Выберите категори!
Доступ Ра
Доступ Ра
Всем
Всем
з
з
Всем
Всем
Abo
Abo
Abo Joor
Abo Joor
Abo
Abo
Рис. 4.3. Выберите About Joomlal из списка выбора раздела
Некатегоризированный или статический контент
Если вы хотите быстро добавить какой-нибудь материал, то можете выбрать в качестве раздела Без категории — статья будет добавлена как некатегоризированный или статический контент. Это означает, что статья не появится ни в одном разделе, но будет доступна как отдельная статическая страница.
Многие Web-мастера создают некатегоризированные статьи, поскольку хотят получить сайт как можно быстрее. Вообще, это не очень хорошая идея. Если вы создаете свой Joomlal-сайт сверху вниз (сначала определяете разделы, затем категории, а потом уже создаете контент), а не снизу вверх, сайт будет лучше организован и развиваться более гармонично. Небольшая инвестиция времени в планирование сайта в перспективе многократно окупится, когда сайт существенно вырастет в размерах.
Примечание
В предыдущих версиях Joomla! был отдельный менеджер для управления статическим контентом — Менеджер статического контента (Static Content Manager). Начиная с версии 1.5, используется Менеджер материалов, который управляет всеми видами статей.
План вашего сайта
Понимая структуру Joomla!-сайта, вы можете приступить к определению разделов и категорий, которые лучше всего подойдут вашему сайту.
Потратьте некоторое время на планирование вашего сайта— это позволит вам сделать понятный и полезный сайт.
Существует несколько программ, которые могут вам помочь в создании плана сайта. Наиболее популярными являются Microsoft Word, FreeMind и Leo. У каждого приложения есть преимущества и недостатки, поэтому какое лучше — решать вам. Подумайте об иерархической структуре сайта, как о чем-то большем, нежели о простой карте сайта. Лучше потратить полчаса на создание хорошего плана, чем целую неделю на реорганизацию сайта. Созданный документ (схема сайта) будет важной частью документации сайта.
Совет
Даже если вы создаете сайт для себя, создайте и сохраните документацию сайта. Со временем она вам пригодится Когда сайт разрастется и у вас появятся наемные работники, обслуживающие ваш сайт, документация по сайту может понадобиться.
Режим структуры в Microsoft Word
Многие Web-дизайнеры и разработчики для создания плана сайта используют режим структуры MS Word'. В этом режиме вы можете создать простую иерархическую структуру (рис. 4.4). На этом рисунке изображена структура популярного сайта CNN.com. Данный сайт разбит на области, например, Programs (Программы), Health (Здоровье), Education (Образование) и т. д.
Рис. 4.4. Режим структуры MS Word помогает планировать сайты
В использовании Word есть несколько преимуществ. Во-первых, MS Word установлен на большинстве компьютеров, работающих под управлением Windows. Во-вторых, drag-and-drop-возможности редактора позволяют реорганизовать текст очень быстро и очень просто. Вы можете использовать клавиши <ТаЬ> и <Shift>+<Tab> для создания/удаления заголовков соответственно.
К тому же, если вы создаете простой HTML-сайт (а не используете CMS), после создания иерархической схемы сайта вы можете ее автоматически кон-
1 Меню Вид | Структура. — Пер.
вертировать в HTML, получив уже готовую схему в формате HTML, которая станет фундаментом вашего сайта.
Однако у MS Word есть и недостатки. Возможности Word по экспорту созданной схемы в один из часто используемых форматов документации сайта довольно скудны. Да и возможности самого инструмента создания схемы тоже оставляют желать лучшего: наблюдаются большие проблемы с форматированием. когда вы пытаетесь распечатать созданную схему или просто внедрить в уже существующий обычный документ. Кроме того, представление отдельных уровней схем в полноразмерных шрифтах имеет непрезентабельный вид. Поэтому для создания схем лучше использовать альтернативные программы, которые к тому же являются бесплатными и свободно распространяемыми.
FreeMind: отображение мысли
Скорее всего, вы не знакомы с концепцией отображения мыслей. Методика отображения мысли разработана педагогом Тони Бьюзеном и представляет собой метод визуализации организационной информации, которая отображает эту информацию в наиболее понятной и легко запоминающейся для человека форме.
Примечание переводчика
В Интернете вы без особого труда найдете книги Тони Бьюзена, переведенные на русский язык, конечно, если вам это интересно.
На рис. 4.5 представлена базовая организация сайта CNN.com с использованием методики отображения мысли. Данная карта была создана бесплатным Java-приложением FreeMind, доступным для загрузки на сайте http:// freemidn.sourceforge.net. Как показано на рис. 4.5, при визуализации схемы сайта используется множество визуальных элементов (пиктограммы, стрелки, области-облака). Иллюстрация в книге черно-белая, а карта мысли выводится в полном цвете, что делает ее восприятие еще проще
Создание структуры сайта— это просто фантастически мощный и одновременно простой способ визуализации. Для примера я создал карту сайта недвижимости (рис. 4.6). Обратите внимание, как несбалансированна структура сайта. Можно увидеть, что большая часть тем (топиков) сгруппирована в одной области. У хорошо организованных сайтов структура более сбалансирована.
После небольшой ревизии, обновленная карта сайта выглядит более сбалансированной (рис. 4.7).
Метод отображения мысли превосходно подходит для разработки структуры Web-сайта, особенно для Joom la!-сайта. Создавая карту сайта, вы сможете
ardiive/h)dex,htmt »Ш
..^jL??^ 18П<$ПГ5О?1'-~^№Г
mdex.htnfl
natnba*/fndex.htiri /
•hierian.n)oyting/
NDEX/aboulus/
LOCAL/
E^^r№/n>r»w;»l c«i>
cjeamlng.atlMties/achivW
^Юсдийе/дгсЫуе/
ha*thc ogy
HEALTH/ y’hseithc^l ealthotogyces
archive/
/dm classroom/archhfe/
\southweey_
$1««.Ьес)с/ |
EDUMnow 7>™^¥*»“ ■' "yexiWewTEtiuve/
tou-dobbs-toni^it/^— nancy grace/
naiHiy.gracti/book html i
<pen.house/>
paUa zahnimw/
,pe^..ti*n-riuw/index.liim!
thowbiz-tongt/,
^tuation гоот/Л
tiudentnewe//
central//midweti/$ northeast/
courttv/archive/} qnnion/afchivW^- scotus/archlvezV analyst tocns/afchrvahimi
biogt/pol bcsltickeifindexTitrnl^^"
LAW/,
politics/.
SEARDV
20084*^1 tech^ports/ SPECIALS/ /axJWholida/taveV
\2006/Ут 4Wty bizarchive/
/fun.gam tiwti^pl
ТЕСИ/ / rrtemet/aichive/
SHOW8IZ/
StudtoTour/
TRAVEL/ WEATHER/; about/* o feedpack/
careerbuMdef/cb-tech html ^ "'"21 jntl trtm 4 rielacepMlml X Interactive, legalJtlml'
news.upGilahbnl^r
I me-rnam htmil yQur.comments html /
US/ ^_cireefi/ardiiva/ afrfca/arthiwi/ /arntflcai/archive/ s WORLD//aslepcVardwe/
^/&irope.3rchiva/\measVzudihre/
,,breaking,nnws.html
ha p/»dvertising.htmi
privacy titml.
rhelp/cnnnp?LhM
|hei.c»nlv.htmi
'heipiкйсот Jitmi
^he^r
Tree m mt* services-html
.help/rujitml
^hc saych.hlmlholp/videoJ^n^'jhelp/video/ ’ ~
Е7/“/^^l^L
mostpopraw/ /offbeat/
comparison//jdd«/\jndex-C.htmlcomparison//jdd«/\jndex-C.html' тоЬМе/ У
comparison/
/jdd«/
\jndex-C.html
comparison/
/jdd«/
\jndex-C.html
\ pipeline/
| advertise/ i./wtaghtml
|——^jpodcaiihj^ \rss/
^vfdeo/
Рис. 4.5. Карта сайта CNN com с использованием метода отображения мысли
Рис 4 6. Огромное количество веток слева говорит о несбалансированной структуре сайта
Рис. 4.7. У более сбалансированной карты сайта дерево выглядит симметричным
понять, как ваш материал будет разделен на разделы и категории. Однако если вы хотите добавить к структуре любую актуальную информацию (например, черновик статьи или заметки), программа FreeMind с этим не справится. Для этого нужно использовать профессиональную программу для создания иерархических схем — Leo.
Программа Leo
Leo (Literate Editor with Outlines) — наиболее часто используемая мною программа для разработки Joomlal-сайта. Leo — бесплатная и свободно распространяемая программа, написанная на языке Python, поэтому ее можно запускать на самых разных платформах, поддерживающих этот язык (Linux, Windows и Mac OS). Скачать программу можно на сайте: http://sourceforge.net /project/?groupid=T3458.
У программы Leo есть три основных особенности, которые выделяют ее среди других подобных программ: смешивание файлов, клонирование и возможность добавления дополнительного текста к каждому узлу схемы. Смешивание файлов — это довольно сложная тема, имеющая отношение к коду
программ, поэтому мы ее раскроем в главе 13, когда будем создавать расширения Joomla!. Также Leo позволяет клонировать узлы схемы, вставляя их в любую ее часть. При изменении клона сразу же отображаются в связанных с ним узлах. Эта функция довольно удобна для представления одной и той же информации в разных частях схемы.
Примечание
У Leo гораздо больше функций, чем описано в этой книге. Фактически из Leo вам полностью доступен интерпретатор Python, и вы можете писать собственные скрипты для обработки узлов схемы. Также вы можете добавлять собственные кнопки, а также разрабатывать плагины для выполнения макрофункций. Хотя далеко не все функции Leo нужны при разработке Зоот1а!-сайта, если вы хотите знать больше, вы всегда можете посетить страничку, посвященную Leo — http://leo.zwiki.org
Примечание переводчика
Для работы Leo нужен установленный язык программирования Python, скачать который можно по адресу http://www.python.org/download/. При выборе инсталлятора обратите внимание на тип процессора — существует как обычный инсталлятор для Windows, так и инсталляторы, оптимизированные под процессоры AMD64 и Itanium.
Web-разработчикам будет полезна возможность добавления текста к узлу схемы. На рис. 4.8 видно, что окно Leo разделено натри панели: схему (левая верхняя), панель протоколирования (правая верхняя) и панель текста (нижняя). Панель схемы показывает ту самую схему сайта CNN.com, которую мы создавали с помощью программы FreeMind. Как видите, форма отображения схемы несколько иная — обычная иерархическая схема.
Рис. 4.8. Структура сайта CNN.com, созданная с помощью программы Leo
Вы обратили внимание, что на рисунке выбран один из разделов? В панели текста отображен текст. Вы можете добавить подобный текст для каждого узла схемы. Как только вы начнете использовать эту функцию, поймете, насколько она удобна.
Leo незаменима в тех случаях, когда нужно разработать не только первичную схему сайта, но и добавить первичный контент. У Leo даже есть плагины, обеспечивающие проверку правописания, экспорт схемы в форматы HTML/RTF/Microsoft Word вместе со ссылками (благодаря этому вы сможете просматривать схему сайта в окне браузера) и подсветку синтаксиса кода (в том числе HTML, PHP, CSS, XML и много других компьютерных языков). Наличие функции экспорта означает, что всю вашу работу, проделанную в программе Leo, можно будет конвертировать в ваш Joomlal-сайт.
Кроме того, вы в любое время можете добавить дочерние узлы, а также подключить к вашей схеме HTML-код, РНР-скрипты, CSS-код и другую текстовую информацию. С помощью мыши вы можете перемещать узлы вверх, вниз, влево и вправо.
Одна из самых мощных функция Leo — функция подъема. Если вы хотите сконцентрироваться на какой-нибудь части схемы, выполните команду меню Outline | Hoist. После этого выбранный узел со всеми своими дочерними узлами будет вынесен в отдельную схему (рис. 4.9).
Рис. 4.9. Команда Outline | Hoist выносит выбранную ветку схемы в отдельную схему
Примечание переводчика
Чтобы вернуть все, как было, нужно использовать функцию De-Hoist из меню Outline.
Как только вы разработаете структуру вашего сайта в Leo, можете ее воссоздать с помощью панели управления Joomla! или же использовать плагин Leo для экспорта в HTML. Данный плагин генерирует HTML-код, который можно просмотреть в любом HTML- или текстовом редакторе. Также существует плагин для экспорта в формат Microsoft Word, который может конвертировать схему из Leo-файла в схему MS Word, которую можно будет просмотреть в режиме структуры.
Используя Leo, Microsoft Word или FreeMind (или любую комбинацию этих трех программ), вы можете разработать структуру вашего Joomlal-сайта и даже при необходимости заполнить сайт первичным контентом. С планом на руках мы можем приступить к настоящей разработке сайта
Реинкарнация Web-сайта LoanStraircase в Joomla!
Довольно давно меня посетила идея создать сайт базы данных недвижимости. Я разработал данный сайт с помощью Microsoft Active Server Pages (ASP), а в качестве сервера баз данных использовался Microsoft SQL Server. Сайт был свободный для всех, кто был в нем заинтересован. Изюминкой сайта был форум, где профессиональные агенты по недвижимости обменивались опытом. Также на сайте был обзор книг и видео, связанных с недвижимостью.
Хотя я закрыл этот сайт некоторое время назад, он послужит превосходным примером для данной книги — мы попытаемся воспроизвести его в Joomla!- сайте. Старый сайт послужит основой практически для всего — от шаблона дизайна до доступа к базе данных. К тому же виртуальное сообщество, "выращенное" на сайте, является прекрасной моделью взаимодействия, которую можно реализовать с помощью компонентов Joomla!.
Сначала мы рассмотрим структуру сайта LoanStraircase и разберемся, как, используя возможности Joomla!, можно создать настоящий сайт. Начнем с рис. 4.10, где изображена структура сайта, который мы попытаемся создать. Я создал схему сайта в Leo и даже выбрал несколько статей со старого сайта для их переноса в Joomla!.
Созданную схему я буду использовать при построении Joomlai-сайта. Поскольку Leo может сохранять все — от текста до ссылок, я буду использовать его для создания документации сайта. Также я буду включать MySQL-код для всех созданных мною таблиц, которые до этого использовались для хранения информации старого сайта.
Когда все будет готово, Leo-файл станет зеркалом опубликованного сайта, что позволит мне заархивировать полный документ Web-узла. Затем, по ос-
новным разделам и категориям созданной схемы я создам такую же структуру сайта в Joomla!.
Рис. 4.10 Структура сайта LoanStaircase, воссозданная в Leo
Создание разделов и категорий
Я надеюсь, что вы продумали план сайта, который хотите создать в Joomla!, поскольку этот план понадобится вам прямо сейчас. Многие Joomlal-сайты начинают разрабатываться именно с создания разделов и категорий, необходимых для организации контента, чем мы и займемся в этом разделе. Откройте панель управления Joomla!: сейчас мы реализуем необходимую иерархию сайта.
Удаление демо-данных
(статей, категорий и разделов)
Перед созданием нового сайта нужно удалить демонстрационный контент, чтобы начать создание сайта с нуля. Помните, что раздел сайта не может
быть удален, пока не будут удалены все категории, принадлежащие этому разделу. Аналогично, вы не сможете удалить категорию, пока из этой категории не будут удалены все статьи. Поэтому генеральную уборку нужно начать с уровня статей.
Совет
Если вы вместо переключателя возле названия статьи видите небольшой замок, это означает, что статья в данный момент находится на проверке, т. е. редактируется вами или другим пользователем. Возможно, вы раньше открыли эту статью для проверки/редактирования и окно браузера с этой статьей все еще открыто или же вы его закрыли, но не нажав кнопку Закрыть, поэтому статья считается открытой. Пока статья находится на проверке, ее нельзя удалить. Чтобы разблокировать все статьи, выполните команду меню Инструменты | Сброс блокировок.
В Менеджере материалов выберите 100 из списка Показать # для отображения сразу 100 статей. Теперь все имеющиеся статьи будут показаны как один большой список. В заголовке столбца, в котором находятся все флажки выбора статей, будет один общий флажок. Включите его, чтобы выделить все статьи (рис. 4.11).
Рис. 4.11. Включите флажок в заголовке столбца, чтобы выделить все статьи
После выделения всех статей нажмите кнопку Корзина в верхней части окна, чтобы переместить все выделенные статьи в корзину. Но вы все еще не можете удалить категории, поскольку статьи находятся в корзине, поэтому выберите команду Материалы | Корзина материалов, чтобы отобразить содержимое корзины (рис. 4.12), и снова выделите все статьи.
Нажмите кнопку Удалить. Вы получите список статей, которые будут удалены. Подтвердите удаление контента, и статьи будут навсегда удалены из корзины.
Теперь вам нужно удалить все категории. Перейдите в Менеджер категорий (Панель управления | Категории) и удалите все категории подобно тому, как вы удаляли статьи. Правда, вам не нужно перемещать категории в корзину, поскольку их можно удалить непосредственно. После удаления категорий нужно удалить все существующие разделы. Теперь ваш Joomlai-сайт абсолютно "чист", и вы можете приступить к его наполнению контентом
Совет
Одна из проблем большинства администраторов — перегрузка сайта неопубликованным контентом. Вместо того чтобы удалить ненужные статьи, они просто снимают флаг публикации. Неопубликованный контент подобно сорняку засоряет Joomla'-сайт, в результате чего сайт начинает работать все медленнее и медленнее. Удаляйте старые статьи с сайта!
Добавление новых разделов и категорий
Построение структуры нового сайта начнем с создания разделов. Выберите Материалы | Разделы для запуска Менеджера разделов, который позволяет вам добавлять, удалять, изменять разделы и менять их порядок
Для добавления нового раздела нажмите кнопку Новый (рис. 4.13). Для сайта LoanStaircase я первым делом добавил раздел для домовладельцев. Примите
во внимание, что это первый раздел плана нашего сайта. Значение поля Заголовок должно быть кратким, поскольку оно появится в меню. В моем случае я ввел в качестве заголовка Home Owner Section (Раздел для домовладельцев).
Рис. 4.13. Для создания нового раздела нажмите кнопку Новый
После заголовка вам нужно заполнить следующие поля:
Псевдоним — задает псевдоним раздела. В отличие от поля Заголовок, которое отображается в меню и должно быть кратким, псевдоним отображается только тогда, когда выбран раздел, а его длина может быть такой, как вам нужно. Для этого поля я установил значение Home Owner/Buyer Section (Для тех, кто хочет купить или продать дом);
Публикация — определяет, будет ли опубликован данный раздел или нет. Это очень мощная функция, поскольку с ее помощью администратор может скрыть целый раздел. Выберите переключатель Да для этого поля;
Сортировка— позволяет определить расположение текущего раздела в общем списке. Из выпадающего списка вы можете выбрать, после какого раздела должен быть выведен новый раздел, также можно выбрать директиву первый или последний, и новый раздел будет помещен в начало или конец списка соответственно. Новые элементы по умолчанию всегда становятся последними, а порядок можно изменить только после сохранения раздела;
Доступ — задает уровень доступа к разделу и к статьям этого раздела. Значения могут быть: Всем, Registered (зарегистрированным пользователям) и Специальный;
Картинка — задает пиктограмму для раздела. Из раскрывающегося списка можно выбрать названия всех картинок, расположенных в папке \stories. Я отказался от выбора картинки;
Позиция картинки — определяет позицию картинки раздела: слева, по центру или справа. Я оставил это поле как есть — по умолчанию;
Описание — содержит полное описание раздела. В это поле нужно я поместил основное описание документов, которые пользователи (продавцы и покупатели недвижимости) могут найти в этом разделе.
Как только вы нажмете кнопку Сохранить, раздел будет сохранен в базе данных. Поздравляю! Вы только что создали первый раздел. Теперь вам осталось добавить все разделы, согласно вашему плану.
Совет
Менеджер разделов, Менеджер категорий и Менеджер материалов позволяют выбрать картинку из каталога \images\stories. Для закачки новых картинок на сайт нужно использовать Медиаменеджер
Для создания категорий с помощью Менеджера категорий используется интерфейс, аналогичный тому, который вы использовали для создания новых разделов, поэтому нет особой необходимости в пошаговых инструкциях.
Для категорий есть одна дополнительная опция — Раздел. Поскольку категория — это иерархический потомок раздела, вы должны выбрать (из раскрывающегося списка) название раздела, к которому будет относиться создаваемая категория.
Откройте Менеджер категорий и добавьте все категории из вашего плана. После этого вы сможете приступить к добавлению статей.
Выбор текстового редактора
Перед добавлением статей вам нужно выбрать WYSIWYG-редактор, который вы будете использовать для модификации статей. Каждый пользователь может выбрать любой редактор из доступных в Joomla!, но администратор может выбрать редактор по умолчанию.
Для выбора редактора укажите команду панели управления Общие настройки | Сайт. На фрейме Сайт список Визуальный редактор по умолчанию содержит названия доступных редакторов. По умолчанию в Joomla! установлены два редактора: TinyMCE и XStandard Lite.
Сравнение редакторов TinyMCE и XStandard Lite
В стандартный "комплект поставки" Joomla! входят два WYSIWYG- редактора: TinyMCE и XStandard Lite. Редактор TinyMCE обеспечивает пре-
восходные возможности редактирования текста, поэтому был выбран по умолчанию. С возникновением Joomla! 1.5 появился редактор XStandard Lite, предоставляющий дополнительные возможности (строгое соответствие XHTML и некоторые другие функции).
Вам нужно попробовать оба редактора, а потом уже выбрать лучший для вас. Создатели обоих редакторов стремятся сделать их совместимыми с большинством браузеров, однако будьте готовы к тому, что иногда функциональность редакторов в определенных браузерах будет ограничена. Если вы разрабатываете сайт под заказ, сначала нужно протестировать WYSIWYG-редактор в браузере заказчика, чтобы избежать трудностей при добавлении материала.
Совет
Хотя TinyMCE и XStandard Lite — стандартные редакторы, входящие в состав дистрибутива Joomla!, для Joomla! доступны дополнительные редакторы. На момент написания этих строк было доступно девять альтернативных редакторов с дополнительными функциями вроде поддержки XML, расширенного управления медиаданными и т. д. Для более подробной информации посетите категорию WYSIWYG Editors раздела Extensions сайта extensions.joomla.org.
TinyMCE
TinyMCE (Tiny MoxieCodeEditor) довольно долго был (и остается) стандартным редактором для Joomla!. Он написан на JavaScript, что обеспечивает полную WYSIWYG-функциональность. TinyMCE похож на небольшой текстовый процессор (рис. 4.14). он даже позволяет редактировать непосредственно HTML-код контента.
Рис. 4.14. У TinyMCE есть функции, аналогичные функциям текстовых процессоров
Основные функции этого редактора следующие:
изменение шрифта, стиля и размера шрифта;
выравнивание по левому краю, по центру, по правому краю и по ширине;
функции Вырезать, Копировать и Вставить (допускается вставка текста без форматирования из Word);
поиск и замена текста;
поддержка списков (нумерованных и маркированных);
многократная отмена и повтор действий;
вставка даты, времени, гиперссылок, HTML-тегов, горизонтальных полос, символов, смайликов, картинок и встроенных медиаданных (в том числе Flash);
выбор цвета текста и фона;
возможность вставки таблицы и возможность манипуляции столбцами и строками таблицы;
поддержка CSS (Complete Cascading Sheets).
Также TinyMCE предоставляет следующие дополнительные функции:
проверку правописания;
печать;
поддержку символов национальных алфавитов и возможность перехода к редактированию справа налево;
полноэкранное редактирование;
слои;
абсолютное позиционирование;
отображение контрольных символов.
Текущая версия TinyMCE полностью совместима с браузером Microsoft Internet Explorer 5.5 SP2 (и более новыми версиями, версия IE 5.0 не совместима с этим редактором), Mozilla SeaMonkey 1.0.5 (и выше), Firefox 1.5а (и выше). Opera 9 (и выше). Теоретически, TinyMCE будет работать с любым браузером, поддерживающим JavaScript.
Внимание!
У TinyMCE есть ограничение на размер статьи. Не думаю, что у вас возникнут проблемы с размером статьи (потому что обычно в онлайн-режиме публикуются короткие статьи), старайтесь, чтобы текст статьи не превышал 200— 300 Кбайт, иначе редактор зависнет. Вообще это больше проблема JavaScript, нежели проблема самого редактора.
XStandard Lite
В версии 1.5 появился редактор XStandard, предоставляющий дополнительные специальные функции для людей с ограниченными возможностями и
поддержку XHTML. Данный редактор требует установки специального плагина на стороне клиента. На момент написания этих строк данный плагин был доступен только для платформы Windows.
Примечание
Редактор XStandard Lite, поставляемый с Joomla! 1.5, является не очень известной версией редактора XStandard. То, что поставляется с Joomla!, является специальной версией, созданной усилиями команды разработчиков Joomla! и команды XStandard. Редактор XStandard Lite обладает большинством функций редактора XStandard Professional (коммерческий программный продукт) и является бесплатным для пользователей Joomla!. Профессиональная версия редактора доступна на сайте www.xstandard.com
Вот список уникальных функций XStandard Lite:
CSS-разметка, поддержка XHTML;
библиотека картинок, из которой можно вставлять картинки в свои статьи;
библиотека гиперссылок;
возможность вставлять отрывки из библиотеки;
возможность изменения размера картинки прямо в редакторе;
управление параметрами таблицы (например, шириной столбцов) с помощью мыши.
Самый большой (и единственный) недостаток XStandard Lite — ограниченная поддержка операционных систем: плагин, запускаемый на стороне клиента (пользователя), работает только в Windows 98, ME, NT, 2000 и ХР А вот TinyMCE работает практически на любой платформе, для которой разработан JavaScript-совместимый браузер. С другой стороны, плагин XStandard Lite обеспечивает производительность, о которой можно только мечтать в скриптовых редакторах вроде TinyMCE.
Без редактора
Если вы в настройках сайта выберете No Editor в качестве редактора, это совсем не означает, что редактор вообще не будет доступен. Когда вы выбираете редактор вроде TinyMCE, область редактирования HTML-кода будет заменена редактором, позволяющим выбирать шрифты, стили, вставлять картинки и т. д.
Если вы выбрали No Editor, для редактирования статьи появится обычная область для ввода текста, в которую вы можете вводить непосредственно HTML-код, например:
<Ь1>Мой заголовок</Д1Хр>Мой текст</р>
Опция No Editor — лучший выбор для опытных пользователей или же когда есть необходимость вырезать и вставлять HTML-код прямо в текст статьи. Однако в большинстве случаев новички будут озадачены HTML-тегами.
Добавление статей
В главе 2 было рассмотрено добавление простой статьи. Теперь пришло время рассмотреть этот процесс более подробно. Мы не только изучим параметры статьи, но и поговорим о внедрении в статью различного медиаконтента (рисунков, звуков, Flash-анимации).
Установка
основных параметров статьи
Основные параметры статьи вам придется устанавливать каждый раз при добавлении нового материала. К этим параметрам относятся дата публикации, псевдонимы заголовка и автора и др. Они определяют, как статья будет представлена на сайте.
Для каждой статьи могут быть определены следующие параметры (см. рис. 2.30):
Псевдоним — альтернативный заголовок для статьи, который может использоваться сценариями для так называемого дружественного поиска. Например, псевдоним для статьи "What’s New in 1.5?" может быть "whats- new-in-15", что сделает название статьи более удобным для написания кода;
Псевдоним автора— вместо имени автора будет отображаться его псевдоним (если вообще включена опция показа имени автора);
Доступ — устанавливает права доступа для трех групп пользователей (Всем, Registered Специальный);
Дата создания — позволяет определить дату создания статьи, которую увидят все посетители;
Опубликовано— определяет, когда статья должна автоматически появиться на Joomlal-сайте. Данная функция очень полезна, когда публикуемый материал тесно связан с определенной датой или же публикуется планируемый выпуск новостей, например, блок "Советы повара по вторникам". Редакторы могут загрузить статью когда угодно, но она будет опубликована во вторник. На языке военных данный метод называется "выстрелил и забыл". После установки даты публикации статья автоматически появится на сайте в указанное время;
Истекает — позволяет указать дату, когда статья будет скрыта Если данный параметр не указан, статья будет на сайте до тех пор. пока ее не скроют вручную или не удалят.
Все поля выбора даты (Дата создания | Опубликовано | Истекает) содержит кнопку ..., вызывающую графический календарь, позволяющий легко выбрать нужную дату.
Совет
Параметры Опубликовано и Истекает предоставляют отличную возможность публикации и активации сезонного контента. Вы можете публиковать информацию, которая будет полезна каждый год (например, как красиво упаковать подарок) и установить параметры Опубликовано и Истекает так. чтобы статья была опубликована между 1 и 31 декабря. Данная статья может быть создана летом, после чего о ней можно забыть. Когда наступит Новый год, данная статья будет автоматически опубликована на сайте в указанное время. В конце года вы можете просто переустановить даты для периодического материала, и ваш сайт опять сможет отобразить его.
Установка расширенных параметров статьи
В разделе Параметры - Расширенные (рис. 4 15) можно определить параметры статьи, которые будут задействованы, когда статья будет полностью отображена (когда посетитель щелкнул на ссылке Подробно внизу описания статьи). В большинстве случаев эти параметры не требуют изменения, поскольку параметры по умолчанию вполне приемлемы.
Большинство расширенных параметров предназначено для перезаписи глобальных параметров. Значение по умолчанию для расширенного параметра— Использовать глобальные. В большинстве случаев использование глобальных параметров— отличная идея, поскольку с помощью панели управления их можно установить один раз для всех статей, у которых не определены собственные параметры.
В разделе Параметры - Расширенные можно определить следующие параметры:
Заголовок — показывает или скрывает заголовок статьи;
Заголовок как ссылка— разрешает ссылку в заголовке статьи Когда посетитель перейдет по этой ссылке, он попадет на ту же страницу, что и по ссылке Подробнее;
Вступительный текст— показывает вступительный текст чуть выше статьи. Вступительный текст — это описание статьи, отображаемое в спи-
ске статей при просмотре категории, вместе со ссылкой Подробнее Чтобы отделить вступительный текст от остальной части статьи, используйте кнопку Разрыв страницы (вы увидите красную горизонтальную полоску, отделяющую вступление от текста статьи);
Параметры - Статьи
^ Параметры - Расширенные
Заголовок I Использовать глобальные V^
Заголовок как ссылка
Вступительный текст
На»в«м те раздела
На тайме рлцела как ссылка
Назван ie категории
Название категори 1 как ссылка
Рейтинг
Имя автора
Дата и время создания
Дата и вретАЯ последнего изменения
Иконка PDF
Иконка печати
Иконка е mail
Язык материала
Ключевая сноска
Альтернативный текст
Подробнее...
* Метаданные
| Использовать глобальные у< | Использовать глобальные V | Использовать глобальн ы ® V | Использовать глобальные V [ Использовать глобальные ^j | Использовать глобальные V' | Использовать глобальные У | Исполь овать глобальные V ^Использовать глобальные v [использовать глобальные v| Использовать глобальные V | Использовать глобальные V ^Использовать глобальные .у^ Г- Выберите #ык - V| Использовать глобальные у< | Использовать глобальные V | Использовать глобальн ы ® V | Использовать глобальные V [ Использовать глобальные ^j | Использовать глобальные V' | Использовать глобальные У | Исполь овать глобальные V ^Использовать глобальные v [использовать глобальные v| Использовать глобальные V | Использовать глобальные V ^Использовать глобальные .у^ Г- Выберите #ык - VРис. 4.15. Расширенные параметры статьииспользуются только при полном отображении статей
| Использовать глобальные у< | Использовать глобальные V | Использовать глобальн ы ® V | Использовать глобальные V [ Использовать глобальные ^j | Использовать глобальные V' | Использовать глобальные У | Исполь овать глобальные V ^Использовать глобальные v [использовать глобальные v
| Использовать глобальные V | Использовать глобальные V ^Использовать глобальные .у^ Г- Выберите #ык - V
| Использовать глобальные у< | Использовать глобальные V | Использовать глобальн ы ® V | Использовать глобальные V [ Использовать глобальные ^j | Использовать глобальные V' | Использовать глобальные У | Исполь овать глобальные V ^Использовать глобальные v [использовать глобальные v
| Использовать глобальные V | Использовать глобальные V ^Использовать глобальные .у^ Г- Выберите #ык - V
Название раздела и Название раздела как ссылка — первый параметр переопределяег, будет ли показано название раздела при просмотре статьи. Второй параметр переопределяет, будет ли создана ссылка для названия раздела, что позволит посетителю просмотреть все статьи из этого раздела;
Название категории и Название категории как ссылка — первый параметр показывает название категории в начале статьи. Второй определяет, будет ли создана ссылка для названия категории, что позволит посетителю просмотреть все статьи из этой категории;
Рейтинг— показывает рейтинг статьи (рейтинг устанавливается пользователями). Будьте осторожны с изменением этого параметра. Если у одной статьи не будет рейтинга, а у других будет, или, наоборот, у всех статей будет показан рейтинг, а у одной — нет, это может показаться странным для посетителей сайта;
Имя автора — переопределяет, показывать имя автора или нет;
Дата и время создания — показывает или скрывает дату создания;
Дата и время последнего изменения — показывает или скрывает дату последнего изменения;
Иконка PDF — показывает или скрывает пиктограмму PDF-версии статьи;
Иконка печати — переопределяет, показывать или нет пиктограмму печати для этой статьи;
Иконка e-mail — переопределяет, показывать или нет пиктограмму e-mail для этой статьи;
Язык материала — переопределяет язык материала;
Ключевая сноска— текст, используемый для ссылки на эту статью в пределах системы Joomla!;
Альтернативный текст Подробнее... — задает текст для ссылки Подробнее, т. е. указанный текст будет отображаться вместо слова "Подробнее".
Расширенные параметры статьи изменяются довольно редко, вряд ли вы будете изменять их.
Установка метаданных статьи
Метаданные — это информация об информации. В нашем случае, это информация о статье, невидимая пользователями, зато доступная для поисковых машин и использующаяся для индексирования статьи. Метаданные очень важны для корректного представления ваших материалов в WWW. Более подробно о них мы поговорим в главе 12, когда будем рассматривать технику поисковой оптимизации.
В Joomla! вы можете установить следующие поля метаданных:
Описание— позволяет задать описание статьи. Описание отображается в некоторых поисковых машинах (например, Joomla!) сразу после заголовка статьи;
Ключевые слова — ключевые слова, относящиеся к статье;
Параметр Robots— задает параметр Robots, определяющий опции индексирования этой страницы поисковиками;
Author— позволяет изменить автора статьи. Данная функция полезна, когда администраторы публикуют чужой материал, например, полученный по электронной почте от автора.
Совет
Многие поисковые машины не обращают внимания на ключевые слова, поскольку спаммеры устанавливают их так, что они не соответствуют реальному контенту их сайтов. Поэтому не тратьте много времени на ключевые слова, а вместо этого убедитесь, что необходимые ключевые слова есть в описании и в самой статье. Такая стратегия будет более эффективной. Если вы хотите упростить данный процесс, то можете использовать один из генераторов метаданных (например, www see-search.com/webdesign/seeMetaTag.htm) для извлечения ключевых слов из ваших тегов.
Каждый раз при публикации новой статьи не забывайте заполнять метаданные, поскольку маловероятно, что вы вспомните о них уже после добавления статьи, поэтому лучше всего заполнять их при добавлении статьи
Добавление статьи на сайт
Теперь вы ориентируетесь в параметрах статьи, что позволит вам более эффективно публиковать ваши статьи. Сейчас настало время добавить новую статью, согласно структуре вашего сайта.
Откройте Менеджер материалов и нажмите кнопку Новый или же просто нажмите кнопку Добавить материал в панели управления Joomlal. Введите заголовок и псевдоним статьи (обычно это версия статьи, удобная для компьютера). Выберите раздел и категорию, а также решите, будет ли статья опубликована на главной странице сайта. На рис. 4.16 показана статья, которую я опубликовал на сайте.
Перед сохранением статьи я хотел бы изменить несколько расширенных параметров в разделе Параметры - Расширенные (рис. 4.17). Я хочу, чтобы название категории отображалось, как ссылка. Затем я хочу включить пиктограмму печати, чтобы посетители могли сразу распечатать статью, если им это нужно (даже если у большинства остальных статей эта функция выключена в глобальных параметрах).
Убедитесь, что вы установили метаданные статьи. Я добавил краткое описание статьи, указав в нем все важные слова. Также я поместил список ключевых слов, соответствующих статье (рис. 4.18).
Перед сохранением статьи я указал ее метаданные. Но и это еще не все. Сначала я загружу небольшое изображение домика в формате PNG с целью отображения его в тексте статьи. Позже я добавлю аудиофайл. Вы же можете добавить Flash-ролик или любой другой мультимедийный файл.
Joomla! Joomla Jumpstart
Саит Псе мента Материалы компоненты Расти трения Инструменты
ПомощьПомощьr^Fr^FЗаголовокЗаголовок'Заголовок статей'Заголовок статейПубликацияПубликацияПсевдонимПсевдонимpsavdonimpsavdonimНа главнойНа главнойРазделРазделI Home Owner Section *v1I Home Owner Section *v1КатегорияКатегория<• Нет ^ д6 foeneral V<• Нет ^ д6 foeneral Vв / Uв / UAM | ”:AM | ”:p --Styles ■p --Styles ■<L *S ^«™^<L *S ^«™^Format - v - Font family -**^ j u » ia II и И •'Format - v - Font family -**^ j u » ia II и И •'Статья: [Новый]
Помощь
Помощь
r^F
r^F
Заголовок
Заголовок
'Заголовок статей
'Заголовок статей
Публикация
Публикация
Псевдоним
Псевдоним
psavdonim
psavdonim
На главной
На главной
Раздел
Раздел
I Home Owner Section *v1
I Home Owner Section *v1
Категория
Категория
<• Нет ^ д6 foeneral V
<• Нет ^ д6 foeneral V
в / U
в / U
AM | ”:
AM | ”:
p --Styles ■
p --Styles ■
<L *S ^«™^
<L *S ^«™^
Format - v - Font family -*
*^ j u » ia II и И •'
Format - v - Font family -*
*^ j u » ia II и И •'
Текст статьи
Рис. 4.16. Введите заголовок, псевдоним, текст статьи, выберите раздел и категорию статьи
Рис. 4.17. Измените необходимые вам расширенные параметры статьиРис. 4.17. Измените необходимые вам расширенные параметры статьи
Рис. 4.17. Измените необходимые вам расширенные параметры статьи
Рис. 4.17. Измените необходимые вам расширенные параметры статьи
Метаданные
Все, что вы хотели знать об АНН, но боялись спросить Описание
Ноае Owner, homeowner, ага.
Ключевые АМ слова
Параметр Robots Author
Рис. 4.18. Убедитесь, что вы указали метаданные статьидля ее корректного отображения в поисковых машинах
Поместите курсор в то место, где вы хотите увидеть картинку. Перед добавлением мультимедийного файла в статью вам нужно загрузить его на сайт. Внизу экрана будет кнопка Картинка. Нажмите ее — вы увидите окно Вставить картинку. Данное окно отображает миниатюры всех загруженных на сайт мультимедийных файлов.
Совет
Если у вас есть картинки, которые нужно вставить в отдельные статьи, вы можете их загрузить с помощью Мвдиаменеджера
Я хочу загрузить собственную картинку, поэтому я нажал кнопку Обзор (рис. 4.19), выбрал мой файл houseicon.png и нажал кнопку Загрузить. После загрузки изображения его миниатюра автоматически появится в окне выбора картинки.
Для вставки картинки просто нажмите ее. Поле Адрес (URL) картинки будет автоматически заполнено. В моем случае— это images/stories/houseicon.png.
После этого я ввел описание картинки, что очень важно для поисковых машин, да и вообще для удобства пользователей. Поисковые машины не могут "увидеть" графику, зато они могут "прочитать" HTML-тег <ait>, задающий текстовое описание картинки. Описание картинки как раз устанавливает этот тег. Кроме этого, текстовое описание картинки используется программами для чтения с экрана.
В качестве заголовка картинки я просто продублировал текст, введенный в поле Детали картинки. Также я хочу, чтобы картинка была подписана на странице, поэтому я включил флажок Подпись После всего этого я нажал
кнопку Вставить в правом верхнем углу экрана для вставки картинки в текущую позицию курсора. Картинка будет вставлена прямо в текст статьи (рис. 4.20).
Рис. 4 19. Нажмите кнопку Обзор и выберите картинку, которую вы хотите загрузить
Рис. 4 20 Картинка появится в текущей позиции курсора
Теперь статья готова к публикации, поэтому я нажал кнопку Сохранить для сохранения статьи в базе данных Joomla!. Если вы перейдете на ваш сайт, то не увидите статью. Почему? Потому что чуть ранее вы удалили все старые
разделы и категории, которые должны были отображаться на главной странице.
Чтобы увидеть новый материал, вам нужно добавить новые разделы и категории на главную страницу. Перед этим давайте добавим еще одну статью, чтобы проверить, как отображается некатегоризированный материал.
Добавление второй статьи
Чтобы разобраться с разными типами контента, вам нужно добавить еще одну статью и сделать ее некатегоризированной. Позже вы можете сделать ссылку в меню на некатегоризированную статью, как на целый раздел или категорию. Пример некатегоризированного документа — "Условия использования сайта".
Довольно часто некоторые документы, вроде условий использования сайта, лицензии, не вписываются в иерархическую структуру сайта. Конечно, для таких документов можно создать отдельную категорию, но в этом примере мы оставим статьи некатегоризированными.
Создайте новую статью, параметры и текст можно указать на свое усмотрение. Убедитесь, что в раскрывающихся списках Раздел и Категория выбрано значение Без категории (рис. 4.21).
Рис. 4.21. Создайте некатегоризированную статью для демонстрации прямых ссылок
В отличие от предыдущей статьи, мы не будем изменять расширенные параметры. Однако вы можете использовать расширенные параметры для перезаписи следующих глобальных значений: имя автора, дата и время создания
статьи. Я рекомендую скрыть оба параметра, поскольку они не нужны для системного документа (но необходимы для всех остальных статей сайта).
Как только статья будет готова, нажмите кнопку Сохранить для публикации статьи в базе данных. Теперь можно приступить к созданию меню.
Совет
Домашняя страница вашего Joomiai-сайта называется главной страницей. Менеджер главной страницы используется для определения контента, отображаемого на главной странице. Если вы хотите быстро проверить содержимое главной страницы, запустите Менеджер главной страницы с помощью кнопки Главная страница в панели управления Joomla!. Все материалы, размещенные на главной странице, также доступны в Менеджере материалов.
Если после возвращения в Менеджер материалов в колонке Публикация будет изображена пиктограмма задержки (с желтым восклицательным знаком), это означает, что статья будет опубликована в будущем, т. е. в качестве даты публикации указана дата из будущего (рис. 4.22). Чтобы опубликовать статью прямо сейчас, откройте ее для редактирования и измените дату публикации на текущую.
Рис. 4.22. Если отображен значок задержки, значит, дата публикации статьи — в будущем
Связь меню со статьями
В основе Joomla! лежат статьи, но чтобы получить к ним доступ, используется система меню. Каждый раздел, каждая категория или даже отдельный документ должен быть привязан к меню, чтобы посетитель смог получить к нему доступ. Меню в Joomla! не всегда определяется так, как в обычном приложении.
В Joomla! меню может быть горизонтальным и располагаться в верхней части окна или же вертикальным и располагаться в левой части окна. Меню может выглядеть как простой список статей, позволяющий пользователю перейти к нужной статье. Меню также может быть выполнено в виде блога.
В следующей главе мы подробно рассмотрим каждый тип меню. А сейчас мы просто создадим одно прямое меню и одно меню категории, позволяющее просмотреть все статьи категории.
Создание прямого меню для некатегоризированной статьи
Для нашей некатегоризированной статьи мы создадим меню, разрешающее пользователю получить к ней доступ. Данное меню будет отображаться отдельным элементом в главном меню.
Откройте Менеджер меню, выберите главное меню и нажмите кнопку Редактировать пункты меню Затем нажмите кнопку Новый для создания нового пункта меню.
Вы увидите окно, напоминающее представленное на рис. 4.23. В этом окне находится список всех типов контента, привязанных к данному меню. Чтобы увидеть доступные статьи, нажмите ссылку Материалы в группе Внутренняя ссылка.
LJI Меню: [ новый ]О М
Отменить Помоць
। Выберше шп меню
С @ Внутренняя ссылка
Б Материалы
Б Контакты
9 Панты новостей
а Голосования
а Поиск
Б Пользователь
Я Взб-ссылки
а Враппер
В В Внешняя ссылка
।• а Разделитель
• Q Псевдоним
Рис. 4 23 В этом окне вы можете выбрать контент для связи с меню
Выберите тип меню Стандартный шаблон материала для создания прямой ссылки на статью. Установите название пункта меню Условия использования сайта или любое другое, соответствующее вашей некатегоризированной статье. Оставьте значения в раскрывающихся списках Показать в и Родительский элемент как есть (Joomla Jumpstart Menu и Верх соответственно), как показано на рис. 4.24.
* Параметры ОсновныеВыберите статьиВыбрать■ Параметры - КомпонентПараметры Система* Параметры ОсновныеВыберите статьиВыбрать■ Параметры - КомпонентПараметры СистемаТип пункта меню
* Параметры Основные
Выберите статьи
Выбрать
■ Параметры - КомпонентПараметры Система
* Параметры Основные
Выберите статьи
Выбрать
■ Параметры - КомпонентПараметры Система
Стандартный шаблон материала
Стандартный шаблон материала отображает один материал
Подробное!» пункта меню
Заголовок
Псевдоним:
Ссылка: index php?opbon-com_6onteni&vie«^4rtid«
Покатать В: | Joomla Jumpstart Menu v Родительский элемент: [^ЗННВНЯНВ
। JoomtaT Overview
What's New in 1 6^ Joomla! License More about Joomla!
The Nene Web Links Nev* Feeds
Публиатм: Г нет 6 д.
Порядок показа- Новые элементы по умолчанию становятся лоследгыми Порядок может быть изменен посла сохранения
Рис. 4.24. Оставьте значения в раскрывающихся списках Показать ви Родительский элемент как есть
В правом верхнем углу нажмите кнопку Выбрать и в появившемся окне (рис. 4.25) выберите статью. Для выбора статьи просто щелкните на ее названии, после чего название статьи появится в поле Выберите статью.
Больше не нужно изменять никакие параметры, поэтому можете нажать кнопку Сохранить.
Если теперь вы зайдете на главную страницу своего Joomlai-сайта, то увидите в главном меню новый пункт — Условия использования сайта (рис. 4.26). Если вы нажмете эту ссылку, то увидите нашу страницу без ссылок на раздел или категорию сайта.
Подобным образом вы можете добавить в меню любой другой элемент. Однако CMS создана не для того, чтобы каждую новую статью добавлять в меню вручную. Вместо этого вы можете создать динамическое меню для целой категории сайта.
Рис 4.25. Щелкните на статье для ее связи с меню
Main Menu
Ноте
Hie Hews
Web Luks
News Feeds
Условия использования ca ла
Рис. 4.26. Пункт Условия использования сайта теперь часть главного меню
Отображение меню категории
В этом разделе мы научимся добавлять элемент меню, отображающий все статьи определенной категории сайта. Перед добавлением нового меню желательно произвести "генеральную уборку" главного меню, чтобы очистить его от несуществующего контента.
Откройте Менеджер меню и нажмите кнопку Редактировать пункты меню напротив главного меню. Когда будет показан список элементов меню, выберите все элементы кроме Ноше и Условия использования сайта (в том числе Joomla! Overview, What’s New in 1.5?, Joomla! License, More about Joomla!, FAQ, The News, Web Links, News Feeds). Нажмите кнопку Корзина для удаления этих элементов. Не нужно сразу очищать корзину, вы сможете сделать это в любой удобный момент.
Если вы обновите главную страницу сайта, то увидите всего два элемента главного меню. Теперь, когда вы очистили меню от "битых" ссылок, пора
6 Зак 468
создавать новые пункты меню. Поскольку Менеджер меню все еще отображает пункты главного меню, нажмите кнопку Новый для создания нового элемента меню.
Как и в случае с прямой ссылкой, выберите Внутренняя ссылка | Материалы. Далее выберите Шаблон списка категории. Вы увидите окно, которое будет немного отличаться от окна создания ссылки на статью, рассмотренного в предыдущем разделе. Справа (рис. 4.27) вы увидите параметры элемента меню, позволяющие вам определить, как будут показываться статьи.
Примечание переводчика
Шаблон списка категории отличается от шаблона блога категории тем, что в первом случае выводятся только ссылки на статьи, а во втором — выводятся краткое описание каждой статьи и ссылка Подробнее
Рис. 4.27. В области Параметры - Основные вы можете определить параметры, влияющие на отображение шаблона списка категории
Вам нужно указать название элемента меню. В случае с сайтом LoanStaircase я хочу, чтобы все документы из категории General (Общие) отображались этим меню, поэтому я назвал данное меню Free Borrower Articles (Бесплат-
ные статьи для заемщика). В области Параметры - Основные я выбрал категорию General, в которую я буду помещать все основные статьи.
Когда все будет готово, нажмите кнопку Сохранить для создания меню. Вы увидите элементы главного меню, новый элемент будет помещен в конец списка. Вполне естественно, что вы захотите переместить это меню выше вашего прямого меню, поэтому нажмите стрелку вверх в столбце Порядок (рис. 4.28).
Рис. 4.28. Нажмите стрелку вверх для изменения порядка текущего меню
Обновите окно браузера, и вы увидите не только элементы меню, отображенные в правильном порядке, но и статью, отображенную на главной странице сайта. Шаблон отобразит содержимое главного меню, и вы увидите только что добавленный пункт меню. Теперь, когда вы знаете, как настроить под себя контент сайта, мы перейдем к изменению оформления сайта.
Установка нового шаблона
Лучший способ изменить внешний вид Joomlal-сайта— это загрузка и установка шаблона. В Интернете вы найдете много бесплатных и коммерческих сайтов, где можно скачать новые, высококачественные шаблоны для вашего сайта. В этом разделе мы научимся загружать и устанавливать новый шаблон, позволяющий придать вашему сайту более презентабельный вид.
Графическая тема вашего Joomlal-сайта определяется шаблоном сайта. По умолчанию (при стандартной установке) выбран шаблон rhuk milkyway. Чтобы понять всю мощь системы шаблонов, обратите внимание, как изменится ваш сайт после выбора нового шаблона. Внешний вид сайта будет полностью преобразован.
Перед тем как приступить к установке шаблона, его нужно выбрать и загрузить. Существует много коммерческих сайтов, позволяющих купить доступ
ко всем своим шаблонам. Из бесплатных сайтов можно порекомендовать два — ww5v.joomla24.com и www.joomlahut.com.
Совет
К сожалению, когда вы попытаетесь найти бесплатные Joomlal-шаблоны с помощью поисковых машин вроде Joomla!, то получите большинство ссылок на коммерческие сайты, на которых только есть слово "бесплатный". Даже если на этих сайтах и есть бесплатные шаблоны, они "запрятаны" так далеко в недрах сайта, что вам будет трудно их отыскать, или же вообще на этих сайтах нет бесплатных шаблонов. Однако не сдавайтесь — в Интернете есть много бесплатных Joomlal-шаблонов.
Шаблон очень часто сохранен в ZIP- или GZIP-архиве. Поскольку Joomla! умеет работать с архивами этих типов, вам не нужно распаковывать файлы архива на жесткий диск. Достаточно лишь загрузить шаблон на сайт, а Joomla! сама распакует файлы шаблона и поместит их в соответствующие каталоги.
Режим совместимости с Joomla! 1.0
В сети можно найти огромное количество шаблонов для Joomla! версии 1.0. При создании версии Joomla! 1.5 разработчики понимали, что важно обеспечивать режим обратной совместимости на тот случай, если старые шаблоны никогда не будут обновлены.
Для активации режима обратной совместимости выберите команду панели управления Joomla! Расширения | Менеджер плагинов и активизируйте (опубликуйте) плагин System - Legacy. Если вы используете шаблоны версии 1.5, отключите это расширение, поскольку оно сводит на нет все улучшения в новой системе плагинов (в том числе страдает производительность сайта).
Программный интерфейс 1.0 теперь не приветствуется (в будущем вообще будет прекращена его поддержка), поэтому если у вас есть возможность перейти на шаблон версии 1.5, сделайте это. Команда разработчиков Joomla! произвела ревизию системы шаблонов, по результатам которой можно сделать вывод, что шаблоны версии 1.5 будут еще долго использоваться, а вот время шаблонов версии 1.0 уже вышло.
Обычно шаблон состоит из набора файлов, включающего PHP-код. таблицы стилей (CSS) и картинки. На рис. 4.29 представлен сайт Joomla24, где я пытаюсь загрузить шаблон Moz Dev в ZIP-формате. Найдите на этом сайте (или на любом другом) шаблон и сохраните его на жестком диске.
Для изменения шаблона вам сначала нужно загрузить его на ваш сайт с помощью Менеджера расширений. Вызвать этот менеджер можно командой Расширения | Удалить/установить. Нажмите кнопку Обзор и выберите файл шаблона, затем нажмите кнопку Загрузить файл & Установить (рис. 4.30).
После успешной загрузки шаблона, откройте Менеджер шаблонов. Сейчас выбран шаблон rhukmilkyway. Чтобы изменить дизайн сайта, выберите ус-
тановленный вами шаблон и нажмите кнопку По умолчанию в верхней час
ти окна.
Рис. 4.29. Нажмите ссылку Download для загрузки архива нового шаблона
Рис. 4.30. Нажмите кнопку Загрузить файл & Установить для установки нового шаблона
Откройте браузер и нажмите кнопку Обновить, чтобы просмотреть, как будет выглядеть сайт в новом шаблоне. Поздравляю! Вы только что изменили дизайн вашего сайта. Если вы хотите загрузить коммерческие шаблоны, к ваши услугам множество сайтов. Вы можете менять дизайн сайта хоть каждый месяц!
Совет
Чтобы увидеть, как будет выглядеть ваш сайт после применения того или иного шаблона, подведите указатель мыши к названию шаблона (в Менеджере шаблона). Вы увидите небольшое окно предварительного просмотра.
Ваш сайт и ваши пользователи
Одно из огромных преимуществ CMS перед обычной Web-страницей — это возможность простого управления содержимым. Если у вас есть пользователи (редакторы или модераторы), работающие с контентом сайта, вы можете уделять больше времени продвижению сайта и другим не менее полезным задачам. Joomla! позволяет назначить зарегистрированным пользователям различные роли, предоставляющие полномочия по изменению Web-сайта.
Вы можете разрешить вашим пользователям добавлять новый материал, но публиковаться он будет только после вашего одобрения Только за вами последнее слово, что будет на сайте, а что — нет
Совет
В стандартную "поставку" Joomla! входит менеджер персональной информации (PIM). Запустить его можно с помощью команды Компоненты | Контакты | Контакты Для любого пользователя, зарегистрированного в Joomla!, можно сохранить личную информацию в PIM Вы можете создать новую запись и связать ее с записью пользователя.
Когда вы создаете новую учетную запись для вашего пользователя, можете выбрать одну из трех категорий, к которой будет относиться новый пользователь: Registered Author (Автор), Registered Editor (Редактор) или Registered Publisher (Издатель). Вы можете самостоятельно добавлять пользователей, а также редактировать учетные записи уже зарегистрированных пользователей. Например, вы можете открыть Менеджер пользователей и нажать кнопку Новый для создания нового пользователя
При создании пользователя я ввел название учетной записи — John Doe логин jdoe, указал электронный адрес и пароль. В списке Группа я выбрал Author (рис. 4.31). Пользователи этой группы имеют право добавлять новый контент.
Запустите браузер и попробуйте зарегистрироваться на сайте под именем только что созданного пользователя. Слева вы увидите форму для входа, используя которую зарегистрированные пользователи могут входить на сайт. Введите логин и пароль созданного пользователя, затем нажмите кнопку Логин. После входа браузер перейдет опять на домашнюю страницу, но вместо формы входа будет отображен блок с приветствием и кнопкой Выйти
да Пользователь. [Новый]
Рис. 4.31. Выберите группу AuthorРис. 4.31. Выберите группу Author
Рис. 4.31. Выберите группу Author
Рис. 4.31. Выберите группу Author
Чтобы добавить новую статью, пользователь должен выбрать существующий раздел или категорию. После того как он выберет категорию, ниже списка статей появится кнопка Новый (рис. 4.32).
Нажмите кнопку Новый и увидите экран WYSIWYG-редактора, выбранного по умолчанию. Ниже области редактора вы найдете панели для изменения большинства основных параметров статьи и ее метаданных.
Ните ♦ Free Borrower Articles
Фильтр IФильтр IGFNtRAl
Фильтр I
Фильтр I
Показать # SS
AUKAUKЗМЙЛОВОКМАТГРИАЛАЗМЙЛОВОКМАТГРИАЛАAdmnstratoAdmnstratoJ(Новый |J(Новый |
AUK
AUK
ЗМЙЛОВОКМАТГРИАЛА
ЗМЙЛОВОКМАТГРИАЛА
Admnstrato
Admnstrato
J
(Новый |
J
(Новый |
ггI Look Sensational with—
г
г
gear from the Joomlai Shop j
© 2008 Joomla JumpStart Все грава защищены
— свободное программное обеспечение, распространяв ое по
Сборка J 1
Рис. 4.32. Нажмите кнопку Новый для публикации новой статьи
Введите простую статью и заполните ее параметры, как бы это сделал пользователь вашего сайта. Как только статья будет готова, нажмите кнопку Сохранить. Статья будет добавлена на сайт. Как только пользователь добавит статью, администратор или модератор может решить, публиковать ее или нет.
Войдите как администратор и откройте Менеджер материалов. Вы увидите статью, которая была только что добавлена в систему. В колонке Публикация вы увидите красный х, означающий, что статья пока не опубликована. Только администратор или пользователь с правами Editor или Publisher может опубликовать статью.
Резюме
Теперь вы знаете практически все о публикации материалов в Joomla!. В этой главе мы не только рассмотрели посторонние приложения планирования сайта (MS Word, FreeMind, Leo), но и реализовали иерархическую структуру вашего сайта.
Как уже было отмечено ранее, по умолчанию Joomla! поставляется с двумя редакторами (TinyMCE и XStandard Lite), использующимися для создания и изменения статей. У TinyMCE превосходный пользовательский интерфейс, и он написан на JavaScript, что позволяет его запускать в любом браузере XStandard Lite требует установки специального плагина на стороне клиента и может работать только на Windows-платформе, зато он поддерживает XHTML. Вы можете выбрать любой из этих редакторов.
Мы также изучили основы построения меню, поэтому теперь вы можете создавать прямые ссылки на статьи, а также ссылки на целый раздел или категорию сайта. Наконец, мы создали нового пользователя и установили ему права, необходимые для публикации нового контента на Joomlai-сайте.
В следующей главе мы поговорим об администрации не только сайта, но и виртуального сообщества.
ГЛАВА 5
Администрирование Joomla!
Одно из преимуществ Joomla! — непринужденность администрирования сайта. Практически все функции по администрированию сайта доступны из панели управления Joomla!, что делает возможным управление сайтом (контентом и конфигурацией) из любой точки Земного шара, где есть доступ к Интернету. Когда же администрирование сайта невозможно выполнить с помощью интерфейса администратора, вы можете использовать стандартные Му SQ L-утил иты.
Интерфейс администратора Joomla!-сайта структурирован так, что каждая зона ответственности имеет собственного менеджера. Например, Менеджер шаблонов управляет всеми шаблонами, Менеджер пользователей используется для настройки учетных записей пользователей. Менеджеры Joomla! можно разделить натри категории: управление дизайном, управление материалами и системное администрирование.
Администрирование дизайна
Убранство вашего сайта зависит от нескольких факторов. Прежде всего, на дизайн сайта влияет шаблон. Шаблон определяет графическую и цветовую тему, шрифты для всех страниц сайта (хотя некоторые расширения вроде Simple Machines Forum (SMF) используют собственные настройки темы), поэтому Менеджер шаблонов больше всех остальных менеджеров влияет на дизайн сайта.
Кроме шаблона сайта огромное влияние на внешний вид сайта оказывает выбранный язык. Некоторые языки, например китайский или языки, которые читаются справа налево (в терминологии Joomla! такие языки называются RTL— right to left), могут значительно изменить внешний вид сайта. Изменить язык сайта можно с помощью Менеджера языков.
Менеджер шаблонов
Менеджер шаблонов (рис. 5.1) позволяет администратору выбрать шаблон по умолчанию, а также изменить главный файл шаблона, таблицу стилей (CSS- файл) и другие файлы шаблона. Это означает, что вам не нужен текстовый редактор и FTP-доступ к сайту — при необходимости вы сможете изменить шаблоны с помощью Joomlal.
Примечание переводчика
Вызвать менеджер шаблона можно с помощью команды меню панели управления Расширения | Менеджер шаблонов
Менеджер шаблоновМенеджер шаблоновПо умолчанию Правка ПомещуПо умолчанию Правка Помещу
Менеджер шаблонов
Менеджер шаблонов
По умолчанию Правка Помещу
По умолчанию Правка Помещу
Сайг /Цмиемсфатор
Имя шаблонаИмя шаблонаПо оНазначено Версия умолчтиют*По оНазначено Версия умолчтиют*ДамДамAitthotAitthot
Имя шаблона
Имя шаблона
По о
Назначено Версия умолчтиют*
По о
Назначено Версия умолчтиют*
Дам
Дам
Aitthot
Aitthot
19 February 200719 February 20072 С eff-corpthone2 С eff-corpthoneAngte RadtkejRoberl Deutz
19 February 2007
19 February 2007
2 С eff-corpthone
2 С eff-corpthone
1.020080222efiplue
3 C rhuk_miikyway1 0211/2ОЛ36Andy Miler
Показать sj 20 у
Рис. 5.1. Менеджер шаблонов
Подведите указатель мыши к названию шаблона, и вы увидите, как будет выглядеть ваш сайт после выбора этого шаблона. Щелкните на имени шаблона, и вы увидите окно конфигурации, подобное представленному на рис. 5.2. Здесь вы можете изменить все основные параметры шаблона, в том числе короткое описание шаблона, полученное из XML-дескриптора.
Все доступные параметры шаблона отображаются в области Параметры. Шаблон может быть привязан к определенным меню, отдельным пунктам меню, всем непривязанным статьям или вообще не быть привязанным к меню. Чтобы привязать шаблон ко всем пунктам меню, вам нужно установить выбранный шаблон как шаблон по умолчанию на главной странице Менеджера шаблонов.
Нажмите кнопку Редактировать HTML, вы увидите обычный текстовый редактор (рис. 5.3). У этого редактора нет никаких специальных функций вроде подсветки синтаксиса, даже нет функций поиска и замены. Он предна-
значен для небольших изменений, когда обычный текстовый редактор недо
ступен.
| Шаблон: [Правка]| Шаблон: [Правка][Досмотр Редакл1Х)еать НТК- Редактировать CSS[Досмотр Редакл1Х)еать НТК- Редактировать CSSСохрв-мтьСохрв-мтьV О UГ^имежть Закрыть ПомощьV О UГ^имежть Закрыть Помощь
| Шаблон: [Правка]
| Шаблон: [Правка]
[Досмотр Редакл1Х)еать НТК- Редактировать CSS
[Досмотр Редакл1Х)еать НТК- Редактировать CSS
Сохрв-мть
Сохрв-мть
V О U
Г^имежть Закрыть Помощь
V О U
Г^имежть Закрыть Помощь
ПодробностиНй>в»нн« еП_согр<ЬепиОпнс«ии« CorpThemeПодробностиНй>в»нн« еП_согр<ЬепиОпнс«ии« CorpThemeПараметрФайл параметров ДетрНезА81«_с<хр1Ьете*>агатз Jrt 1s Доступен на запись!Side Cohsrm Position Слеев VПараметрФайл параметров ДетрНезА81«_с<хр1Ьете*>агатз Jrt 1s Доступен на запись!Side Cohsrm Position Слеев V
Подробности
Нй>в»нн« еП_согр<Ьепи
Опнс«ии« CorpTheme
Подробности
Нй>в»нн« еП_согр<Ьепи
Опнс«ии« CorpTheme
Параметр
Файл параметров ДетрНезА81«_с<хр1Ьете*>агатз Jrt 1s Доступен на запись!
Side Cohsrm Position Слеев V
Параметр
Файл параметров ДетрНезА81«_с<хр1Ьете*>агатз Jrt 1s Доступен на запись!
Side Cohsrm Position Слеев V
Привязка к пунктам йен»Привязка к пунктам йен»Меню: (Гнет С Выберите и» спискаМеню: (Гнет С Выберите и» списка
Привязка к пунктам йен»
Привязка к пунктам йен»
Меню: (Гнет С Выберите и» списка
Меню: (Гнет С Выберите и» списка
Рис. 5.2. Настройки шаблона
п Редактор HTML файла шаблонаФ ^ С
Сохранить Применить ©тмв!
tiomo:Xikw*orou;domaiiis.dliws.org.ua<public_html4oom^emplalce/efi_corptliemeAndex.php
<?php
* ecopyright Copyright (С) 2005 - 2006 Open Source Hatters. All rights reserved
BlicenseGNU/CPL, see LICXNSl.php
JoomIm! is tree software. This version жау have been Modified pursuant
to the GNU General Public License, and as distributed it includes or
is derivative of works licensed under the GNU General Public License or
other free or open source software licenses.
See COPYRIGHT.php for copyright notices and details.
// no direct access definedt '_JIX1C ) or diet 'Restricted access * ), ?>
«ID0CTYP1 htMl PUBLIC "-//H3C//DTI> XHTBL 1.0 TrensltlonelZ/lN" ,,http.//vw.w3.org/TR/xhtMll/DTD/xht3tll- t rens it Ionel. dtd">
<htnl xalns>"http://ww.v3.org/1999/xhtMl" xmI:lang-"<?php echo #this-»language; ?>■ lang-’<?php echo Pthis- >language; ?>■ >
«1doc:include tvoe*"headw f>
Рис. 5.3. Вы можете редактировать HTML-файла шаблонапрямо из интерфейса администратора
Для редактирования таблицы стилей (CSS-файла) нажмите кнопку Редактировать CSS— вы увидите тот же редактор, который использовался для
редактирования HTML-файла. Если у шаблона несколько CSS-файлов, вам будет предложено выбрать файл для редактирования (рис. 5.4). В списке окажутся все CSS-файлы из каталога \css выбранного шаблона, а не только те, которые перечислены в XML-файле.
Ю Редактор CSS файла шаблонаЮ Редактор CSS файла шаблонаПравкаПравкаОтменить ПомоифОтменить Помоиф
Ю Редактор CSS файла шаблона
Ю Редактор CSS файла шаблона
Правка
Правка
Отменить Помоиф
Отменить Помоиф
Доступен на мнись Недоступен МЛ МЛИСЬДоступен на записьДоступен на мнись Недоступен МЛ МЛИСЬДоступен на записьС fightcssС fightcssГ template.cssГ template.css
Доступен на мнись Недоступен МЛ МЛИСЬ
Доступен на запись
Доступен на мнись Недоступен МЛ МЛИСЬ
Доступен на запись
С fightcss
С fightcss
Г template.css
Г template.css
#home dkw»orgu<dQmaiw dkwt.org uapubficjitml Joomla template» efi_cofpthemeCGe
C left css
Доступен на запись
Доступен на запись
Рис. 5.4. Если у шаблона несколько CSS-файлов,аы можете аыбрать один для редактирования
В большинстве случаев вам не понадобится изменять файлы шаблона. Если вам не понравился какой-то шаблон, вы можете выбрать другой, а не тратить время на "доведение до ума" данного шаблона.
Менеджер языков
Менеджер языков позволяет вам установить языки, которые будут доступны в вашей Joomlai-системе. Для Joomla! доступно более 40 языков. Администратор может выбрать язык по умолчанию, который будет использоваться для всех новых пользователей. Но после регистрации пользователь может выбрать предпочитаемый им язык сайта.
Joomla! — одно из самых многоязычных приложений. Создана даже специальная группа, проверяющая правильность перевода Joomla! на разные языки. Эта же группа занимается обновлением и корректировкой языковых плагинов Joomla!.
Joom!Fish (www.joomfish.com)— одно из самых популярных расширений Joomla!, позволяющее управлять многоязыковым контентом Joom!Fish позволяет переводить (правда, вручную) содержимое сайта и хранить все переводы в базе данных. С помощью дополнительных расширений можно даже переводить статический текст, который будет появляться на сайте переведенным на выбранный пользователем язык.
Примечание переводчика
Зная особенности машинного перевода, уж лучше переводить материалы вручную, если в этом есть такая необходимость. Качество машинного перевода, к сожалению, пока все еще оставляет желать лучшего.
Менеджер языков позволяет вам управлять многоязыковым сайтом, но установка новых языков осуществляется через Менеджер расширений. После установки новый язык появится в Менеджере языков и станет доступным для настройки (рис. 5.5). Менеджер языков позволяет вам выбрать язык по умолчанию для интерфейсов сайта и администратора. Заметьте, что языки сайта и панели управления могут быть разными.
Рис. 5.5. Менеджер языкоа позволяет выбрать язык сайта и язык панели управления
Имейте в виду, что не только интерфейсы сайта и администратора можно перевести на разные языки. Отдельные статьи также могут быть настроены для отображения на многоязыковом сайте. Автор статьи может выбрать для нее один из языков, установленных в вашей Joomlai-системе, из списка Язык материала'.
Управление материалами
Управление контентом — это основная работа администратора сайта. Администратору нужно управлять разделами, категориями, статьями и медиафайлами. Поэтому управление контентом — основная функция Joomla!.
1 Список выбора языка находится в области Параметры - Расширенные. — Пер.
Большую часть времени, потраченного на управление материалами сайта, вы проведете в Менеджере материалов, после того, как с помощью Менеджера разделов и Менеджера категорий будут созданы разделы и категории, в которые будут помещены новые статьи. Менеджер главной страницы позволяет управлять всем контентом, отображаемым на главной странице сайта. Медиаменеджер позволяет загружать медиафайлы и управлять ими (картинками, звуками, Flash-роликами и т. д.), которые используются в ваших статьях. Менеджер корзины используется для хранения "выброшенного" контента, перед его окончательным удалением.
Менеджер материалов
Вы уже использовали Менеджер материалов (рис. 5.6) для создания категоризированных и некатегоризированных статей (вроде Условий использования сайта). До этого мы не использовали одну из самых важных его функций — возможность архивирования материалов
Любой успешный сайт рано или поздно столкнется с проблемой перенасыщения статьями. Даже если последовательно заполнять разделы и категории статьями, Joomla! станет подобной саду, где деревья будут мешать вашей прогулке по нему. В этом случае администратору нужно позаботиться о том, чтобы ни посетитель, ни сам администратор "не заблудился" на сайте.
Joomla! предоставляет механизм, предотвращающий переполнение сайта старыми материалами. Вы можете сократить ненужный материал с помощью кнопки В архив. Если статья помещена в архив, она больше не доступна на сайте и не участвует в поиске материалов. Но если вы решите вернуть статью на сайт, просто просмотрите архив, выберите нужную статью и нажмите кнопку Из архива. Статья будет восстановлена в прежнее место на сайте.
Менеджер I 1 A Г.® г~3 * С 4Q
Из архива В архив Публикация Скрыть Перенос Копия Корзине Правее Новый Параметры Помоем материалов
Фитьтрс| Выполнить ]^ Сброс j Выберите рл дел - V[ Выберите ктегорню ■ V - Выберите леторл • v| - Выбор*то состояние - V:
» ГЗаголовокПубликация Не г пивное*Доступ Ряиел* Категория Author Дат» Хиты ID
Г Услоеияис^льзоб^я,v'^A^strator 07 04 08149
Г* ТестVВсемAdmnistratOf 06 04.06146
3
3 г Заголовок статьи^ ОВсем <OmT^V"' General Adrrtnid aiw 07 04 00147
Рис. 5.6. Менеджер материалов позволяет публиковать и скрывать материалы сайта
Примечание
В предыдущих версиях Joomla! функции архивирования материалов были доступны в Менеджере архива. Теперь его функции интегрированы в Менеджер материалов. Чтобы просмотреть только архивные статьи, в раскрывающемся списке Выберите состояние нужно указать состояние В архиве.
Глобальные параметры, влияющие сразу на все статьи, можно изменить, нажав кнопку Параметры в окне Менеджера материалов. Вы можете установить различные параметры статей, например, показать вступительный текст, имя автора и т. д. (рис. 5.7). Все эти опции вам уже знакомы — мы их рассматривали, когда создавали статьи для сайта. Разница лишь в том, что для глобальных параметров вы не можете выбрать значение Использовать глобальные, поскольку вы как раз и задаете глобальные значения.
Рис. 5.7. Менеджер статей позволяет вам изменять глобальные параметры статей
Менеджеры разделов и категорий
В прошлой главе мы полностью рассмотрели Менеджер разделов и Менеджер категорий, поэтому не вижу смысла повторяться. Эти два менеджера используются для создания разделов и категорий сайта. Статья всегда должна быть представлена в разделе или категории. Исключение составляют лишь статьи, публикуемые на главной странице сайта.
Менеджер главной страницы
Обычно контент сайта отображается с помощью меню, которое связано с определенным разделом или определенной категорией сайта. Исключение составляет лишь главная страница. Главная (она же домашняя страница) сайта может содержать как некатегоризированные статьи, так и статьи из любого раздела или любой категории сайта. Именно по этой причине был создан отдельный менеджер — Менеджер главной страницы (рис. 5.8).
Менеджер главной страницы позволяет выполнять те же операции, что и Менеджер статей: публиковать, скрывать, архивировать статьи и изменять их порядок отображения. Думайте о Менеджере главной странице, как о фильтре Менеджера материалов, отображающем только статьи, публикуемые на главной странице сайта.
Joomlal Joomla JumpStart
Рис. 5.8. Менеджер главной страницы отображает содержимое главной страницы сайта
Медиаменеджер
Хотя Медиаменеджер (рис. 5.9) может управлять всеми типами мультимедийных файлов (в том числе звуками и видео), большинство администраторов Joomla! использует его преимущественно для управления картинками. Медиаменеджер позволяет работать с большинством медиафайлов, в том числе с файлами со следующими расширениями: bmp, csv, doc, epg, gif, ico, jpg, odg, odp, ods, odt, pdf, png, ppt, swf, txt, xcf и xls. Администратор может добавлять или удалять типы (расширения) файлов, разрешенных для загрузки на сайт, путем редактирования параметра Разрешенные расширения файлов (этот параметр находится на вкладке Система общих параметров Joomla!).
По умолчанию новые файлы загружаются в каталог \images. В Linux-сис- темах полный путь к этому каталогу может быть следующим: /Ьоте/гшя_ /7oлыoв<7^7zeля/public_html/images/.
В Windows-системах путь к этому каталогу будет (в большинстве случаев) таким: C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\images.
Картинки, вставленные в статьи, автоматически помещаются в подкаталог \stories. Путь к ранее загруженной нами картинке houseicon.png будет выглядеть так: C:\Program FilesXApache Software Foundation\Apache2.2\htdocs\images \stories\houseicon.png.
Медиаменеджер позволяет вам создать новые подкаталоги. Для этого введите имя нового каталога в текстовое поле, находящееся справа от поля, отображающего текущий путь, и нажмите кнопку Создать папку.
Любой загруженный медиафайл доступен для вставки в статью. Внизу редактора статьи будет кнопка Картинка, используемая для вставки картинок. В статье будет сохранен относительный путь к картинке, однако при просмотре HTML-кода вы увидите следующий тег, отображающий картинку:
<img src="http://www.example.com/images/stories/houseicon.png">
Менеджер корзины
Как в большинстве операционных систем, удаляемый контент не сразу исчезает из Joomla!. При удалении материалы помещаются в корзину. Используя Менеджер корзины, вы можете удалить все содержимое корзины или же выбрать только некоторые материалы и удалить их. Также вы можете восстановить отдельные материалы на их оригинальное место.
Почаще очищайте корзину. Ведь когда у вас, скажем, 700 материалов в корзине, вы просто удалите все и даже не будете анализировать, что нужно, а что — нет. Когда же у вас в корзине всего 10 элементов, вы задумаетесь, что нужно удалять, а что — нет, и это позволит избежать ошибочного удаления.
Системное администрирование
Joomlal-сайт может одновременно обслуживать десятки тысяч пользователей, поэтому понимание параметров, относящихся к системному администрированию, очень важно для администратора.
Менеджер общих настроек хранит глобальные параметры для сайта, системы и сервера. Менеджер пользователей используется для администрирования учетных записей пользователей. Менеджер меню позволяет создавать и редактировать элементы меню. Менеджер расширений — устанавливать и удалять новые расширения и языки. Менеджеры модулей, плагинов и шаблонов управляют, соответственно, модулями, плагинами и шаблонами. Менеджер массовой рассылки позволяет администратору отправлять письма сразу группе пользователей.
Панель управления играет роль главной страницы для администраторской части Joomlal-сайта и позволяет запускать различные менеджеры, использующиеся для настройки сайта.
Панель управления
Используя панель управления, администратор может перейти к любой части сайта. Данная страница является домашней страницей интерфейса администратора. Взглянув на панель управления, сразу замечаешь большие кнопки, но часто администраторы пропускают три очень полезных элемента панели управления: кнопку Просмотр, инструкции по удалению вступительного текста, а также административные панели.
Как показано на рис. 5.10, в верхней части окна доступна кнопка Просмотр (ее можно использовать практически из любой части интерфейса администратора). На самом деле, это ссылка на главную страницу вашего Joomla!- сайта. Используйте ее для предварительного просмотра изменений, сделанных с помощью интерфейса администратора.
Чуть ниже вы увидите инструкции по удалению текста приветствия (рис. 5.11). Возможно, вам захочется удалить это сообщение, чтобы оно не маячило перед глазами, да и административные панели, находящиеся ниже этого сообщения, будут доступнее. Административные панели (тоже отображены на рис. 5.11) предоставляют полезную информацию о сайте, например, информацию о находящихся в данный момент на сайте пользователей, наи-
более популярных статьях, недавно добавленных статьях и информацию о посещениях сайта (статистику).
Примечание переводчика
Если вы не знаете английский язык, то и не сможете прочитать инструкции по удалению приветствия, которые даже в русской версии Joomla! написаны на английском. Я вам помогу. Из меню Расширения выберите Менеджер модулей, затем удалите модуль "Welcome to Joomla!".
Joomla! Joomla Jumpstart
Санг Все мента Материалы Компоненты РасширенияСанг Все мента Материалы Компоненты РасширенияИнструменты Помощь^ ПросмотрИнструменты Помощь^ ПросмотрCongratulations on choosing Joomla! as your coder We hope you are able to create a successful Web з and maybe you wi be able to give something back tTo make your start with Joomlai as smooth as pass you some porters to documentation, common quest securng your server A good place to start to the *7 Guide to JoomlarCongratulations on choosing Joomla! as your coder We hope you are able to create a successful Web з and maybe you wi be able to give something back tTo make your start with Joomlai as smooth as pass you some porters to documentation, common quest securng your server A good place to start to the *7 Guide to Joomlar
Санг Все мента Материалы Компоненты Расширения
Санг Все мента Материалы Компоненты Расширения
Инструменты Помощь^ Просмотр
Инструменты Помощь^ Просмотр
Congratulations on choosing Joomla! as your coder We hope you are able to create a successful Web з and maybe you wi be able to give something back t
To make your start with Joomlai as smooth as pass you some porters to documentation, common quest securng your server A good place to start to the *7 Guide to Joomlar
Congratulations on choosing Joomla! as your coder We hope you are able to create a successful Web з and maybe you wi be able to give something back t
To make your start with Joomlai as smooth as pass you some porters to documentation, common quest securng your server A good place to start to the *7 Guide to Joomlar
РаздетыКатегорииМедиаменеджерРаздетыКатегорииМедиаменеджерРис. 5.10. Используйте кнопку Просмотр для быстрого доступа к домашней странице вашего сайтаРис. 5.10. Используйте кнопку Просмотр для быстрого доступа к домашней странице вашего сайтаFor your most common questions the best place to $ answers Is the Frequently Asked Questions (FAQ) on a particular screen in the Administration area of.For your most common questions the best place to $ answers Is the Frequently Asked Questions (FAQ) on a particular screen in the Administration area of.
РаздетыКатегорииМедиа
менеджер
РаздетыКатегорииМедиа
менеджер
Рис. 5.10. Используйте кнопку Просмотр для быстрого доступа к домашней странице вашего сайта
Рис. 5.10. Используйте кнопку Просмотр для быстрого доступа к домашней странице вашего сайта
For your most common questions the best place to $ answers Is the Frequently Asked Questions (FAQ) on a particular screen in the Administration area of.
For your most common questions the best place to $ answers Is the Frequently Asked Questions (FAQ) on a particular screen in the Administration area of.
We hope you have much fun and success wth Joomla1 and hope to see you In the forum among the hundreds and thousands of contributors
Your Joomla1 team '-J
> Logged in Users> Logged in UsersP.S.. To remove this message, delete the "Welcome to Joomlar Module n the Administrator screen of the Module Manager (on the Extensions menu). Here is a quick hr* to this screen
> Logged in Users
> Logged in Users
Popular
► Recent added Articles
Menu Stats
Рис. 5.11. Выше административных панелей вы найдете инструкциипо удалению приветствия
Менеджер общих настроек
Запустить Менеджер общих настроек можно с помощью кнопки Общие настройки в панели управления. Данный менеджер управляет всеми настрой-
ками сайта — от пароля администратора до параметров FTP. Глобальные параметры делятся на три группы: Сайт, Система и Сервер. По умолчанию, как только вы вызываете этот менеджер, отображаются параметры группы Сайт.
Параметры сайта
Большинство параметров группы Сайт уже установлено вами во время инсталляции Joomla!. Тут же вы найдете метаданные сайта, параметры оптимизации для поисковой машины (SEO, Search Engine Optimization) и параметры RSS-лент (рис. 5.12). Панель параметров сайта позволяет вам временно "выключать" сайт и задавать сообщение, которое увидят пользователи, когда обратятся к сайту. Данная возможность очень полезна, когда вы производите обслуживание базы данных сайта.
СайгСи» темаСервер
Установки сайтаСян выключен £ Нет г двО |» рп• «н Сайт »ременмо недоступен1 сообщениеИМЯ САНН JoomM JumpSUrtОи^ЮМНЫМ fiditor - ТтуМСЕЗ» Д редактор по™ "умолчит оДлина списка 20 vДлина RS5 ленты Но v-Установки сайтаСян выключен £ Нет г двО |» рп• «н Сайт »ременмо недоступен1 сообщениеИМЯ САНН JoomM JumpSUrtОи^ЮМНЫМ fiditor - ТтуМСЕЗ» Д редактор по™ "умолчит оДлина списка 20 vДлина RS5 ленты Но v-Установки Search Eng не Ори 1112anonУстановки Search Eng не Ори 1112anonВключить SEOИспои» >ов,31» mod _iewtileДобл инь суффикс к URLВключить SEOИспои» >ов,31» mod _iewtileДобл инь суффикс к URL^ Нет Г* Да^ Нет f ДаД1®" Нет Да^ Нет Г* Да^ Нет f ДаД1®" Нет Да
Установки сайта
Сян выключен £ Нет г дв
О |» рп• «н Сайт »ременмо недоступен1 сообщение
ИМЯ САНН JoomM JumpSUrt
Ои^ЮМНЫМ fiditor - ТтуМСЕЗ» Д редактор по™ "
умолчит о
Длина списка 20 v
Длина RS5 ленты Но v-
Установки сайта
Сян выключен £ Нет г дв
О |» рп• «н Сайт »ременмо недоступен1 сообщение
ИМЯ САНН JoomM JumpSUrt
Ои^ЮМНЫМ fiditor - ТтуМСЕЗ» Д редактор по™ "
умолчит о
Длина списка 20 v
Длина RS5 ленты Но v-
Установки Search Eng не Ори 1112anon
Установки Search Eng не Ори 1112anon
Включить SEO
Испои» >ов,31» mod _iewtile
Добл инь суффикс к URL
Включить SEO
Испои» >ов,31» mod _iewtile
Добл инь суффикс к URL
^ Нет Г* Да
^ Нет f ДаД
1®" Нет Да
^ Нет Г* Да
^ Нет f ДаД
1®" Нет Да
Настройки Метаданных
Значение тэга Joomle! - the dynamic portal engine and content ' m«'^> management system для всего сайта;
Ключепь e слова -jOOmla, Joomla
<meta - для всего
^ Нет ^ Да^ Нет ^ Да^ Нет ^ Да^ Нет ^ ДаИспил» ;odai»
^ Нет ^ Да
^ Нет ^ Да
^ Нет ^ Да
^ Нет ^ Да
•.аголовок материала а тэге
Испольювать 1 мл динара Matej нала в тэге <meta>
Рис. 5.12. Параметры сайта
Два очень полезных параметра находятся в группе Установки Search Engine Optimization. Подробная поисковая оптимизация будет рассмотрена в главе 12, а пока обсудим ее лишь вкратце. Данные параметры позволяют созда-
вать виртуальные папки для различных разделов и категорий так, чтобы браузеру (или поисковой машине) казалось, что URL не содержит параметров. Например, если функции SEO выключены, то URL, предоставляющий доступ к определенному разделу, будет выглядеть так:
http://vvvwv.Joomla!.org/index.php?option=com_content&vievv=category&id= 33&Itemid=53
Все эти параметры — элементы URL после вопросительного знака (?) — сбивают с толку поисковую машину. Если же опции поисковой оптимизации включены, то URL будет выглядеть примерно так:
http://www.Joomla!.org/content/vievv/12/26/
Конечно же, вы захотите включить эти параметры. Если у вас собственный Web-сервер, это не проблема. А если же Joomla! установлена на удаленном сервере хостинг-провайдера, с включением SEO могут возникнуть проблемы. Подробнее об этом вы сможете прочитать в главе 12.
Системные параметры
Параметры сайта определяют, как сайт будет функционировать на системе, а системные параметры определяют настройки самой системы (рис. 5.13). Большинство этих параметров влияет на производительность, поэтому после их изменения нужно проверить, как они отразились на системе.
Большинство системных параметров очевидно, но некоторые могут озадачить начинающего пользователя Joomla!. Параметры группы Режим отладки оказывают огромное влияние на производительность и безопасность Joomla!- сайта, поэтому редко активируются на сервере развертывания. С функциональной точки зрения, данные параметры не представляют никакого интереса, поскольку не добавляют в Joomla! новых возможностей.
Параметры кэширования позволяют включить кэширование страниц, ускоряющее процесс вывода страниц так, что для генерации страницы не производится запрос к базе данных. Если запрошенная страница уже была сгенерирована для другого пользователя на протяжении последних 900 секунд (или того значения, которое вы установите), в браузер будет отправлена кэшированная версия. Кэширование может существенно повысить производительность сайта.
Один из недостатков кэширования — необходимость записи в каталог \cache. На многих Web-узлах данная возможность ограничена, поэтому перед включением кэширования поинтересуйтесь у вашего хостинг-провайдера, можно ли это сделать. Рекомендуемое значение прав доступа (устанавливаются командой chmod), разрешающее запись в каталог кэша, — 755.
Сайт Система Сервер
Режим отладкиОтладка системы ^ Нет ^ даОтладка локализации у Нет f даУстановки кэшаВключить кзшмрввание ^ Нет р д@Время кэширования тс мимОбработчик кеша [*aMn VУстановки сессийВремя житии сессии тсмиОбработчик сессии ГЁазя данных i^Режим отладкиОтладка системы ^ Нет ^ даОтладка локализации у Нет f даУстановки кэшаВключить кзшмрввание ^ Нет р д@Время кэширования тс мимОбработчик кеша [*aMn VУстановки сессийВремя житии сессии тсмиОбработчик сессии ГЁазя данных i^Системные установки
Режим отладки
Отладка системы ^ Нет ^ да
Отладка локализации у Нет f да
Установки кэша
Включить кзшмрввание ^ Нет р д@
Время кэширования тс мимОбработчик кеша [*aMn V
Установки сессий
Время житии сессии тсми
Обработчик сессии ГЁазя данных i^
Режим отладки
Отладка системы ^ Нет ^ да
Отладка локализации у Нет f да
Установки кэша
Включить кзшмрввание ^ Нет р д@
Время кэширования тс мимОбработчик кеша [*aMn V
Установки сессий
Время житии сессии тсми
Обработчик сессии ГЁазя данных i^
Секретное слово
Путь К папке ЛОГОВ /home/dlworgu/domiins/dlMe crg.ua/publlc_hti
Включить Web-ссрвнсы ^ Нет f да
Сервер помощи ^Engll h(GB)-helpjoomli otg V Применить
Настройки пользователя
Ра решить регистрацию f Нет ($■ д@ пользователей
Права нового | Registered ^
пользователя 1
Активация нового f Нет ^ да пользователя
Претры Г Спр„татъ № показать пользователя
Установки медиа менеджера
Ра решеннче bmp.«v.doo,epg.gif,ico.jpg,odg,odp,ods.odt,pd* расширения файлов
Максе мальмы i рд мер icoDOOOO
(в байтах)
Путь к папке с файлам о images
Путь к папке С ImegesWones картинками
Огр«шч .ваш «качку г нет Is Да
Проварить MIME типы f н„т ^ Пя
Рис. 5.13. Системные параметры
Примечание переводчика
В большинстве случаев прав 755 окажется мало, поэтому нужно установить сразу права 777.
Внимание!
Предоставление права записи каталога не всегда желательно с точки зрения безопасности. Более подробно мы поговорим об этом в разд. "Каталоги, доступные для записи" далее в этой главе
Параметры сервера
Последняя панель страницы общих настроек содержит параметры сервера (рис. 5.14), позволяющие настроить взаимодействие вашего Joomlal-сервера с другими серверами, необходимыми ей для работы.
Одна из наиболее полезных опций на панели Сервер— это GZIP-сжатие страниц, позволяющее включить сжатие страниц при условии, что ваш PHP поддерживает эту функцию. Во время установки Joomla! инсталлятор прове-
рил, поддерживается ли эта функция, и сообщил вам, так ли это (см рис. 2.15). Функция сжатия работает так: передаваемая страница "на лету" сжимается и передается по сети уже в сжатом виде, на компьютере пользователя браузер распаковывает страницу. Весь процесс происходит прозрачно для пользователя, который почувствует лишь ускорение доступа к сайту, что наверняка понравится пользователям, у которых модемное или GPRS- подключение.
Са ir Система Сервер
Установки сервера
Путь к вр|меннои папке . home/dkxorgu/domxins/dki'* org ux/public_hh
GZiP-сжатие страниц (» ^т f да
Сообщен.™ об ошибках по умотай** у1
Установки покали
Временная ' (UTC 00:00) Западни Ееропа. Лондон. Лиссабон. Касабланка юна
Установки FTP
Включить FTP t?H„f Да
FTP ХОСТ 127.0.0.1
FTP порт ?21
FTP логин
FTP пароль
FTP корень
Установки базы данных Тип базы данных my$qlИмя хоста localhostЛогин denБа ы данных аи^огдиПрефикс ба 1Ы данных JOSДУстановки базы данных Тип базы данных my$qlИмя хоста localhostЛогин denБа ы данных аи^огдиПрефикс ба 1Ы данных JOSДУстановки почтыСпособ отправки почты pHP mail function vАдрес отрави i еля dh*iabs@ma d гмИмя отправителя Joomla JumpstartПуть К Sendniail /uit/ibirJ$endmailИсполыовать SMTP- (5 Нет р даавторитациюSMTP летимSMTP парольАдрес SMTP сервера localhostУстановки почтыСпособ отправки почты pHP mail function vАдрес отрави i еля dh*iabs@ma d гмИмя отправителя Joomla JumpstartПуть К Sendniail /uit/ibirJ$endmailИсполыовать SMTP- (5 Нет р даавторитациюSMTP летимSMTP парольАдрес SMTP сервера localhostРис 5.14. Параметры сервера
Установки базы данных Тип базы данных my$ql
Имя хоста localhost
Логин den
Ба ы данных аи^огди
Префикс ба 1Ы данных JOSД
Установки базы данных Тип базы данных my$ql
Имя хоста localhost
Логин den
Ба ы данных аи^огди
Префикс ба 1Ы данных JOSД
Установки почты
Способ отправки почты pHP mail function v
Адрес отрави i еля dh*iabs@ma d гм
Имя отправителя Joomla Jumpstart
Путь К Sendniail /uit/ibirJ$endmail
Исполыовать SMTP- (5 Нет р даавторитацию
SMTP летим
SMTP пароль
Адрес SMTP сервера localhost
Установки почты
Способ отправки почты pHP mail function v
Адрес отрави i еля dh*iabs@ma d гм
Имя отправителя Joomla Jumpstart
Путь К Sendniail /uit/ibirJ$endmail
Исполыовать SMTP- (5 Нет р даавторитацию
SMTP летим
SMTP пароль
Адрес SMTP сервера localhost
Чтобы разрешить отправку писем с сайта (например, массовую рассылку или отправку сообщений с подтверждением регистрации пользователя), вам нужно отредактировать параметры почты. Если ваш хостинг-провайдер предоставил вам также и почтовый ящик, параметры почты легко получить из вашей почтовой программы (например, из Outlook Express)— просто скопируйте почтовые параметры и вставьте в соответствующие поля группы параметров Установки почты.
А вот если ваш хостинг-провайдер не предоставил вам почтовый ящик, включение данной функции может быть довольно сложным. Большинство SMTP-серверов (эти серверы передают почту) закрыты для пользователей, которые специальным образом не авторизированны для отправки сообщений. Все это из-за спаммеров, использующих доступные всем серверы для рассылки нежелательной корреспонденции. Возможно, вам придется использо-
вать персональный почтовый сервер для включения функции отправки почты. Проконсультируйтесь со своим хостинг-провайдером.
Менеджер пользователей
Менеджер пользователей позволяет администратору предоставлять привилегии различным пользователям (рис. 5.15). Joomla! проектировалась с учетом здравого смысла, поэтому она является довольно безопасной системой.
Рис. 5.15. Менеджер пользователей
Joomla! разрешает регистрацию пользователей на сайте, после которой пользователю отправляется сообщение с требованием подтвердить регистрацию. Если пользователь подтверждает регистрацию, учетная запись считается проверенной и помещается в группу Registered (зарегистрированные пользователи). После входа на сайт каждый зарегистрированный пользователь (даже тот, у которого наименьшие права) может редактировать свой профиль (ссылка Your Details) и добавлять Web-ссылку (ссылка Submit a Web Link). Когда на сайт входит пользователь с правами Author, в меню User Menu появляется ссылка публикации нового контента (Submit a Web Link). При публикации нового контента используется редактор, выбранный в профиле пользователя.
Примечание
Аутентификация пользователей не ограничена системой Joomla!. При желании вы можете использовать плагины, позволяющие производить аутентификацию другим системам, например. LDAP или Gmail. Если у вашей корпоративной сети разветвленная инфраструктура, вы можете доверить аутентификацию другим системам. Подробнее об этом вы сможете прочитать в документации по Joomla!.
Пользователь с наименьшими правами может изменять только свое имя, e-mail, пароль, язык сайта и часовой пояс. Если же разрешена возможность добавления или изменения контента, пользователь также сможет выбрать текстовый редактор.
Управление регистрацией пользователей
Параметры, разрешающие самостоятельную регистрацию пользователя без вмешательства администратора, можно установить в разделе Система Менеджера общих настроек или через кнопку Конфигурация в Менеджере пользователей (рис. 5.16).
Cai’n Система Сервер
Режим отладкиОтладка системы ^ Нет С даОтладка локали»ацпи у Нет с даРежим отладкиОтладка системы ^ Нет С даОтладка локали»ацпи у Нет с даУстановки кэшаВключить кэширование <? Нет f даВремя кэширования 15 минОбработчик кэша i файл vУстановки сессииВремя жм н । сессии 15минОбработчик сессий • База данных VУстановки кэшаВключить кэширование <? Нет f даВремя кэширования 15 минОбработчик кэша i файл vУстановки сессииВремя жм н । сессии 15минОбработчик сессий • База данных VСне темные установки
Режим отладки
Отладка системы ^ Нет С да
Отладка локали»ацпи у Нет с да
Режим отладки
Отладка системы ^ Нет С да
Отладка локали»ацпи у Нет с да
Установки кэша
Включить кэширование <? Нет f да
Время кэширования 15 мин
Обработчик кэша i файл v
Установки сессии
Время жм н । сессии 15мин
Обработчик сессий • База данных V
Установки кэша
Включить кэширование <? Нет f да
Время кэширования 15 мин
Обработчик кэша i файл v
Установки сессии
Время жм н । сессии 15мин
Обработчик сессий • База данных V
Секретное слово fWtdaPffdphTkQCR
Путь К папке ЛОГОВ /home/dkAsorgu/domilnsfdk'* erg u a/pub hc_htt
Включить Web сервисы (• ^т f да
Сервер ПОМОЩИ | Englnb (GB)-help joomla.org V Применить,
Нас тропки пользователя
Разрешить регистрацию f ^ет (? да пользователей
Пулы НОВОГО [й.0,й1„4 V пользователи
Активация нового f н@т (• да пользователя
п»Р мегры г Спрятать С Показать пользователя
Установки Медиа менеджер 1
Ра решенные bmp.csv.doc,epg.gif,lco.jpg.odg.odp.ods odtpd расширения ф илов
Максиыальн- и размер 110000000
(в omnaxl
Путь к палке с ф илами images
Путь кп пке с images/stonei
Рис. 5.16. Параметры регистрации пользователей
Примечание переводчика
В книге автор советовал изменять параметры регистрации в разделе Сайт. Но в моей версии, которая была последней на момент написания этих строк, данные параметры я нашел в разделе Система, а кнопки Конфигурация в Менеджере пользователей не было
Администратор может свободно изменять все параметры, относящиеся к любой учетной записи пользователя, а также отключать или удалять учетную
запись в случае необходимости. Справа в окне Менеджера пользователей вы увидите два фильтра, позволяющих выбирать пользователей по их принадлежности к определенной группе или по статусу входа на сайт. В отличие от других систем, в Joomla! пользователь может находиться только в одной группе.
Внимание!
Если вы хотите удалить учетную запись пользователя, связанную с записью в Менеджере контактов, вы тем самым повредите контакт. При удалении пользователя, убедитесь, что вы удалили связанную с ним запись из списка контактов (если она там вообще была).
Один из ключевых аспектов создания сайта сообщества— это управление пользователями. Неподтвержденные учетные записи пользователей, клонированные учетные записи — все это может разрушить вашу базу пользователей. Отнеситесь к управлению пользователями очень серьезно!
Вход в систему и вопросы безопасности
Joomla! разрешает анонимный доступ любому желающему к общедоступному содержимому сайта, и в то же время позволяет производить аутентификацию зарегистрированных пользователей
Пользователей, получающих доступ к Joomla!-сайту, можно разделить натри основные группы:
♦ незарегистрированные пользователи— это простые посетители сайта, которые не вошли в систему и, вероятнее всего, даже не регистрировались на сайте. Большинство обычных сайтов не обладает системой регистрации пользователей, поэтому все пользователи таких сайтов попадают в эту группу';
♦ зарегистрированные внешние пользователи (registered front-end users) — пользователи, которые зарегистрировались на сайте, а потом вошли в систему с помощью формы входа. После регистрации учетная запись пользователя должна быть активирована по e-mail или же вручную подтверждена администратором. С помощью механизма регистрации пользователей вы можете ограничивать доступ пользователей к различным материалам сайта. Некоторые платные сайты, например Salon.com, предоставляют некоторые статьи только зарегистрированным пользователям, причем за использование сайта с них взимается абонентская плата. Зарегистрированные пользователи могут размещать, редактировать и публиковать матери-
1 В англоязычной литературе по Joomla! данные пользователи называются public front-end users. — Пер.
ал (в зависимости от прав доступа), но не имеют доступа к интерфейсу администратора;
♦ зарегистрированные внутренние пользователи (back-end-пользователи) — это зарегистрированные пользователи, имеющие право изменять определенные части сайта— менеджеры, администраторы, суперадминистраторы. Все эти пользователи имеют доступ к интерфейсу администратора (функции интерфейса администратора будут ограничены в зависимости от прав пользователя).
При редактировании учетной записи с помощью Менеджера пользователей (рис. 5 17), вы можете выбрать группу пользователя. Для двух основных групп (front-end и back-end) можно выбрать подкатегории, определяющие права доступа пользователя.
Пользователь: [Редактировать]
Данные пользова!еля
НазваниеНазваниеJohn DoeJohn DoeЛогинЛогинJdoeJdoejdoe@yehoo oomjdoe@yehoo oom
Название
Название
John Doe
John Doe
Логин
Логин
Jdoe
Jdoe
jdoe@yehoo oom
jdoe@yehoo oom
Новый пароль
ГруппаГруппаПодтвердить пароль
Группа
Группа
yPublio Fronlend. - Registered
.- Редактор
.- Publisher
Public Backend
Менеджер
• Administrator
- Super Administrator
Рис. 5.17. При редактировании учетной записи пользователявы можете указать его принадлежность к одной из групп пользователей
Зарегистрированные внешние пользователи
Пользователи данной группы имеют доступ к WYSIWYG-редактору для отправки и/или редактирования статей. Права пользователя варьируются в зависимости от его принадлежности к той или иной подгруппе:
Registered — обычный зарегистрированный пользователь, имеющий право читать ограниченный контент на сайте (если он есть) Пользователь имеет право добавлять ссылки на сайт но не имеет права добавлять статьи;
Author (Автор) — пользователи этой группы могут добавлять и редактировать статьи (только свои). Также эти пользователи могут определять, были ли их статьи опубликованы на сайте;
Редактор (Editor) — как и автор, данные пользователи могут добавлять и редактировать статьи, но в отличие от автора, редактор может редактировать статьи других пользователей;
Publisher (Издатель) — данному пользователю доступны все права редактора. но он может также публиковать и скрывать статьи.
Если учетная запись пользователя была создана с помощью внешнего интерфейса Joomla! (когда пользователь зарегистрировался самостоятельно, а не был зарегистрирован администратором или суперадминистратором), пользователю будет отправлено по e-mail письмо с просьбой подтвердить регистрацию учетной записи (это делается, чтобы убедиться, что введенный пользователем e-mail правильный). Данная функция включена по умолчанию, и Joomla! проделывает всю эту работу автоматически.
Зарегистрированные внутренние пользователи
Внутренние пользователи — это административные пользователи сайта. Администраторы имеют право изменять права других пользователей, изменяют шаблоны сайта, создавать новые разделы и категории, устанавливать новые компоненты и выполнять другие функции по управлению сайтом. Права внутреннего пользователя определяются его принадлежностью к одной из трех подгрупп:
Менеджер (Manager) — пользователи этой группы обладают наименьшими правами среди всех внутренних пользователей. Менеджеры имеют ограниченный доступ к панели управления, они могут подтверждать регистрацию пользователей и выполнять базовое обслуживание сайта — управлять разделами, категориями и перемещать статьи из одной категории в другую;
Administrator (Администратор)— администратор имеет право устанавливать и удалять расширения, изменять шаблон сайта, менять разметку страницы и модифицировать права любого пользователя с более низким уровнем доступа. Администраторы не имеют права редактировать учетную запись суперадминстратора, изменять общие настройки сайта, делать массовую рассылку почты. Администраторы (и суперадминистраторы) могут создавать новых пользователей. Joomla! может разрешать автоматическую регистрацию пользователей. Ограничения на самостоятельно зарегистрированные учетные записи определяются администратором;
Super Administrator (Суперадминистратор) — это царь и бог всего Web- сайта Данного пользователя можно сравнить с пользователем Admi-
nistrator в Windows или с пользователем root в Linux. Действия суперадминистратора ничем не ограничены. Первоначально его учетная запись создается при установке Joomla! (имя пользователя — admin).
Внешний вид интерфейса администратора Joomla! зависит от прав пользователя. Для пользователей с низкими правами (менеджер или обычный администратор) многие кнопки и элементы меню будут скрыты, но они будут показаны только для суперадминистратора.
Пользователь забыл пароль
Если пользователь забыл свой пароль, Joomla! может отправить пользователю код верификации по адресу электронной почты, указанному при регистрации. Как только пользователь щелкнет по ссылке в полученном от Joomla! письме, он сможет установить новый пароль. Пароли хранятся в формате MD5. поэтому они не могут быть расшифрованы с целью отправки пользователю забытого пароля, нужно только устанавливать новый пароль.
Если пользователь по каким-либо причинам не получил код верификации, ему нужно обратиться к суперадминистратору, который может установить новый пароль для любого пользователя.
Менеджер меню
В Joomla! меню— это не простые выпадающие меню, как в большинстве пользовательских интерфейсах. Меню в Joomla! — это интерфейс пользователя. Любой материал, который должен быть доступен пользователям Joomlal-системы, должен быть привязан к меню. В большинстве случаев контент не будет доступен пользователю до тех пор, пока он не будет привязан к меню.
Менеджер меню (рис. 5.18)— ядро Joomlal-системы. Настройка меню — очень ответственная задача. Поскольку в главе 4 мы разработали довольно подробную иерархическую структуру сайта, вам не придется потратить много времени в Менеджере меню. Вам нужно создать все необходимые разделы и категории, чтобы потом заполнить их контентом.
Меню подобно разделу или категории: оно предназначено для организации, но не для хранения контента. В меню хранятся отдельные элементы меню (которые, в свою очередь, указывают на связанный с ними контент), а не связанный с меню контент.
Чтобы просмотреть элементы меню, щелкните на кнопке Редактировать пункты меню, которая находится в столбце Пункты меню напротив выбранного вами меню в таблице менеджера. На рис. 5.19 показаны элементы главного меню. С помощью окна Элементы меню администратор может установить элемент меню по умолчанию, публиковать или скрывать элементы
меню, а также изменять порядок отображения элементов меню (в колонке Порядок).
61 Меню
К
О Пункты меню и модули обновлены;
р
ЗаголовокТипПункты меню пудл1|КОВ.1Н<) ^Неогублмковано
1
Г* Главное меню mainmenu^3
2
С User MenuМеню пользователя®4
3
Г Top Menutopmenu|§4
4
С Resourcesothermenu^5
5
Г Example Pages Exampl-Pages@4
Б
Г Key Concepts keyconcepts|^3
Показать фго V ;
Рис. 5.18. Менеджер меню
Одна из очень удобных функций Joomla! заключается в том, что вы можете скрывать пункты меню вместо их удаления из системы. Если какой-то эле-
мент меню сейчас вам не нужен, вы можете просто скрыть его. Позже вы решите нужен ли вам этот пункт меню или нет. Вы всегда сможете включить его. С другой стороны, если он вам не нужен, вы можете в любой момент удалить его. К тому же меню напоминают категории — очень просто перемещать элементы из одного меню в другое.
Для перемещения выбранных пунктов меню нажмите кнопку Перенос, после чего увидите окно Пункты меню: [перенос] (рис. 5.20). В этом окне вам
Пункты меню: [Перенос]Пункты меню: [Перенос]Перенос Отменить Помош^Перенос Отменить Помош^
Пункты меню: [Перенос]
Пункты меню: [Перенос]
Перенос Отменить Помош^
Перенос Отменить Помош^
Переместить в меню:Переместить в меню:
Переместить в меню:
Переместить в меню:
Пункты меню были перемещены:
1. Free Borrower Articles
Рис. 5.20. Вы можете легко переносить пункты из одного меню в другое
EI Меню: [Правка]EI Меню: [Правка]е v о м
EI Меню: [Правка]
EI Меню: [Правка]
Сохранить ГЪ*тенить Закрыть Помогу?
Тип пункт л меню[ Сменит» тип ]Шаблон блога материалов на главнойТип пункт л меню[ Сменит» тип ]Шаблон блога материалов на главнойСтандартная шаблон отображены я блога тех материалов. которые указаны для показа неСтандартная шаблон отображены я блога тех материалов. которые указаны для показа неПогм бывать неразрешенные ссылкиПокальшать текстгетопоекаЗаголовок как ссылкаПока ывать вступигельным текстHa nature разделаМагвантве раздела «жНа>в« • те категорииНа.ванпе категортш какНил автораЦата н вреия созданияДатам вр*ня последнего м.ыененияПогм бывать неразрешенные ссылкиПокальшать текстгетопоекаЗаголовок как ссылкаПока ывать вступигельным текстHa nature разделаМагвантве раздела «жНа>в« • те категорииНа.ванпе категортш какНил автораЦата н вреия созданияДатам вр*ня последнего м.ыенения
Тип пункт л меню
[ Сменит» тип ]
Шаблон блога материалов на главной
Тип пункт л меню
[ Сменит» тип ]
Шаблон блога материалов на главной
Стандартная шаблон отображены я блога тех материалов. которые указаны для показа не
Стандартная шаблон отображены я блога тех материалов. которые указаны для показа не
Погм бывать неразрешенные ссылки
Покальшать текст
гетопоека
Заголовок как ссылка
Пока ывать вступигельным текст
Ha nature раздела
Магвантве раздела «ж
На>в« • те категории
На.ванпе категортш как
Нил автора
Цата н вреия создания
Датам вр*ня последнего м.ыенения
Погм бывать неразрешенные ссылки
Покальшать текст
гетопоека
Заголовок как ссылка
Пока ывать вступигельным текст
Ha nature раздела
Магвантве раздела «ж
На>в« • те категории
На.ванпе категортш как
Нил автора
Цата н вреия создания
Датам вр*ня последнего м.ыенения
Подробности пункте меню ю- 14
Заголовок Free Borrower Article*
Псеадоимм: tiee-bonower article*
Ссылка: i n d ex p hp7o ptio n«com_co rite ntbviewHro ntpa g
Покатана•: [Главное шеню V Редшепьсаии
i Параметры - Основные
> Параметры-Расширенные
* Параметры Компонент
[Испольэ вать глобальные -V ^Использовать глобальные ,у [ Ислользоеать глобальные v
Использовать глобальные -V
Использотать глобальные V
Использовать глобальные V
Использовать глобальные V
Использовать глобальные **
Использовать глобальные м Использовать глобальные м
Использовать глобальные V
нужно выбрать меню, в которое вы хотите перенести выбранные пункты меню, и нажать кнопку Перенос.
Чтобы отредактировать какой-то пункт меню, выберите его и нажмите кнопку Правка. В окне редактора меню (рис. 5.21) будут отображены параметры выбранного меню. Окно редактора может слегка отличаться в зависимости от типа редактируемого меню. На рис. 5.21 выбран шаблон блога главной страницы, поэтому у вас картинка будет немного другой.
Менеджер расширений
Менеджер расширений (рис. 5.22) используется для установки расширений, проверки корректности их установки и, конечно же, для удаления расширений. Менеджер позволяет управлять компонентами, модулями, плагинами, языками и шаблонами.
Существуют три возможные метода установки расширений:
загрузка пакета— используйте кнопку Обзор, чтобы выбрать архивный файл пакета расширения. Joomla! самостоятельно распакует ZIP- или TAR-архив;
установка из каталога— можно указать каталог на сервере, в котором размещены файлы расширения. Учтите, что Web-сервер должен иметь доступ к этому каталогу, иначе ничего не получится;
Рис. 5.22. Менеджер расширений позволяет установить компоненты, модули, плагины, языки и шаблоны
установка из URL — эта опция особенно удобна для удаленного управления сайтом. Если у вас есть URL компонента или шаблона, вы просто укажите его и Joomla! автоматически загрузит, распакует и установит его.
После установки расширение станет доступным для настройки с помощью соответствующего менеджера, например Менеджера модулей, если вы установили модуль. Менеджер расширений позволяет вам удалить расширение любого типа. Для этого просто выберите тип расширения (компонент, модуль и т. д.), затем выберите расширение из списка и нажмите кнопку Удалить. Не все расширения можно удалить. Некоторые расширения, выполняющие системные функции (они называются расширениями ядра, core extensions), удалить нельзя.
Менеджер расширений позволяет выключить некоторые компоненты (функция выключения компонентов доступна только для расширений), не удаляя сам компонент. Это возможность очень удобна для тестирования новой версии компонента. Администратор может выключить старую версию компонента, не удаляя ее, а потом установить и протестировать новую версию. В случае чего, всегда можно активировать старую версию компонента.
Менеджер модулей
Менеджер модулей используется для администрирования не только модулей, но и связанных с ними меню. В Joomla! меню представляет какой-то элемент
Рис. 5.23. Менеджер модулей используется для управления модулями
7 Зак 468
сайта, например, категорию или раздел, который содержит список элементов меню. При создании нового меню автоматически создается и привязывается к меню модуль, отображающий это меню. Когда вы откроете Менеджер модулей, то увидите список всех модулей, установленных в вашей системе (рис. 5.23).
Щелкните на названии модуля, и вы увидите окно настройки этого модуля. Для разных модулей можно определить различные параметры, поэтому экран конфигурации модуля может немного отличаться от рис. 5.24, на котором приведено окно настройки модуля Banners
МОДУЛЬ: [Изменить]МОДУЛЬ: [Изменить]Сохранить Прим*Сохранить Прим*
МОДУЛЬ: [Изменить]
МОДУЛЬ: [Изменить]
Сохранить Прим*
Сохранить Прим*
ПодробностиТип модуля: жо<1_Ьемкег»ПодробностиТип модуля: жо<1_Ьемкег»Заголовок: BannersПока аг* аг о ловок: б» нет ^ Да Вкпичен: Г Нет ^ Да По Мщит footer vСортировка: Iq Ваппев vЗаголовок: BannersПока аг* аг о ловок: б» нет ^ Да Вкпичен: Г Нет ^ Да По Мщит footer vСортировка: Iq Ваппев vПараметры•г Параметры модуляОткрыть Гнеком окно с навигациейССЫЛАВ.»Параметры•г Параметры модуляОткрыть Гнеком окно с навигациейССЫЛАВ.»КоличествоКоличествоКлиент ваннераКлиент ваннераOpen Source MattersOpen Source Matters
Подробности
Тип модуля: жо<1_Ьемкег»
Подробности
Тип модуля: жо<1_Ьемкег»
Заголовок: Banners
Пока аг* аг о ловок: б» нет ^ Да Вкпичен: Г Нет ^ Да По Мщит footer v
Сортировка: Iq Ваппев v
Заголовок: Banners
Пока аг* аг о ловок: б» нет ^ Да Вкпичен: Г Нет ^ Да По Мщит footer v
Сортировка: Iq Ваппев v
Параметры
•г Параметры модуля
Открыть Г
неком окно с навигацией
ССЫЛАВ.»
Параметры
•г Параметры модуля
Открыть Г
неком окно с навигацией
ССЫЛАВ.»
Количество
Количество
Клиент ваннера
Клиент ваннера
Open Source Matters
Open Source Matters
КатегорияКатегорияi Joomla1 Promoi Joomla1 PromoRegistered|Специальный iID: 30Registered|Специальный iID: 30Искать поИскать поНет ДаНет ДаНазначение менюНазначение менюОписание: Этот баннерный модуль позволяет показывать активные баннеры вне компонента, но внутри вашего сайтаОписание: Этот баннерный модуль позволяет показывать активные баннеры вне компонента, но внутри вашего сайтаПорядок отображенияПорядок отображениязаголовказаголовкаНижнни колонтитулСуффикс класса модул*Нижнни колонтитулСуффикс класса модул*Случайным образом vСлучайным образом vРасширенные параметрыРасширенные параметры
Категория
Категория
i Joomla1 Promo
i Joomla1 Promo
Registered|Специальный i
ID: 30
Registered|Специальный i
ID: 30
Искать по
Искать по
Нет Да
Нет Да
Назначение меню
Назначение меню
Описание: Этот баннерный модуль позволяет показывать активные баннеры вне компонента, но внутри вашего сайта
Описание: Этот баннерный модуль позволяет показывать активные баннеры вне компонента, но внутри вашего сайта
Порядок отображения
Порядок отображения
заголовка
заголовка
Нижнни колонтитул
Суффикс класса модул*
Нижнни колонтитул
Суффикс класса модул*
Случайным образом v
Случайным образом v
Расширенные параметры
Расширенные параметры
Рис. 5.24. Параметры модуля Banners
Расположение модулей обычно задается шаблоном. Однако Joomla! позволяет администратору настраивать модули, так что они будут появляться при
отображении определенных меню. В области Назначение меню можно выбрать страницы, на которых должен появиться тот или иной модуль. Например, вы можете настроить модуль голосований так, что он будет появляться только на главной странице.
Менеджер плагинов
Плагинам разрешен самый низкоуровневый доступ к Joomla!, поэтому они могут даже изменять функции CMS. Плагины "расположены" между Joomla! и пользователем, точнее его браузером. Менеджер плагинов (рис. 5.25) позволяет публиковать, скрывать и изменять установленные плагины.
Менеджер плагинов
о
Включить Въключить
u
Правка Помоешь
ОыЛКТП'
I Выполнить Л Сброс ]
v
•
г
Налмие гокмина
Вклнчам
Сортировка* ^
Доступ
Тил*
Ф4ИЛ
Ю
г
Authentication - Joomia
V
*
Всем
autbenticaton
jc-omla
1
2
г
Authentication - LDAP
о
<
2
Всем
authentication
Map
2
3
г
Authentication - Open©
о
*
*
3
Всем
authentication
openia
4
4
г
Authentication * OMail
о
*
4
Всем
authentication
oral
3
5
г
Contort - Pago Navigation
V
Всем
cortert
pagenavigation
17
6
г
Cortent - Rating
V
-
*
4
Всем
cortent
WW
13
7
г
Cortent * Eman Cloakng
*/
*
*
5
Всем
cortent
emadcioak
14
8
г
Contort - Code Higrti^ter (GeSM)
о
*
*
5
Всем
cortent
flesh
15
9
г
Cortent - Load MotMo
V
*
*
6
Всем
cortent
loadmodule
16
10
г
Content • Pagebreak
V
10000
Всем
content
pagebreek
12
Рис. 5.25. Менеджер плагинов
Наиболее часто используемый плагин — это текстовый редактор, применяемый для изменения контента. Редактор TinyMCE на самом деле плагин с именем tinymce. В Joomla! все статьи хранятся в формате HTML в базе данных. Плагин редактора находится "между" выводом Joomla! (из базы данных) и браузером пользователя.
Когда пользователь хочет отредактировать статью, Joomla! получает ее текст из базы данных в сыром HTML-коде и выводит его в обычном поле для редактирования текста. Плагин TinyMCE перехватывает HTML-код и конвертирует его в WYSIWYG-контент, поэтому жирный текст отображается имен-
но как жирный, а не как текст, заключенный в HTML-теги, да и вставленные картинки отображаются, как картинки, а не как набор тегов.
Когда пользователь нажимает кнопку Применить или Сохранить, TinyMCE конвертирует отображенный контент обратно в HTML и передает HTML-код Joomla!, которая сохраняет его в базе данных.
В большинстве случаев пользователь взаимодействует только с плагинами- редакторами. Остальные плагины редко взаимодействуют с пользователем, и их выполнение незаметно для пользователя. У плагина TinyMCE довольно много параметров (рис. 5.26), которые могут быть установлены администратором — от направления текста до фоновой "чистки" кода.
Плагин: [Правка]Плагин: [Правка]
Плагин: [Правка]
Плагин: [Правка]
Подробности
На В К к: Editor - TmyMCE 2.0Включен- г НсТ ^ ДаТиш editorsФайл плагина: tinymcephpНа В К к: Editor - TmyMCE 2.0Включен- г НсТ ^ ДаТиш editorsФайл плагина: tinymcephpСортировка: I о (Editor- TmyMCE 2 0) °VСортировка: I о (Editor- TmyMCE 2 0) °V
На В К к: Editor - TmyMCE 2.0
Включен- г НсТ ^ Да
Тиш editors
Файл плагина: tinymcephp
На В К к: Editor - TmyMCE 2.0
Включен- г НсТ ^ Да
Тиш editors
Файл плагина: tinymcephp
Сортировка: I о (Editor- TmyMCE 2 0) °V
Сортировка: I о (Editor- TmyMCE 2 0) °V
Очищать код при запускеCode Cleantip on SaveHe on «дать HTML включенияПредупрежден te сохран*нияУменьшенная версияОчищать код при запускеCode Cleantip on SaveHe on «дать HTML включенияПредупрежден te сохран*нияУменьшенная версия
Очищать код при запуске
Code Cleantip on Save
He on «дать HTML включения
Предупрежден te сохран*ния
Уменьшенная версия
Очищать код при запуске
Code Cleantip on Save
He on «дать HTML включения
Предупрежден te сохран*ния
Уменьшенная версия
Описани : TinyMCE это платформе независимый, основанный на вэб-технологии, Javascript HTML визуальный редактор.
Параметры
* Параметры плагина
Функциональность I Рес ширенный V
^ ВыхлВкл
NeverFront Only ^ Always
Да ^ Нет
^ ВьжлВкл
<• Вьжл ^ Вкл
Uri Ы | Относительные V
Направление гт темы» | Слева праю у
Автоматичесмег_
выв- р я ыка * Нет ^а
Почтовый менеджер
У Joomla! есть собственная почтовая мини-система, помогающая пользователям отправлять сообщения администраторам. Почтовый ящик можно просмотреть с помощью окна Личное сообщение (рис. 5.27). Данная примитивная почтовая система не заметит стандартного электронного ящика, но может использоваться для организации внутренних целей (для обмена сообщениями в пределах сайта).
Рис. 5.27. Список личных сообщений для администратора пустРис. 5.27. Список личных сообщений для администратора пуст
Рис. 5.27. Список личных сообщений для администратора пуст
Рис. 5.27. Список личных сообщений для администратора пуст
Каждый администратор может настроить свой почтовый ящик, например, вообще его отключать или же включить функцию перенаправления почты (с помощью конфигурационного экрана, изображенного на рис. 5.28). По умолчанию сообщения удаляются через семь дней после их получения. Если у вас большой сайт, я рекомендую увеличить это значение до 30 дней, иначе вы потеряете много сообщений, если не просмотрите их за неделю.
₽ Нет Г Да® Нет <~ Да₽ Нет Г Да® Нет <~ ДаНастройка личных сообщений
₽ Нет Г Да
® Нет <~ Да
₽ Нет Г Да
® Нет <~ Да
Блокировать входящие’
Сообщать мне о новом письме'
Автоудаление сообщений после:
Рис. 5.28. Параметры личных сообщений
Вызывается командой Инструменты | Прочитать сообщения. — Пер.
Отправить почту Отменить Параметры ПомощьОтправить почту Отменить Параметры ПомощьСообщениеТема:Сообщение:СообщениеТема:Сообщение:Отправить в формате HTML:Отправить в формате HTML:Группа:Группа:Получатель ВСС.Отправить коп «о на е- Г" mail сайтамПолучатель ВСС.Отправить коп «о на е- Г" mail сайтамРис. 5.30. Параметры массовой рассылки: вы можете добавить префикс темы и суффикс сообщения (подпись)Рис. 5.30. Параметры массовой рассылки: вы можете добавить префикс темы и суффикс сообщения (подпись)
Отправить почту Отменить Параметры Помощь
Отправить почту Отменить Параметры Помощь
Сообщение
Тема:
Сообщение:
Сообщение
Тема:
Сообщение:
Отправить в формате HTML:
Отправить в формате HTML:
Группа:
Группа:
Получатель ВСС.
Отправить коп «о на е- Г" mail сайтам
Получатель ВСС.
Отправить коп «о на е- Г" mail сайтам
Рис. 5.30. Параметры массовой рассылки: вы можете добавить префикс темы и суффикс сообщения (подпись)
Рис. 5.30. Параметры массовой рассылки: вы можете добавить префикс темы и суффикс сообщения (подпись)
Менеджер массовой рассылки
Иногда администратору нужно отправить электронные сообщения всем пользователям сайта, например, о закрытии сайта на обслуживание или любом другом связанным с сайтом событием. Менеджер массовой рассылки (рис. 5.29) позволяет администратору отправить сообщение всем пользовате лям определенной группы. Если параметры SMTP-сервера не указаны в
4 ^ Mass Mail
Подробности
Отправить п о ьмодочерним группам:
Рис. 5.29. Менеджер массовой рассылки
Менеджере общих настроек, то сообщение будет отправлено с помощью внутренней почтовой системы Joomla!.
Если вы хотите добавить префикс темы или суффикс сообщения (т. е. подпись сообщения), нажмите кнопку Параметры (рис. 5.30).
Сброс блокировок
Пока статья редактируется одним пользователем, другой пользователь не может открыть ее для редактирования. Это предотвращает конфликты двух пользователей, пытающихся одновременно внести изменения в один и тот же документ.
Но связь с пользователем может прерваться или же пользователь просто закроет окно браузера без нажатия кнопки Сохранить, а статья-то будет по- прежнему считаться открытой другим пользователем, и никто не сможет ее открыть. Именно поэтому в интерфейсе администратора есть функция Сброс блокировок, команда для вызова которой находится в меню Инструменты. После вызова этой функции будут сняты все блокировки статей (рис. 5.31).
Перед сбросом блокировок убедитесь, что все пользователи вышли из системы. Если на момент вызова этой функции какой-то пользователь редактировал статью, он не сможет потом сохранить изменения.
Сброс блокировок
Таблица оаты данныхОбработка таблицы - jos_banner Обработка таблицы - josjbannerc tent Обработка таблицы - ^s_categories Обработка таблицы - jos_coriact_details Обработка таблицы - jos_content Обработка таблицы - jos_menu Обработка таблицы - jos „modules Обработка таблицы - )os_newsfeeds Обработка таблицы - Jos „plugins Обработка таблицы - jos_ройз Обработка таблицы - jos_sections Обработка табл цы - jos_webiinks Все элементы разблокированыТаблица оаты данныхОбработка таблицы - jos_banner Обработка таблицы - josjbannerc tent Обработка таблицы - ^s_categories Обработка таблицы - jos_coriact_details Обработка таблицы - jos_content Обработка таблицы - jos_menu Обработка таблицы - jos „modules Обработка таблицы - )os_newsfeeds Обработка таблицы - Jos „plugins Обработка таблицы - jos_ройз Обработка таблицы - jos_sections Обработка табл цы - jos_webiinks Все элементы разблокированы# элементовРазблокировано
Таблица оаты данных
Обработка таблицы - jos_banner Обработка таблицы - josjbannerc tent Обработка таблицы - ^s_categories Обработка таблицы - jos_coriact_details Обработка таблицы - jos_content Обработка таблицы - jos_menu Обработка таблицы - jos „modules Обработка таблицы - )os_newsfeeds Обработка таблицы - Jos „plugins Обработка таблицы - jos_ройз Обработка таблицы - jos_sections Обработка табл цы - jos_webiinks Все элементы разблокированы
Таблица оаты данных
Обработка таблицы - jos_banner Обработка таблицы - josjbannerc tent Обработка таблицы - ^s_categories Обработка таблицы - jos_coriact_details Обработка таблицы - jos_content Обработка таблицы - jos_menu Обработка таблицы - jos „modules Обработка таблицы - )os_newsfeeds Обработка таблицы - Jos „plugins Обработка таблицы - jos_ройз Обработка таблицы - jos_sections Обработка табл цы - jos_webiinks Все элементы разблокированы
Разблокировано 0 Элементы
Разблокировано 0 Элементы
Разблокировано 0 Элементы
Разблокировано 0 Элементы
Разблокировано 1 Элементы ^/
Разблокировано! Элементы ^
Разблокировано 1 Элементы ^
Разблокировано 0 Элементы
Разблокировано 0 Элементы
Разблокировано 0 Элементы Разблокировано! Элементы */
Разблокировано 0 Элементы
Рис. 5.31. Сброс блокировок
Информация о системе
Из меню Помощь можно вызвать очень полезное окно информации о системе (рис. 5.32). Окно системной информации выводит информацию о конфигурации сервера, на котором запущена Joomla!.
В окне Информация вы увидите пять следующих панелей:
Инфо системы — различная информация о системе: версия Web-сервера, версия Joomla!, информация о MySQL-сервере, интерпретаторе PHP, браузере пользователя;
Установки PHP— показывает директивы PHP, влияющие на работу Joomla!, и их текущие значения;
Файл конфигурации — отображает текущие настройки из файла конфигурации configuration.php, который обычно находится в корневом каталоге Joomla!;
Права на папки — данная панель отображает список важных Joomla!- папок и сообщает, доступны ли эти каталоги для записи. Среди отображаемых каталогов есть каталоги плагинов, модулей, шаблонов, кэша, языков;
Информация PHP— это просто вывод функции phpinfot), которую мы рассматривали в главе 3 при проверке правильности установки PHP
Резервное копирование
Весь контент сайта и большинство установок Joomla! хранится в разных таблицах в базе данных. Однако установленные расширения и конфигурационные данные сайта хранятся в подкаталогах корневого каталога Joomla!. Чтобы выполнить полное резервное копирование Joomlal-сайта, вам нужен метод сохранения файлов Joomla! в соответствии с данными.
Одна из ошибок начинающих администраторов Joomla! заключается в том, что они забывают сделать резервную копию базы данных Joomla!. Да, очень важно сделать резервную копию файлов, хранящихся на FTP-сервере, но все реальное содержимое сайта хранится в базе данных. Поэтому вам нужно обязательно сделать резервную копию базы данных. На рис. 5.33 приведен список всех таблиц, используемых Joomla!.
psjbamer
MylSAM
5
josjbamerdient
MylSAM
1
jos_banner trade
MylSAM
0
josjeategones
MylSAM
15
ps_aynponents
MylSAM
33
jos_axitdct_detafc
MylSAM
1
jos_content
MylSAM
6
josjrontent_frontpage
MylSAM
4
jos_content_fabng
MylSAM
0
jos_axe_ad_aro
MylSAM
2
josjccre_ad_arG_youps
MylSAM
11
>osj^e_adjarQ_secbam
MylSAM
1
jos_core_ad_grtMDS_aro_map
MylSAM
2
)os_axejogjtems
MylSAM
0
jos_axejog_seardies
MylSAM
3
josjjroups
MylSAM
3
jos_menu
MylSAM
33
Л
josjnenu_types
MylSAM
8
josjnessages
MylSAM
2
jos_messages_cfg
MylSAM
0
■J
psjnodutes
MylSAM
43
jos_fnodutes_menu
MylSAM
26
3
jos_newsf«Hfa
MylSAM
9
josjlugrs
MylSAM
27
)OS_PO*S
MylSAM
1
jos jpo8_data
MylSAM
12
josjxi»_date
MylSAM
8
-
>os_poljnenu
MylSAM
1
psjseCbons
MylSAM
1
ps_se6san
MylSAM
1
josjstatsjBgents
MylSAM
0
jos_templates_menu
MylSAM
2
psjtemphte_poabon&
MylSAM
34
josjjsers
MylSAM
2
$os_webiinks
MylSAM
5
Рис. 5.33. Таблицы, используемые системой Joomla!
Несмотря на большое количество таблиц в базе данных, создать резервную копию базы данных проще, чем резервную копию файлов. В зависимости от размера сайта, обычно размер базы данных меньше, чем размер файлов Joomlal-сайта. Существует несколько методов резервного копирования базы данных MySQL. В большинстве случаев выбор метода резервного копирования зависит от сервера, на котором установлена база данных MySQL Также существует много плагинов, позволяющих автоматически выполнять резервное копирование. Масса таких плагинов доступна по адресу http:// extensions.Joomla.org.
Совет
Перед резервным копированием убедитесь, что на вашем сервере включена опция вроде Quote Names’, заключающая в кавычки текстовое содержимое. Это позволит предотвратить ошибки при восстановлении из резервной копии.
Создание резервной копии с помощью phpMyAdmin
На серверах GoDaddy (w3vw.godaddy.com), как и на большинстве серверов других хостинг-провайдеров, установлена онлайн-утилита phpMyAdmin, разрешающая пользователю работать с базой данных MySQL. Через Web- интерфейс этой утилиты пользователь может выполнять большинство операций по управлению базой данных — создавать базы данных (если это разрешено именно этому пользователю) и таблицы, делать выборку из базы данных и даже редактировать данные таблиц.
Особенно важная для пользователей Joomla! функция — функция резервного копирования базы данных. Утилита может экспортировать все данные, содержащиеся в таблицах базы данных.
Примечание phpMyAdmin — бесплатное и свободно распространяемое приложение. Если вы решили настроить собственный Web-сервер и хотите администрировать вашу базу данных MySQL через Web, вы можете установить phpMyAdmin на свой сервер. Последнюю версию этой программы можно скачать на сайте SourceForge (https://sf.net/projects/phpmyadmin) или на сайте разработчиков (www.phpmyadmin.net)
На рис. 5.34 представлены оптимальные настройки экспорта для создания резервной копии Joomla!. Как только вы нажмете кнопку ОК, программа создаст ZIP-архив, в котором будет сохранен SQL-файл, содержащий описание всех таблиц и данных вашего сайта. Этот файл можно будет сохранить на
1 Это примерное название опции, которое может отличаться в разных плагинах, но суть ее будет одной и той же. — Пер.
диске или отправить по e-mail. Делая резервные копии базы данных каждую неделю, вы сможете снизить вероятность потери данных до минимума.
ЦЗ loc.)lho«t ► $i dkwwirgiishop
Структура ^SOt у. Поиск ^ innppe пп жабппму fib Экспорт Д^Иыппрт ^Операции
-Отобразить дамп icxeuy) оазы данных—— —
- Пар аысгры—-——
Д бввить собственный коммемтар й в заголовок (перевод
с роки \п)Заключить экспорт в
транзакцию
Отключить проверку внешних ключей
Режим совместимости SOLNONE •
Ф
VCгрунтуpa
^Добавить DROP TABLE / DROP VIEW Добавить IF NOT EXISTS
VfloCaBHTb ALTO Ji - EMENT
V3amii04nTb названия таблиц и полей в косые кавычки Добашть CREATE РЯС EDURE/FUN U
гДобавить в коиментприи
| Даты создания, обновления и проверки
"^Данные—-—
vnonnaH вставка
-VPacuMp” н ые вставки
Максимальная длина ссздава мого запроса50000
Использовать отлсж иные вставки v^ELA¥En
И юльзо вть игнор рующив вствеки ( ‘ Е)ч^Использоевтъ шестнадцатеричное отображение для полей типа BLOBТип экспортаNSERT *
Ш блон имени файда W DB_( V запомнить шаблон )Упаковать Нет • zip gzipШ блон имени файда W DB_( V запомнить шаблон )Упаковать Нет • zip gzipРис. 5.34. Параметры экспорта базы данных Joomla! в phpMyAdminРис. 5.34. Параметры экспорта базы данных Joomla! в phpMyAdminСохранить как файл
Ш блон имени файда W DB_( V запомнить шаблон )
Упаковать Нет • zip gzip
Ш блон имени файда W DB_( V запомнить шаблон )
Упаковать Нет • zip gzip
Рис. 5.34. Параметры экспорта базы данных Joomla! в phpMyAdmin
Рис. 5.34. Параметры экспорта базы данных Joomla! в phpMyAdmin
Восстановление из резервной копии
Чтобы восстановить базу данных из резервной копии, вам нужно открыть phpMyAdmin, выбрать базу данных, в которую нужно восстановить информацию, перейти на вкладку SQL. После этого нужно нажать кнопку Обзор, выбрать ваш SQL-файл и нажать кнопку ОК для восстановления таблиц и данных. После восстановления база данных будет в том состоянии, в котором она была на момент создания резервной копии.
Резервное копирование
с помощью MySQL Administrator
Если у вас есть прямой доступ к базе данных MySQL, с помощью приложения MySQL Administrator вы с легкостью создадите резервную копию базы
данных. Каждый сценарий резервной копии сохраняется как backup-проект в базе данных MySQL. Backup-проекты можно запускать вручную, а можно настроить автоматический запуск по расписанию.
Чтобы создать новый backup-сценарий, откройте MySQL Administrator, нажмите кнопку New Project, выберите проект WeeklyBackup. Выберите базу данных Joomla! (в панели Schemata) и нажмите указывающую вправо стрелку для добавления базы данных в список резервного копирования. Перейдите на вкладку Advanced Options tab и включите параметр ANSI Quotes (он эквивалентен параметру Quote Names, который был упомянут ранее). Затем перейдите на вкладку Schedule.
Если у вас еще не настроено MySQL-соединение, перейдите к менеджеру соединений (Connection Manager). Установите переключатель Schedule this backup project Выберите каталог, в котором нужно сохранить резервную копию. Имя файла будет совпадать с именем проекта, если вы, конечно, не измените его. К имени файла также автоматически будут добавлены дата и время создания файла, чтобы новый файл не перезаписал один из файлов, созданных ранее.
Переключатель Execute backup weekly в области Execution Time оставьте по умолчанию. Нажмите кнопку Save Backup, после чего backup-проект будет добавлен в MySQL-сервер. Теперь MySQL-сервер будет автоматически создавать резервную копию каждую неделю.
Резервное копирование файлов
Лучше всего делать резервную копию всех файлов Joomla!. Если вы делаете резервную копию выборочно, вполне возможно, что вы столкнетесь с проблемами при восстановлении из резервной копии в случае обновления версии Joomla!.
Если Joomla! установлена на локальном сервере, можно просто, используя встроенные возможности архивирования операционной системы, создать ZIP- или TAR-архив всего Web-сайта. Альтернативно вы можете использовать утилиту резервного копирования вроде Drivelmage XML. которую бесплатно можно загрузить с сайта www.runtime.org/dixml.htm, или Areca Backup (написана на Java и свободно доступна на сайте http:// sourceforge.net/projects/areca).
Если же Joomla! установлена на удаленном сервере, вы можете использовать FTP-клиент для копирования всех файлов Joomla! на локальный жесткий
диск. Вы также можете использовать утилиту резервного копирования с поддержкой FTP, например, Backup Easy (http://sourceforge.net/projects/bueasy). Подобного рода программы обычно содержат функции планировщика, поэтому резервные копии можно создавать по расписанию, как в случае с MySQL Administrator.
Если вы хотите сделать минимальную резервную копию, убедитесь, что скопировали следующие файлы и каталоги:
configuration.php— содержит все ключевые параметры Joomlal-сайта, например, параметры доступа к базе данных и метаданные сайта. Этот файл нужно всегда копировать;
каталог templates— если вы устанавливали новые шаблоны для своего сайта, сделайте резервную копию этого каталога;
каталог administration\templates— некоторые администраторы изменяют шаблоны интерфейса администратора. Если вы устанавливали административные шаблоны, вы найдете их в этом каталоге;
каталог modules — если вы добавляли новые модули, они будут сохранены в этом каталоге. Этот каталог должен быть также сохранен, если были внесены какие-либо изменения в один из модулей. Скопируйте весь этот каталог, чтобы убедиться, что ничего не забыли;
каталог components — в данном каталоге хранятся компоненты и параметры компонентов, заданные пользователем;
каталог administration\components— содержит административные компоненты, управляющие запуском расширений;
каталог language — если вы устанавливали дополнительные языковые пакеты, они будут сохранены в этом каталоге;
каталог plugins — содержит плагины и настройки плагинов.
Сделайте резервную копию этих каталогов (в дополнение к копии базы данных), чтобы сберечь ядро вашего сайта в случае сбоя. После переустановки Joomla! вы всегда сможете скопировать эти каталоги на сервер.
Безопасность
Простота использования Joomla! делает ее идеальной для начинающих пользователей. С другой стороны, простота установки и администрирования Joomla! не способствует безопасности В этой книге я старался рассказывать о наиболее очевидных дырах в системе безопасности при установке и настройке системы.
Обеспечение полной безопасности вашего сайта выходит за рамки этой книги, но мы все-таки рассмотрим несколько рекомендаций, которые помогут администратору снизить вероятность взлома сайта. Помните, что безопасность — это постоянно перемещающаяся цель, и хакеры всегда найдут новые способы ее поражения Поэтому регулярно посещайте Web-сайт Joomla! (www.joomla.org) и загружайте обновления Joomla!. Часто обновления CMS закрывают дыры в системе безопасности, поэтому после установки обновления ваш сайт станет более защищенным, чем был до этого.
Чтобы максимизировать защиту Joomla!, выполните следующие действия:
Удалите с вашего сервера все файлы, вызывающие функцию phpinfot), с помощью которой хакеры могут узнать всю информацию о настройке вашего сервера.
Удалите каталог installation.
Перенесите файл configuration.php за пределы области публичного доступа. В этом файле хранятся имя пользователя и пароль для доступа к базе данных. Поэтому обнаружив этот файл, хакер получит ключи от королевства.
Измените имена по умолчанию учетных записей администраторов Joomla! и MySQL.
Используя файл .htaccess, можно ограничить доступ к некоторым каталогам с помощью пароля (только в случае, если у вас Apache).
Используя файл .htaccess, можно ограничить доступ к некоторым каталогам по IP-адресу.
Настройте PHP-фильтры modsecurity и mod rewrite, чтобы блокировать атаки.
Ограничьте права ваших MySQL-пользователей.
Выполнив все эти рекомендации, вы уменьшите шансы хакера уничтожить ваш сайт. Периодически производите проверку безопасности вашего сайта (см. http://forum.joomla.org/index.php/topic,81058.0.html), причем чем дольше ваш сайт находится в сети, тем чаще нужно проводить такие проверки. Чем дольше сайт в сети, тем больше на нем устаревших версий расширений, неиспользуемых пользовательских записей (возможно, с существенными привилегиями) и устаревших настроек защиты (например, которые вы сделали для установки расширений, а затем забыли о них).
Помните, что наилучшая страховка от хакера — это резервное копирование всего вашего сайта. Если кто-нибудь проникнет на ваш сайт и уничтожит его (или изменит информацию), только резервная копия спасет сайт!
Каталоги, доступные для записи
Для большего удобства администратора, для включения возможностей SEF (search engine-friendly), а также кэширования нужно предоставить некоторым каталогам право записи, что потенциально создает уязвимость защиты. Самые простые права доступа для каталога— 750, позволяющие владельцу каталога читать/записывать каталог и только читать членам группы владельца и остальным пользователям.
Один из методов минимизации потенциальной опасности — это изменение группы владельца каталога на группу, в которую входит пользователь, от имени которого запускается Web-сервер. После этого можно установить права доступа 770 (чтение/запись для владельца и группы и запрещение доступа остальным). Такие права доступа закроют доступ к каталогу остальным пользователям. Полный доступ к каталогу получит только учетная запись пользователя, от имени которого запускается Web-сервер (обычно это пользователь apache).
Внимание!
Никогда не устанавливайте права 777. позволяющие записывать в каталог всем желающим. Если вы можете управлять настройками безопасности, даже каталог для временных файлов должен быть защищен паролем.
Примечание переводчика
Полностью согласен с приведенным выше примечанием автора, но как всегда есть одно "но". Если у вас нет прав администратора (пользователя root), например, когда у вас не свой сервер, а вы купили хостинг у хостинг-провайдера, вы не можете переместить пользователя apache в группу своего пользователя (от имени которого вы работаете), следовательно, не можете установить права 770. Поэтому вам придется использовать права 777, чтобы пользователь apache, который для вашей учетной записи является "остальным", получил право записи.
Резюме
Администрирование Joomla!, благодаря Web-интерфейсу администратора, не только простое, но возможно из любой точки Земного шара. Различные менеджеры Joomla! (Менеджер шаблонов, Менеджер пользователей и т. д.) эффективно распределяют административные задачи, например, управление внешним видом сайта, управление контентом, настройку сайта.
Хотя Joomla! отлично работает сразу после установки, Web-мастер должен периодически выполнять задачи по обслуживанию сайта. Резервное копирование, реорганизация контента, архивирование контента, управление безо-
пасности — это небольшой список задач, который периодически должен выполнять администратор. С другой стороны, Joomla! позволяет непринужденно управлять сайтом и некоторые сложные административные задачи можно выполнять с помощью нескольких щелчков мыши.
Большую часть интерфейса администратора вы уже исследователи. В этой главе вы подробно изучили каждую область интерфейса администратора (представленного различными менеджерами), а в следующей главе мы поговорим о создании собственных шаблонов сайта.
ГЛАВА 6
Создание собственных шаблонов
Ключевая причина процветания Joomla! в мире CMS — это возможность ее расширения пользователем. Например, очень просто создать новый шаблон Joomla!. Наверняка вам захочется разработать собственный шаблон или изменить существующий.
Шаблон резюме состоит из обычных для этого типа документов элементов. Претендент на свободную вакансию заполняет этот шаблон, указывая контактную информацию, опыт работы и т. д. Шаблон Joomla! подобен шаблону документа, за тем лишь исключением, что заполняет шаблон не человек, а сама CMS, получая из базы данных необходимую информацию.
Шаблон (или представление сайта) независим от содержания. Одним щелчком мыши в Менеджере шаблонов вы можете изменить вид сайта от показанного на рис. 6.1 до показанного на рис. 6.2 — вам нужно лишь выбрать другой шаблон.
В этой главе мы узнаем, как создать новый шаблон, соответствующий вашему сайту. Создание шаблона будет продемонстрировано на примере программы GIMP. Если вы еще не знакомы с GIMP, то будете приятно удивлены, что это бесплатный аналог Adobe Photoshop. GIMP доступен для всех основных операционных систем (Windows, Mac OS, Linux).
Структура шаблона может показаться немного сложной, поэтому мы начнем с разработки простого шаблона Hello Joomla!. Hello Joomla! —элементарный шаблон, но после его создания вы сможете создавать более сложные и эффектные CSS-шаблоны.
Latest News
• Another Article
. What
; ati
Adjustable Rj4 Mortgage (ARM)?
• My First Article
What is an Adjustable Rate Mortgage (ARM)?
What is an Adjustable Rate Mortgage (ARM) ?
Adjustable rate mortgages (ARMs) differ from fixed rate mortgages (the more Taditiona! mortgage) in that the rate of the loan changes over the life of the loan. What does this mean to vou? That means that the rate of interest you are paying when you start (let's say 4.25%) doesn't remain the same for the life of the Ioan. It could go up (to 4.50%. for example)
Joomla! is used for? г Community
Sites r Public
Brand Sites r eCommerce гBlogs
<* Intranets г Photo and
Media
Sites r- Al! of the
Above!
Vote |
or down (to 4.00%). That means that your monthly payments may also go up or down.
Results [
1
Рис. 6.1. Сайт на базе простого текстового шаблона
Joomla!"
About Joarniai Feetures News TheCoeimuraty
Main WatMain WatHomeFree Borrower ArticlesTerms and ConditionsHomeFree Borrower ArticlesTerms and ConditionsLatest NewsAnotner AftideWhat б n AdyjRtahie Rate Mortgafy» (ARMPMy Fast ArhdeLatest NewsAnotner AftideWhat б n AdyjRtahie Rate Mortgafy» (ARMPMy Fast ArhdePopularWhat б an Adjusrabie Rate Motqaqe (ARMpMy Fret A/tdeAnother ArticlePopularWhat б an Adjusrabie Rate Motqaqe (ARMpMy Fret A/tdeAnother Article
Main Wat
Main Wat
Home
Free Borrower Articles
Terms and Conditions
Home
Free Borrower Articles
Terms and Conditions
Latest News
Anotner Aftide
What б n AdyjRtahie Rate Mortgafy» (ARMP
My Fast Arhde
Latest News
Anotner Aftide
What б n AdyjRtahie Rate Mortgafy» (ARMP
My Fast Arhde
Popular
What б an Adjusrabie Rate Motqaqe (ARMp
My Fret A/tde
Another Article
Popular
What б an Adjusrabie Rate Motqaqe (ARMp
My Fret A/tde
Another Article
K»y CtwwptsK»y Ctwwpts• Extensions• Content• Extensions• ContentWhat is an Adjustable Rate Mortgage (ARM)?What is an Adjustable Rate Mcrtaaae (ARM) ?What is an Adjustable Rate Mortgage (ARM)?What is an Adjustable Rate Mcrtaaae (ARM) ?PollsJoomla! is used for?C Cammunty Sites c RJjk: Brand SeesPollsJoomla! is used for?C Cammunty Sites c RJjk: Brand Sees
K»y Ctwwpts
K»y Ctwwpts
• Extensions
• Content
• Extensions
• Content
What is an Adjustable Rate Mortgage (ARM)?
What is an Adjustable Rate Mcrtaaae (ARM) ?
What is an Adjustable Rate Mortgage (ARM)?
What is an Adjustable Rate Mcrtaaae (ARM) ?
Polls
Joomla! is used for?
C Cammunty Sites c RJjk: Brand Sees
Polls
Joomla! is used for?
C Cammunty Sites c RJjk: Brand Sees
Рис. 6.2. Сайт, использующий графический шаблон
Быстрое руководство:
создание шаблона Hello Joomla!
Joomlai-шаблон — это множество связанных друг с другом файлов, отвечающих за отображение информации, хранящейся в базе данных. Шаблон должен содержать, как минимум, два основных файла:
♦ templateDetails.xml — XML-файл, используемый Joomla! для получения информации о шаблоне (имя шаблона, автора, дата создания и т. д.). Он
также содержит список файлов шаблона. В списке должны быть все файлы — index-файлы, таблицы стилей, картинки, звуки, видео и другие файлы, используемые шаблоном;
♦ index.php — основной файл, загружающий модули, обрабатывающий данные Joomlal-шаблона, т. е. управляет отображением информации.
Шаблоны Joomla! хранятся на Web-сервере в каталоге \templates. У каждого шаблона есть свой каталог, имя которого обычно совпадает с названием шаблона. Например, шаблон rhuk milkway находится в каталоге rhukmilkway. Joomla! чувствительна к регистру символов, поэтому если шаблон называется rhuk milkway, а каталог называется RHUK MILKWAY, использовать шаблон не получится.
Как уже отмечалось, в каталоге \templates находятся подкаталоги для каждого установленного шаблона. Очень полезно изучить содержимое одного из этих каталогов (или сразу нескольких каталогов). Вы увидите, что, несмотря на разный внешний вид сайта, обеспечиваемый шаблонами, имена файлов, их типы и количество часто подобны для разных шаблонов.
Примечание
По сравнению с шаблонами для Joomla! 1.0, структура новых шаблонов для Joomla! 1.5 существенно изменилась. Для обработки старых шаблонов использовался движок patTemplate, а в новой версии данный движок поддерживается только из соображений обратной совместимости. Если у вас есть опыт разработки шаблонов для версии 1.0, после прочтения этой главы вы заметите, что реализация и структура шаблона полностью изменилась. Если вам нужно просто использовать старые шаблоны (для Joomla! 1.0), с помощью Менеджера плагинов включите плагин System — Legacy.
Создание файлов шаблона Hello Joomla!
Сейчас с помощью вашего любимого текстового редактора (можно использовать обычный Блокнот) мы создадим два файла шаблона Hello Joomla! Но перед этим вам нужно создать новый каталог для этих файлов.
Создайте каталог \tmplHelloJoomla в каталоге \templates. Если у вас собственный Web-сервер, тогда путь к этому каталогу будет похож на C:\Program FilesXApache Software Foundation\Apache2.2\htdocs\templates\tmplHelloJoomla.
Примечание
Данные инструкции позволят вам впоследствии существенно упростить создание шаблона. Шаблоны хранятся как ZIP-архив, для установки шаблона администратор использует команду Расширения | Установить/Удалить. Но в процессе разработки шаблона крайне не практично каждый раз создавать ZIP- архив и переустанавливать шаблон всякий раз после внесений в него изменений. Вместо этого вы можете создать обычный каталог, в котором будут храниться файлы шаблона, а затем загрузить этот каталог по FTP на Web-сервер.
С помощью текстового редактора создайте файл index.php и поместите его в каталог \tmplHelloJoomla:
chtml>
chead>
cjdoc:include type="head" /> c/head>
cbody>
cjdoc:include type="message" />
cdiv class="center" align="center">Hello World!</div>
cjdoc:include type=”modules" name="debug" />
</body>
c/html>
Наш файл index.php существенно упрощен и не соответствует даже простейших правилам HTML, например, не содержит параметр doctype. Когда вы будете создавать полный шаблон (чуть позже в этой главе), то увидите все обязательные элементы шаблона. Однако наш шаблон Hello Joomla! будет максимально упрощен для более легкого восприятия.
В нашем файле index.php первой строкой Joomla!-кода является cjdoc: include type="head" />. Данная строка используется для вставки информации о сайте в заголовок. Да, эта директива добавляет метаданные, используемые поисковыми машинами. Например, для главной страницы моего сайта с помощью директивы include я добавил следующую информацию, которая будет отправлена в браузер пользователя:
ctitle>LoanStaircase.comc/title>
cmeta name="generator" content="Joomla! 1.5" />
cmeta name="description"
content="Loan Staircase — Track your loan or loans" />
cmeta http-equiv="Content-Type" content="text/html; charset=utf-8" /> cmeta name="robots" content="index, follow" />
cmeta name="keywords" content="Loans, Mortgage" /> clink href="http://localhost/favicon.ico"
rel="shortcut icon" type="image/x-icon" />
Данная информация будет изменяться в зависимости от отображаемой страницы (например, главная страница будет отличаться от страниц статей).
Примечание
Многие начинающие Joomlal-пользователи хотят изменить заголовок главной страницы, и для этого они пытаются изменить исходный код шаблона. Как вы видите, все заголовки генерируются динамически. Как же задать заголовок
главной страницы? Выполните команду Меню | Главное меню. Выделите главный пункт главного меню (обычно называется Ноте) и нажмите кнопку Правка В группе параметров Параметры — Система вы найдете параметр Заголовок страницы — вот его и нужно изменить!
Вторая Joomlai-директива, cjdoc: include type="modules" name="debug" />, относится к отладке модулей. Обычно она ничего не отображает, однако если вы включите опцию Отладка системы в группе Общие параметры | Система — Режим отладки, то увидите отладочную информацию внизу страницы. Данная информация довольно полезна, поскольку описывает процесс выполнения шаблона страницы. Например, для главной страницы вы должны увидеть примерно следующее:
Application 0.156 afterLoadFramework
Application 0.233 afterStartFramework
Application 0.268 afterDisplayOutput
Числа после слова Application означают время рендеринга (генерации) страницы для каждого шага в последовательности выполнения шаблона. Если ваша страница загружается медленно, вы можете определить, на какой стадии вывода страницы произошла ошибка.
Чтобы завершить наш шаблон, вам нужно создать XML-файл, описывающий Joomlai-шаблон. С помощью вашего текстового редактора создайте файл templateDetails.xml и поместите его в каталог \tmplHelloJoomla:
<?xml version=”1.0" encoding="utf-8"?>
cinstall version="1.5" type=*'template">
<name>Hello Joomla template</name>
<description>
Simplest template in the Joomla! world.
</description>
<files>
<filename>index.php</filename>
<filename>templateDetails.xml</filename>
</files>
</install>
Примечание переводчика
Поля <name> и <description> не должны содержать русских символов поэтому не пытайтесь перевести их на русский язык!
Практически все. Теперь перейдите в Менеджер шаблонов (используя меню Расширения). Вы увидите ваш новый шаблон в списке шаблонов. Выделите его и нажмите кнопку По умолчанию (рис. 6.3).
Рис. 6.3. Выберите шаблон Hello Joomla' и нажмите кнопку По умолчанию
Примечание переводчика
Если Joomla! установлена на сервере хостинг-провайдера, а не на локальном сервере, достаточно просто скопировать каталог \tmplHelloJoomla в каталог \templates. Не нужно пытаться архивировать файлы шаблона, а потом установить их!
После этого откройте окно браузера и перейдите на главную страницу вашего сайта. Если шаблон корректно работает, вы увидите сообщение "Hello World!" (рис. 6.4). Поздравляю! Вы только что создали свой первый шаблон!
Рис. 6.4. Браузер отобразит сообщение "Hello World!"
Я понимаю, что данный шаблон вас не впечатлил. Однако теперь вы знаете основную структуру шаблона и познакомились с некоторыми Joomlal-ди- рективами, которые можно включать в РНР-файл.
Первая проблема нашего шаблона— это то, что он не выводит контент сайта. Прежде чем вы откажетесь от этого шаблона в пользу более совершенного, давайте попробуем отобразить контент сайта с помощью этого шаблона.
Добавление модулей и компонентов в шаблон Hello Joomla!
Настало время добавить дополнительные инструкции в наш примитивный шаблон, чтобы превратить его в настоящий шаблон. Ведь без вывода содержимого сайта, Joomla! это не CMS. С помощью пары строк вы можете добавить один модуль и один компонент в наш шаблон. Модуль будет отображать последние новости, а компонент — текст главной страницы.
Откройте наш index.php и добавьте выделенные жирным строки после элемента "Hello Word!":
<div class="center" align="center">Hello World!</div>
<jdoc:include type="modules" name="userl" style="xhtml" />
<jdoc: include type="component" />
<jdoc:include type="modules" name="debug" />
В первой добавленной строке добавляется модуль userl, отображающий заголовок Latest News (Последние новости) и список последних статей. Вторая новая строка добавляет компонент, отображающий текст главной страницы.
Вы, наверное, заметили, что у директивы component нет атрибута name, указывающего компонент. Если компонент не указан, будет использоваться компонент, имя которого хранится в системной переменной $option. В большинстве случаев это компонент com content, отображающий контент страницы.
Когда вы обновите окно браузера, то увидите содержимое главной страницы (рис. 6.5).
Структура всех Joomlal-шаблонов подобна структуре этого простого шаблона Hello Joomla!. Готовые шаблоны используют таблицы стилей для расположения элементов сайта на странице, графику для создания более привлекательного вида сайта и миниатюры, позволяющие администратору понять, как будет выглядеть сайт после установки шаблона. Однако все шаблоны построены по описанному здесь образцу.
Рис. 6.5. Модуль и компонент отображают содержимое Joomlai-сайта
Примечание
Если у вас свой Web-сервер и при попытке сохранения файла index.php вы получаете сообщение о том, что файл используется другим процессом, подождите несколько секунд и попытайтесь сохранить файл снова. Интерпретатор PHP должен вскоре снять блокировку файла.
Изменение существующих шаблонов
После создания примитивного шаблона настало время создать более мощный шаблон. В большинстве случаев, если вам нужен уникальный шаблон, проще взять за основу существующий шаблон и приспособить его к вашим нуждам, чем разрабатывать новый шаблон с нуля. В этом разделе мы поговорим о небольшой модификации главного шаблона, поставляемого вместе с Joomla!. После этого измененный шаблон будет напоминать коммерческий шаблон.
В шаблоне по умолчанию присутствует ссылка Работает на Joomla! (рис. 6.6). Если эта ссылка вам не мешает, оставьте ее — пусть посетители знают, что ваш сайт работает на Joomla!. Однако большинство организаций предпочитает скрыть этот факт, чтобы всем казалось, что сайт основан на коммерческой, а не на бесплатной системе. В этом примере мы рассмотрим, как удалить ссылку Работает на Joomla!.
Рис. 6.6. Внизу шаблона можно увидеть небольшую текстовую ссылку Работает на Joomlal
В большинстве случаев внешний вид сайта можно изменить с помощью графического интерфейса администратора. Однако в некоторых особых ситуациях приходится редактировать файлы шаблона. Например, для удаления ссылки Работает на Joomla! нужно редактировать главный PHP-файл шаблона — index.php.
Взглянув на код шаблона, вы можете испугаться: его код намного длиннее, чем код разработанного нами шаблона Hello Joomla!. Но если вы присмотритесь, то увидите в нем уже знакомые нам директивы.
Откройте Менеджер шаблонов (меню Расширения). Выберите шаблон rhukmilkyway и нажмите кнопку Правка (рис. 6.7). Кнопка Правка позволяет редактировать различные параметры шаблона, в том числе код шаблона.
Рис. 6.7. Выберите шаблон rhuk_milkyway и нажмите кнопку Правка
Вам нужно отредактировать код шаблона, поэтому нажмите кнопку Редактировать HTML (рис. 6.8)— откроется Редактор HTML файла шаблона Интерфейс администратора предоставит вам простейший текстовый редактор, позволяющий внести небольшие изменения, однако вам не нужно использовать FTP-клиент для прямого доступа к файлу.
ffZl Шаблон: [Правка]ffZl Шаблон: [Правка]Прот-отрПрот-отрРед^ктиро в ать HTML Редакторов ато CSSРед^ктиро в ать HTML Редакторов ато CSSПодробностиНа ванне: Шаолон RHUK MilkywayПодробностиНа ванне: Шаолон RHUK MilkywayОписание: MilkyWay новый шаблон для Joomlaf Аккуратный дизайн этого шаблона делает его очень лёгким и быстрым.Описание: MilkyWay новый шаблон для Joomlaf Аккуратный дизайн этого шаблона делает его очень лёгким и быстрым.ПараметрыФайл параметров templates/! запись)ПараметрыФайл параметров templates/! запись)Цвеюв^я схем -Фоновое оформлениеЦвеюв^я схем -Фоновое оформлениеПривязка кпуиыам меню
ffZl Шаблон: [Правка]
ffZl Шаблон: [Правка]
Прот-отр
Прот-отр
Ред^ктиро в ать HTML Редакторов ато CSS
Ред^ктиро в ать HTML Редакторов ато CSS
Подробности
На ванне: Шаолон RHUK Milkyway
Подробности
На ванне: Шаолон RHUK Milkyway
Описание: MilkyWay новый шаблон для Joomlaf Аккуратный дизайн этого шаблона делает его очень лёгким и быстрым.
Описание: MilkyWay новый шаблон для Joomlaf Аккуратный дизайн этого шаблона делает его очень лёгким и быстрым.
Параметры
Файл параметров templates/! запись)
Параметры
Файл параметров templates/! запись)
Цвеюв^я схем -
Фоновое оформление
Цвеюв^я схем -
Фоновое оформление
Менк: Невозможно назначить шаблон по умолчанию
Ширима мыояоизШирима мыояоизdooms- Распространяется по лицеи ии GNUX3PL.
Ширима мыояоиз
Ширима мыояоиз
Рис. 6.8. Нажмите кнопку Редактировать HTML для редактирования кода index.php
■<dxv xd-*vhxtebox_b'i>
<dxv xd-"vhitebox_bl’'>
<dxv ld="uhltebox_br">-</div>
«/dxv*
«/dxv*
«dxv id*"looterspacer“>«/div>
«dxv xd-"footer**
«div id»" footеГ—!'1*
<div id**footer_r”>
<p xd»Msyndicate*>
<jdoc:include type-"nodules* паже-"syndicate" /><jdoc:include type-"nodules* паже-"syndicate" />
<jdoc:include type-"nodules* паже-"syndicate" />
<jdoc:include type-"nodules* паже-"syndicate" />
</div>
«/dxv*
</dxv>
<3 doc:include type»"uodules" na»e=“debug* />
«/body*
-</ht»l>
Рис. 6.9 Выделите строки кода, относящиеся к "Powered by", и вырежьте их из файла
Пролистайте код шаблона, пока не встретите строки, генерирующие код "Powered by" ("Работает на"), как показано на рис. 6.9:
<р id="power_by">
<?php echo JText:: ('Powered by') ?>
<а href="http://www.Joomla!.org">Joomla!</a>,
<?php echo JText::_('Valid') ?>
<a href="http://validator.w3.org/check/referer">XHTML</a>
<?php echo JText::_('and') ?>
<a href="http://jigsaw.w3.org/css-validator/check/referer">CSS</a>.
Выделите этот код и нажмите комбинацию клавиш <Ctrl>+<C>, чтобы вырезать его. Лучше вырезать код, чем удалить, потому что если после модификации кода шаблона будут проблемы с его отображением, вы всегда можете вставить вырезанный текст обратно в шаблон.
Откройте окно браузера и зайдите на главную страничку: вы больше не увидите ненужной нам ссылки (рис. 6.10).
Рис. 6.10. Если вы все сделали правильно, ссылки Работает на Joomla! больше не будет
Для небольших изменений шаблона можно применять встроенный редактор Joomla!, а для более масштабных изменений лучше использовать специальные текстовые редакторы. В следующем разделе вы найдете обзор наиболее популярных программ, которые существуют для создания шаблонов.
Совет
Перед редактированием любого файла сделайте его резервную копию. Со статьями и настройкой Joomla! проще — вы не можете ничего такого изменить, что бы повредило всю систему. А вот с непосредственным редактированием все намного сложнее — любое, даже самое незначительное, изменение может повредить всю систему. Если вы не хотите переустанавливать Joomla!, делайте резервные копии: тогда вы можете просто восстановить исходный файл, и все будет в порядке.
Создание шаблонов с помощью Web-редакторов
Для создания шаблонов вы можете использовать различные приложения. Если вы работаете в Windows, можете использовать стандартный Блокнот, правда, у него функций явно маловато Если вы предпочитаете Emacs
(в UNIX/Linux), у него функций побольше, да и режим HTML будет весьма кстати. Однако большинство Joomlal-дизайнеров и разработчиков предпочитает использовать более дружественные программы.
Нам подходят два типа редакторов: WYSIWYG-редакторы и редакторы программного кода. Joomlal-дизайнеры чаще используют WYSIWYG-редакторы, а Joomlal-разработчики— редакторы программного кода, предоставляющие дополнительные функции по редактированию кода.
Примерами WYSIWYG-редакторов могут послужить Adobe Dreamweaver, Microsoft Expression Web и Nvu. Эти программы позволяют редактировать HTML-страницу и сразу видеть результат, как будто страница отображается в Web-браузере. Данные программы можно порекомендовать дизайнерам, которым нужно производить визуальные модификации элементов страницы (например, таблиц) путем их перемещения. У этих программ есть возможность редактирования исходного кода, но довольно ограниченная.
Редакторы кода (например, Eclipse, jEdit, UlraEdit и Leo) отображают только текст (код) страницы, как в Блокноте или Emacs. Однако у этих редакторов есть много дополнительных функций вроде подсветки синтаксиса (особенно это актуально при редактировании PHP-кода), редактирования таблиц стилей, расширенные возможности поиска и замены с использованием регулярных выражений, автоматическое форматирование кода. Обычно такие редакторы предназначены для осуществления невизуальных задач вроде редактирования РНР-кода.
WYSIWYG-редакторы
Web-редакторы, сразу отображающие, как страница будет выглядеть в браузере,— отличные инструменты для создания и редактирования шаблонов сайта. Некоторые сайты могут быть популярны, даже несмотря на простенький дизайн, например. Drudge Report (www.drudgereport.com), но они в меньшинстве. Большинству сайтов для привлечения посетителей нужен хороший дизайн и хороший контент.
Web-редактор, позволяющий упростить процесс визуального дизайна — отличный инструмент. Joomlai-дизайнеры часто выбирают Adobe Dreamweaver, Microsoft Expression Web и свободно распространяемый редактор Nvu с Joomlal-плагином. Выбор редактора зависит от личных предпочтений, поэтому вы должны попробовать все редакторы.
"Игрушечные" файлы для WYSIWYG-редактора
Разработка Joomlal-шаблона с использованием редактора — довольно непростая задача, поскольку генерируемые страницы заполняются контентом, полученным от CMS. Данное обстоятельство создает существенный барьер для WYSIW Y G-редактирования.
Например, при загрузке Joomlal-шаблона по умолчанию в Dreamweaver вы получите окно, изображенное на рис. 6.11. Экран пуст потому, что шаблон не заполнен контентом, и, значит, нечего показывать. Поскольку эти WYSIWYG-программы не подходят для редактирования PHP-кода, все, что будет отображено, — пустые таблицы.
Рис. 6.11. Dreamweaver не очень подходит для непосредственно загруженных шаблонов
Один из полезных методов преодоления данной проблемы заключается в разработке "игрушечных" файлов шаблона вместе с графикой и другими элементами дизайна (например, таблицами стилей, заголовками, обычными таблицами). Откройте ваш сайт в браузере и выполните команду Файл | Сохра-
нить как для сохранения HTML-версии страницы вместе со всей графикой и вспомогательными файлами. После сохранения Web-страницы в локальном каталоге будут все ее файлы, включая таблицы стилей, используемые страницей (рис. 6.12).
Рис. 6.12. CSS-файлы страницы могут быть найдены в каталоге, в который вы сохранили страницу
Данные файлы можно передать Web-дизайнеру для редактирования и форматирования. Если Web-дизайнер не будет добавлять новые CSS-файлы без согласования с разработчиком, у него есть практически полная свобода изменений расположения элементов страницы, цветовой гаммы, графики. Как только визуальное проектирование будет завершено, измененные файлы должны быть переданы обратно Web-разработчику, который сможет интегрировать их обратно в шаблон.
Dreamweaver
Dreamweaver— это популярный HTML-редактор, и это хорошо. Возможность традиционного редактирования страницы, а также наличие библиотеки шаблонов, делает этот редактор превосходным для ручного администрирования сайта. В случае с Joomla! вы будете использовать минимум функций этого приложения, поскольку все управление контентом производится динамически системой Joomla!.
С помощью Dreamweaver вы можете редактировать таблицы стилей (CSS- файлы), РНР-код, HTML-код; возможно Dreamweaver— это лучший редактор для Joomlal-шаблонов У программы есть полезные дополнительные
функции вроде загрузки по FTP измененных файлов, что делает эту программу неотразимой для использования с Joomlal. Dreamweaver доступен для платформ Windows и Macintosh.
На рис. 6 13 изображен Dreamweaver, в который загружена "игрушечная" версия одного из моих шаблонов.
Рис. 6.13. Теперь Dreamweaver превосходно отображает шаблон
Microsoft Expression Web
На протяжении многих лет Microsoft FrontPage был довольно популярным редактором, поскольку поставлялся вместе с офисным пакетом Microsoft Office. По своим функциям этот редактор, конечно же, отставал от Dreamweaver. Затем Microsoft заменила FrontPage более мощным Web-редактором — Expression Web, который по своим функциям сравним с Dreamweaver. Теперь пользователи снова могут вернуться к продукции Microsoft.
Expression Web прекрасно справляется с отображением Joomlal-шаблона. Также у этого редактора очень мощные средства редактирования HTML-кода (рис. 6.14). К сожалению, Expression Web работает только в Windows, не-
смотря на огромную армию Web-дизайнеров, работающих в Mac OS Также программа не поддерживает PHP, а вместо этого умеет работать только с его альтернативой от Microsoft— ASP. Эти два недостатка делают программу бесполезной для пользователей Joomla!.
Рис. 6.14. Просмотр HTML-кода в окне Expression Web
Nvu/KompoZer
Nvu (сокращение от EN-view)— бесплатная, свободно распространяемая альтернатива популярным коммерческим программам, доступная на сайте www.nvu.com. Хотя Nvu по своим возможностям не дотягивает до уровня коммерческих программ, его функций вполне достаточно для основной работы с шаблонами. Nvu доступен для всех трех основных платформ (Linux, Windows и Mac OS). Лучше всего использовать Лоот!а!-плагин для Nvu, который называется Nvu Template Builder, который можно загрузить с сайта www.open4g.com.
Примечание переводчика
На сайте www.open4g.com данный плагин называется Joomla! Templater Builder и доступен в разделе Download. Вам нужно выбрать русскую версию, а именно файл joomla_open4gtplbuilder-ruRU.xpi. А русскую версию редактора Nvu можно загрузить по адресу http://nvu.mozilla-russia.org/.
Как только вы загрузите плагин, выполните команду меню Nvu Инструменты | Расширения и установите загруженный плагин. После его установки ваше окно Расширения будет выглядеть так, как показано на рис. 6.15.
Рис. 6.15. Менеджер расширений покажет только что добавленное расширение
Примечание переводчика
Установленное расширение станет доступным только после перезапуска Nvu, поэтому сразу после установки плагина программу нужно перезапустить
Установленный плагин чрезвычайно полезен для Joomlal-разработчика, поскольку автоматизирует выполнение нескольких утомительных Joomla!- задач. Плагин может генерировать прототип шаблона, управлять файлом templateDetails.xml, а также на его панели инструментов вы найдете кнопки (рис. 6.16), вставляющие соответствующий Joomlal-макрокод для часто используемых модулей и РНР-код.
Казалось бы, это лучший редактор для Joomla!, но у программы есть несколько недостатков. На момент написания этих строк у программы было множество ошибок, и она имела ограниченную поддержку CSS. Если эти недостатки были устранены к моменту чтения этой книги вами, тогда Nvu можно назвать лучшим редактором шаблонов для Joomla!.
Примечание
Долгое время Nvu не модернизировался, но поскольку Nvu — это открытый проект, другой разработчик принялся исправлять существующие в программе ошибки. Новая версия программы получила название KompoZer и доступна по адресу http://www.kompozer.net. Если не считать исправления некоторых ошибок, программа мало чем изменилась, и KompoZer — по сути, это тот же Nvu.
8 Зак 468
Рис. 6 16. Редактор Nvu
Редакторы кода
Редакторы кода предназначены для редактирования кода, а не дизайна. Хотя эти программы и могут пригодиться дизайнерам, они ориентированы на редактирование кода. При создании шаблонов Joomla! могут пригодиться три программы: Eclipse, jEdit и Leo. Все три программы обладают расширенными средствами поиска/замены (в том числе с использованием регулярных выражений) и средствами управления кодом (проектом). У всех трех программ есть возможность проверки кода и возможность расширения путем установки плагинов.
Eclipse — наиболее мощный редактор, но он ориентирован на разработку больших Java-проектов, поэтому его использование для небольших проектов не всегда целесообразно. jEdit превосходно справляется с редактированием отдельного файла, но ему не хватает инструментов для работы с проектом. Leo очень неплох в управлении проектом и его документировании, но обладает невзрачным пользовательским интерфейсом.
Примечание переводчик а
Для редактирования PHP-кода я использую Zend Studio— программу, обладающую подсветкой синтаксиса, средствами проверки PHP-кода и его форма-
тирования, возможностью автодополнения кода (когда программа "пишет” код за вас), поддержкой FTP и, конечно же, инструментами для работы с проектами. Превосходная программа для PHP-разработки, в том числе и для Joomla!- разработки. Из недостатков могу отметить лишь не очень шуструю работу программы в некоторых режимах (например, при загрузке), но это компенсируется обилием полезных функций. Правда, программа является коммерческой, но, поверьте, она стоит своих денег. К тому же можно купить обычную (а не профессиональную) версию, которая стоит в три раза дешевле.
Eclipse
Eclipse— это среда разработки программного обеспечения (Integrated Development Environment, IDE), разработанная IBM для линейки продуктов Visual Age. Позже IBM передала лицензию на Eclipse фонду Eclipse Foundation (некоммерческая организация) и сделала исходный код открытым. Eclipse (vv5vw.eclipse.org) стала открытой средой, поддерживающей много языков программирования: Java, PHP, Python, C++, Cobol и др. Благодаря модульной архитектуре, с помощью плагинов можно существенно расширить возможности программы.
Eclipse очень популярна среди Joomlal-разработчиков, поскольку обладает фантастическим интерфейсом, превосходно подходящим для разработки
Рис. 6.17. Eclipse —отличная среда для ваших РНР-проектов
таких систем, как Joomla!. Кстати, большинство разработчиков Joomla! используют именно Eclipse.
Одна из изюминок программы, которая наверняка понравится Joomla!- разработчику, — это менеджер проекта PHP IDE (рис. 6.17).
Наиболее полезна Eclipse для разработки расширений, что будет продемонстрировано в гчаве 13. Для создания шаблонов Eclipse слишком сложна для обычного Joomlal-дизайнера или разработчика. Eclipse ориентирована на многопользовательскую работу с проектами кода, а не на редактирование отдельных файлов.
jEdit
jEdit (www.jedit.org)— написанный на Java, мощный и свободно распространяемый редактор кода, доступный для всех платформ, на которых может запускаться Java. Хотя у jEdit достаточно функций, существует сообщество разработки для jEdit, которая очень часто выпускает различные плагины, чем делает jEdit одним из самых мощных редакторов. Для Joomlal-разработчика весьма полезны плагины, реализующие следующие функции:
редактированиеCSS;
проверка синтаксиса PHP;
сравнение файлов с выделением цветом различий;
поддержка FTP;
форматирование кода;
парсинг PHP;
XML-форматирование
и многое другое.
Для основной работы с PHP я использую jEdit из-за огромного количества доступных плагинов. На рис. 6.18 изображен jEdit. в котором открыт CSS- файл одного из шаблонов. Специальный CSS-плагин отображает свойства выбранного стиля div#iogo, который можно редактировать с помощью выпадающих меню.
У jEdit есть два основных недостатка:
поскольку он написан на Java, то может запускаться на любой платформе, но в то же время наблюдаются проблемы с производительностью. Я наблюдал такие проблемы и у других Java-приложений, но я не специалист в этой области, поэтому не могу однозначно назвать причину проблемы:
огромное количество плагинов означает, что в базе у этого редактора довольно мало функций Некоторые функции, например, обработка XML,
реализованы соответствующим плагином достаточно "криво", в то время как у других текстовых редакторов (например, у UltraEdit) обработка XML поддерживается самим редактором (без плагинов) и реализована более изящно.
Рис 6.18. Одно из преимуществ jEdit — огромный выбор плагинов, как этот CSS-редактор
Однако эти недостатки малосущественны, по сравнению с мощью и гибкостью приложения.
Leo
Впервые мы познакомились с Leo (Literate Editor with Outlines) в главе 4. когда изучали планирование структуры Joomlal-сайта. Leo— это не просто программа для создания схем. Leo может быть использован как для разработки, так и для документирования программных продуктов. У Leo есть возможность подсветки синтаксиса кода и функция связи проекта с внешними файлами для создания виртуальных схем.
Для примера представим, что вы разрабатываете сложную HTML-страницу. В обычном редакторе вроде jEdit вы можете просто загрузить файл и отредактировать его. Но что делать, если файл очень длинный, скажем, страниц 20? Хотя это кажется нереальным для HTML-страницы, но вполне нормально для сложных PHP-проектов, особенно, если они содержат JavaScript-код.
Длинную HTML-страницу можно поделить на несколько частей, например, заголовок, скрипты, колонка 1, колонка 2, колонка 3 и нижний колонтитул. В Leo можно "виртуально" поделить файл на части для комфортной работы с ним На рис. 6.19 показан пример такого разделения. Я взял шаблон Joomla! и разделил его на разделы. Стрелки на рисунке показывают связь разделов схемы с соответствующими фрагментами кода.
Код начинается с раздела «License». На схеме я с помощью стрелки указал узел, содержащий раздел License. В тело узла вы можете добавить абсолютно любой текст.
Рис. 6.19. Leo может виртуально разбивать файл на разделы
Следующий раздел — «header». Щелкните на узле раздела схемы, и вы увидите содержимое этого раздела (рис. 6.20). В панели кода изображен только код выбранного раздела, что позволяет сконцентрироваться на редактировании определенного раздела большого файла.
Ниже раздела header находится раздел «body», который в свою очередь разбит на подразделы (рис. 6.20).
Думаю, возможности Leo по организации вашего проекта видны невооруженным взглядом. Наверное, вы заметили, что в схему добавлен всего один
файл. На практике вы можете добавить в схему все файлы проекта для полного управления проектом. Кроме того, любые узлы схемы, имя которых начинается директивой eignore, не будут сохранены в результирующий файл. Это означает, что вы можете документировать проект в процессе разработки кода и без отделения документации от кода.
Рис. 6.20. Панель кода отображает только код выбранного раздела header
Далее в этой книге вы увидите другие примеры использования Leo для оптимизации Joomlal-проектов. Мощь Leo не может быть недооценена. Как вы уже знаете, Leo написан на языке программирования Python, поэтому у вас есть свободный доступ к ядру Leo для автоматизации практически любой задачи.
Создание настоящего шаблона
До этого мы изучили базовую структуру шаблона, создав с нуля простой шаблон Hello Joomla!. Но большинство шаблонов создается из уже существующих шаблонов или из прототипов шаблонов. Это намного проще, чем заново изобретать колесо. В этом разделе мы поговорим о создании нового
шаблона на базе уже существующего. Мы разработаем шаблон-болванку для сайта LoanStaircase, знакомого нам по главе 4.
Части мозаики: структура шаблона
Чтобы максимально упростить структуру шаблона, мы использовали всего два самых необходимых файла. Для большинства шаблонов, однако, нужны как минимум три файла:
templateDetails.xml — описывает файлы Joomlai-шаблона. Чуть раньше мы уже создавали такой файл для нашего шаблона Hello Joomla!. Полная версия этого файла содержит намного больше параметров, чем было показано ранее;
index.php — содержит основной HTML/PHP-код шаблона, управляющий выполнением сайта. Файл index.php шаблона Hello Joomla! был максимально упрощен и содержал минимум информации, необходимой для правильного отображения страницы:
template.css — содержит параметры стилей (шрифты, границы, позиционирование и др.) главной страницы. Этот файл может перезаписывать существующие наборы стилей для разделов, категорий и отдельных статей.
Эти три файла есть практически в каждом настоящем шаблоне.
Со в е т
Когда вы создадите свой шаблон и вам захочется его распространять (просто выложить на сайте или даже продавать), не забудьте включить в шаблон лицензию. определяющую, что пользователь может, а что не может делать с шаблоном. Я рекомендую свободную лицензию GNU General Public License (GPL), с текстом которой можно ознакомиться в Википедии (http://en.wikipedia.org /wiki/GNU_Public_License).
На рис. 6.21 мною создана простая диаграмма основных частей дизайна Joomla!, с помощью выносок отмечены названия стилей, отвечающих за отображение каждой части дизайна.
Кроме вышеупомянутых файлов большинство шаблонов содержит:
миниатюрное изображение шаблона— файл с именем template thumbnail.png и размерами изображения 140x90, который должен находиться в корневом каталоге шаблона. Данный файл используется Менеджером шаблонов для предварительного просмотра шаблона, когда вы подводите курсор мыши к имени шаблона;
каталог CSS — отдельный каталог \css содержит файлы стилей, используемые шаблоном. Главный файл стилей шаблона обычно называется template.css;
♦ каталог images — данный каталог содержит графические файлы, исполь
зуемые шаблоном.
Рис. 6.21. Стили Joomlal-страницыРис. 6.21. Стили Joomlal-страницы
Рис. 6.21. Стили Joomlal-страницы
Рис. 6.21. Стили Joomlal-страницы
Имена каталогов никак не контролируются Joomla! (т. е. вы можете выбирать любые имена для каталогов шаблона), но следующая схема имен может сделать шаблон более понятным для дальнейшего изменения. Такие имена каталогов имеются практически в каждом шаблоне.
Для распространения шаблона все его файлы нужно запаковать в ZIP- или TAR-архив. Joomla! поддерживает оба типа архива и может автоматически распаковать файлы шаблона в каталог \templates. что позволяет вам установить новый шаблон с помощью интерфейса администратора Joomla! вместо закачки файлов шаблона на сайт с помощью FTP-клиента.
Прежде чем приступить к созданию шаблона, вам нужно создать пустые файлы и каталоги в каталоге \templates. Поскольку наш будущий шаблон будет выводить контент в две колонки, я назвал его главный каталог \tmpITwoCol. Итак, я создал три каталога:
\templates\tmplTwoCoI;
\templates\tmplTwoCol\css;
\templates\tmplTwoCol\images.
Пустые файлы index.php и tempIateDetails.xml поместите в корневой каталог шаблона (\templates\tmplTwoCol). Когда вы приступите к проектированию шаблона, вы поместите код, контент и картинки в соответствующие каталоги.
Пошаговое создание шаблона
Шаблон Joomla! — это комбинация трех ключевых элементов: графики, PHP/HTML-кода и одной или нескольких таблиц стилей. Работая над созданием шаблона, вам необходим путь, по которому вы будете следовать при создании новых шаблонов.
Основные этапы создания шаблона следующие:
выбор цветовой гаммы сайта;
создание таблицы стилей, соответствующей выбранной цветовой гамме;
выбор основных шрифтов, используемых для отображения контента;
создание графических файлов;
создание файла index.php;
создание файла templateDetails.xml.
После создания шаблона, вы можете в любое время модернизировать его. Поскольку страницы сайта генерируются Joomla! динамически, изменения, внесенные в шаблон, будут немедленно отображены на всех страницах сайта.
Выбор цветовой гаммы
Большинство людей, не знакомых с Web-дизайном, думают, что для создания профессионального дизайна нужно много знаний, или же создают сайт без обращения всякого внимания на его внешний вид. В этом разделе мы попытаемся справиться с этими двумя крайностями. Следуя основным рекомендациям, вы можете создать профессионально выглядящий Web-сайт, не тратя годы на изучение Web-дизайна.
Один из самых важных аспектов дизайна сайта— это его цветовая гамма. У вашего сайта может быть минимум графики, но если шрифты и цветовая гамма правильно подобраны, он будет выглядеть профессионально.
Цветовая модель RGB
Прежде всего, вам нужно понять несколько основных способов представления цвета. Наиболее часто используемый в компьютерах метод называется RGB (Red, Green, Blue — красный, зеленый, синий).
При использовании RGB компьютер "помнит" цвет каждой точки (каждого пиксела), отображаемой на экране. Цвет задается тремя числами, каждое число представляет долю красного, зеленого или синего в цвете точки. Каждое число может быть в пределах от 0 до 255. У полностью красной точки цвет задается значением (255, 0, 0), у полностью синей — (0, 0, 255). Чтобы получить желтый цвет, нужно смешать красный и зеленый— (255, 255, 0). Для
получения любого другого цвета нужно смешать три базовых цвета в определенной пропорции.
Модель RGB очень удобна для компьютера, но сложна для человека, поскольку сложно запомнить различные пропорции, необходимые для получения нужного цвета. Чтобы упростить нам жизнь, программисты создали специальные инструменты для выбора цвета (рис. 6.22). Но, даже используя такой инструмент, сложно сказать, какие цвета нужно смешать, чтобы получить то, что вам нужно.
Рис. 6.22. Инструмент выбора цвета
Выбор основного цвета для вашего сайта
Если вы посмотрите на самые популярные сайты, вы увидите, что цветовая гамма достаточно проста. Можно выбрать пару основных цветов, работающих вместе, а далее использовать различные оттенки этих цветов и тем самым создать хорошую цветовую гамму. Что означает "работают вместе"? Обычно вы выбираете темный и светлый цвета, чтобы обеспечить хороший контраст. Вот некоторые обычные пары цветов:
черный и белый;
черный и желтый;
синий и желтый;
красный и зеленый;
красный и синий;
фиолетовый и желтый;
красный и белый.
Одного выбора основных цветов недостаточно — ваш сайт будет выглядеть просто и непрофессионально. Вам нужно использовать различные оттенки выбранных цветов, чтобы создать завершенную с точки зрения дизайна цветовую гамму. Выбор оттенков в случае с RGB — нелегкая задача, поэтому временно мы вынуждены оставить эту модель в покое.
Совет
Вам нужна отличная цветовая модель? Посмотрите на спортивные логотипы! Профессиональные спортивные организации вроде NFL и NBA тратят много средств на выбор двух-трех работающих вместе цветов, которые можно использовать в качестве основных цветов эмблемы команды. Цвета эмблем некоторых спортивных команд помогут вам найти цвет для вашего сайта.
Оттенок-насыщенность-яркость
Цветовая модель RGB превосходна для компьютеров, но для Web-дизайнеров больше походит модель HSB (Hue, Saturation, Brightness— оттенок, насыщенность, яркость). Вместо смешивания трех основных цветов, модель HSB предлагает производить выбор цвета совсем другим способом.
Оттенок— определяет главный цвет, например, синий, зеленый, фиолетовый, оранжевый и т. д. Значение цвета подобно указателю на радуге. Самое низкое значение — это красный цвет, значение чуть выше — оттенок желтого, далее идет синий и т. д.
Насыщенность— определяет, сколько цветов должно присутствовать. Сильно насыщенный цвет будет слишком ярким, подобно тем. которые используются в игрушках. Если насыщенность минимальная, цвет будет казаться серым. Думайте о цвете как о солнечном свете — рано или поздно, все цвета станут ненасыщенными.
♦ Яркость (или значение) — определяет яркость цвета. Если яркость равна О, мы получим полностью черный цвет. Если установить максимальную яркость, то невозможно сказать, какой цвет получим — это зависит от оттенка и насыщенности. Чтобы понять, как работает яркость, представьте цветную бумагу (любого цвета и любой насыщенности) в темной комнате. Когда яркость низкая, комната кажется почти черной, как и цветной лист бумаги. С увеличением света в комнате, вы увидите, как цвет становится четче и четче, пока вы не достигнете максимальной яркости— тогда вы четко увидите цветную бумагу.
Вы можете спросить, как модель HSB поможет вам при создании дизайна вашего Joomla’-сайта. Все очень просто. Изменяя яркость выбранного цвета, вы можете получить совершенно другой оттенок базового цвета.
Светлая или темная цветовая тема?
Возможно, вы уже выбрали пару цветов, но пока еще не определились, как будете их использовать на вашем сайте. Два основных варианта — светлая или темная схема сайта.
Предположим, что вы выбрали черный и белый цвета. Если вы сделаете текст черным, это означает, что большая часть экрана будет белой, подобно листу белой бумаги. Ваш сайт будет выглядеть солнечно, ярко, легко. Такая цветовая тема подходит для туристического сайта, сайта мини-пекарни или поисковой машины вроде Google. Но она совсем не подходит для сайта джаз- клуба или популярной "стрелялки" (видеоигры).
С другой стороны, если вы сделаете текст белым, все оставшееся пространство будет черным. Совсем другой эффект, не так ли? Сайт выглядит солидно и даже немного таинственно. Такая цветовая тема подойдет для изготовителя солнечных очков или же для инвестиционного банка. Но это не совсем хороший выбор для, скажем, сайта знакомств.
Но, скорее всего, вы выбрали другие цвета, например, ярко-желтый и темносиний. Если текст сделать синим, а фон — желтым, мы получим светлую тему. И наоборот, желтый текст на синем фоне — это темная тема.
Сначала определите, как будут цвета использоваться на вашем сайте, а после этого вы сможете определиться с необходимыми оттенками.
Использование MSB для выбора цветов сайта
Теперь, когда вы выбрали некоторые цвета и вообще понимаете, как они должны использоваться в вашем шаблоне, можете создать простую HTML- страничку, которая поможет выбрать оттенки вашего сайта, благодаря чему ваш сайт будет выглядеть профессионально. Данная страничка будет показывать цвета и конвертировать значения RGB в HSB и обратно.
Откройте ваш текстовый редактор и введите код, представленный в листинге 6.1.
Листинг 6.1. RGB/HSB-конвертер цветов
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScriptl.2" type="text/javascript">
<! —
function rgbChange () (
updateSample();
}
function testVal(testField) (
if(isNaN(testField)) { testField = 0; }
if(testField<0)( testField = 0; }
if(testField>255) ( testField = 255; ) return (testField);
}
function toHexStr(decVai) (
if(decVal<16) strVal="0";
else strVal="";
strVal += (decVai-0).toString(16);
return(strVal);
)
function updateSample() (
r = testVal(document.frmRGB.R.value)
g = testVal(document.frmRGB.G.value)
b = testVa1(document.frmRGB.В.value)
hexStr = "#" + toHexStr(r) + toHexStr(g) + toHexStr(b); document.frmHex.hexVal.value = hexStr;
document.bgColor=hexStr;
}
function convertHSBO (
h = document.frmHSB.H.value/360
s = document.frmHSB.S.value/100
v = document.frmHSB.B.value/100
hi = parselnt(h*6);
f=l;
var_h - h * 6;
var_i = Math.floor(hi),
p = v*(1-s);
q = v*(1-s*(var_h — var_i));
t = v*(1-s*(1 — (var_h — var_i)));
switch(hi)(
case 0: r=v; g=t; b=p; break;
r=q; g=v; b=p; break;
r=p; g=v; b=t; break;
r=p; g=q; b=v; break;
r=t; g=p; b=v; break;
r=v; g=p; b=q; break;
}
document.frmRGB.R.value = Math.round(r*255);
document.frmRGB.G.value = Math.round(g*255);
document.frmRGB.B.value = Math.round(b*255); updateSample();
}
function convertRGB() (
r = testVal(document.frmRGB.R.value)/255
g = testVal(document.frmRGB.G.value)/255
b = testVal(document.frmRGB.B.value)/255
v = Math.max(r, g, b) ;
myMin = Math.min(r, g, b) ;
if(v=0) s=0;
else s=l-(myMin/v) ;
i f (v=myMi n) h=0;
else
switch(v) { case r:
if(g>=b) h=60*((g-b)/(v-myMin));
else h=60*((g-b)/(v-myMin))+360; break;
case g:
h = 60*((b-r)/(v-myMin))+120;
break;
case b:
h = 60*((r-g)/(v-myMin))+240; break;
}
document.frmHSB.H.value = Math.round(h);
document.frmHSB.S.value = Math.round(s*100);
document.frmHSB.B.value = Math.round(v*100);
}
—>
</script>
</HEAD>
<BODY>
<H1>RGB/HSB Convert</Hl>
<table width="200" border="l" bgcolor="#FFFFFF">
<tr> <td>
<form name="frmRGB" id="frmRGB">
<label>R (0-255)
cinput name="R" type="text" id="R" accesskey="R"
onKeyUp =javascript:rgbChangeO; value="255" size="5">
</labelxp>
<label>G (0-255)
cinput name="G" type="text" id="G" accesskey="R"
onKeyUp =javascript:rgbChangeO; value="0" size="5"> c/label>c/pxp> clabel>B (0-255)
cinput name="B" type="text" id="B" accesskey="R"
onKeyUp =javascript:rgbChange(); value="0" size="5"> c/labelx/pxp> clabel>
cinput name="cmdConvertRGB" TYPE="button"
value="Convert >" onClick=javascript:convertRGB();> c/labelx/p>
</formx/tdxtd>
Cform name="frmHSB" id="frmHSB">
clabel>H
cinput name="H" type="text" id="H" size="5">
c/labelxp>
clabel>S
cinput name="S" type="text" id="S" size="5">
c/labelx/pxp>
ciabel>B
cinput name="B" type="text" id="B" size="5">
c/labelx/pxp>
ciabel>
cinput name="cmdConvertHSB" TYPE="button"
value="Convert Sit;" onclick=javascriptzconvertHSBО> c/labelx/p> c/formx/tdx/tr> ctrxtd>
cform action="" method="post" name="frmHex” id="frmHex"> clabel>Hex
cinput name="hexVal" type="text" id="hexVal"> c/label> c/form>c/td> ctd> c/td> c/tr> c/table> c/BODY>c/HTML>
Сохраните этот файл на вашем жестком диске под именем
RGH_HSB_converter.html. Откройте ваш браузер, и вы увидите форму, по-
добную изображенной на рис. 6.23. Когда вы будете изменять значения красного, зеленого и синего цветов, фон страницы будет автоматически изменяться в соответствии с введенными значениями.
RGB/HSB Convert
R(0-255) 240Hi30
G(0-255) 230S 8
В(0-255) 220, В 94
[* Convert > j। Convert < ]
Hex ffOeOdc
Рис. 6 23. RGB/HSB-конвертер цветов: конвертирует и отображает цвета
Введите RGB-значения первого цвета вашей цветовой гаммы. Обратите внимание, что в поле Нех появится шестнадцатеричное значение введенного цвета, которое вам пригодится, когда будете вставлять код цвета в ваш Joom la!-шаблон.
В качестве темного цвета я выбрал зеленый цвет. Его RGB-значение записывается так (88, 161, 85), а шестнадцатеричное значение выглядит как #58а155. В качестве светлого цвета я выбрал обычный белый цвет.
Нажмите кнопку Convert >, и в полях HSB вы увидите числа, соответствующие выбранному цвету в модели HSB. В случае с первым цветом моей темы были сгенерированы значения (118, 47, 63). И тут начинается самое интересное. Я знаю, что мне нужна более темная версия выбранного цвета для создания теней. Поэтому я понизил яркость до 26. Думаю, мне такой цвет подойдет. После того как я установил значение 26, HSB-значение выглядело как (118, 47, 26).
Теперь нажмите кнопку Convert <, чтобы преобразовать цвет обратно в RGB- формат и получить новое RGB-значение (и соответствующее ему шестнадцатеричное значение). В результате я получил RGB-значение (36, 66, 35) и шестнадцатеричное значение #244223. Вы видите, как сложно найти нужный цвет, используя RGB-модель?
Откройте ваш текстовый редактор или текстовый процессор и сделайте таблицу цветов (табл. 6.1). Заполните параметры вашей цветовой схемы. Я оста-
вил незаполненными поля для светлого цвета, который может использоваться в качестве подсветки.
Таблица 6.1. Простая таблица темы поможет вам построить свой шаблон
Hex
RGB
HSB
Theme Color 1 (background)
#58a155
88, 161, 85
118,47,63
Theme Color 1 Dark
#244223
36, 66. 35
118,47,26
Theme Color 1 Bright
Theme Color 2 (text)
#fafffa
250, 255, 250
120, 2, 100
Theme Color 2 Dark
Theme Color 2 Bright
Теперь у вас есть ваша цветовая гамма для вашего шаблона! Данные цвета вам нужно использовать при создании картинок для сайта и при разработке таблиц стилей (CSS).
Таблицы стилей CSS
После выбора цветовой гаммы вы можете приступить к разработке дизайна сайта. Большинство графических элементов сайта управляются таблицей стиля, загружаемой шаблоном.
Вместо использования собственного языка форматирования шаблонов, Joomla! использует существующие и популярные стандарты. Стандарт CSS был принят всемирным консорциумом W3C (World Wide Web Consortium).
Если вы уже знакомы с CSS, то можете пропустить этот раздел и перейти к чтению следующего. Если же вы никогда не использовали CSS, обязательно внимательно ознакомьтесь с содержимым этого раздела, иначе вы не сможете создать хороший Joomla’-шаблон. Технология CSS — одна из лучших технологий, использующихся при создании сайта. Далее мы поговорим об использовании CSS.
Что такое CSS?
Изначально CSS была предназначена для решения проблем совместимости и универсальности способов форматирования HTML-страниц. С развитием WWW код HTML-страниц стал очень сложным — многочисленные шрифты, цветовые схемы, форматирования таблиц, абзацев— все это сделало код HTML-страницы неуправляемым. С ростом Web-узла на нем появлялись тысячи страниц, что делало задачу изменения дизайна просто невозможной. С приходом CSS все изменилось.
CSS-файл хранит определения текстовых и графических элементов (заголовки, ссылки и т. д.) Например, определение стиля Заголовка 1, при котором будет использоваться шрифт Verdana размером 18 пикселов и красный цвет, будет выглядеть так:
.hl (
font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size:18px;
color: #FF0000;
}
Любая Web-страница, использующая данное определение стиля, для тега <ы> получит описанное выше форматирование (Verdana, 18 пикселов и красный цвет). Точка перед именем стиля (.) означает, что стиль должен переопределить существующий стиль тега <ы>. Вы можете описать и собственный стиль. Например, можно создать свой стиль mySmaii.
.mySmall (
font-family: "Times New Roman", Times, serif;
font-size: 6px;
vertical-align: top; margin: 3px;
}
Для форматирования абзаца с помощью данного стиля вам нужно указать атрибут class в теге абзаца так:
<р class=”mySmall">He6oabmoft текст</р>
В большинстве случаев определения стилей хранятся не в коде HTML- страницы (хотя они могут быть включены в состав страницы с помощью тега <style>), а в отдельном файле с расширением css. Поскольку стили вынесены в отдельный файл, в код HTML-страницы нужно добавить инструкцию, указывающую, в каком именно CSS-файле нужно искать стили. Браузер автоматически получит этот CSS-файл и отформатирует страницу в соответствии с определенными в нем стилями.
Примечание
Если вы вообще не знакомы с HTML и информация в этой главе для вас непонятна, просто подождите пока. Практически весь процесс создания шаблона можно осуществить с помощью специальных утилит (вроде jEdit с CSS- плагином), интерфейсы которых помогут вам автоматизировать много задач
Общие для всех страниц сайта CSS-файлы — это не единственное преимущество технологии CSS. Во время создания CSS компании Microsoft и Netscape боролись за господство на рынке браузеров. Эта конкуренция, а также многочисленные версии браузеров от этих компаний, и возможность работы брау-
зеров на разных платформах привели к тому, что сайт в разных браузерах и на различных платформах мог отображаться по разному, например, из-за отсутствия на той или иной платформе необходимых шрифтов.
Чтобы решить эту проблему с помощью CSS. можно создать несколько вариантов форматирования — для разных платформ и браузеров. Например, ваш CSS-файл может содержать стили, которые будут использованы только при просмотре страницы на сотовом телефоне. Данная возможность идеально подходит для CMS, где содержимое сайта отображается с помощью многочисленных шаблонов.
Использование CSS в Joomlai-шаблонах позволяет полностью разделить контент и дизайн. Контент (статьи) будет храниться в базе данных, а дизайн в CSS-файлах. При этом один стиль может быть заменен другим (например, в зависимости от типа браузера). Понятно, что сайт предстанет в новом виде без модификации контента.
Совет
При создании шаблона вы должны поставить для себя одну цель — минимальное использование таблиц для разметки. Разметкой гораздо удобнее управлять с помощью CSS-файлов. Использование CSS для разметки сайта позволит лучше оптимизировать сайт для поисковых машин, которые будут корректно интерпретировать контент сайта.
У стандарта CSS много функций, одна из самых полезных — подбор альтернативных шрифтов, что позволяет корректно отображать Web-страницу, вне зависимости от монитора, на котором она отображается— на 21-дюймовой панели или на 3-дюймовом экране сотового телефона.
Поисковые машины и CSS
Другая причина использования CSS заключается в поисковой оптимизации. Компании-владельцы поисковых машин вроде Google не могут себе позволить нанимать отдельных сотрудников для чтения и индексирования десятков миллионов Web-страниц. Вместо этого поисковые машины используют специальную технологию (она называется Web-пауками^, которая позволяет считывать Web-сайт и создавать внутреннее резюме каждой страницы сайта. Это резюме индексируется и потом используется для поиска страниц по запросу пользователя.
Чем понятнее Web-пауку будет ваша страница, тем больше шансов, что движок поисковой машины поймет и проиндексирует ее, следовательно, больше посетителей зайдет на вашу страницу. Если ваша страница будет менее машинно-читаема, она будет практически "невидимой" движку поисковой машины. Самый простой пример "невидимости" — это графический баннер, на котором написано "XYZ Company". Поисковая машина не может прочитать
картинку, она читает только текст. Даже если на картинке название компании будет написано 5-дюймовыми буквами, оно останется невидимым для Web- паука. Если пользователь введет запрос "XYZ Company", он не сможет найти вашу страницу.
Если Web-дизайнер предусмотрительный, он добавит атрибут alt, описывающий картинку. Теперь поисковая машина "увидит" картинку, подписанную текстом "XYZ Company". Аналогично, можно задать альтернативный текст для разделителей, ссылки на главную страницу и других элементов сайта, что обязательно обратит внимание Web-паука.
Если бы наша страница использовала CSS, можно было бы вместо баннера определить текст "XYZ Company" как стиль Заголовка 1. Поисковая программа считает Заголовок 1 одной из самых главных частей страницы, соответственно, это бы подняло рейтинг страницы при поиске. В CSS-файле вы можете определить параметры Заголовка 1 — шрифт, цвет, размер и т. д., чтобы ваша страница выглядела более эффектно.
Приведенный пример не очень реалистичный, поскольку большинство компаний предпочитают графические баннеры Впрочем, подробнее о важных элементах сайта и поисковых машинах мы поговорим в главе 12.
к как же быть с отдельными статьями? У многих Web-сайтов заголовки статей и даже разделов — графические. Если бы они вместо этого использовали CSS, Web-паук более качественно проиндексировал бы страницу. А это означает больше посетителей и, возможно, больше прибыли для компании XYZ.
CSS и шаблон Joomla!
После введения в CSS можно приступить к изучению CSS-файла Joomla!. чтобы определиться, что нужно изменять, а что — нет. Стандартный шаблон rhukmilkyway содержит более 20 различных стилей, определяющих внешний вид сайта.
В листинге 6.2 представлены некоторые стили из этого файла. Обратите внимание, что у каждого стиля относительно немного параметров. Стили являются иерархическими. Так стили ссылок были определены в первом стиле (a:link и a:visited), все остальное представление страницы будет использовать эти стили, если они не будут явно перезаписаны.
a:link, a:visited {
color: #1В57В1; text-decoration: none; font-weight: normal;
}
#page_bg ( height: 100%; padding: Юрх 0; margin-bottom: Ipx; background: #0C3A6D; } div.center ( text-align: center; ) div#wrapper ( height: 100%;
background: #f7f7f7 url(../images/mw_shadow_blue_l.png) 0 0 repeat-y; margin-left: auto; margin-right: auto; min-width: 750px; max-width: 1050px; }
div#wrapper_r { background: url(../images/mw_shadow_blue_r.png) 100% 0 repeat-y; }
div#header ( background: url(../images/mw_header_blue_t.png) 0 0 repeat-x; }
div#header_l (
background: url(../images/mw_header_blue_t_l.png) 0 0 no-repeat; position: relative;
}
.ol-foreground ( background-color: #f6f6f6; }
.ol-background ( background-color: #666;
} .ol-textfont ( font-family: Arial, Helvetica, sans-serif; font-size: lOpx;
Как вы можете видеть, стили задают каждый аспект дизайна — от шрифтов до параметров границ (margin-*). Вы можете определить основные параметры разметки, включая столбцы, абсолютное позиционирование некоторых элементов (например, картинок) и плавающие блоки. К сожалению, много шаблонов (и rhukmilkyway— не исключение) не используют все возможности CSS для разметки страниц.
Вместо CSS многие шаблоны используют таблицы для разметки страницы. Вот пример разметки с помощью таблиц:
<table>
<tr>
<td>Cтoлбeцl</tdxtd>Cтoлбeц2</td><td>CтoлбeцЗ</td>
</tr>
<tr>
<td>Глaвнaя</tdxtd>Teкcт_cтaтьи</tdxtd>Элeмeнтl</td>
</tr>
<tr>
<td>FAQ</tdxtd>Элeмeнт2</tdxtd>ЭлeмeнтЗ</td>
</tr>
</table>
Применение таблиц довольно проблематично. Во-первых, нужно постоянно работать с кодом (особенно если используются разделители картинок), а во- вторых, разметка в виде таблиц затрудняет восприятие кода Также такая разметка сложна для восприятия поисковыми машинами, что понижает вероятность нахождения вашей страницы поисковой машиной. Кроме того, изменение разметки требует тщательной ревизии кода.
Создать три столбца с использованием CSS гораздо проще:
#coll [float:left;width:20%;}
#со12 (float:left;width:60%;}
#со13 {float:left;width:20%;}
Код, помещающий контент в соответствующие столбцы, будет выглятеть так:
<div 1Д="со11">СтолбецКЬг>Главная<Ьг>ЕА0</Д1и>
<div id="col2">MoHCTaTbX/div>
<div id=’"col3">PeKnaMa</div>
Гораздо проще, не так ли? Поисковые машины тоже так думают. Однако навигация и меню будут храниться в первом столбце, в то время как наиболее важный контент сайта— во втором столбце. Поскольку поисковые пауки обычно обращают внимание на контент, который раньше появляется на странице. данная разметка не самая оптимальная.
Для решения этой проблемы можно использовать метод сортировки столбцов. При этом контент будет размещаться так же, как и в прошлом случае, но в HTML-коде содержимое со12 будет следовать перед содержимым coll, поэтому поисковая машина увидит самую важную часть страницы. Об этой технике мы поговорим в гчаве 12.
Примечание
При изучении CSS вы столкнетесь с игнорированием некоторых возможностей CSS браузером Internet Explorer 6. Возможно, вы заметили, что в шаблонах Joomla! обычно есть файл ieonly.css . В данном файле содержатся определения, предназначенные только для Internet Explorer. В этой книге я постарался рассмотреть большинство особенностей Internet Explorer. Однако рекомендую всегда просматривать свою страницу с помощью Internet Explorer и как минимум еще в одном (любом) браузере, чтобы убедиться, что ваши стили отображаются корректно в любом браузере. Также нужно отметить, что большинство этих проблем были исправлены в Internet Explorer 7.
Изменение параметров столбца так же просто, как и изменение отдельного CSS-файла. Вы можете добавить внутренний отступ столбца— от края столбца до контента. К сожалению, Internet Explorer 6 игнорирует этот атрибут. Поэтому для создания отступа вокруг каждого столбца вам нужно добавить еще один элемент <div>:
<div id="coll">
<div class="gutter">
<jdoc:include type="modules" name="left" />
</div>
</div>
Затем в CSS-файл нужно добавить строку:
.gutter {padding:8рх;}
Создание разметки на две колонки с помощью CSS
Для создания нового шаблона с двумя колонками, вам нужно настроить в CSS-файле интервалы страницы. Если вы знакомы с созданием HTML- таблиц, CSS-форматирование покажется вам подобным.
CSS-разметку можно сравнить с разметкой газетной страницы, описанной в гчаве 4, но на примере Joomla’-страницы. У каждой панели, например, блока, содержащего контент (чаще всего текст), есть свои атрибуты: граница, толщина границы, края. На рис. 6.24 представлена простая панель со своими атрибутами.
Название файла переводится как "Для IE только". — Пер
Края панели всегда прозрачные. Фон панели будет занимать всю ее область вместе с границами. Вы можете установить различную ширину границы для разных сторон панели. Например, граница вверху может быть шириной в 1 пиксел, а внизу — 3 пиксела.
Примечание переводчика
Слова margin (край, поле) и border (граница) в переводе с английского языка будут синонимами — оба слова можно перевести как "граница". Чтобы вам было проще, воспринимайте margin как невидимую, a border — как видимую границу панели.
Joomla! is used for? П Communitv
Sites
" Public
Brand Sites
* eCommerce r Blogs ' Intranets r Photo and
Media
Sites г All of tile
Above!
Votej
Results |
We have 1 guest online
Рис. 6.24. CSS-атрибуты панели
Панели можно создавать иерархично, т. е. в пределах панели вы можете создать набор подпанелей.
Существуют два основных типа рамок: линейные и рамки-блоки. Разметка линейных рамок осуществляется так же, как и фрагментов текста или картинок. Блоки находятся в пределах тегов <р>, <div> или <table>. Атрибут display элемента Web-страницы, например, тега <div>, задает тип используемой рамки. Если атрибут display установлен в попе, рамка не будет отображена.
Для позиционирования можно использовать один из трех методов: normal, float и absolute. При нормальном позиционировании блоки будут перемещаться вертикально, а линейные рамки— горизонтально. При плавающем (float) позиционировании элементы страницы будут размещены относитель-
но других элементов, а при абсолютном позиционировании расположение элементов будет задаваться абсолютными координатами.
Примечание
Когда один вертикальный блок следует за другим вертикальным блоком, вертикальные края (margins) будут сокращены. Если два блока идут последовательно, нижняя граница верхнего блока не будет добавлена к Верхней границе нижнего. Вместо этого будет выбрана большая граница (имеется в виду невидимая граница — margin), и она будет использоваться для разделения блоков.
Вы можете использовать относительное (плавающее) позиционирование рамок, при котором расположение блока будет зависеть от расположения других блоков, которые расположены перед ним.
Для создания нашего шаблона на две колонки введите код из листинга б.З и сохраните его как файл template.css в подкаталоге \css каталога шаблона. Главный файл (index.php) мы позже свяжем с файлом стилей.
Листинг 6.3. CSS-файл для шаблона на две колонки
div#logo {
width: 110%; height: ЮОрх;
margin-left: -lOpx;
background: url(../images/LSlogo.jpg) left no-repeat;
border: Ipx solid #244223 ;
padding: 20px;
}
#coll {
float:left;width:15%;
background:#244223;
padding: lOpx;
#col2 {
float:left;width:75%;
border:3px solid #244223;
background:#58al55;
padding: lOpx;
}
#page_bg {
font-family: Verdana, Arial, Helvetica, sans-serif;
height: 100%;
background: black;
.moduletablejnenu, .moduletable { color: white;
border-bottom: Ipx solid #fff; margin-bottom: -lem;
}
.moduletablejnenu h3 { border-bottom: Ipx solid #FFFFFF; margin-bottom: Opx;
}
.moduletablejnenu ul ( margin-left: lOpx; margin-top: Opx; padding: lOpx; font-size: 80%; list-style-type: square;
}
.moduletablejmenu a:link, .moduletable a:link { color:yellow;
}
.moduletablejmenu a:visited, .moduletable a:visited { color:cornsilk;
}
.contentheading { border-bottom: 2px solid Black; border-right: 2px solid Black; border-left: Ipx solid LightGreen; border-top: Ipx solid LightGreen; background:#244223; color: white; padding: lOpx; font-size:2em;
}
.contentpaneopen hl ( font-size:1.5em; border-bottom: Ipx solid #244223; padding: 1Opx;
Как видите, мы перезаписываем некоторые стандартные Joomlal-стили вроде .contentheading. В этом проявляется гибкость Joomlal: контент будет сгенерирован с использованием стандартных стилей.
Примечание
У Mozilla Firefox и Internet Explorer есть утилиты, отображающие стили, используемые Web-страницей. С помощью этих утилит вы можете узнать, какие стили вам нужно изменить в вашем шаблоне. Для Firefox вам нужно загрузить расширение Web Developer (https://addons.mozilla.org/en-US/firefox/addon/60), а для Internet Explorer— панель Developer Toolbar, которую можно скачать с сайта Microsoft.
Выбор шрифтов
Выбор шрифтов — нелегкая задача. При выборе шрифтов для сайта нужно руководствоваться не только вкусом, но и доступностью. Если вы выберите шрифт вроде Smudger LET, сомневаюсь, что он будет установлен у большинства посетителей Web-страницы. Конечно, если вы хотите, чтобы текст был представлен с применением именно этого шрифта, можно представить текст как картинку. Но с другой стороны это усложнит поддержку сайта (ведь при изменении текста опять придется создавать картинку) и сделает сайт менее дружественным по отношению к поисковикам, о чем было сказано в разд. "Поисковые машины и CSS"ранее в этой гчаве.
По сути, определения CSS подобны набору правил по отображению страницы современным браузером. Одна из самых полезных функций CSS — подбор альтернативных шрифтов. Данная функция позволяет дизайнеру реализовать задуманное, а пользователю — увидеть то, что задумал дизайнер. Например, при разработке Web-страницы дизайнер решил использовать шрифт Gill Sans МТ Condensed — сайт с ним лучше выглядит. Однако, если шрифт недоступен браузеру посетителя (например, если пользователь зашел на страницу, используя браузер мобильного телефона), страница будет отображена некорректно. Дизайнер может минимизировать эту проблему, используя CSS Следующая строка задает альтернативные шрифты для выбранного дизайнером шрифта:
font-family: Gill Sans МТ Condensed, Geneva, Arial, Helvetica, sans-serif;
При отображении текста браузер сначала пытается найти шрифт Gill Sans МТ. Если шрифт не найден, он попытается использовать шрифт Geneva и т. д., пока не дойдет до самого простого шрифта — Sans-Serif. Вот еще один пример задания альтернативных шрифтов:
font-family: "Times New Roman", Times, serif;
Шрифты семейства Serif имеют небольшие дополнительные линии на символах. Например, заглавная буква Т имеет две дополнительные линии, свисающие вниз от верхней линии, и еще небольшую линию в основании. Шрифты без этих графических дополнений называются Sans-Serif. Поэтому большинство шрифтов можно разделить на два типа: Serif и Sans-Serif.
Возможно, вы заметили выбранные мною шрифты в стиле #page_bg (см. листинг 6.3):
font-family: Verdana, Arial, Helvetica, sans-serif;
Я хотел использовать шрифт семейства Sans-Serif для своего сайта, поэтому выбрал шрифт Verdana— он довольно современный и хорошо читается. Однако этот шрифт есть не на всех системах, поэтому я указал альтернативные шрифты, которые наиболее близко похожи на выбранный мною шрифт.
Как только вы определитесь семейством шрифтов — Serif или Sans-Serif (вы можете использовать оба семейства), вам нужно выбрать сами шрифты. Выбор шрифтов и семейств шрифтов — это больше искусство, чем наука. Мой вам совет: подражайте профессионалам!
Найдите Web-сайт, который, по вашему мнению, хорошо выглядит, и посмотрите, какие шрифты он использует. Примером современного дизайна (в плане выбора шрифтов) может послужить сайт w3vw.wired.com, поскольку владельцы сайта уделяют много внимания дизайну сайта. Как только вы найдете понравившуюся вам модель сайта, сохраните страницу и все ее файлы на ваш жесткий диск.
Совет
Для сохранения Web-страницы и связанных с нею файлов, я использую браузер Mozilla Firefox. По неизвестным мне причинам у браузера Internet Explorer часто наблюдаются проблемы с сохранением страниц на жесткий диск, когда браузер отказывается сохранять страницу и сообщает, что страница не может быть сохранена. Подобных проблем никогда не было в Mozilla Firefox.
Откройте каталог, в который вы сохранили страницу — в нем будут все файлы страницы (картинки, рекламные баннеры и т. д.). Вы должны увидеть в нем один или несколько CSS-файлов. Отройте CSS-файлы в текстовом редакторе и определите шрифты, используемые сайтом. Теперь вам осталось только использовать эти шрифты в вашем сайте! У больших сайтов большая аудитория, поэтому администраторы заботятся, чтобы сайты корректно отображались во всех браузерах, а посему при выборе шрифтов нужно ориентироваться на большие сайты.
Создание графического баннера
Мы определились с цветовой схемой и выбрали шрифты для нашего сайта, теперь настало время создать красивый графический баннер.
При обсуждении Web-дизайна всегда говорят о программе, стоящей на голову выше всех остальных: Adobe Photoshop. По этой программе доступно много руководств, для нее разработано много плагинов и, конечно же, у нее прекрасная Web-поддержка. Однако, придерживаясь духа свободного и открытого программного обеспечения, в этой книге для редактирования графики мы будем использовать программу GIMP. GIMP почти такой же гибкий и мощный. как Photoshop, графический редактор. Да, у него нет некоторых рюшечек, как у Photoshop, но зато он бесплатный. На рис. 6.25 показан интерфейс GIMP.
‘ 100.0‘ 100.0Непрозрачность*Непрозрачность*100,100,НормальноеНормальноеФайл Расш ^правкаMl • 6УФайл Расш ^правкаMl • 6У% 4G №% 4G №^ A U^ A Uъ Чувствительность к нажимуГ Риксмровзнная длина штрихаъ Чувствительность к нажимуГ Риксмровзнная длина штрихаf- Дополняющийf- ДополняющийG=ilogo brnc-2G=ilogo brnc-2НормальноеНормальноеНепроюачнхтв-Непроюачнхтв-□ Использование цвете из градн*□ Использование цвете из градн*ИнтервалИнтервал9 L '«9 L '«Octo fl«(H ж 11}Octo fl«(H ж 11}
‘ 100.0
‘ 100.0
Непрозрачность*
Непрозрачность*
100,
100,
Нормальное
Нормальное
Файл Расш ^правка
Ml • 6У
Файл Расш ^правка
Ml • 6У
% 4G №
% 4G №
^ A U
^ A U
ъ Чувствительность к нажиму
Г Риксмровзнная длина штриха
ъ Чувствительность к нажиму
Г Риксмровзнная длина штриха
f- Дополняющий
f- Дополняющий
G=ilogo brnc-2
G=ilogo brnc-2
Нормальное
Нормальное
Непроюачнхтв-
Непроюачнхтв-
□ Использование цвете из градн*
□ Использование цвете из градн*
Интервал
Интервал
9 L '«
9 L '«
Octo fl«(H ж 11}
Octo fl«(H ж 11}
Рис. 6.25. Редактирование логотипа Joomla! с помощью GIMP
Инсталлятор GIMP (также известен как The GIMP) доступен на сайте www.gimp.org. Для работы GIMP нужна библиотека GTK+, которую необхо-
димо загрузить и установить отдельно. На сайте GIMP вы найдете подробные инструкции, как это сделать.
Если вы умеете использовать Photoshop, то без труда разберетесь с редактированием изображений в GIMP, поскольку обе программы довольно похожи. Если у вас уже есть Adobe Photoshop, возможно, вы уже знаете, как создать баннер для заголовка сайта. Создайте баннер размером примерно 150 пикселов в высоту и 800— в ширину. Большинство браузеров отобразит такой баннер без особых проблем.
КИСТЬКИСТЬсервер...сервер...Inxgre-26..
КИСТЬ
КИСТЬ
сервер...
сервер...
SOTA Хром...
TextQcte...
Впукльн градиент... Вырезанная...
Газетный текст...
Глянцевая..
Г орячее свечение.,.
Градиентная...
Barловок web-CTpawuN.,.
Звездная вспышка...
Звездный фон...
Комикс...
Кристалл..
Ледяная...
Мел...
Неон...
Объемный контур..
Осколки...
Основа 1...
Основа П...
Прохладный металл...
Пятнистая корова...
Скоростной текст..
След частицы...
Текстура..,
Хром..-
Чужое свечение..
Чужой неон...
Рис. 6.26. Выбор сценария Хром для создания баннера
При создании графики для вашего шаблона не стесняйтесь использовать любую возможность Photoshop. Если вы будете следовать какому-то руководству, то вряд ли создадите что-то эффектное. Напротив, импровизация в графических программах всегда давала хорошие результаты.
Для создания баннера с помощью GIMP выберите меню Расш. | Скрипт-Фу В подменю Скрипт-Фу вы найдете команды для запуска расширений (сценариев) GIMP, которые используются для выполнения различных макроопераций, автоматизирующих графические задачи. В подменю Эмблемы вы найдете команды запуска различных сценариев для быстрого и простого создания баннеров-логотипов. На рис. 6.26 показано, что я выбрал сценарий Хром для создания моего баннера.
Сценарий отобразит окно с многочисленными параметрами (аргументами), позволяющими настроить будущий баннер. В большинстве случаев вам нужно выбрать только цвет или текстуру и шрифт. На рис. 6.27 я ввел текст логотипа и изменил цвет фона, выбрал более темный цвет, подходящий для цветовой гаммы моего сайта.
Рис. 6.27. Установите параметры баннера
Когда вы нажмете кнопку ОК, будет запущен сценарий, который сгенерирует баннер в соответствии с установленными параметрами. Вот и все! Сгенерированный мною логотип представлен на рис. 6.28
Попытайтесь использовать остальные сценарии для создания логотипов, почти наверняка вы найдете тот, который больше всего подходит для вашего сайта. Когда вы создадите ваш баннер, сохраните его в формате JPG или PNG в каталоге \i mages вашего шаблона.
Впереди нас ждет наиболее важный шаг — создание главного файла (index.php) вашего шаблона.
Рис 6.28. После нажатия ОК вы увидите окно со сгенерированным логотипом
Создание файла index.php
Файл index.php — главная часть вашего шаблона, содержащая всю логику шаблона. В большинстве случаев, поскольку описание внешнего вида сайта производится в CSS-файле, index-файл шаблона довольно прост. Если вы не собираетесь добавлять пользовательские функции (или Ajax-функциональность), у большинства созданных вами в будущем шаблонов будет файл index.php, идентичный созданному в этом разделе (хотя в других шаблонах могут использоваться другие модули).
PHP-файл шаблона очень напоминает обычный HTML-файл, просто в него добавлены управляющие директивы. Посмотрите на фрагмент файла шаблона по умолчанию — он очень напоминает обычную HTML-страницу:
<?php echo ' <?xml version="1.01 encoding="utf-8"?' .'>'; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtmll/DTD/xhtmll-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="<?php echo —LANGUAGE; ?>" xml:lang="<?php echo -LANGUAGE; ?>"> <head>
<jdoc:include type="head" />
Обратите внимание: страница открывается декларацией ! doctype. Тег doctype описывает стандарт и схему, которые должны быть применены для обработки файла. Также он говорит браузеру, как обрабатывать CSS. Вообще этот тег не обязательный, но с его помощью вы сможете предотвратить много проблем совместимости при отображении браузером страницы.
Внимание!
При создании нового файла шаблона убедитесь, что вы полностью скопировали тег doctype из Зоот1а!-шаблона по умолчанию. Тег doctype в файле шаблона был тщательно протестирован. Не изменяйте его, поскольку ошибки в этом теге могут стать причиной многочисленных и трудноопределимых проблем
После тега doctype следует тег html. В тег html включен PHP-код, добавляющий атрибут language перед отправкой страницы в браузер.
Тег jdoc запускает часть Joomla! CMS, написанной на PHP. В любой версии Joomla!, начиная с 1.5, интерфейс jdoc (JDocument) используется для получения доступа к Joomla!. JDocument управляет выводом представления (дизайна) Joomlai-системы. С помощью jdoc вы можете подключить любой модуль в любое место страницы, используя синтаксис jdoc:include. Например, для добавления левосторонних* модулей вам нужно использовать следующую инструкцию:
<jdoc:include type="modules" name="left" />
Примечание
В старых шаблонах нужно было использовать префикс mos. Joomla! изначально была основана на Mambo CMS. Mambo обычно использовала префикс mos (сокращение от Mambo Open Source). Поэтому вы все еще можете столкнуться со старым кодом, совместимым с предшественником Joomla!. Хотя в настоящее время Joomla! неспешно отходит от старого кода. Например, в старых версиях шаблонов Joomla!/Mambo использовались функции вроде mosLoadModules() иmosCountModules(). Теперь они заменены вызовами jdoc: jdoc:include и jdoc:exists соответственно.
Очень важно включить head-код в раздел заголовка вашего шаблона:
<head>
<jdoc:include type="head" />
</head>
Данный код сгенерирует общий заголовок Joomla!. Заголовок также позволяет определить, редактируется ли в данный момент запрашиваемая статья. Если статья редактируется, в страницу будет вставлен код выбранного Joomla!- редактора.
Введите код, приведенный в листинге 6.4, и сохраните его в файле с именем index.php в корневом каталоге шаблона. Это и будет ядро вашего шаблона.
Листинг 6.4. Код шаблона index.php
<?php echo '<?xml version="l.0" encoding="utf-8"? .'>'; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitiona1.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="<?php echo -LANGUAGE; ?>" xml:lang="<?php echo —LANGUAGE; ?>">
<head>
<jdoc:include type="head" />
clink rel="stylesheet" href="templates/_system/css/general.css" type-"text/css" />
clink rel="stylesheet" href="templates/
c?php echo $this->template ?>/css/template.css"
type="text/css" />
c/head>
cbody id="page_bg">
<jdoc:include type="message" />
cdiv id="logo"> c/div>
cdiv id="coll">
cjdoc:include type="modules" name="left" style="xhtml" />
</div>
cdiv id="col2">
cjdoc:include type-"component" />
c/div>
cjdoc:include type="modules" name="debug" />
c/body>
c/html>
Хотя этот код напоминает код созданного нами ранее шаблона Hello Joomla!, он содержит ряд усовершенствований, превращающих его в настоящий файл шаблона. Тег doctype и возможность указания языка является критической для соответствия HTML-стандартам. Кроме того, наш шаблон использует две таблицы стилей (CSS-файлы): основные стили Joomla! и файл стилей, созданный ранее (см. листинг 6.3).
Файлы стилей очень важны, поскольку в них описаны стили элементов <dev>, используемые для отображения столбцов с контентом. В левом столбце будет отображены модули, а в правом (или главном) — контент статьи.
Вот и все. Ваш файл шаблона предельно прост, но понятен. Теперь нужно создать файл метаданных, чтобы Joomla! знала, какие файлы принадлежат шаблону
Создание файла templateDetails.xml
Последний этап разработки шаблона — это создание файла с метаданными. Введите код, представленный в листинге 6.5, и сохраните его в файле templateDetails.xml в корневом каталоге шаблона.
В этом файле гораздо больше элементов, чем в первом нашем файле. В файл была добавлена информация о лицензии и авторских правах.
Листинг 6.5. Файл templateDetails.xml содержит указатели на все используемые шаблоном файлы
<?xml version="1.0" encoding="utf-8"?>
<install version="1.5" type="template">
<name>Two Column template</name>
<version>l.0</version>
<creationDate>01/18/2007</creationDate>
<author>Dan Rahmel</author>
<authorEmail>admin@Joomla!Jumpstart.com</authorEmail>
<authorUrl>http://www.Joomla!Jumpstart.com </author(Jrl>
<copyright>2007</copyright>
<license>GNU/GPL</license>
<description>
Two CSS columns in the Joomla! world.
< /description
<files>
<filename>index.php</filename>
<filename>templateDetails.xml</filename>
<filename>images/LSlogo.jpg</filename>
<filename>css/template.css</filename>
</files>
<positions>
<position>left</position>
</positions>
</install>
Установка шаблона
Сейчас у вас готовы все файлы и каталоги шаблона. Чтобы установить шаблон с помощью интерфейса администратора, нужно сжать их в ZIP- или TAR- архив. Перейдите в каталог шаблона и заархивируйте только файлы и каталоги, которые в нем содержатся. Если вы используете WinZIP, убедитесь, что включен параметр Include folders and paths (Включить папки и пути) для создания необходимой для правильной работы структуры каталогов.
Архивный файл с шаблоном можно распространять любым удобным для вас способом. Фактически, вы можете создать и распространять собственные шаблоны, которые будут использоваться другими администраторами Joomla!. Для установки шаблона выберите Расширения | Установить/Удалить (рис. 6.29).
Рис. 6.29 Команда Расширения | Установить/Удалить позволяет установить новый шаблон
Предварительный просмотр шаблонов
Вы можете предварительно просмотреть любой шаблон, установленный в системе. При предварительном просмотре модулей показывается расположение модулей на странице сайта.
Для предварительного просмотра откройте Менеджер шаблонов. Затем щелкните на названии шаблона, чтобы открыть окно параметров шаблона. В появившемся окне нажмите кнопу Просмотр. Если вы откроете предпро- смотр только что созданного шаблона, то увидите всего два модуля, которые мы определили в коде шаблона. Для сравнения откройте шаблон по умолчанию (рис. 6.30), у которого много элементов страницы.
Экран предварительного просмотра— отличная точка отсчета, если вы собрались изменить существующий шаблон. Он отображает структуру страницы шаблона. Эту структуру иногда сложно представить, глядя только на исходный код шаблона.
Взгляните на окончательную версию нашего шаблона (рис. 6.31): видно, что мы проделали много работы по сравнению с шаблоном Hello Joomla!. С другой стороны, это только небольшой шаг от базового шаблона к полноценному шаблону вроде шаблона rhukmilkway. Большая часть оставшейся работы заключается в редактировании файлов стилей и создании дополнительной графики. Зато Joomlal-интерфейс jdoc возьмет на себя всю рутинную работу по отображению всего сайта.
Joomla JumpstartJoomla JumpstartО Joomta JumpstartО Joomta Jumpstartf«atMw[u^J2^^ Communityf«atMw[u^J2^^ Community"breecicrumtiir^^"breecicrumtiir^^laafrl-ijnrled оагич)laafrl-ijnrled оагич)Insert hint nl oulltr.el |!• Заголовок статьиInsert hint nl oulltr.el |!• Заголовок статьиИмя пользователяИмя пользователяПароль__Пароль__Welcome to the FrontpageУсловия использования сайта *> 9 №Автор: А«тк-«*гЫа i?jO4 2v 25Услад ня использования саимWelcome to the FrontpageУсловия использования сайта *> 9 №Автор: А«тк-«*гЫа i?jO4 2v 25Услад ня использования саим| дг<к1>- 1 utbnej р<)eikac 1 гость онлайн| дг<к1>- 1 utbnej р<)eikac 1 гость онлайнЗапомнить меня □( Логин ]Забыли пароль?Забыли логин?Запомнить меня □( Логин ]Забыли пароль?Забыли логин?Тест <к ч» -аАВТОР I ■ атчЛийси4» 04 У ~ГТест <к ч» -аАВТОР I ■ атчЛийси4» 04 У ~ГI^ThJV^,,^^ }nt 'featured Links; Joornlei The most popJar end1 wtiety used Open Source; CMS Project in the world; JoornleCode■ JoomiaCode, devetopmertI and cistribUicri made easyI Joomiei Extensions1 Joomlai ComponentsI^ThJV^,,^^ }nt 'featured Links; Joornlei The most popJar end1 wtiety used Open Source; CMS Project in the world; JoornleCode■ JoomiaCode, devetopmertI and cistribUicri made easyI Joomiei Extensions1 Joomlai Components
Joomla Jumpstart
Joomla Jumpstart
О Joomta Jumpstart
О Joomta Jumpstart
f«atMw[u^J2^^ Community
f«atMw[u^J2^^ Community
"breecicrumtiir^^
"breecicrumtiir^^
laafrl-ijnrled оагич)
laafrl-ijnrled оагич)
Insert hint nl oulltr.el |
!• Заголовок статьи
Insert hint nl oulltr.el |
!• Заголовок статьи
Имя пользователя
Имя пользователя
Пароль__
Пароль__
Welcome to the Frontpage
Условия использования сайта *> 9 №
Автор: А«тк-«*гЫа i?jO4 2v 25
Услад ня использования саим
Welcome to the Frontpage
Условия использования сайта *> 9 №
Автор: А«тк-«*гЫа i?jO4 2v 25
Услад ня использования саим
| дг<к1>- 1 utbnej р
<)eikac 1 гость онлайн
| дг<к1>- 1 utbnej р
<)eikac 1 гость онлайн
Запомнить меня □
( Логин ]
Забыли пароль?
Забыли логин?
Запомнить меня □
( Логин ]
Забыли пароль?
Забыли логин?
Тест <к ч» -а
АВТОР I ■ атчЛийси
4» 04 У ~Г
Тест <к ч» -а
АВТОР I ■ атчЛийси
4» 04 У ~Г
I^ThJV^,,^^ }nt 'featured Links
; Joornlei The most popJar end
1 wtiety used Open Source
; CMS Project in the world
; JoornleCode
■ JoomiaCode, devetopmert
I and cistribUicri made easy
I Joomiei Extensions
1 Joomlai Components
I^ThJV^,,^^ }nt 'featured Links
; Joornlei The most popJar end
1 wtiety used Open Source
; CMS Project in the world
; JoornleCode
■ JoomiaCode, devetopmert
I and cistribUicri made easy
I Joomiei Extensions
1 Joomlai Components
Рис. 6.30 Кнопка Просмотр показывает все модули и расположение компонентов
Рис. 6.31. Заключительный шаблон выглядит минималистично, но вполне профессиональноРис. 6.31. Заключительный шаблон выглядит минималистично, но вполне профессионально
Рис. 6.31. Заключительный шаблон выглядит минималистично, но вполне профессионально
Рис. 6.31. Заключительный шаблон выглядит минималистично, но вполне профессионально
Проверка кода шаблона
Каждый раз после создания нового шаблона стоит проверить его HTML-код, чтобы убедиться, что он соответствует действующим стандартам.
Для проверки HTML-кода вы можете использовать онлайн-утилиту от W3C, которая просканирует сайт по заданному URL и вынесет вердикт относительно кода сайта. Зайдите на следующий сайт и введите URL страницы, которую вы хотите проверить:
http://validator.w3.org
Вы также можете использовать обычное (не онлайн) приложение вроде CSE HTML Validator. Данная программа умеет проверять код HTML, XHTML, CSS, доступность сайта, доступность ссылок и даже правописание. Данная программа особенно вам пригодится для проверки локального сервера, к которому нет доступа извне, и вы не можете указать его URL. Программа CSE HTML Validator бесплатно доступна для загрузки по адресу:
http://download8.htmlvalidator.com/cselite.exe
Резюме
Основываясь на полученных в этой главе знаниях, вы можете создать практически любой Joomlal-шаблон, вы будете ограничены только своими знаниями дизайна, знаниями PHP и CSS. Вы изучили структуру шаблона Joomla! и знаете несколько важных директив Joomla!. Фактически, большинство Joomlal-шаблонов используют только директивы, рассмотренные нами в этой главе.
Мы рассмотрели основы CSS и некоторые полезные утилиты вроде Dreamweaver, jEdit и Leo, которые помогут вам при работе с шаблонами. Изучая шаблоны по умолчанию, вы скоро сможете создать собственный шаблон с нуля Также нами был разработан RGB/HSB-конвертер, который пригодится во многих проектах.
Теперь ваш сайт достаточно привлекателен для посетителей и вам осталось только сделать из него настоящий магнит, притягивающий новых посетителей. В следующей главе мы поговорим о расширениях Joomla!, позволяющих увеличить функциональность вашего Web-сайта.
ГЛАВА 7
Расширения Joomla!
Одна из бесспорных причин популярности Joomla! — широкий спектр доступных расширений. С помощью модулей, компонентов и плагинов вы можете добавить на сайт практически любую функцию.
Вы можете добавить разные популярные функции, например, корзину для заказов товаров через ваш сайт, RSS, форум, чат, карты посетителей, возможность совместной работы над страницами в стиле wiki, возможность управления товарами и работой с клиентами (CRM, Customer Relationship Management). По сути, вы можете добавить абсолютно любую Web- ориентированную возможность в Joomla!. Огромное количество расширений доступно на главном сайте Joomla! по адресу: http://extensions.joomla.org.
Почти 80% доступных расширений бесплатны — вам нужно просто загрузить расширение с Web и увеличить возможности вашего сайта. Лучший способ узнать больше о расширениях— изучить расширения, устанавливаемые по умолчанию при установке Joomla!. Изучив администрирование существующих расширений, вы сможете понять, как управлять новыми расширениями, которые хотите использовать.
Разница между модулями, компонентами и плагинами
Часто начинающие пользователи не могут понять разницы между типами расширений. Поскольку имеются три разных типа расширений и их функции могут иногда пересекаться, очень важно знать их возможности и фундаментальные различия между ними. Много Joomlal-пакетов могут использовать несколько типов расширений, что еще больше сбивает с толку пользователя. Например, пакет голосования использует модуль для отображения пользовательского интерфейса, но для администрирования используется компонент.
В каталоге расширений Joomla! для каждого расширения выводится его тип. На рис. 7.1 показаны два расширения. Первое, joomlaXplorer, является только компонентом (см. пиктограмму, информирующую о том, что перед нами компонент). Пакет второго расширения (Joom!Fish) содержит несколько типов расширений (компонент, модуль, плагин и языковое расширение).
Languages (78)Mscetaneous (141)Search & Jndexng (64)Took (43)Vertical Maxets (24)WYSIWYG Editors (13Username —PasswordIП Remember roeLanguages (78)Mscetaneous (141)Search & Jndexng (64)Took (43)Vertical Maxets (24)WYSIWYG Editors (13Username —PasswordIП Remember roejoomLaXptorer ШП2ШЗЗ QIjoomLaXptorer ШП2ШЗЗ QIQQQGQ 212 votes 6C reviewsjoorhhXptorer is a He- and FTP -VnlManager. It slows you to edit files,r iui^QQQGQ 212 votes 6C reviewsjoorhhXptorer is a He- and FTP -VnlManager. It slows you to edit files,r iui^V mwnwHV mwnwHLost rosswonPNo account yet? RegisterLost rosswonPNo account yet? RegisterWho’s OnlineWho’s OnlineWe have 659 guests and 69 members onkeWe have 659 guests and 69 members onkeDirectory SupportRulesUsing this SiteDirectory SupportRulesUsing this SiteDisclaimerDisclaimerQawon^'tQawon^'tViews; 146,394Views; 146,394... | Updated LOhoursago... | Updated LOhoursago3L<idr4) (chmod)and3L<idr4) (chmod)anddelete, copy, rename, archive andunpack fles/dtfectones directs on your server. You on - Be; ■ & FSes - Edit Copy, Move and Delete files - Search, t;ties - Ceate new fies and directories - Change fie . much more This script is based on QuiXpiorer : J http^/qukptorer sourceforge ieV)delete, copy, rename, archive andunpack fles/dtfectones directs on your server. You on - Be; ■ & FSes - Edit Copy, Move and Delete files - Search, t;ties - Ceate new fies and directories - Change fie . much more This script is based on QuiXpiorer : J http^/qukptorer sourceforge ieV)Categor/. Ffe Management | GW GPL http.//devcioper.jocrria org/sfCategor/. Ffe Management | GW GPL http.//devcioper.jocrria org/sfJooni*Ftsh -Jooni*Ftsh -Qmo<Me Qiugn Uhriytst!*Qmo<Me Qiugn Uhriytst!*CQDQO 102 votes - 23 reviewsCQDQO 102 votes - 23 reviewsВШ33523 E53IВШ33523 E53Ito be compattfle with theto be compattfle with theThe JooniFsh project s the cfficel add-on for managing multtngual content witbn the content management system Joombl. The project which was fonroly known as Mambef tsh is rewritten and enhanced n orderThe JooniFsh project s the cfficel add-on for managing multtngual content witbn the content management system Joombl. The project which was fonroly known as Mambef tsh is rewritten and enhanced n ordernew versions of the Joombl project. The JoontfFsh в an add-on component for Joomfe? which allows you to maintain and organee your manual translated content n your Joombl database. The key features ofnew versions of the Joombl project. The JoontfFsh в an add-on component for Joomfe? which allows you to maintain and organee your manual translated content n your Joombl database. The key features ofthe fish are: * Possbity for ar unknited amount of languages * Possbity to MANUAL translate al dyn ...the fish are: * Possbity for ar unknited amount of languages * Possbity to MANUAL translate al dyn ...Category: Mufc-kigual Content | Other open source / Free kxnse • trttpJ/fage.jtHXTik org/^I Updated 273 days agoCategory: Mufc-kigual Content | Other open source / Free kxnse • trttpJ/fage.jtHXTik org/^I Updated 273 days agoViews* 74 566Views* 74 566
Languages (78)
Mscetaneous (141)
Search & Jndexng (64)
Took (43)
Vertical Maxets (24)
WYSIWYG Editors (13
Username —
Password
I
П Remember roe
Languages (78)
Mscetaneous (141)
Search & Jndexng (64)
Took (43)
Vertical Maxets (24)
WYSIWYG Editors (13
Username —
Password
I
П Remember roe
joomLaXptorer ШП2ШЗЗ QI
joomLaXptorer ШП2ШЗЗ QI
QQQGQ 212 votes 6C reviews
joorhhXptorer is a He- and FTP -Vnl
Manager. It slows you to edit files,r iui^
QQQGQ 212 votes 6C reviews
joorhhXptorer is a He- and FTP -Vnl
Manager. It slows you to edit files,r iui^
V mwnwH
V mwnwH
Lost rosswonP
No account yet? Register
Lost rosswonP
No account yet? Register
Who’s Online
Who’s Online
We have 659 guests and 69 members onke
We have 659 guests and 69 members onke
Directory Support
Rules
Using this Site
Directory Support
Rules
Using this Site
Disclaimer
Disclaimer
Qawon^'t
Qawon^'t
Views; 146,394
Views; 146,394
... | Updated LOhoursago
... | Updated LOhoursago
3L<idr4) (chmod)and
3L<idr4) (chmod)and
delete, copy, rename, archive and
unpack fles/dtfectones directs on your server. You on - Be; ■ & FSes - Edit Copy, Move and Delete files - Search, t;
ties - Ceate new fies and directories - Change fie . much more This script is based on QuiXpiorer : J http^/qukptorer sourceforge ieV)
delete, copy, rename, archive and
unpack fles/dtfectones directs on your server. You on - Be; ■ & FSes - Edit Copy, Move and Delete files - Search, t;
ties - Ceate new fies and directories - Change fie . much more This script is based on QuiXpiorer : J http^/qukptorer sourceforge ieV)
Categor/. Ffe Management | GW GPL http.//devcioper.jocrria org/sf
Categor/. Ffe Management | GW GPL http.//devcioper.jocrria org/sf
Jooni*Ftsh -
Jooni*Ftsh -
Qmo<Me Qiugn Uhriytst!*
Qmo<Me Qiugn Uhriytst!*
CQDQO 102 votes - 23 reviews
CQDQO 102 votes - 23 reviews
ВШ33523 E53I
ВШ33523 E53I
to be compattfle with the
to be compattfle with the
The JooniFsh project s the cfficel add-on for managing multtngual content witbn the content management system Joombl. The project which was fonroly known as Mambef tsh is rewritten and enhanced n order
The JooniFsh project s the cfficel add-on for managing multtngual content witbn the content management system Joombl. The project which was fonroly known as Mambef tsh is rewritten and enhanced n order
new versions of the Joombl project. The JoontfFsh в an add-on component for Joomfe? which allows you to maintain and organee your manual translated content n your Joombl database. The key features of
new versions of the Joombl project. The JoontfFsh в an add-on component for Joomfe? which allows you to maintain and organee your manual translated content n your Joombl database. The key features of
the fish are: * Possbity for ar unknited amount of languages * Possbity to MANUAL translate al dyn ...
the fish are: * Possbity for ar unknited amount of languages * Possbity to MANUAL translate al dyn ...
Category: Mufc-kigual Content | Other open source / Free kxnse • trttpJ/fage.jtHXTik org/^I Updated 273 days ago
Category: Mufc-kigual Content | Other open source / Free kxnse • trttpJ/fage.jtHXTik org/^I Updated 273 days ago
Views* 74 566
Views* 74 566
• 1 П *t™ W? Vffi
Рис. 7 1. В правой колонке выводится тип расширения
Комбинированные пакеты расширений встречаются довольно часто: обычно в пакете как минимум два разных расширения. Чтобы понять, как все эти типы расширений работают вместе, лучше всего начать с самого сложного типа— плагина.
Плагины: самые сложные расширения
Плагины являются самыми сложными расширениями, поскольку интегрируются в Joomla! на самом низком уровне. Плагин работает между Joomla! и пользователем, как показано на рис. 7.2. Плагины активируются различным событием сервера (системным событием, пользовательским событием, событием редактора и событием контента). Плагин может перехватывать вывод Joomla! и вносить в него изменения до того, как данные будут отправлены в браузер. С другой стороны, плагин может обрабатывать любые данные, по-
лученные от пользователя перед отправкой их CMS. Это означает, что плагин может изменять входящие и исходящие данные.
Рис. 7.2. Плагин расположен между Joomla! и браузером
Наиболее "видимый" тип плагинов — WYSIWYG-редакторы. Контент статьи хранится в базе 1анных Joomla! в чистом HTML-коде. Если редактор не выбран, HTML-код будет отправлен в текстовое поле для редактирования пользователем. Однако, если плагин редактора выбран, HTML-код будет перехвачен плагином и конвертирован в "богатое" текстовое поле, содержащее кнопки форматирования, выбора цвета, вставки картинок и др.
Пользователь может редактировать контент статьи в WYSIWYG-среде. Когда пользователь нажмет кнопку Сохранить, данные, возвращенные в систему, будут перехвачены плагином, который конвертирует их обратно в HTML-код и передаст Joomla! для хранения в базе данных. Это простое объяснение на примере Joomlal-редакторов описывает весь процесс работы плагинов.
Вы можете использовать уже существующие плагины для вашего сайта, но если вы амбициозны, то будете разрабатывать собственные плагины. С другой стороны, ничего сложного в этом нет, и практически любой пользователь может создать базовый модуль или компонент.
Компоненты и модули
Компонент считается более мощным расширением. Модуль может выполнять много функций, а компонент— все, что может модуль, и кое-что еще. Вот что вам нужно знать, чтобы почувствовать разницу между компонентами и модулями.
Традиционно, модуль используется только для отображения информации или же для минимального взаимодействия с пользователем. Например, модуль может отображать курсы валют или же использоваться для голосования на сайте. Компонент может отображать статьи, изменять стиль страницы, редактировать содержимое статьи (если есть соответствующие полномочия) или предоставлять полноценный пользовательский интерфейс (например, быть форумом или доской объявлений).
Модуль загружается в одну из заранее определенных в шаблоне позиций (например, вверху, слева, справа). Модуль входа, модуль поиска и модуль баннеров прекрасные тому примеры. Компонент, напротив, обычно занимает всю страницу. Наиболее часто используемый компонент— компонент главной страницы (называется comfrontpage), отображающий вводный текст одной или нескольких статей с учетом форматирования. На одной странице может быть только один компонент, в то время как страница может содержать одновременно несколько модулей. Компонент можно представить как генератор страницы, в то время как модуль — это простой виджит (элемент интерфейса пользователя).
В интерфейсе администратора для модуля обычно можно задать всего несколько параметров. Интерфейс настройки компонентов обычно сложный, содержит несколько вкладок, что позволяет полностью настроить функционирование и внешний вид модуля.
Это базовые различия между модулями и компонентами. Посмотрите на рис. 7.3, на котором изображена страница предварительного просмотра главной страницы сайта. Предварительный просмотр позволяет увидеть расположение модулей (user3[], breadcrumb [], left [rounded] и т. д.). Обратите внимание: центральная часть страницы занята компонентом, отображающим контент, при этом над компонентом не выводится позиция модуля (хотя я выделил компонент на рисунке).
Модули появляются в четко определенных местах страницы, поэтому ссылка меню никогда не может быть связана с модулем. Но вы можете создать ссылку меню, указывающую на компонент: как только пользователь щелкнет по ней, в центральной части страницы будет отображен соответствующий компонент.
Компоненты и модули очень часто используются вместе: компоненты занимаются конфигурацией и выводом, а модули только отображают информаци-
онную панель. Например, модуль может отображать поле поиска, а компонент— выполнять сам поиск и отображать результаты поиска. Подобный способ взаимодействия используется довольно часто. Например, модуль Banners отображает баннер, а компонент Баннер позволяет создавать баннеры и управлять ими
Понятно, что модули — самые простые расширения Joomla!, поэтому сначала мы рассмотрим модули, а потом все остальные расширения.
Открытьем пОткрытьем пПр«дгц>осыо1р сайта
Открытьем п
Открытьем п
Jomla JumpstartJomla Jumpstart
Jomla Jumpstart
Jomla Jumpstart
Welcome to the FrontpageКWelcome to the FrontpageКУсловия использования сайта ^ ^ -л МУсловия использования сайта ^ ^ -л М■Сежэс * 'ость онлайн■Сежэс * 'ость онлайнMk«.i и ии"5)пГ"Mk«.i и ии"5)пГ"•Featured arks•Featured arksomW The шза popAw and widely used Open Source CMS Fi ^a'* - re vvorld• tn*»'Cf>i; _or*fCt>de, de^efcwrier*and свягкмхюп m«b секу6BW t»t!nJK>fTS cm» vcrrrxf чйomW The шза popAw and widely used Open Source CMS Fi ^a'* - re vvorld• tn*»'Cf>i; _or*fCt>de, de^efcwrier*and свягкмхюп m«b секу6BW t»t!nJK>fTS cm» vcrrrxf чй
Welcome to the FrontpageК
Welcome to the FrontpageК
Условия использования сайта ^ ^ -л М
Условия использования сайта ^ ^ -л М
■Сежэс * 'ость онлайн
■Сежэс * 'ость онлайн
Mk«.i и ии"5)пГ"
Mk«.i и ии"5)пГ"
•Featured arks
•Featured arks
omW The шза popAw and widely used Open Source CMS Fi ^a'* - re vvorld
• tn*»'Cf>i
; _or*fCt>de, de^efcwrier*and свягкмхюп m«b секу
6BW t»t!nJK>fTS cm» vcrrrxf чй
omW The шза popAw and widely used Open Source CMS Fi ^a'* - re vvorld
• tn*»'Cf>i
; _or*fCt>de, de^efcwrier*and свягкмхюп m«b секу
6BW t»t!nJK>fTS cm» vcrrrxf чй
»чл» >П
Условия нсппльзоелю ta сеца®
Н
е
4И
т
Тест *< -г-а
Рис. 7.3. Экран предварительного просмотра показывает расположение модулей
Типы модулей
Чтобы понять, как модули работают в Joomla!, вам нужно сначала разобраться с типами модулей. Модули, показанные в Менеджере модулей, — это инстанции (примеры), созданные от различных типов модулей. Во втором справа столбце в списке модулей отображается тип каждого модуля.
Тип модуля можно сравнить с шаблоном сайта. Шаблон сайта используется в качестве пустой формы, заполняемой во время создания документа. Типы модулей работают, как шаблоны, на основании которых создаются примеры модулей. Например, в списке модулей вы найдете тип mod mainmenu. Этот
тип является базой для всех меню в Joomla!, а отдельные примеры содержат параметры каждого меню.
Когда вы устанавливаете модуль в системе, вы, на самом деле, устанавливаете не модуль, а новый тип модуля. Joomla! автоматически создает первую инстанцию установленного типа модуля — запись, которую вы увидите в Менеджере модулей.
Менеджер модулей показывает список всех доступных в системе инстанций модулей. Если вы нажмете кнопку Новый, то увидите список типов модулей (рис. 7.4), на основании которых были созданы существующие модули. После выбора типа модуля нужно будет указать параметры создаваемого модуля.
Модуль: [ новый ]Модуль: [ новый ]След Отменить ПомощьСлед Отменить Помощь
Модуль: [ новый ]
Модуль: [ новый ]
След Отменить Помощь
След Отменить Помощь
^ Материалы в архивеНавигатор сайтаЛента новостей (RSS/RDF)Hello FromГ* ВойтиИ Самые читаемыеГолосованиеПохожие материалыРазделы^ Материалы в архивеНавигатор сайтаЛента новостей (RSS/RDF)Hello FromГ* ВойтиИ Самые читаемыеГолосованиеПохожие материалыРазделы
^ Материалы в архиве
Навигатор сайта
Лента новостей (RSS/RDF)
Hello From
Г* Войти
И Самые читаемые
Голосование
Похожие материалы
Разделы
^ Материалы в архиве
Навигатор сайта
Лента новостей (RSS/RDF)
Hello From
Г* Войти
И Самые читаемые
Голосование
Похожие материалы
Разделы
Сайт Administrator
Модули
^ Баннер
^ Произвольный HTML-код
^ Нижний колонтитул
И Последние новости
Меню
^ Случайная новость
(* Произвольное изображение
Поиск
Статистика
Г" Кто онлайнГ" Кто онлайнf Syndicate
Г" Кто онлайн
Г" Кто онлайн
^ У*аррег
Рис. 7.4. При создании нового модуля нужно выбратьодин из существующих в системе модулей
Имена типов модулей стандартизированы: все они начинаются префиксом (modj, после которого следует имя модуля, пробелы в имени типа не допускаются, а все буквы должны быть строчными (’’маленькими") Имена инстан-
ций модулей, наоборот, могут содержать пробелы и символы любого регистра. Столбец Тип в Менеджере модулей отображает тип модуля, на основании которого была создана инстанция модуля.
Модули по умолчанию
Модули сайта, созданные по умолчанию при установке Joomla!, перечислены в табл. 7.1. Обратите внимание: на сайте может быть много меню, но все они принадлежат к одному типу модуля. Поэтому, когда вы создаете новое меню, вы создаете модуль, который будет управлять конфигурацией и отображением элементов меню.
Таблица 7.1. Модули, устанавливаемые по умолчанию при инсталляции Joomla!
Модуль
Описание
AU Menus
Организует вертикальные и горизонтальные меню
Archive
Управляет списком контента, который был перемещен в архив
Banner
Отображает рекламный баннер. Вы можете указать определенный ID клиента или же выбрать автоматическую ротацию баннеров
Latest News
Предоставляет список последнего контента в указанной категории
Login
Выводит форму для ввода логина и пароля
Newsflash
Выводит случайный материал из указанной категории
Polls
Позволяет организовать онлайн-голосование с сохранением результатов в базе данных MySQL. Управление модулем производится с помощью специального компонента, а в настройках самого модуля вы найдете только один параметр — суффикс стиля
Popular
Выводит список наиболее популярного контента указанной категории
Random Image
Выводит случайную картинку из указанного каталога с картинками
Related Items
Выводит контент, связанный с отображаемым в данный момент контентом
Search
Выводит поле ввода, в которое пользователь может ввести фразу для поиска по сайту
Sections
Показывает общий список разделов сайта
Statistics
Показывает статистику текущего Joomlal-сервера
Syndication
Позволяет посетителю подписываться на новостные ленты RSS и Atom
Weblinks
Выводит список ссылок, добавленных пользователями
Who s Online
Отображает количество гостей и количество зарегистрированных пользователей или же имена зарегистрированных пользователей (по желанию администратора)
Таблица 7.1 (окончание)
Модуль
Описание
Wrapper
Показывает внешний HTML-контент (с другого сайта) в iFrame-окне. Используется, если вам нужно отобразить контент другого сайта в дизайне вашего сайта
Функции большинства модулей понятны из названия модулей (например, модуль Search). Но функции некоторых модулей не очевидны, поэтому мы рассмотрим их подробнее.
Примечание переводчика
Названия модулей даже в русской версии Joomla! английские.
Модуль Wrapper (mod_wrapper)
Модуль Wrapper предоставляет мощные средства плавного перехода существующего сайта на Joomla!. позволяя отображать старый контент перед его импортом в базу данных Joomla!. Этот модуль позволяет выводить заданный URL в фрейме Joomlal-сайта. Другими словами, модуль как бы "внедряет" другой сайт в вашу Web-страницу. На рис. 7.5 я, используя модуль Wrapper, инкапсулировал сайт Coherent Visual в столбец u^erl моей главной страницы.
AbwdJwwe!AbwdJwwe!П*С«т«м*гП*С«т«м*гВ2 Su&5crbr so my t.-r?В2 Su&5crbr so my t.-r?Coherent VisualCoherent VisualWir fl toroy a hundreds of fret extensions you can add л*ун you need as your site grows Doni wait tock 8»<x>gh V* J -чп;^ a< rr Ln - raiv MK*Wir fl toroy a hundreds of fret extensions you can add л*ун you need as your site grows Doni wait tock 8»<x>gh V* J -чп;^ a< rr Ln - raiv MK*suarchsuarchPopulaiPopulaiРис. 7.5. Внешняя Web-страница отображается во фрейме вашего сайтаРис. 7.5. Внешняя Web-страница отображается во фрейме вашего сайта
AbwdJwwe!
AbwdJwwe!
П*С«т«м*г
П*С«т«м*г
В2 Su&5crbr so my t.-r?
В2 Su&5crbr so my t.-r?
Coherent Visual
Coherent Visual
Wir fl toroy a hundreds of fret extensions you can add л*ун you need as your site grows Doni wait tock 8»<x>gh V* J -чп;^ a< rr Ln - raiv MK*
Wir fl toroy a hundreds of fret extensions you can add л*ун you need as your site grows Doni wait tock 8»<x>gh V* J -чп;^ a< rr Ln - raiv MK*
suarch
suarch
Populai
Populai
Рис. 7.5. Внешняя Web-страница отображается во фрейме вашего сайта
Рис. 7.5. Внешняя Web-страница отображается во фрейме вашего сайта
У модуля Wrapper есть всего несколько важных параметров, которые вам нужно установить (рис. 7.6). Параметр Uri наиболее важен, поскольку он определяет местонахождение внешней страницы. В качестве данного параметра можно указать относительный адрес, если контент находится на вашем Web- сервере, или полный URL, если вам нужно получить контент удаленного сайта.
Параметры
* Параметры модуля Суффикс класса модуля
им
Полосы прокрутки С Нет ^ Да ^ АвтоШерима [юо*
Высота 200
Авто подбор высоты С нет ^ Да
Авто добавление С Нет ^ Да
Tai get
► Расширенные параметры
Рис. 7.6. Параметры модуля Wrapper определяют, как должен быть показан контент
Параметр Суффикс класса модуля позволяет установить ваш собственный суффикс стиля (для стилей, сохраненных в CSS-файле), который будет использоваться этим модулем. Другие параметры (Полосы прокрутки, Ширина. Высота, Авто подбор высоты) определяют внешний вид Joomla!- страницы. Включение параметра Автодобавление (значение Да) добавит префикс http:// или https:// к введенному URL, если URL не содержит имени протокола. Параметр Target устанавливает имя фрейма iFrame.
Модуль Wrapper создается по умолчанию при установке Joomla! из типа modwrapper. Вы можете создать собственные wrapper-модули, нажав кнопку Новый в Менеджере модулей и выбрав тип mod_wrapper.
Модуль Random Image (mod_randomjmage)
Модуль Random Image отображает случайную картинку из указанной вами папки. Данный модуль полезен для отображения случайного баннера. Модуль довольно важен для частых посетителей — они будут видеть, что сайт постоянно обновляется, и будут заходить на него чаще. Также этот модуль
можно использовать для показа рекламных баннеров, но для этого лучше использовать модуль Banners, который мы рассмотрим чуть позже.
Параметры модуля Random Image показаны на рис. 7.7. Параметры Тип изображения и Папка изображений определяют, как будут получены картинки. Параметр Ссылка задает гиперссылку для отображаемой картинки, а параметр Суффикс класса модуля — пользовательский стиль из CSS-файла.
Рис. 7.7. Параметры модуля Random Images определяют, откуда нужно брать картинки и как их нужно показывать
Для тестирования модуля укажите каталог /images/stories и тип картинок png. Выберите позицию модуля right для отображения модуля справа. Чтобы модуль отображался на всех страницах, выберите опцию Все. Вам осталось только определить порядок появления модуля. Теперь нужно проверить модуль. С установленными параметрами модуль будет отображен на главной странице 1оот1а!-сайта (на заданной позиции и в указанном порядке).
Как и в случае со всеми модулями по умолчанию, модуль Random Image — это инстанция типа mod random image. Вы можете создать новые модули этого типа с помощью Менеджера модулей.
Модули Banners и Advertisement
Модули Banners и Advertisement (оба модуля типа mod banners) управляют баннерными кампаниями, созданными с помощью компонента Banners Когда мы будем рассматривать компоненты, то поговорим о создании рекламных кампаний с помощью Joomla!. Сейчас же мы рассмотрим параметры модуля Banners
На рис. 7.8 представлены параметры, влияющие на отображение баннера. Параметр Количество задает количество баннеров, которые будут показаны за один раз. Параметры Клиент баннера и Категория позволяют выбрать рекламную кампанию, созданную с помощью компонента Banners. Параметр Искать по тегам — очень мощная опция, позволяющая выводить баннеры, соответствующие тегам (ключевым словам) отображаемой статьи. Теперь бейсбольные баннеры будут показаны на бейсбольных страницах, а футбольные баннеры — на футбольных страницах.
Рис. 7.8. Параметры модуля Banners
Параметры Порядок отображения, Текст заголовка, Нижний колонтитул управляют внешним видом модуля. На рис. 7 9 я разместил баннер в верхней части страницы, а также добавил нижний и верхний колонтитулы. Обратите внимание: в этом шаблоне текст нижнего баннера немного обрезан, но вы можете изменить шаблон для корректного отображения нижнего колонтитула баннера.
Рис. 7.9. Модуль Banners отображается в верхней части страницы с установленными колонтитуламиРис. 7.9. Модуль Banners отображается в верхней части страницы с установленными колонтитулами
Рис. 7.9. Модуль Banners отображается в верхней части страницы с установленными колонтитулами
Рис. 7.9. Модуль Banners отображается в верхней части страницы с установленными колонтитулами
Модуль Breadcrumbs (mod-breadcrumbs)
Модуль Breadcrumbs (рис. 7.10) отображает навигационную строку — путь к текущей странице сайта. Модуль может использоваться для быстрого перехода вверх по иерархии сайта. Модуль полезен не только для пользователей, но и для поисковых машин, которые правильнее проиндексируют ваш сайт.
О г ле 1нМХТИО г ле 1нМХТИРЕКЛАМАРЕКЛАМА
О г ле 1нМХТИ
О г ле 1нМХТИ
РЕКЛАМА
РЕКЛАМА
PV PRINT winPV PRINT winНоте ♦ Книги но Lmux ♦ Серверное применение I «ши ♦ Аннотация
PV PRINT win
PV PRINT win
Аннотация
Автор: Administrator 09-04 2008 17:06
Рис. 7.10 Модуль Breadcrumbs отображает путь к текущей странице сайта
Параметры модуля Breadcrumbs (рис. 7.И) в основном относятся к отображению пути. Переключатель Главная определяет, будет ли показан самый верхний уровень (Ноте) иерархии. Параметр Разделитель текста позволяет вам переопределить разделитель по умолчанию (► ►).
Параметры v Параметры модуля
Главная С нет ^ Да
Текст главной страницы Ноте
Разделитель текста
Суффикс класса модуля
> Расширенные параметры
Рис. 7.11. Параметров у модуля Breadcrumbs немного
Модуль Syndication (mod_syndicate)
Модуль Syndication создает новостную ленту для страницы, на которой он расположен. Новостные ленты (наиболее часто используются RSS и Atom) — это технологии, обеспечивающие автоматическое разделение контента с другими пользователями и другими Web-сайтами. Если у сайта есть новостная лента, это означает, что где-то на Web-сервере есть файл, действующий как оглавление самых последних статей сайта.
Для чтения данного файла нужна специальная программа— агрегатор. Это может быть как обычное настольное приложение, получающее новости с разных сайтов и отображающее самые последние статьи, так и онлайн- приложение, получающее новости с разных сайтов и публикующее их на другом сайте (конечно, с соответствующими атрибутами). Популярным Web- агрегатором (онлайн-агрегатором) является Bloglines (www.bloglines.com). Кроме того, агрегаторы уже встроены в современные браузеры — Internet Explorer 7, в Mozilla Firefox (функция Live Bookmark), Mozilla Thunderbird (команда New Account | RSS News & Blogs).
Модуль Syndication автоматически генерирует новостную ленту по статьям Joomla!-сайта, на котором он запущен. Модуль отображает специальную ссылку на файл новостной ленты (рис. 7.12).
Рис. 7.12. Ссылка на новостную лентуРис. 7.12. Ссылка на новостную ленту
Рис. 7.12. Ссылка на новостную ленту
Рис. 7.12. Ссылка на новостную ленту
Если вы исследуете файл новостной ленты (рис. 7.13), то увидите, что оглавление вашего сайта сохраняется в XML-файле в формате RSS или Atom. В Менеджере модулей вы можете выбрать формат новостной ленты (RSS или Atom). Хотя я рекомендую использовать RSS, вы можете использовать любой формат. Также в настройках этого модуля вы найдете опции, влияющие на его внешний вид.
Модуль Feed Display (mod_feed)
Модуль Syndication используется для публикации RSS-лент для других сайтов, а модуль Feed Display, наоборот, позволяет на вашем Joomlai-сайте публиковать новости других сайтов. На рис. 7.14 я подписался на новости CNN и
Рис. 7.13. Новостная лента в формате RSS (XML-файл)
Ads by Joomial
। юдр-зоне#? ~
Feed Your Brain with...
Books from the Joomial Shop
© 2006 Joomla JumpSlart Все права защищены
Joomial — свободное программное обеспечение, распространяемое по
лицензии G U'GPL. Сборка - SEC Joomla
Feed Display
CNN tom
CNN com delivers up-to the- mlnute news and information on Ihe lalesl top stories, weather, entertainment, politics and more.
CMil.com
• Japan prepare tor Olympic torch relay The Olympic flame arrived in Tokyo Friday morning from Australia alter completing a relay in Canberra only
marginally plagued by anti-China protests
Рис. 7.14. Модуль Feed Display показывает три последних новостипрямо на вашей Joomla’-странице
с помощью модуля Feed Display вывел три последних статьи в правой части страницы
Настройка модуля Feed Display предельно проста. Найдите сайт, предоставляющий RSS- или Atom-ленту своего контента (об этом обычно свидетельствует специальная пиктограмма на главной странице). Скопируйте адрес ссылки новостного файла Этот адрес нужно установить в настройках модуля в качестве значения параметра URL ленты RSS (рис. 7.15), после этого вы сможете получать новости другого сайта на вашем Joomlal-сайте.
Рис. 7.15. Для работы модуля достаточно установить всего один параметр — URL ленты RSS
Модули Main Menu, Key Concepts, User Menu, Examples Pages, Top Menu и Resources (mod_mainmenu)
Все меню, отображаемые Joomla!, ассоциируются с модулем, который на самом деле и отвечает за вывод самого меню. Все меню Joomla! основаны на типе модуля modmainmenu. При установке Joomla! будет автоматически создан модуль Main Menu — инстанция от типа mod mainmenu. Этот модуль используется на главной странице и не может быть удален из системы Большинство параметров типа mod mainmenu влияет на отображение меню на странице (рис. 7.16). Для большинства сайтов подходят параметры по умолчанию, но доступно много опций, позволяющих полностью контролировать меню без изменения кода.
Параметры* Параметры модуля Название меню mainmenuСтльменк» |СписокНачальны i уровень оПоследней уровень :0Всегда пока «ыаазь ^^.вложенные подпункты * ^®т 4Параметры* Параметры модуля Название меню mainmenuСтльменк» |СписокНачальны i уровень оПоследней уровень :0Всегда пока «ыаазь ^^.вложенные подпункты * ^®т 4ПараметрыПараметрыПараметры модуляПараметры модуля► Расширенные параметры► Расширенные параметрыУстаревшие параметрыУстаревшие параметрыПока и» вать иконкиПока и» вать иконкиВыравнивание карп нкиВыравнивание карп нкиРаскрывать менмРаскрывать менмАктивировать родителяАктивировать родителяНет ^ ДаНет ^ ДаСлева ^ СправаСлева ^ СправаНет ДаНет ДаНет ДаНет ДаНазначен ie Target* Расширенные параметры*■ Устаревшие параметрыНазначен ie Target* Расширенные параметры*■ Устаревшие параметрыПолное активное выделен теПолное активное выделен теНет С даНет С даВыравнивая те картинкиВыравнивая те картинки| ШАБЛОН| ШАБЛОНВь равимвание карм ню®Вь равимвание карм ню®|- Использоить по умолчанию|- Использоить по умолчаниюВыравнивание картинки2Выравнивание картинки2[ Использоить по умолчанию - V
Параметры
* Параметры модуля Название меню mainmenu
Стльменк» |Список
Начальны i уровень о
Последней уровень :0
Всегда пока «ыаазь ^^.
вложенные подпункты * ^®т 4
Параметры
* Параметры модуля Название меню mainmenu
Стльменк» |Список
Начальны i уровень о
Последней уровень :0
Всегда пока «ыаазь ^^.
вложенные подпункты * ^®т 4
Параметры
Параметры
Параметры модуля
Параметры модуля
► Расширенные параметры
► Расширенные параметры
Устаревшие параметры
Устаревшие параметры
Пока и» вать иконки
Пока и» вать иконки
Выравнивание карп нки
Выравнивание карп нки
Раскрывать менм
Раскрывать менм
Активировать родителя
Активировать родителя
Нет ^ Да
Нет ^ Да
Слева ^ Справа
Слева ^ Справа
Нет Да
Нет Да
Нет Да
Нет Да
Назначен ie Target
* Расширенные параметры
*■ Устаревшие параметры
Назначен ie Target
* Расширенные параметры
*■ Устаревшие параметры
Полное активное выделен те
Полное активное выделен те
Нет С да
Нет С да
Выравнивая те картинки
Выравнивая те картинки
| ШАБЛОН
| ШАБЛОН
Вь равимвание карм ню®
Вь равимвание карм ню®
|- Использоить по умолчанию
|- Использоить по умолчанию
Выравнивание картинки
2
Выравнивание картинки
2
Вь рави «ванне карги <ки Г
Выравн» в н те картинки4Выравн» в н те картинки4| - Ио пользовать по умолчанию| - Ио пользовать по умолчаниюВь равнивак te карп» ки5Вь равнивак te карп» ки5(• Испольооьать по умолчанию(• Испольооьать по умолчанию3 |; Исп6Л1,д0,1Тк по умолчанию
Выравн» в н те картинки
4
Выравн» в н те картинки
4
| - Ио пользовать по умолчанию
| - Ио пользовать по умолчанию
Вь равнивак te карп» ки
5
Вь равнивак te карп» ки
5
(• Испольооьать по умолчанию
(• Испольооьать по умолчанию
Вь ревнив вне картинкиВь ревнив вне картинки
Вь ревнив вне картинки
Вь ревнив вне картинки
| - Испольоо»ать по умолчанию • ^^(
Раздел нель
Разделитель
Рис. 7.16. Вы можете изменить любые параметры mod_mainmenu: от стиля до иерархии
Примечание переводчика
В самой последней версии Joomla! (на момент написания этих строк) часть параметров была перемещена в группу Устаревшие параметры, что и показано на рис. 7.16.
Вы можете установить следующие параметры типа modmainmenu:
Суффикс класса меню — устанавливает суффикс, используемый для задания пользовательского стиля меню;
Суффикс класса модуля— устанавливает суффикс, используемый для задания пользовательского стиля модуля;
Название меню — указывает название записи, управляемой Менеджером меню и присоединенной к этому модулю;
Стиль меню — позволяет выбрать один из форматов меню: список, вертикально, горизонтально или плоский список. Список и плоский список
используют теги <ul> и <ii> для определения меню. Для создания вертикальных и горизонтальных меню используются HTML-таблицы;
Начальный уровень — уровень, с которого нужно начать отображение меню;
Последний уровень — уровень, на котором следует завершить отображение меню;
Всегда показывать вложенные подпункты — показывать все элементы подменю, вне зависимости от того, активно ли родительское меню или нет;
Полное активное выделение — поддержка активного выделения ссылок. Включение этой опции приведет к потере XHTML-совместимости;
Показывать иконки меню — показывает пиктограммы для меню, если они определены;
Выравнивание картинки меню — если включен показ пиктограмм меню, этот параметр позволяет задать выравнивание (по левому или по правому краю) пиктограмм:
Раскрывать меню — если этот параметр включен (значение Да), то все подменю всегда будут видимы, не зависимо от того, открыл ли меню пользователь или нет;
Активировать родителя — если этот параметр включен (значение Да), то будут включены идентификаторы всех родительских меню;
Выравнивание картинки — из этого раскрывающегося списка вы можете выбрать, как будут выровнены картинки. Значение по умолчанию — ШАБЛОН, т. е. картинки будут выровнены, как указано в шаблоне, но вы можете выбрать другой тип выравнивания или же вообще отказаться от него;
Выравнивание картинки 1, ..., Выравнивание картинки 6-— данные параметры используются, если для предыдущего параметра выбрано значение Использовать значения ниже. Если это так, то данные 6 параметров будут использованы для указания выравнивания картинок для различных уровней вложенности списка. Все картинки, которые будут использоваться для этих шести списков, содержатся в каталоге \images:
Разделитель — позволяет указать символ (или символы), используемый как разделитель между элементами горизонтального меню:
Разделитель— позволяет указать символ (или символы), используемые между первым и последним элементом горизонтального меню;
♦ Target— задает цель ссылок (например, открывать ссылки в новом окне1 или в существующем).
Примечание переводчика
В русской версии в настройках модуля меню вы найдете два параметра с именем Разделитель в английской версии первый параметр называется Spacer а второй — End Spacer.
Модули администратора
Модули администратора работают подобно обычным модулям (модулям сайта), но только в интерфейсе администратора. Вы можете добавить новые модули для реализации новых функций, например, дополнительные отчеты, дополнительная статистика, пользовательские панели инструментов и другие функции, позволяющие сделать администрирование Joomial-сайтом еще более удобным. Поскольку дополнительные возможности по администрированию могут понадобиться только очень большим сайтам, подробное рассмотрение модулей администратора выходит за рамки этой книги.
В табл. 7.2 приведен список всех модулей администратора, устанавливаемых по умолчанию. Для себя вы можете ознакомиться со списком модулей администратора, если намерены заметить один из них на посторонний модуль, чтобы расширить функциональность сайта.
Таблица 7.2. Модули администратора, устанавливаемые по умолчанию
Модуль
Описание
Components
Показывает список установленных компонентов, как вкладку в панели управления
Full Menu
Позволяет отображать меню интерфейса администратора
Latest Items
Показывает последний контент, добавленный на сайт
Logged
Отображает список пользователей, пребывающих на сайте в данный момент
Menu Stats
Генерирует статистику меню — самая последняя вкладка в панели управления
Online Users
Модуль выводит список пользователей, авторизованных в административной панели сайта. Количество пользователей отображается в верхней части окна (возле кнопки Выйти)
Pathway
Отображает "путь" администратора
1 Цель — _blank. — Пер
Таблица 7.2 (окончание)
Модуль
Описание
Popular
Выводит список наиболее популярных страниц (вкладка модуля находится на главной странице интерфейса администратора)
Quick Icons
Добавляет пиктограммы быстрого доступа в панель управления
System Message
Управляет системными сообщениями, всплывающими и диалоговыми окнами
Toolbar
Модуль показывает значки панели управления, используемые для управления действиями в административной зоне
Unread Messages
Отображает количество непрочитанных сообщений (в верхней части окна администратора)
Компоненты сайта
Компоненты выполняют гораздо больше функций, чем модули, и обычно обладают специальным конфигурационным интерфейсом, именно поэтому у компонентов есть собственное подменю в меню интерфейса администратора JoomlaL
Из всех компонентов, устанавливаемых по умолчанию, только пять обладают видимым интерфейсом пользователя: Banners (Баннеры), Contacts (Контакты), Newsfeeds (Ленты новостей), Polls (Голосования) и Weblinks (Каталог ссылок). У каждого из этих компонентов есть свое подменю в меню Компоненты.
Компонент Banners
Компонент Banners (Баннеры)— это система отображения баннеров, которая может быть использована в коммерческих и некоммерческих целях. Для каждого баннера ведется статистика показов (количество впечатлений— в терминологии Joomla!) и щелчков (сколько раз посетители щелкнули на баннере). Компонент Banners работает в паре с модулем Banners, описанным ранее.
Список всех созданных баннеров отображается Менеджером баннеров (рис. 7.17). В столбцах таблицы Менеджера баннеров отображается статистика по каждому баннеру — количество впечатлений, количество щелчков и процентное соотношение показов/щелчкам. Баннеры, созданные с помощью Менеджера баннеров, могут показываться на странице с помощью модулей Banners и Advertisement, описанных ранее.
Вы можете изменить параметры отслеживания, нажав кнопку Параметры в окне Менеджера баннеров. В появившемся окне (рис. 7.18) вы можете активировать или деактивировать ежедневное отслеживание баннеров и устанавливать префикс тегов. Ежедневное отслеживание баннеров требует больше места на диске, но зато предоставляет более подробную информацию о баннерах.
Рис. 7.17 Менеджер баннеров показывает асе баннеры и статистику по ним
Конфигурация
Отслеживать 1 Нет -' Ла впечатления
Отслеживать клики <*j цут. С , да
Префикс тегов
Рис. 718. Окно конфигурации Менеджера баннеров позволяет изменитьпараметры отслеживания баннероа
Вы можете создать новый баннер, нажав кнопку Новый или же отредактировав один из существующих баннеров, щелкнув на его имени. Вы увидите довольно много параметров (рис. 7.19), позволяющих настроить отображение баннера так, как вам нужно. Если вы хотите установить пользовательский код баннера, вам нужна поддержка JavaScript.
Рис. 7.19. Редактирование параметров баннера
Графические файлы баннеров расположены в каталоге \images\banners. Чтобы поместить файлы (картинки) в этот каталог, вы можете использовать Медиаменеджер или FTP-клиент. После загрузки файла картинки его имя окажется в раскрывающемся списке Выбор картинки баннера.
Интерфейс Баннеры (Компоненты | Баннер | Баннеры) управляет баннерами, а Менеджер клиентов баннеров (Компоненты | Баннер | Клиенты) управляет клиентами или рекламными кампаниями (рис. 7.20). С одним клиентом может быть связано много баннеров.
Вы можете нажать кнопку Новый для создания нового клиента. Параметры клиента довольно просты (рис. 7.21): имя клиента и контактная информация. Фактически, запись клиента — это дополнительный тип организации, дополняющий категории рекламных кампаний. А для изменения категорий используется отдельный интерфейс (Компоненты | Баннер | Категории), который можно использовать, если вы предпочитаете организовать баннеры по категориям, а не по клиентам.
Рис. 7.20. Менеджер клиентов баннеров управляет клиентами и связанными с ними баннерами
flU Клиент баннера: [Новый]flU Клиент баннера: [Новый]е V ©О
flU Клиент баннера: [Новый]
flU Клиент баннера: [Новый]
Сохранить Применить Отме-ить Помощь
Дополнительная информацияДополнительная информацияПодробности
Дополнительная информация
Дополнительная информация
Имя клиента
Контактное имя:
Контактный e-mail:
Рис. 7.21. Вы можете создать нового клиента и организовать для него баннерную кампанию
Компонент Contacts
Joomla! обладает небольшой системой управления контактами в пределах CMS. Контакты, сохраненные в этом компоненте, могут быть связаны с учетными записями Joomlai-пользователей, что предоставляет дополнительные удобства при общении через интерфейс Joomla!. Контакты отображаются Менеджером контактов (рис. 7.22). Если контакт привязан к учетной записи пользователя, то имя пользователя будет отображено в столбце Связать с пользователем.
При редактировании существующего контакта (рис. 7.23) или при создании нового контакта вы можете заполнить все необходимые параметры (имя,
Рис. 7.22. Менеджер контактов отображает список контактов со столбцом Связать с пользователем, который показывает, с каким пользователем связан контакт
*5 Контакт" [Правка]
Подробности
На i в мыс
Псевдоним:
(Дупликация:
Категория:
поль* ваятелем:
Порядок ПОК1Ж
Уровень доступа:
2006.04-26-04.59-05
с нет ₽ д»
Телефон:
Мобильным:
Вэб-самт
Дополни! е*ная еанформация:
II «ооражение кои f шла-
[Выберите тартинку я#
£V о и
СохранитьПрименитЗакрыть Помовд
Параметры
* Параметры контакта
Нате анне
Должность
Адрес (улица)
Горвд
Республика
Почтовый индекс
Телефон
Мобильным
Вэб-саш
Дополи цельная информация
Изображение контакта
^ Спрятать <• Показать
Спрятать Показать ^ Спрятать Показать
Спрятать ^* Показать
Спрятать ^ Показать
Спрятать Показать
Спрятать ^ Показать
Спрятать •• Показать
Спрятать ^* Показать
Спрятать Показать
Спрятать Показать
Спрятать Показать
Спрятать Is Показать
Спрятать Р Показать Is" Спрятать ^ Пока атъ
Расширенные пзрдметры
Параметры Е Mail-a
Рис. 7.23. Окно редактирования контактов позволяет вам записатьасю необходимую контактную информацию
улицу, город, телефон и т. д.) — как при использовании отдельного менеджера контактов. А поскольку Joomla! — это Web-приложение, то данная информация будет доступна с любой точки Земного шара, где есть соединение с Интернетом.
Менеджер категорий компонента Contacts очень похож на Менеджера категорий статей. Однако категории, созданные в Менеджере контактов, хранятся отдельно от категорий для статей и пользователей.
Компонент Newsfeeds
В отличие от модуля Feed Display, который появляется в заданной позиции шаблона (например, справа), компонент Newsfeed занимает центральную часть страницы. Данный компонент может быть привязан к меню, что позволяет легко просматривать/читать любую статью ленты новостей (в отличие от модуля). Фактически, вы можете создать раздел ленты новостей, который будет работать как программа-агрегатор на вашем Joomla'.-сайте.
Все ленты новостей определяются в Менеджере лент новостей (рис. 7.24, где список лент отображает название ленты, категорию, ID, число статей, лимит времени кэширования и порядок).
Рис. 7.24. Менеджер лент новостей отображает список лент и их параметры
При создании ленты новостей (рис. 7.25) вам нужно указать только название ленты, выбрать категорию и задать ссылку на файл ленты. Вы также можете указать максимальное количество статей и лимит времени кэширования. Также можно включить параметр Текст слева направо для арабского и других RTL-языков.
Рис. 7.25. Создание новой ленты: нужно указать имя, выбрать категорию и указать файл ленты
Компонент Polls
Вы можете создать голосования с помощью компонента Polls (Голосования), которые будут отображены модулем Polls Все текущие голосования отображаются в Менеджере голосований (рис. 7.26). С помощью данного менеджера вы можете увидеть, какие голосования были наиболее популярными (столбец Голоса), а также просмотреть количество опций для каждого голосования (столбец Опции).
Компонент Polls (Голосования) позволяет хранить до 12 опций для каждого голосования (рис. 7.27). Он также предоставляет возможность устанавливать время задержки между голосованиями (во избежание "накрутки" счетчиков голосования). Значение по умолчанию— 86 400 секунд, что эквивалентно одному дню. Вы можете существенно увеличить это значение, например, до 31 миллиона (почти год), чтобы один и тот же посетитель не смог проголосовать два раза.
10 Зак. 468
Рис. 7.26. Менеджер голосований выводит список существующих голосований и предоставляет общую информацию о каждом опросе
Рис. 7.27. При создании голосования вы можете определить до 12 вариантов ответа
Компонент Weblinks
Компонент Weblinks (Каталог ссылок) позволяет зарегистрированным пользователям предлагать ссылки, которые могут стать частью общего списка ссылок. Данная возможность— палка о двух концах. С одной стороны, она полезна для создания виртуального сообщества, где каждый пользователь может внести свою лепту в развитие сайта. С другой стороны, вам нужно будет регулярно просматривать добавленные ссылки и удалять спам или ссылки на нежелательный контент. Joomla! позволяет администратору одобрять или отклонять предложенные пользователям ссылки, но вам все равно придется постоянно просматривать их.
Для каждой ссылки Joomla! позволяет вам указать следующую информацию (рис. 7.28): название, категорию, URL, описание, порядок (определяет, где именно ссылка появится в списке), флаги подтверждения и публикации, а также цель (определяет, будет ли открыта ссылка в новом окне или в текущем).
Рис. 7.28. В параметрах ссылки вы можете указать цель для ссылки
Примечание
Когда вы публикуете внешнюю ссылку, вы должны решить, хотите ли, чтобы пользователь покинул ваш сайт и перешел на другой. Например, на вашей странице может быть много ссылок-сносок для отображаемой статьи. Если пользователь щелкнет на такой сноске, он перейдет на другой сайт. Но что делать, если он не дочитал статью или хотел посетить еще несколько ссылок? Вы можете установить значение В новом окне с навигацией для параметра Где
открывать ссылку в результате браузер откроет новое окно и отобразит сайт, на который указывает ссылка Но окно вашего сайта все еще будет на экране пользователя.
Плагины сайта
х#, Менеджер плагиновх#, Менеджер плагиновПрактически на каждом сайте плагины работают за сценой. Вы можете изучить существующие плагины с помощью Менеджера плагинов (рис. 7.29), вызвать который можно через меню Расширения. Но всего у нескольких плагинов есть параметры, которые могут значительно повлиять на функции системы.
х#, Менеджер плагинов
х#, Менеджер плагинов
#
г
На;ван «е плагина
Включен
Сортировка^ 1ft
Доступ
Тип*
Файл
ID
1
г
Authentication - Joorrda
V
1
Всем
authentication
#oomla
1
2
г
Authentication - LDAP
о
*
v
2
Всем
auth-nbcat on
Idap
2
3
г
Authentication - OpenlD
о
*
3
Всем
authentication
openid
4
4
г
Authentication - GMai
о
*
4
Всем
authentication
gmai
3
5
г
Content - Page Navigation
V
*
2
Всем
content
pagenavigation
17
6
г
Content - Rating
V •
*
4
Всем
content
vote
13
7
г
Content - Email Cloaking
^Включен]
*
5
Всем
content
emailcloak
14
8
г
Content - Code Hightlighter (GeSHi)
О
*
5
Всем
content
flesh
15
9
г
Content - Load Module
V
6
Всем
content
loadmodule
16
. Выберите состоание -
- Выберите
Включить Выключить Правка Помоицз
Выполнить 11 Сброс
Рис. 7.29. Менеджер плагинов выводит список доступных в системе плагинов
Хотя плагины — самый мощный тип расширений, они обычно выполняют специфические функции и поэтому работают практически незаметно. Обычно плагины связаны с каким-то компонентом или модулем для предоставления пользовательского интерфейса.
Так как аутентификация и защита играют огромную роль в электронной коммерции, мы рассмотрим системные плагины непосредственно в гчаве 1L когда будем настраивать виртуальный магазин. Пока вам можно изучить плагины редакторов (TinyMCE и XStandard Lite) и плагин System — Legacy.
У расширений редакторов есть несколько полезных параметров, влияющих на процесс редактирования (например, размер окна редактора). Плагин System — Legacy позволяет использовать старые (для версии Joomla! 1.0) модули, компоненты, плагины и шаблоны.
Резюме
В этой главе мы рассмотрели три типа расширений Joomla!: модули, компоненты и плагины. У каждого типа расширений свои возможности, что позволяет воплощать с их помощью определенный ряд задач Модули хороши для дизайна (поэтому они могут появляться в любой части страницы) и для минимального взаимодействия с пользователем. Компонент может использоваться для создания полноценного интерфейса — как пользователя, так и интерфейса администратора. Плагины работают на самом низком уровне, позволяя реализовать низкоуровневые интерфейсы вроде WYSIWYG-редактора для статей.
Часто несколько типов расширений входит в состав одного пакета. Например, расширение Polls (Голосования) содержит компонент для создания, редактирования и управления опросами, а для вывода самих опросов и для организации взаимодействия с пользователем предназначен модуль Poll.
В этой главе были рассмотрены расширения, устанавливаемые по умолчанию при инсталляции Joomla!. Вы можете установить расширения посторонних разработчиков, чем расширите возможности Joomla!. В следующей главе мы рассмотрим несколько полезных компонентов, используемых для организации виртуального сообщества.
ГЛАВА 8
Функции для Web-сообщества
В мире динамического контента Web 2.0 у сайта может быть высокая посещаемость, только если он сможет культивировать активное Web-сообщество. К счастью, Joomla! — идеальная CMS для построения такого сообщества. Вы уже знакомы с некоторыми встроенными расширениями (например, голосованием), предоставляющими интерактивные функции. В этой главе вы познакомитесь с другими Joomla'-расширениями, предоставляющими пользователям возможность взаимодействовать с вашим сайтом. Вы также изучите преимущества и недостатки технологий развертывания сообщества.
Вопреки мнению многих Web-мастеров, создание виртуального сообщества не гарантирует увеличение посещаемости. Вы не можеге просто создать Web- сайт и оставить его, ожидая, что пользователи будут добавлять новый контент и увеличивать трафик. На самом деле, поддержка виртуального сообщества требует больше сил, чем просто поддержка сайта. Однако, подобно депозиту в банке, ваши усилия, вложенные в сайт, окупятся с процентами в виде увеличения посещаемости и трафика.
Поскольку вы хотите, чтобы ваши усилия были приумножены, очень важно определить направление, где ваш сайт был бы первым. Желательно, чтобы это была не просто идея — нужен четкий план. Создание профиля сайта — превосходный способ определить роль вашего виртуального сообщества и его аудиторию.
Профиль сайта
Сложнее всего Web-мастеру решить, чем должен быть его сайт. На первый взгляд, это довольно простая задача. Например, если вы производитель обуви (как, например, Nike), то должны сконцентрироваться на обуви, не так ли? Да, но не совсем. Одного посещения сайта Nike хватит, чтобы понять: Nike не
заинтересована в простом виртуальном магазине для продажи своей обуви. Компанию больше интересует продвижение своей продукции, что даст больше результатов, чем обычный виртуальный магазин.
Две трети главной страницы Web-сайта Nike — это видео, посвященное обуви. Что же занимает оставшуюся часть главной страницы? Оставшееся пространство занимает каталог продукции (изображены часы с эмблемой Nike, футболка и большой баскетбольный мяч) и ссылка заказа обуви.
Наверное, Nike зря выделяет так мало места для продажи обуви? Я так не думаю. Nike понимает, что люди не будут покупать обувь, часто стоящую очень дорого, только для того, чтобы носить. Они продают стиль. Они продают марку. И Nike знает, на чем нужно сконцентрироваться— на стиле, а не на продаже.
Вы можете ничего не продавать на вашем Joomlal-сайте. но должны точно определиться с целевой аудиторией сайта и адаптировать для нее контент и дизайн.
Все эти соображения важны для статического Web-сайта, для сайта виртуального сообщества они означают разницу между процветающим мегаполисом и заброшенным виртуальным городом-призраком. Так, у Web-сайта Hi-End-производителя не должно быть приятной "домашней" атмосферы. С другой стороны, "гладкий" современный дизайн может работать против вас и вашего онлайн-сообщества — не всем он нравится.
В этой главе вы узнаете, как соединить воедино профиль сайта с его целевой аудиторией. Профи ib сайта— это не обычный документ. Он может быть заполнен примечаниями и схемами. Наиболее важная часть построения профиля сайта — это не сам профиль, а процесс его построения, в результате которого у вас сформируется четкое представление о вашем сообществе.
Определение аудитории сайта
Лучше всего начать построение профиля сайта с мысли о ваших посетителях. Подумайте, кому будет интересен ваш сайт? Начните приводить общие характеристики, а затем более конкретные:
Они социальны или несоциальны в их обычной жизни?
Они предпочитают общаться по телефону или по e-mail?
Какие типы сайтов они уже посещают?
♦ Какая информация им необходима или же им больше необходимо общение, а не информация?
Если имеется журнал, связанный с той же предметной областью, что и ваш сайт, обязательно просмотрите его: вы сможете понять, кому этот журнал интересен. Особое внимание уделите рекламным объявлениям: это поможет вам определить, какая продукция и какие услуги будут интересны вашей целевой аудитории.
На этом ваше исследование журнала не заканчивается. Много журналов производят обширное маркетинговое исследование с целью определения целевой аудитории, и обычно данная информация свободно доступна. Журналы бесплатно предоставляют эту информацию потенциальным рекламодателям. Для получения данной информации вам достаточно связаться с рекламным отделом, хотя иногда она доступна на Web-сайте журнала.
Почти столь же важное, как начальное проектирование аудитории сайта, его продолжение, позволяющее определить, как близко ваш профиль сайта соответствует реальным посетителям. Постоянно обновляя вашу начальную концепцию (чтобы она соответствовала действительности), вы можете создать сообщество самоподдержки, когда ваш сайт будет развиваться практически без вашего вмешательства.
Посмотрите на свое сообщество
Один из самых важных факторов при выборе сообщества — это финансовая демография. Непрофессиональные Web-разработчики начинают с интересной им темы сайта и делают ее пунктом отправления. Однако это не лучшее место для старта.
Вернемся к сайту Nike. Возможно, первоначально этот узел планировался как сайт для профессиональных атлетов. Ведь технические преимущества обуви Nike могут оценить лишь профессионалы, но они также могут себе позволить эту обувь— их финансовая демография ясно указывает на определенную нишу рынка. Но что делать с теми, кто только мечтает стать профессиональным атлетом? Ведь таких людей гораздо больше.
Предположим, что у вас нет маркетингового исследования для обширного статистического обзора, поэтому вам нужно посетить различные сайты похожей тематики. Это поможет вам осознать глубину рынка, которому вы хотите соответствовать с помощью виртуального сообщества.
Что нужно вашему сайту?
Развитие сообщества можно сравнить с инвестициями в недвижимость. Если вы покупаете акций на сумму $10 000, вам в большинстве случаев нужно за-
платить эти $10 000. Если же вы делаете вложение $10 000 в недвижимое имущество, то получите контроль инвестиций на сумму $100 000. Если акции удваиваются, то вы получите дополнительные $10 000. Если же удваиваются ваши инвестиции недвижимого имущества (до $200 000), то возвращаете банку ссуду $90 000 и получаете $110 000, которые вы сделали всего из $10 000.
Попытайтесь посмотреть на функции сообщества сквозь призму финансов. Если вы потратите час на создание контента Web-сайта, у вас не будет ничего, кроме контента, который можно воспроизвести за час. Напротив, если вы потратите этот же час на создание сообщества, ваши вложения времени многократно приумножатся. Ведь каждый привлеченный посетитель сможет провести на вашем сайте еще как минимум час.
Хотите увидеть этот принцип в работе? Тогда посмотрите на Wikipedia. Мне очень нравится читать работы Джека Вудфорда (Jack Woodford), написавшего в середине 1900-х годов серию "как написать романы". Я потратил минимум 12 часов неоплаченного времени для создания странички в Wikipedia, посвященной этому писателю. Десятки тысяч других людей делают то же самое, выбирая интересную им тематику.
Если вы можете предоставить платформу сообщества для других людей, они построят для вас сайт. Это совсем не означает, что вам не нужно ничего делать, но работа, проделанная сообществом, создаст гораздо больший сайт, чем труд одного человека или небольшой организации.
В табл. 8.1 приведены часто используемые функции сообщества с оценкой сложности установки, обслуживания и "дивиденды", которые вы получите после реализации той или иной функции.
Таблица 8.1. Инвестиции и дивиденды функций сообщества Joomla!
Расширение
Установка
Обслуживание
Дивиденды
Новостная лента
Легко
Очень легко
Низкие
Рейтинг статей
Очень легко
Очень легко
Низкие
Голосования
Легко
Легко
Низкие
Книга жалоб и предложений
Легко
Легко
Средние
Гостевая книга
Легко
Сложно
Низкие
Комментарии
Легко
Средняя сложность
Высокие
Страницы профиля пользователя/ пользовательские блоки
Легко
Средняя сложность
Средние
Календарь событий
Легко
Средняя сложность
Высокие
Таблица 8.1 (окончание)
Расширение
Установка
Обслуживание
Дивиденды
Wiki
Сложно
Сложно
Высокие
Форум
Сложно
Сложно
Высокие
Выберите расширения, которые будут соответствовать вашему профилю сайта, и используйте их для получения максимального эффекта. Однако имейте в виду: не нужно устанавливать все расширения ■— это отрицательно скажется на вашем сообществе.
Создание домашнего сайта для других групп
Сделав сайт интерактивным, вы превратили его в эдакую машину для его же продвижения. У большинства сайтов нет этих функций по одной из двух причин: или Web-провайдер не разрешает установку интерактивных функций, или же (что более вероятно) Web-мастер просто не знает, как их реализовать.
Один из превосходных методов популяризации сайта — это предоставление его возможностей другим сайтам. Например, если ваш сайт посвящен кэм- пингу и у вас есть форум, а у Web-мастера другого кэмпинг-сайта нет возможности организации форума, предложите ему и его пользователям использовать ваш сайт. Если на вашем сайте продаются аксессуары для стрельбы из лука, предложите ресурсы вашего сайта местным спортивным клубам. Если ваш сайт сфокусирован на проблемах окружающей среды, предложите его услуги местным группам "зеленых".
В результате сотни групп пользователей получат свое онлайн-место встречи. Благодаря современным механизмам поиска им даже не нужно быть организованной группой. Например, мне нравится посещать распродажи старых книг. Такие распродажи плохо рекламируются, и вы нигде не найдете их общего списка в округе Лос-Анджелеса. Как-нибудь в будущем я создам в Joomla! календарь событий, где бы другие пользователи смогли создать график таких распродаж. Когда я посещаю одну из таких распродаж, я вижу 10% одних и тех же самых людей. Это достаточно большая группа: если хотя бы 10 человек будут обновлять календарь событий, то к сайту будут привлечены сотни посетителей, просматривающих этот календарь.
Сообщество изменяет направление вашего сайта
Наверное, вы заметили, что какая-то определенная часть вашего сайта получает больше внимания, чем вы ожидали (в главе 9 мы будем рассматривать статистику сайта). Сконцентрируйтесь на самой популярной области вашего сайта, чтобы понять интересы ваших посетителей.
Если большинство ваших посетителей интересуется продлением жизни лазерного принтера, скорее всего, им будет интересно, где можно купить хорошую бумагу. Создайте форум, посвященный это вопросу, и множество посетителей поделятся с вами и со всем миром своими знаниями.
Технологии Joomla!
для построения Web-сообщества
Как только вы определились с профилем сайта и создали общий план, вам нужно выбрать расширения, реализующие все необходимые вам функции. В случае с Joomla! для одной и той же задачи можно использовать с полдюжины расширений, так что выбор может быть довольно труден. Расширения, рассмотренные в этом разделе, были выбраны по следующим двум причинам. ♦ Свободное распространение — в интересах читателей в книге описаны только свободно доступные расширения, чтобы читатели могли их свободно (бесплатно) загрузить, протестировать и использовать Конечно, некоторые превосходные коммерческие компоненты по своим возможностям превосходят расширения, описанные здесь. Как только будет возможно, я упомяну популярные коммерческие расширения, аналогичные бесплатным расширениям, рассмотренным в этом разделе.
♦ Высокий рейтинг на сайте Joomlal-расширений— большинство выбранных расширений являются лучшими из лучших и превосходно подходят для Joomla!. Однако не нужно проходить мимо других расширений — возможно, они оптимально подходят для вашего сайта. Разработка программного обеспечения, особенно в мире Open Source, подобно заездам на ипподроме — то одна лошадь уходит вперед, то другая. Поскольку время идет, лучшее на сегодняшний день расширение уже не будет таким завтра, потому что появятся новые версии других расширений.
К любому Joomla’.-сайту можно добавить ленты новостей, систему рейтинга статей, голосования, гостевые книги, систему комментариев пользователей, календари событий, форумы и доски объявлений. Ни одно из этих расширений не зависит от других расширений, поэтому не нужно читать этот раздел последовательно. Вы можете прочитать лишь те подразделы, которые вам более интересны.
Подписка на новостные ленты
Возможно, вы не хотите, чтобы ваш сайт стал порталом (ведь счет за трафик может быть просто огромным), но существует один простой способ увеличить количество информации на вашем сайте — эго правильно подобранные новостные ленты. Некоторые поисковые машины не считают новостные ленты частью вашего сайта, некоторые -— считают, но в любом случае хуже от этого не станет, и ваш рейтинг в поиске не понизится.
В предыдущей главе мы изучили модуль Feed Display, использующийся для показа ленты новостей в формате RSS или Atom. Осталось найти новостные ленты, которые будут интересны вашим посетителям. Отталкиваться нужно от профиля вашего сайта, чтобы ленты новостей соответствовали его тематике. Можно попытаться найти нужную вам новостную ленту с помощью следующих новостных поисковых машин:
♦ vv>vw.syndic8.com;
www.2rss.com;
www.rss-network.com;
www.feedster.com
С помощью этих поисковых машин вы найдете новостную ленту, оптимально подходящую для вашего сайта.
Один из лучших методов оценки новостной ленты — это подписка на нее через новостной агрегатор. Используя агрегатор каждый день, вы сможете быстро оценить уровень контента каждой новостной ленты и ее полезность для ваших посетителей. Популярными агрегаторами являются Sage (агрегатор для Firefox, доступный по адресу http://addons.mozilla.org/firefox/77), ThinFeeder Java RSS Aggregator (http://sourceforge.net/projects/tlnnfccder), Windows-агрегатор SharpReader (www.sharpreader.net). Также вы можете использовать онлайн-агрегаторы, например, Google Reader (www.google.com /reader) и Bloglines (www.bloglines.com). Онлайн-агрегаторы требуют создать вашу учетную запись для хранения новостных лент, на которые вы подписаны.
Чтобы найти полезные ленты, изучите наиболее часто посещаемые вами сайты на предмет RSS- или Atom-лент. Вы будете приятно удивлены, узнав, что новостная лента вашего любимого сайта может быть использована на вашем Joomlal-сайте.
Рейтинг статей
Разрешение пользователям оценивать статьи — это, возможно, первый шаг к созданию сообщества. Данная возможность поддерживается Joomla! по умолчанию, вам нужно лишь активировать ее
Для включения рейтинга статей перейдите в Менеджер материалов, нажмите кнопку Параметры и включите параметр Голоса/Рейтинг статьи (рис. 8.1). Теперь весь контент сайта (кроме тех статей, которые были вручную исключены из рейтинга) будет доступен для оценки.
На в мне раздела как ссылкаНа. ваше категорииНазвание категории как ссылка1й.<ч автораДата и время со зданияДата и время последнего и менемляПоказывать нав! гациюСсылка Подроонее...Голоса Рейтинг статьиИконкиИконка PDFИконка печатиИконка е mailПока ывать в RSSНа в мне раздела как ссылкаНа. ваше категорииНазвание категории как ссылка1й.<ч автораДата и время со зданияДата и время последнего и менемляПоказывать нав! гациюСсылка Подроонее...Голоса Рейтинг статьиИконкиИконка PDFИконка печатиИконка е mailПока ывать в RSSНет г ДаСпрятать f Показать ^ нет ^ ДаНет г ДаСпрятать f Показать ^ нет ^ Да* Спрятать ** ПоказатьСпрятать ^ Показать^ Спрятать ^ ПоказатьСпрятать Показать^ Спрятать ^ Показать^ Спрятать;^* ПоказатьСпрятать Показать^ Спрятать Показать^ Спрятать ^ Показать^ Спрятать , ^ ПоказатьСпрятать ^ Показать^ Ветупительнь й текст ^ Основной текст* Спрятать ** ПоказатьСпрятать ^ Показать^ Спрятать ^ ПоказатьСпрятать Показать^ Спрятать ^ Показать^ Спрятать;^* ПоказатьСпрятать Показать^ Спрятать Показать^ Спрятать ^ Показать^ Спрятать , ^ ПоказатьСпрятать ^ Показать^ Ветупительнь й текст ^ Основной текст
На в мне раздела как ссылка
На. ваше категории
Название категории как ссылка
1й.<ч автора
Дата и время со здания
Дата и время последнего и менемля
Показывать нав! гацию
Ссылка Подроонее...
Голоса Рейтинг статьи
Иконки
Иконка PDF
Иконка печати
Иконка е mail
Пока ывать в RSS
На в мне раздела как ссылка
На. ваше категории
Название категории как ссылка
1й.<ч автора
Дата и время со здания
Дата и время последнего и менемля
Показывать нав! гацию
Ссылка Подроонее...
Голоса Рейтинг статьи
Иконки
Иконка PDF
Иконка печати
Иконка е mail
Пока ывать в RSS
Нет г Да
Спрятать f Показать ^ нет ^ Да
Нет г Да
Спрятать f Показать ^ нет ^ Да
* Спрятать ** Показать
Спрятать ^ Показать
^ Спрятать ^ Показать
Спрятать Показать
^ Спрятать ^ Показать
^ Спрятать;^* Показать
Спрятать Показать
^ Спрятать Показать
^ Спрятать ^ Показать
^ Спрятать , ^ Показать
Спрятать ^ Показать
^ Ветупительнь й текст ^ Основной текст
* Спрятать ** Показать
Спрятать ^ Показать
^ Спрятать ^ Показать
Спрятать Показать
^ Спрятать ^ Показать
^ Спрятать;^* Показать
Спрятать Показать
^ Спрятать Показать
^ Спрятать ^ Показать
^ Спрятать , ^ Показать
Спрятать ^ Показать
^ Ветупительнь й текст ^ Основной текст
Рис. 8.1. Включите параметр Голоса/Рейтинг статьи для активации оценки статей
Ноте. > Условия использования сайта
•Мп* чш•Мп* чшНотеУсловия использования сайтаFlee Bor to wet Аг HelesНотеУсловия использования сайтаFlee Bor to wet Аг HelesУсловия использования сайта
•Мп* чш
•Мп* чш
Ноте
Условия использования сайта
Flee Bor to wet Аг Heles
Ноте
Условия использования сайта
Flee Bor to wet Аг Heles
Рейтинг пользователей > /0
Худший О О О О ©Лучший | Рейтинг |
А. • г. *»*№eti 3ie>
Рис. 8.2. Рейтинг статьи отображается с помощью заполненных кружочков,после рейтинга следует число голосов, которое влияет на общий рейтинг
После этого для каждой статьи (после ее названия) будет отображен ее рейтинг и общее количество проголосовавших за нее пользователей (рис. 8.2).
Непосредственно после рейтинга появится форма оценки статьи. Обратите внимание, в зависимости от ваших настроек, данная форма может не появляться, когда статья представлена на главной странице, хотя ее рейтинг будет отображен.
Настройки системы рейтинга для отдельных статей могут быть переопределены. Однако не нужно запрещать оценивать некоторые спорные статьи. Пользователи заметят отсутствие оценки, и им покажется это несправедливым. Этим вы оттолкнете пользователей от своего сайта.
Примечание
Штатная система оценок Joomla! (как и система голосований) довольно примитивна. Если вам нужны более мощные и гибкие средства оценки, посетите сайт расширений Joomla! (http://extensions.joomla.org), где вы сможете скачать более функциональные расширения.
Создание опросов
Голосования (опросы)— эффективный способ узнать мнение посетителей сайта. Joomla! делает создание опросов очень простым и удобным, вы можете добавить опрос на ваш сайт без установки каких-либо расширений. После установки Joomla! на главной странице вы увидите первый опрос, демонстрирующий элегантность этой обязательной функции сообщества.
В главе 7 был приведен обзор компонента и модуля голосований. Сейчас мы поговорим о создании опросов подробнее.
Совет
Компонент голосований в Joomla! автоматически показывает результаты текущего голосования. Другие компоненты для организации опросов доступны на сайте расширений (http://extensions.joomla.org). Вы можете найти компоненты с расширенными функциями отображения результата, основывающиеся на ре- гистрацф1 пользователей и привилегиях безопасности. Вы даже можете сделать результаты голосований доступными только администратору. Однако в большинстве случаев вы должны показывать результаты общественных опросов, иначе пользователи просто потеряют интерес к голосованию: ведь им интересно узнать результаты.
Создание нового голосования
Для создания нового опроса вы будете использовать компонент Polls (Голосования). Из меню Компоненты интерфейса администратора выберите команду Голосования. Нажмите кнопку Новый для создания нового голосования. Введите заголовок и опции опроса. Для Web-сайта LoanStaircase я задал несколько вопросов относительно кредитных программ (рис. 8.3).
Голосование: [Новый]Голосование: [Новый]Просмотр Сохранить Применить Отменить Помоиц?Просмотр Сохранить Применить Отменить Помоиц?Подробности
Голосование: [Новый]
Голосование: [Новый]
Просмотр Сохранить Применить Отменить Помоиц?
Просмотр Сохранить Применить Отменить Помоиц?
Заголовок ^акме кредитные программы более интересны?
Псевдомны-
Задержка: 80400 (секунд между голосованиями)
Публикация: р Нет Г д0
Рис. 8.3. Создание опроса
Перед тем как вы сохраните опрос, вам нужно изменить значение параметра Задержка. Имеются некоторые не очень честные личности, пытающиеся проголосовать несколько раз. Joomla! предоставляет несколько способов защиты от "накрутки" результатов опроса, например, запрещение голосования с того же самого IP-адреса на протяжении определенного промежутка времени.
Также вы можете обеспечить появление опроса только на странице, доступной зарегистрированным пользователям. Конечно, в этом случае следует ожидать снижение числа голосов, что сделает ваш опрос практически бесполезным. Поэтому я рекомендую повысить значение параметра Задержка. Значение по умолчанию — 86 400, что соответствует одному дню. Это означает, что один и тот же пользователь сможет голосовать каждые 24 часа. Установите значение 30 000 000, после чего один и тот же пользователь сможет принят^ участие в одном и том же голосовании раз в году. Этого значения будет вполне достаточно для большинства опросов.
Нажмите кнопку Сохранить для записи вашего опроса в базу данных. После этого вы вернетесь в окно Менеджера голосований. Ваш новый опрос появится в списке голосований, но будет отмечен красным крестиком. Это означает, что опрос пока не опубликован. Щелкните по этому крестику для публикации опроса.
Если вы обновите главную страницу сайта, то обнаружите, что она все еще отображает исходное голосование. Несмотря на то, что вы настроили компонент Polls (Голосования), вам нужно еще настроить модуль Poll (следует выбрать, какое голосование он должен отображать). Откройте Менеджер модулей и щелкните на модуле Poll. Вам нужно изменить параметр Голосование: из выпадающего списка вы сможете выбрать доступные опросы, созданные соответствующим компонентом. Выберите из списка ваше новое голосование и нажмите кнопку Применить для записи параметров модуля в систему.
Обновите главную страницу, и вы увидите только что созданный опрос (рис. 8.4). Каждая инстанция модуля (например, инстанция Polls, которую вы только что модифицировали) создается из типа модуля modpoll. Вы можете создать отдельную инстанцию для отображения еще одного опроса. Просто нажмите кнопку Новый в Менеджере модулей и выберите тип модуля modpoll.
HomeУсловия использования самаFiee Вой ower ArticlesHomeУсловия использования самаFiee Вой ower ArticlesЗаголовок статьиЗаголовок статьиWelcome to the FrontpagePollsУсловия использования сайта Я ^ 33 Каи,е «РедтныеWelcome to the FrontpagePollsУсловия использования сайта Я ^ 33 Каи,е «Редтные»——■—^»——■—^Login FormLogin FormИмя пользователяИмя пользователяПарольПарольЗапомнить меня □ [Логин ]Запомнить меня □ [Логин ]Забыли пароль?о Забыли логин9ЗарегистрируйтесьЗабыли пароль?о Забыли логин9ЗарегистрируйтесьАвтор Аекгапгйгакг07 04 200313 25Условия использования сайтаОбновлаке (07 С4 200813 45 )Тест * ^ 53Астор. Adiranetiator08 04 2008 00 32интроОбнов пенс 06 04*4X3Автор Аекгапгйгакг07 04 200313 25Условия использования сайтаОбновлаке (07 С4 200813 45 )Тест * ^ 53Астор. Adiranetiator08 04 2008 00 32интроОбнов пенс 06 04*4X3программы более интересны?- О Аннуитет (фиксплатеж)О Фикс платеж (5 лет) О Фикс, платеж (3 года) О Пока не решил [Голосовать ] [ Результаты ]Who's OnlineСейчас f гость онлайнпрограммы более интересны?- О Аннуитет (фиксплатеж)О Фикс платеж (5 лет) О Фикс, платеж (3 года) О Пока не решил [Голосовать ] [ Результаты ]Who's OnlineСейчас f гость онлайн
Home
Условия использования сама
Fiee Вой ower Articles
Home
Условия использования сама
Fiee Вой ower Articles
Заголовок статьи
Заголовок статьи
Welcome to the FrontpagePolls
Условия использования сайта Я ^ 33 Каи,е «Редтные
Welcome to the FrontpagePolls
Условия использования сайта Я ^ 33 Каи,е «Редтные
»——■—^
»——■—^
Login Form
Login Form
Имя пользователя
Имя пользователя
Пароль
Пароль
Запомнить меня □ [Логин ]
Запомнить меня □ [Логин ]
Забыли пароль?
о Забыли логин9
Зарегистрируйтесь
Забыли пароль?
о Забыли логин9
Зарегистрируйтесь
Автор Аекгапгйгакг
07 04 200313 25
Условия использования сайта
Обновлаке (07 С4 200813 45 )
Тест * ^ 53
Астор. Adiranetiator
08 04 2008 00 32
интро
Обнов пенс 06 04*4X3
Автор Аекгапгйгакг
07 04 200313 25
Условия использования сайта
Обновлаке (07 С4 200813 45 )
Тест * ^ 53
Астор. Adiranetiator
08 04 2008 00 32
интро
Обнов пенс 06 04*4X3
программы более интересны?
- О Аннуитет (фиксплатеж)
О Фикс платеж (5 лет) О Фикс, платеж (3 года) О Пока не решил [Голосовать ] [ Результаты ]
Who's Online
Сейчас f гость онлайн
программы более интересны?
- О Аннуитет (фиксплатеж)
О Фикс платеж (5 лет) О Фикс, платеж (3 года) О Пока не решил [Голосовать ] [ Результаты ]
Who's Online
Сейчас f гость онлайн
Рис. 8.4. Только что созданный опрос
Сейчас модуль Poll отображается только на главной странице. Если вы хотите, чтобы модуль отображался на других страницах, вам нужно изменить параметр модуля Назначение меню.
Установка параметра Выбор меню для модуля Poll
Если вы закрыли окно параметров модуля Poll, откройте его заново. В левом нижнем углу экрана вы увидите область Назначение меню. Опция Меню позволяет вам определить, где будет отображен модуль — во всех меню, ни в
одном или только в выбранных из списка ниже. По умолчанию в этом списке выбрана только домашняя страница (Ноше), поэтому опрос будет отображен лишь на главной странице Joomla!. Выберите из этого списка меню Joomla! Overview. После этого наш модуль Poll появится только в выбранном меню.
Если вы обновите главную страницу, то больше не увидите блока опроса. Но если вы выберете меню Joomla! Overview, то увидите наше новое голосование на этой странице.
Внимание!
Информация, полученная в результате опросов, может быть недостоверной. Многие посетители, в том числе и постоянные, игнорируют опросы. Результаты опроса могут быть искажены случайными посетителями или фанатиками, поэтому результаты голосования могут отличаться от общего мнения вашего сообщения. Поэтому всегда обдумывайте результаты опроса, прежде чем предпринимать какие-либо действия.
Добавление гостевой книги
Гостевая книга появилась практически с самого зарождения Web. В те времена каждый Web-сайт предоставлял собой набор статических страниц, доступных только для чтения. Но люди быстро поняли, ч.о наличие гостевой книги, где другие посетители могут оставить обычное сообщение или пожелание, сделает развитие и обновление сайта более увлекательным, а сам сайт — более интересным.
Примечание переводчика
В настоящее время, когда каждый желающий может установить форум, я не вижу особой необходимости в гостевой книге. Ведь вам каждый день придется просматривать вашу гостевую книгу и удалять спам (а он будет). В то же время форум тоже требует ежедневного просмотра, но толку от него больше, чем от простой гостевой книги, да и форум обладает лучшей защитой от спама, чем среднестатистическая гостевая книга. С другой стороны, если форум вам не нужен и вы не собираетесь его поддерживать, тогда можно остановить свой выбор на обычной гостевой книге.
Гостевая книга помогает посетителям участвовать в развитии вашего Joomla!- сайта. В большинстве случаев вы найдете комплименты или пожелания (это даже полезнее) относительно дальнейшего усовершенствования сайта. Однако почаще посещайте вашу гостевую книгу, поскольку спаммеры всегда найдут способ обхода спам-защиты.
Одна из лучших гостевых книг для Joomla! — бесплатно распространяемый компонент Jambook (www.jxdevelopment.com/jambook). Вот его функции:
использование редактора Joomla! для форматирования текста;
различные варианты отображения имени отправителя сообщения;
предварительный просмотр страницы перед ее сохранением;
уведомление (по e-mail) администратора о появлении новых записей;
администратор может указать разрешенные в сообщении HTML-теги;
блокировка спама с помощью различных настроек (в том числе генерации картинки подтверждения);
возможность бана по IP-адресу (так можно блокировать компьютерных "хулиганов");
двойная проверка отправляемого сообщения;
автоматическое удаление устаревших записей (если установлен лимит времени);
интерфейс администратора для настройки гостевой книги.
Примечаяие переводчи к а
По приведенному автором адресу (www.jxdevelopment.com/jambook) на момент перевода книги гостевая Jambook обнаружена не была. Переводчик скачал ее вот по этому адресу:
http://extensions.joomla.org/component/option, com_mtree/task, viewlink /link_id,1228/ltemid,35/
JX<JX<Jambook Control PanelJambook Control PanelЗаписи в гостевойПокатать все загыси с оп^ейпуСгаеа*»® реда»т»фоевннм и созданияМенеджерЗаписи в гостевойПокатать все загыси с оп^ейпуСгаеа*»® реда»т»фоевннм и созданияМенеджерPaul Support QuestionPaul Support QuestionИ you have a support question and wart personal service. use Iha tonn below to аз* уххл question at a cost ol US$5 I can опту answer questions in Entflsh or SwedshИ you have a support question and wart personal service. use Iha tonn below to аз* уххл question at a cost ol US$5 I can опту answer questions in Entflsh or SwedshшаблоновшаблоновYou can «House the ink to the Seaport Ftxwri to the rgM И you dont need personal essistweYou can «House the ink to the Seaport Ftxwri to the rgM И you dont need personal essistwePayPalCMtithwitepefPayPalCMtithwitepefVs' Импорт записейVs' Импорт записейИвжюрт записей в ожгу из внеенего неточнееИнформация о JambookИвжюрт записей в ожгу из внеенего неточнееИнформация о Jambook(•) You wl be able to descrbe your problem (n у eater detai during the peymert(•) You wl be able to descrbe your problem (n у eater detai during the peymertЧитать докумегтег#». сгвсгж планов не будуаре список иэмемегьы и лицензионное соглашениеКонфигурация JambookЧитать докумегтег#». сгвсгж планов не будуаре список иэмемегьы и лицензионное соглашениеКонфигурация JambookИнфо о Jam* okУстановленная веренг 1 О ьНаЭ Последняя версия: На найдено Пицгмтия: GNU GPLKonwHir >2007 010 JohanssonСо да гелиАвтор. ОЗе JohanssonCAPTCHA cl»«s: JiAenPachetШрифт CAPTCHA DuetiimoM Dustr Norlander Пер водчнки; Marin Aciertos Vpyemmer Andreas Олегу*. Jeen-Framois Questieuxm, Carlos Eduardo Rbhrwlem ZoranJekic TorbeinKvl Oamst. Tome* CeOeROM Ca»o. bopanpeng Pkgo Gaodertas Stuardo, Ub*he LiAore, Oguz Keen K6nc nusbuПомощь но JarnbaiokHomepage- ^♦арум поддержке ^ Бег Трекер: ©Поддержите Jamb okДля аозможностн дальнейв ■ го развития етого бесплатного воегоненте Вы можете помет* автору нажав на нсгвгу нижеtИнфо о Jam* okУстановленная веренг 1 О ьНаЭ Последняя версия: На найдено Пицгмтия: GNU GPLKonwHir >2007 010 JohanssonСо да гелиАвтор. ОЗе JohanssonCAPTCHA cl»«s: JiAenPachetШрифт CAPTCHA DuetiimoM Dustr Norlander Пер водчнки; Marin Aciertos Vpyemmer Andreas Олегу*. Jeen-Framois Questieuxm, Carlos Eduardo Rbhrwlem ZoranJekic TorbeinKvl Oamst. Tome* CeOeROM Ca»o. bopanpeng Pkgo Gaodertas Stuardo, Ub*he LiAore, Oguz Keen K6nc nusbuПомощь но JarnbaiokHomepage- ^♦арум поддержке ^ Бег Трекер: ©Поддержите Jamb okДля аозможностн дальнейв ■ го развития етого бесплатного воегоненте Вы можете помет* автору нажав на нсгвгу нижеt
JX<
JX<
Jambook Control Panel
Jambook Control Panel
Записи в гостевой
Покатать все загыси с оп^ейпуСгаеа*»® реда»т»фоевннм и создания
Менеджер
Записи в гостевой
Покатать все загыси с оп^ейпуСгаеа*»® реда»т»фоевннм и создания
Менеджер
Paul Support Question
Paul Support Question
И you have a support question and wart personal service. use Iha tonn below to аз* уххл question at a cost ol US$5 I can опту answer questions in Entflsh or Swedsh
И you have a support question and wart personal service. use Iha tonn below to аз* уххл question at a cost ol US$5 I can опту answer questions in Entflsh or Swedsh
шаблонов
шаблонов
You can «House the ink to the Seaport Ftxwri to the rgM И you dont need personal essistwe
You can «House the ink to the Seaport Ftxwri to the rgM И you dont need personal essistwe
PayPal
CMtithwitepef
PayPal
CMtithwitepef
Vs' Импорт записей
Vs' Импорт записей
Ивжюрт записей в ожгу из внеенего неточнее
Информация о Jambook
Ивжюрт записей в ожгу из внеенего неточнее
Информация о Jambook
(•) You wl be able to descrbe your problem (n у eater detai during the peymert
(•) You wl be able to descrbe your problem (n у eater detai during the peymert
Читать докумегтег#». сгвсгж планов не будуаре список иэмемегьы и лицензионное соглашение
Конфигурация Jambook
Читать докумегтег#». сгвсгж планов не будуаре список иэмемегьы и лицензионное соглашение
Конфигурация Jambook
Инфо о Jam* ok
Установленная веренг 1 О ьНаЭ Последняя версия: На найдено Пицгмтия: GNU GPL
KonwHir >2007 010 Johansson
Со да гели
Автор. ОЗе Johansson
CAPTCHA cl»«s: JiAenPachet
Шрифт CAPTCHA DuetiimoM Dustr Norlander Пер водчнки; Marin Aciertos Vpyemmer Andreas Олегу*. Jeen-Framois Questieuxm, Carlos Eduardo Rbhrwlem ZoranJekic TorbeinKvl Oamst. Tome* CeOeROM Ca»o. bopanpeng Pkgo Gaodertas Stuardo, Ub*he LiAore, Oguz Keen K6nc nusbu
Помощь но Jarnbaiok
Homepage- ^
♦арум поддержке ^ Бег Трекер: ©
Поддержите Jamb ok
Для аозможностн дальнейв ■ го развития етого бесплатного воегоненте Вы можете помет* автору нажав на нсгвгу нижеt
Инфо о Jam* ok
Установленная веренг 1 О ьНаЭ Последняя версия: На найдено Пицгмтия: GNU GPL
KonwHir >2007 010 Johansson
Со да гели
Автор. ОЗе Johansson
CAPTCHA cl»«s: JiAenPachet
Шрифт CAPTCHA DuetiimoM Dustr Norlander Пер водчнки; Marin Aciertos Vpyemmer Andreas Олегу*. Jeen-Framois Questieuxm, Carlos Eduardo Rbhrwlem ZoranJekic TorbeinKvl Oamst. Tome* CeOeROM Ca»o. bopanpeng Pkgo Gaodertas Stuardo, Ub*he LiAore, Oguz Keen K6nc nusbu
Помощь но Jarnbaiok
Homepage- ^
♦арум поддержке ^ Бег Трекер: ©
Поддержите Jamb ok
Для аозможностн дальнейв ■ го развития етого бесплатного воегоненте Вы можете помет* автору нажав на нсгвгу нижеt
Иэмагмть опт* коифмгурагеы для компонента устаю «и дпя гросмотре. почты, записей и загцгты от
Нажыига гм жогогно компонента чтрбы вернуться ■ панель упрееяення
Рис. 8.5. Панель управления Jambook
Компонент Jambook устанавливается с помощью Менеджера расширений, как и любой другой стандартный компонент. После установки в меню Компоненты интерфейса администратора появится собственное меню Jambook Для управления своей гостевой книгой выберите команду меню Компоненты | Jambook | Control Panel (рис. 8.5). Отсюда вы сможете перейти к другим панелям Jambook. В панели управления Jambook будут представлены все опции меню Jambook, кроме команды Jambook | Dc-InstalL удаляющей гостевую книгу'. Команда De-Install удаляет сам компонент, но оставляет все существующие записи, которые пригодятся при переустановке Jambook или при импорте.
Управление записями гостевой книги
Панель Записи в гостевой выводит список всех существующих постов. Как администратор, вы можете отредактировать и удалить любую запись (можно также удалить сразу несколько записей) или же создать новую запись (рис 8 6). Вы можете указать заголовок, имя автора и текст сообщения записи, используя стандартные поля пользовательского интерфейса. В настройках гостевой книги лучше выключить публикацию e-mail-пользователей и их домашних страниц, чтобы защититься от спаммеров.
• Рис. 8.6. Создание новой записи гостевой книги подобно созданию новой статьи
На рис. 8.6 изображен интерфейс администратора. У пользовательского интерфейса добавления записи есть два отличия: присутствует картинка кода подтверждения (используется для защиты от спаммеров) и нет вкладки Публикация (служит для немедленной публикации записи).
При добавлении записи пользователем он увидит картинку с цифрами и символами. используемую для защиты от спама. Ему нужно ввести символы и цифры, представленные на картинки в специальное поле, чтобы система убедилась, что она работает с человеком, а не с программой спаммера. Для генерации этой картинки на вашем Web-сервере должна быть установлена библиотека GD2 (см. главу 10).
Вкладка Публикация позволяет администратору установить некоторые параметры записи — уровень доступа, а также даты публикации и сокрытия записи.
Управление шаблонами
У гостевой книги Jambook есть собственный менеджер шаблонов — Менеджер шаблонов Jambook, позволяющий настроить все аспекты отображения гостевой книги. Каждая часть гостевой книги (элемент списка, предварительного просмотра или поиска) обладает собственным настраиваемым шаблоном (рис. 8.7). Эти шаблоны можно редактировать напрямую (с помощью текстового редактора) или же с помощью пользовательского интерфейса.
Если шаблон редактируется через пользовательский интерфейс, вам будет доступен простой редактор кода шаблона (рис. 8.8). Поскольку код шаблона написан на JavaScript, лучше всего его редактировать с помощью jEdit (www.jedit.org) или Eclipse (www.eclipse.org). Однако встроенный редактор
удобно использовать для небольших изменений — ведь он доступен удаленно, и для редактирования кода вам не придется устанавливать дополнительные программы.
Редактирование шаблона : default / edititem
* Ы components со и ambookleniptates.defaultedrtitenxtmpl - Доступен для записи
«script language»** javascript" type»'text/javascript"> /** • Submit the admin form */ function submit form (pressbutton) (
docxuaent. adminForiu t ask. value-pressbutt on; try (
document. adminForm. onsubnit () ; } catch(e)(} document. adminForm. submit () ;
) function submitbutton(pressbutton) { var torn * document. adminForm; if (pressbutton — 'cancel') ( submitform( pressbutton );
)
(jxtvalue-geteditorcontents)
// do field validation
var reg - neu RegExp('*([a-zA-Z0-9\\-\\.\\_)+)'+ ' CWQ) '♦
Рис. 8 8. Редактирование Jambook-шаблона
Импорт записей
Экран Импорт записей очень простой. На момент написания этих строк Jambook могла импортировать только записи популярной гостевой книги AkoBook или AkoBook+ (обе гостевые книги выполнены в виде Joomlal-ком- понента). Гостевая книга AkoBook доступна по адресу http://joomlacode.org /gf/project/akocomment_se, a AkoBook+ — http://www.alikonweb.it/451.
Просмотр Jambook-информации
Экран Информация о Jambook предоставляет много полезной информации, в том числе системные требования, общие рекомендации, текст лицензионного соглашения, список ТО-DO для разработчиков (что нужно доделать в гостевой книге), а также историю версий. Здесь же доступна некоторая информация о директивах плагина, которые могут быть использованы с этим компонентом.
Настройка Jambook
Опция Конфигурация Jambook в панели управления отображает экран настройки гостевой книги, где вы найдете ее общие параметры, параметры e-mail, параметры защиты от спама, параметры импорта и др. В экране конфигурации вы найдете пять вкладок.
Установки — содержит параметры, управляющие отображением записей, например Сколько дней сохранять запись, Сколько дней считать новым, Показывать дней. Данная кладка изображена на рис. 8.9.
Записи— данная вкладка (рис. 8.10) предоставляет параметры, определяющие, как будут появляться записи гостевой книги. Вот несколько наиболее важных параметров этой вкладки:
если параметр Авто подтверждение включен, то все записи будут считаться одобренными и сразу после отправки пользователем появятся на сайте. Если же этот параметр выключен, администратор должен вручную одобрить каждую новую запись;
параметр Защита от флуда задает количество секунд перед добавлением новой записи тем же отправителем;
параметр Доступные теги HTML позволяет указать HTML-теги, разрешенные для использования в сообщении. По умолчанию разрешены теги создания таблиц. По своему опыту могу сказать, что эти теги часто
используются "хулиганами" для рисования граффити в вашей гостевой книге, поэтому я всегда удаляю эти теги из списка разрешенных.
JX(JX(К* нфи раиия JambookК* нфи раиия JambookИспольз; вать страницу с пре* ьюИспольз; вать страницу с пре* ьюПозволить гостям умазать имяПозволить гостям умазать имяОграничения постинговОграничения постинговАвто подтверждениеАвто подтверждениеВремя возможности редактировать свою эн исьВремя возможности редактировать свою эн исьЗащита от флудаЗащита от флудаДубликатыДубликатыОграмкныть теги HTML в сообщении?Ограмкныть теги HTML в сообщении?«тап^пвиша«тап^пвишаWysiwyg редакторWysiwyg редакторИнициа^зировать редакторИнициа^зировать редакторШирина редактораШирина редактораВысота редактораВысота редактораПоложение фор— ввода записиПоложение фор— ввода записиУстановки ЗаписиУстановки ЗаписиEmai Спам j'innopTpp -а(Emai Спам j'innopTpp -а(Показать только записи на первой странице ссылка на Форму ввода v @Показать только записи на первой странице ссылка на Форму ввода v @Онет©Д,0О Нет ©Да0Онет©Д,0О Нет ©Да0’ Публичгхй’ ПубличгхйV ОV ОО Нет® Да ОО Нет® Да ОООS ОS ОО Нет © Да ОО Нет © Да Оi Удалить все теги HTML кроме определенных в списке v. Оi Удалить все теги HTML кроме определенных в списке v. Оsub, ®vpf ctf cite, code, edd: . Редактор J ooria по умолчанию v О ОнетбдеОsub, ®vpf ctf cite, code, edd: . Редактор J ooria по умолчанию v О ОнетбдеОcenter, hr, block<ruot<xl, hZ, h3, M, hS, h6,center, hr, block<ruot<xl, hZ, h3, M, hS, h6,ООсо Осо О'Яо " О'Яо " О
JX(
JX(
К* нфи раиия Jambook
К* нфи раиия Jambook
Использ; вать страницу с пре* ью
Использ; вать страницу с пре* ью
Позволить гостям умазать имя
Позволить гостям умазать имя
Ограничения постингов
Ограничения постингов
Авто подтверждение
Авто подтверждение
Время возможности редактировать свою эн ись
Время возможности редактировать свою эн ись
Защита от флуда
Защита от флуда
Дубликаты
Дубликаты
Ограмкныть теги HTML в сообщении?
Ограмкныть теги HTML в сообщении?
«тап^пвиша
«тап^пвиша
Wysiwyg редактор
Wysiwyg редактор
Инициа^зировать редактор
Инициа^зировать редактор
Ширина редактора
Ширина редактора
Высота редактора
Высота редактора
Положение фор— ввода записи
Положение фор— ввода записи
Установки Записи
Установки Записи
Emai Спам j'innopTpp -а(
Emai Спам j'innopTpp -а(
Показать только записи на первой странице ссылка на Форму ввода v @
Показать только записи на первой странице ссылка на Форму ввода v @
Онет©Д,0
О Нет ©Да0
Онет©Д,0
О Нет ©Да0
’ Публичгхй
’ Публичгхй
V О
V О
О Нет® Да О
О Нет® Да О
О
О
S О
S О
О Нет © Да О
О Нет © Да О
i Удалить все теги HTML кроме определенных в списке v. О
i Удалить все теги HTML кроме определенных в списке v. О
sub, ®vpf ctf cite, code, edd: . Редактор J ooria по умолчанию v О ОнетбдеО
sub, ®vpf ctf cite, code, edd: . Редактор J ooria по умолчанию v О ОнетбдеО
center, hr, block<ruot<xl, hZ, h3, M, hS, h6,
center, hr, block<ruot<xl, hZ, h3, M, hS, h6,
О
О
со О
со О
'Яо " О
'Яо " О
Рис. 8.10. Вкладка Записи: правила отправки сообщений гостевой книги
♦ Email — элементы этой вкладки определяют параметры автоматической отправки e-mail-сообщений (рис. 8.11). Вы можете указать адрес и имя отправителя, которые будут использоваться при отправке сообщений. Обратите внимание: отправка электронных сообщений из гостевой книги осуществляется средствами Joomla!, поэтому если параметры e-mail Joomla! не настроены, функция автоматической отправки сообщений работать не будет.
♦ Спам — эти параметры (рис. 8.12) очень важны для компонента гостевой книги. Параметр Использовать CAPTCHA заставляет пользователя ввести в текстовое поле серию букв и цифр перед отправкой сообщения. CAPTCHA— это аббревиатура "Completely Automated Public Turing Test To Tell Computers and Humans apart" (полностью автоматизированный тест определения компьютера или человека). Как работает этот параметр, вы наверняка знаете: выводится картинка с буквами и цифрами — человек может прочитать ее и ввести в текстовое поле изображенные на ней буквы и цифры, а компьютер — нет. Использование этого параметра не позволяет автоматическим ботам (которые используются спаммерами) отправлять сообщения в вашу гостевую книгу.
Конфигурация Jambook
[ установки ]| Записи
1 Спаи
Импортировав
Ema 1 Адрес "от кого"
L
О
Имя "от кого"
L
О
Email админа в письме
Имя админа в письме
Г
о
Лосалть ema 1 с благодарностью
Уведомить админа
® Нет О Да У 0 Нет О Да ©
Рис. 8.11. Вкладка Email
JX(
Конфигурация Jambook
^Устанмк^ Записи [ ЕгпаЯ | Спам
>ль» »ать CAPTCHA]
О Нет 0 Да О
Определять как спам
URL=Спам
| Не публиковать аотоматичесски записи, помеченные как спам v @
Картинка = Спам
Только смайлики
® Нет О Да 0
О Нет 0 Да О
О Нет ® Да О
Запрещенные слова
Баненые IP
Список смайл ков
Рис. 8.12. Параметры вкладки Спам помогают в борьбе со спаммерами
Другие параметры этой вкладки определяют дополнительные ограничения:
URL = Спам — любое сообщение, содержащее URL, будет считаться спамом. Даже если нормальный пользователь (не спаммер) отправит сообщение, в котором указан URL, оно будет расценено как спам;
Картинка = Спам — сообщение, содержащее тег вставки картинки (<img>), будет расценено как спам;
Запрещенные слова—- позволяет задать список запрещенных слов, если это нужно. Лучше всего найти список слов, часто используемых спаммерами, и указать его в качестве значения этого параметра (для этого выполните запрос "spam filter word list" в вашей любимой поисковой машине);
Баненые IP— позволяет сформировать черный список IP-адресов пользователей, которым закрыт доступ к гостевой книге.
Импортирование — на этой вкладке (рис. 8 13) находятся параметры импорта записей из гостевой книги AkoBook. При импорте вы можете автоматически усекать длину заголовка (вы можете задать максимальное число символов) и автоматически конвертировать форматирование Bulletin Board Code (BBCode) в HTML-форматирование перед сохранением записи в Jambook.
Рис. 8.13. Параметры вкладки Импортирование определяют как записи гостевой книги будут импортироваться из AkoBook
Примечание
Расширение Jambook, как и многие другие, разрешает использовать текст с форматированием (шрифты, стили и т. д.), заданный в формате BBCode. BBCode— это облегченный язык разметки, использующий квадратные скобки для указания тегов форматирования, например, [Ь]Этот текст будет жирным! Г/b]. Возможности BBCode скромны по сравнению с HTML, но он часто используется, поскольку с его помощью сложнее выполнить спуффинг страницы, путем включения в нее опасных скриптов (например, JavaScript-код может быть внедрен в HTML-код, но не в BBCode).
Как только ваша гостевая книга будет настроена, вы сможете отправить первое сообщение, адресованное будущим посетителям гостевой книги. Вы даже можете создать несколько сообщений (например, "Добро пожаловать на сайт!"), но указать разные даты публикации, чтобы ваша гостевая книга не выглядела заброшенной.
Разрешение комментариев пользователей
Разрешение пользователям комментировать статьи сайта — это очень эффективный способ создания виртуального сообщества, но при условии регулярного добавления нового контента. Лучший способ заставить посетителей принимать участие в развитии сайта— это постоянно добавлять новый контент и разрешить пользователям его комментировать.
Такая модель успешно используется на огромном числе сайтов— всех не вспомнишь. Наиболее популярные сайты, разрешающие комментировать статьи — это сайты, распространяющие сплетни о знаменитостях — вроде TMZ.com и Superficial. Также хороши сайты Ain't It Cool News и Slate. Многие сайты вроде CNET и Epinions используют системы комментариев в качестве магической формулы генерации повторного трафика*.
Если вы регулярно добавляете новый материал (даже незначительный), добавление системы комментариев — единственный путь развития. Его администрирование довольно простое и сводится к бану спаммеров и удалению их сообщений, поэтому вы не будете тратить на управление комментариями много времени.
Совет
На многих популярных сайтах имеется документ, описывающий правила сайта. В этом документе описывается, что можно публиковать, а что нет. Данный документ формируется постепенно (по мере развития сайта) и описывает основные проблемы, возникающие с содержимым комментариев статей. Создание такого документа— отличная идея, если вы разрешили пользователям комментировать статьи сайта.
1 Когда один и тот же пользователь заходит на сайт несколько раз в день, чтобы прочитать комментарии других пользователей. — Пер.
Для Joomla! разработано более 20 расширений для создания системы комментариев. Наиболее популярное расширение— AkoComment, предоставляющее полнофункциональный интерфейс комментирования и позволяющее администратору полный контроль над комментариями. Вот наиболее полезные функции AkoComment:
шаблоны для форматирования комментариев;
проверка совместимости с XHTML;
создание RSS-ленты по комментариям;
ограничение количества комментариев для каждой статьи;
системное уведомление при добавлении нового комментария;
интеграция с расширением Community Builder (будет рассмотрен далее в этой главе);
уведомление по e-mail администратора и пользователя о новых комментариях.
Установка AkoComment
Установка пакета AkoComment производится в несколько этапов. Сначала нужно загрузить архив пакета:
http://joomlacode.org/gf/project/akocomment_se
Загруженный архив содержит плагин, компонент и два необязательных модуля. Вам нужно извлечь архивы компонента и плагина и установить их с помощью Менеджера расширений. После установки компонент будет скрыт, поэтому сразу после установки компонента откройте Менеджер плагинов и опубликуйте компонент AkoComment.
Примечание переводчика
Перед установкой AkoComment включите режим обратной совместимости (активируйте плагин System — Legacy).
Добавление комментариев
После установки и активации плагина AkoComment полностью готов к работе. Откройте главную страничку вашего сайта: в самом конце любой статьи вы увидите ссылки, позволяющие добавлять комментарии для статьи (рис. 8.14).
Если для статьи еще не написано ни одного комментария, ссылка Комментарии превратится в ссылку Написать первый комментарий, после перехода по которой появится редактор комментария (рис. 8 15). Как видите, текстовый редактор поддерживает базовое форматирование. Как и расширение
*1 ТИЗ гщд.ю—г- -г—-—^ ^ .
iomla/index.php7option=com_frontpage8dtemid—1v Переход**
иоторыйстоял на'столе'и сверкая 6епыни"1осл<эгии*танТГ**"а призывал: "Выпей меня"
Молоко конечно тут же выпили вместе с булочкой из другой статьи. А для того, чтобы вы знали, как выглядит стакан со свежим солоком, мы вам его показываем здесь. Вот он (см. фото).
А еще молоко можно добавлять в чашечку с кофе, но это уже из другой
Р Комментариев (1) | <£ 'Add as favourites (0) | *£* Цитировать эту
статью на своем сайте | Views: 2
Интернет
Рис. 8.14. Внизу каждой статьи появятся ссылки, позволяющие добавить комментарии
Цобавление комментария
Пожалуйста, придерживайтесь темы статен
Лиена, переписка и оскорбление будут удалены
Не исполосуйте комментарии до. раскрутки oio.ro сайта. Такой материал будет удаляться.
|871бб| ^агг о"1|871бб| ^агг о"1В I wish being prevented by email of the comments which will followВ I wish being prevented by email of the comments which will followПеред нажатием на кнопку ‘Отправите* обновите страницу, чтобы получите новый код безопасности е Учтите что предыдущий пункт имеет значение только в том случае, если был введён неверный код безопасности.
|871бб| ^агг о"1
|871бб| ^агг о"1
В I wish being prevented by email of the comments which will follow
В I wish being prevented by email of the comments which will follow
Имя
Домашняя страница
Тема
BBCode
Комментарий
В © г ** v ее R ^ s ^ •
Код-
OtH r>x»»i t?
S*£ Интернет
Рис. 8.15. При добавлении комментария вы можете использовать базовое форматированиеи смайлики
Jambook, AkoComment поддерживает генерацию картинок подтверждения (CAPTCHA) для зашиты от спама.
Сразу после добавления комментария (и его подтверждения, если AkoComment настроен соответствующим образом) он появится после текста статьи (рис. 8 16).
■*.' Add as favourites (О) [ ^Цитировать эту статью на свокм сайте | Viewst 2
Комментариев (1)ЩЗ
35- NU41
Статья
Очень увлекательная статья! п
^4#
Денис
Цобавлениекомментария
Пожалуйста, прмдерхиялйтесь темы статьи
Личная парс лиска и оскорбления будут удалены.
Не исполосуйте комментарии для раскрутки своего сайта Такой материал будет удаляться
Перед нажатием на кнопку 'Отправить* обновите страницу, чтобы получить новый код безопасности
Учтите, что предыдущий пункт имеет значение только ж том случае если был введен неверным код
—— :”— - — - - - - - — — — — — h»w — — —■ earai s«*»ww* evwemaq -tyw
^Готово
Рис. 8.16. Вот так отображаются комментарии
После добавления системы комментирования вам понадобится популярная или спорная статья для создания множества комментариев. С развитием вашего сайта и сообщества вы заметите, что на сайте формируется подсообщество регулярных комментаторов. Они чаще других комментируют новые статьи, независимо от их темы.
Настройка и управление комментариями
Одна из важнейших функций AkoComment заключается в предоставлении администратору полного контроля над обработкой комментариев и комментаторов. В меню Компоненты вы обнаружите подменю AkoComment а в нем три команды: View Comments (Просмотреть комментарии). Edit Settings (Редактировать параметры) и Edit Language (Редактировать язык). Команда View Comments используется для просмотра и редактирования всех существующих комментариев. Вы также можете переупорядочить комментарии, опубликовать или скрыть их.
Примечание пере водчика
Пользовательская часть (названия ссылок и других графических элементов) AkoComment переведена на русский язык (и на другие языки), а вот панель управления AkoComment будет на английском.
Большинство настроек доступно через команду меню Edit Settings. После выбора этой команды, вы увидите семь вкладок экрана конфигурации.
General (Общие) — на этой вкладке (рис. 8.17) вы найдете базовые параметры комментирования, в том числе сможете определить, где разрешено комментирование и как должны показываться имена пользователей.
^(\ IPF. nt / ТШ«ЯКВО SFCOAL <DIT CM
Рис. 8.17. Вкладка General
Layout (Разметка) — на этой вкладке (рис. 8.18) вы сможете настроить отображение комментариев в желаемом вами порядке и стиле. Вы можете изменять интерфейс, показанный ниже каждой статьи. По умолчанию ссылки Add as favorites (Добавить в избранные) и Quote this article on your site (Цитировать эту статью на своем сайте) показываются справа от ссылки Comments (Комментарии). На вкладке Layout вы можете скрыть эти ссылки.
Posting (Сообщения) — параметры этой вкладки (рис. 8.19) позволяют вам настроить интерфейс создания комментариев. Все параметры после параметра Disabled security code (Отключить код защиты) относятся к генерации картинки защиты от спаммеров (CAPTCHA). Изменение этих параметров — отличная идея. Если сайты с системой AkoComment станут популярными, спаммеры могут создать алгоритмы распознавания картинки и обойти защиту от спама.
General LayoU Posting Ndificaqon
Report® Favoured
Template
Comments Sorting:
| Hawantnw tart V
Sorting of new commerts
AutolimM i um of comments to display
Num of comments per page:
Show favoured Ik*:
Show quote 1 hie article n website ink
Show him-views:
Show print lb* ■
Show send Email la*:
1 Uniimite R [w x
Г Her ^ Де r Нет ^ Да
С Нет ^ Да
Г Нет P де
Г Dtsabtod odd term beyond the limt (bioci: add new comment)
Show read more link:
Character to separate each **:
Г нет ^ Де
Г No commert after coniert <em (On read more Ink adrved)
Рис 8.18. Параметры вкладки Layout позволяют вам настраивать отображение комментариеви ссылки, появляющиеся внизу статьи
тшжакжо ere«*L жемтйгм
General Layers Potting Notification
Reports Favoured Template
Time out
иTime before post a new comment by he same user (seconds)
BB Code Support:
Г Нет <• ДаAlow the use of B6 Codes?
Picture Support:
Г нет <• ДаAlow the use of plctues h commerts?
Smile Support:
С Нет ^ ДаAlow the use о! Smiies in commerts?
Display field email:
Г нет t» дйAlow the use a field email author in header commerts?
Display field web:
f нет <• ДаAlow the use a field web in header commerts?
Display field Title:
С нет <• ДаAlow the use a field title in header commerts?
Display checkbox forccontacted:
Г цу,. (• даShow 1 wish to be contacted by emai regarding additional comments*
Disabled security code:
(? HgT Г деNot recommended to change this option (protad commerts from spammers!)
Batiktpound col.r security code:
FFF4EAV
Font color security code:
FFQOOO"«^
Line color secu *y code -
FFC8Q6^
Border color security code -
FFtoOOЛ^
Preview image security code:
^61 «к) ]Save settings for refresh mage
Рис. 8.19. Вкладка Posting
♦ Notification (Уведомление)— параметры этой вкладки (рис. 8.20) определяют, будет ли отправлено автоматическое уведомление no e-mail при создании нового комментария. Как и расширение Jambook, функция отправки сообщения основывается на Joomla! и должна быть правильно настроена. Необходимые параметры вы найдете в Менеджере общих настроек.
У AkoComment
TWEAKED SRECmL EDITION
Gen ral LayoU Posting Notification Reports Favoured Template
llolify Admin:(? Нет p д@Notify an administrator by emaiP
Admin's Email lor new comment:Mail notification to which emed address’
Рис. 8.20. Параметры вкладки Notification управляют автоматической отправкой уведомлений
General Layout Posting Notification Reports Favoured Template
Report e comment:(5* Her С даUsers can report a comment to administrator by email?
Admin’s Ema I for report;Mail report to which email address'?
Рис. 8.21. Вкладка Reports
♦ Reports (Отчеты)— параметры этой вкладки (рис. 8.21) разрешают пользователям сообщать о комментарии администратору. Выбор правильного значения параметра— сложное решение. С одной стороны, пользователи смогут контролировать других пользователей и сообщать о спаме либо другой нелегальной информации С другой стороны, ваш почтовый ящик будет забит нежелательными сообщениями. Может начаться даже так называемая "флеймовая" война, когда пользователи будут часто сообщать о факте нарушения правил сайта. Обработка таких сообщений -— тоже сложная задача. Некоторые пользователи будут честно сообщать о фактах нарушения (например, что некоторые комментарии оскорбительны с политической или религиозной точки зрения). А некоторые будут сообщать о нарушениях, даже если их нет. Решите, будете ли вы администрировать свой сайт каждый день или нет. Если да, тогда у вас не будет много проблем с возможными жалобами Однако, если вы будете администрировать сайт раз в неделю или раз в месяц, накопится много жалоб и часть из них
11 Зак 468
будет проигнорирована В этом случае лучше выключить данную функцию.
♦ Favoured (Избранное)— параметры этой вкладки (рис. 8.22) позволяют вам создавать меню Favorites (Избранное). Данная вкладка содержит инструкции по созданию такого меню с помощью интерфейса администратора.
General Layout Pasting Nctillcrilon Reports Favoured Template
Choose who can favoured an article
Choose how much to display links favoured articles after voting
How create a menu tor diepley Tavoiintea of the reader* " 9
-goto Menu » mainrnenu > then select New
- Choose type " Lr* - URL * then wrte the URL to be index .php9optBn=com_akocommentfilask-moref av
How create a menu for di play ‘Упу favourrtea'4or registered uaere?
- go Io Menu > usermenu »then select New
-Choo «e type "Link - URL" then write the URL to be rdex php?optDn=com_akocommertfiteskxmy favoured
Рис. 8.22. Вкладка Favoured' ее параметры определяют внешний вид меню Favorites
/ A^oComnent
General Layout Postrig Notification
Reports
Favoured Ternpteie
Style comment:
Fieldiet
Choose template or show each comment In lieidset or aiernate color In table
Form Position:
: Behind Commer* V
Wiere should the form be cispleyed?
Dieplay USS Feed f^^:
Г Нет
P Д.
I 10 I ria X#
Diep ay co nmenfe in rntier :
Нет
1? *
Dieplay IP comment'» author:
^ Нет
<* Де
Dieplay el xtut comment'» author:
Г нет
Рд.
rtsplay strict guest or regste ed
Lit* author to CB pi ofile
^ Нет
Г Де
Lr* author to CommuMy Budder Pro *e (replace emad r* by link to CB)
Date format *
Md Mm MY МН ММ
Specific atrlUm» format date (example *id %m-SY SJL -Ы)
Рис. 8.23. Вкладка Template
♦ Template (Шаблон) — параметры вкладки Template (рис. 8.23) позволяют вам определить внешний вид комментариев. Параметр Style comment (Стиль комментария) состоит из шести разных настроек. Параметр Form
Position (Позиция формы) определяет местоположение области комментариев. Вы можете даже создать RSS-ленту комментариев, активировать параметр Display RSS Feed (Отображать RSS-ленту).
Для международной адаптации AkoComment предоставляет возможность редактирования языкового файла, что помогает перевести интерфейс на ваш родной язык. Данная функция доступна через команду меню Компоненты | AkoComment | Edit Language. Появится текстовый редактор, позволяющий перевести текст интерфейса на нужный вам язык (рис. 8.24).
Примечание переводчика
AkoComment практически полностью переведен на русский язык (только интерфейс пользователя, интерфейс администратора будут на английском языке), вам нужно отредактировать всего лишь несколько констант.
Path: Люте dkweorou doin'iiis;dkws org.iia publicJitnif joomla'componente/coni^akocommenblanguiges'riissian php
<?php
ggg88######88g8##8gg8888##gg####g888#8#### g AkoCommant - A User Comments Component g g (Oopyright 2004 by Arthur Konze g
8 Homepage : vuu.mamboportal.com 6 6 Version : 1.0 beta 1 g g License . Copyright, don't distribute 8 g8888g#8##8#888#888##88###8#8888#######888
g Author: Arthur Konze g
8 Homepage : uww.konze.de g g Translation: Pavel Haryanov g g Homepage: jack_kiev.ua g
g8#8888888888888#8888##8888#88S#8S888#888#
H Header language definitions
DEFINE("_AKOCOMMENT_WRITECOMMENT","Добавление комментария");
DEFINE("_AKOCOMMENT_WRIТЕFIRSTCDEMENT","Написать первый комментарий");
DEFINEC_AKOCOMMENT_QUOTETHISARTICLE","Цитировать эту статью на своём сайте");
DEFINE ("_AKOCOMMENT_CREATELINK , "Чтобы создать на своём сайте ссылку на эту статью,<br >скопируйте текст ниже и вставьте его на свою страницу."1-
Please note The file must be writable to save your changes
Рис. 8.24. Команда Edit Language позволяет локализировать интерфейс AkoComment
Пакет AkoComment также содержит два модуля — для отображения последних комментариев и для отображения избранных комментариев. Вы можете разместить их на главной или любой другой странице сайта.
Реализация календаря событий
Календарь группы или события — отличная возможность для вашего сайта стать центральным источником информации о разных событиях, касающихся
темы вашего сайта. Календарь может быть также полезен специфическим географическим секторам вашей целевой аудитории. Если вы посетите очень популярный сайт Craigslist (www.craigslist.org), то заметите, что все предложения разбиты по регионам (Лос-Анджелес, Сан-Диего и др.). Довольно часто сообщества формируются по географическому признаку.
Совет
Если вы не хотите размещать календарь на своем сайте, Google предоставляет специальный сервис— Календарь (www.google.com/calendar), обладающий многими преимуществами: интеграция с пользовательским интерфейсом Gmail, возможность создавать и отправлять поздравления, устанавливать и отправлять (в том числе по SMS) уведомления. Для интеграции Календаря Google со своим сайтом вы можете использовать модуль Wrapper
Основная проблема календаря в том, что он может остаться пустым. Если в календаре не будет событий, он не привлечет много посетителей. Поэтому вам нужно самостоятельно заняться планированием вашего календаря, искать события, связанные с тематикой вашего сайта.
Целиком заполненный календарь тоже не очень хорош — это создаст проблемы при индексировании календаря поисковыми пауками и при создании карты сайта. Когда поисковая машина посетит ваш сайт, она зарегистрирует огромное количество ссылок календаря и просто добавит ваш сайт в очередь. А это отрицательно повлияет на частоту посещений вашего сайта поисковым пауком. Аналогичная ситуация будет и с картой сайта: в нее будут добавлены тысячи ссылок календаря. Чтобы решить проблему, нужно регулярно архивировать старые события, исключить календарь из карты сайта и запретить его индексирование (в robots.txt).
JCal Pro — один из лучших календарей для Joomla!, обладающий превосходным CSS-дизайном (рис. 8.25). Он также дает возможность пользователям производить поиск интересующих их событий. Компонент поддерживает родные права доступа Joomla! для создания событий и администрирования.
Вы можете загрузить JCal Pro абсолютно бесплатно с сайта Anything-Digital:
http://dev.anything-digital.com/index.php?option=com_content&task= view&id=2& Itemid=3
Примечание переводчика
На момент перевода книги компания Anything-Digital сделала компонент JCal Pro "условно-платным", т. е. компонент распространяется как бы бесплатно, но вы не сможете его скачать, пока не купите подписку на поддержку, которая обойдется вам от 5 до 60 долларов. Скачать русскую версию компонента абсолютно бесплатно можно с сайта переводчика: http://dkws.org.ua/files/com_ jcalpro_1.5.3_rus.zip. Данная версия расширения создана на базе пакета JCal от Форума русской поддержки (joomlaforum.ru) и дополнена всеми возможными
изменениями для успешной установки расширения в Joomla! 1.0 и Joomla! 1.5 (в режиме обратной совместимости).
JCal Pro — единственный компонент в пакете, поэтому вы можете установить его с помощью Менеджера расширений. Чтобы получить доступ к компоненты, просто создайте элемент меню, связанный с этим компонентом.
вид маслин neaecnj дня вид и*деля Вид дня Киегеиин now квид маслин neaecnj дня вид и*деля Вид дня Киегеиин now к
вид маслин neaecnj дня вид и*деля Вид дня Киегеиин now к
вид маслин neaecnj дня вид и*деля Вид дня Киегеиин now к
• Вид месяца• Вид месяцаMonday, 06 Мау, 2ООЯMonday, 06 Мау, 2ООЯМау 2008Мау 20081ио*2»Ой I1ио*2»Ой I
• Вид месяца
• Вид месяца
Monday, 06 Мау, 2ООЯ
Monday, 06 Мау, 2ООЯ
Мау 2008
Мау 2008
1ио*2»Ой I
1ио*2»Ой I
»«qw<ew*e Понедд^адж B<»p*NK»«qw<ew*e Понедд^адж B<»p*NKСИД»СИД»ПопадуПопадуОббокОббок2а2а2»2»
»«qw<ew*e Понедд^адж B<»p*NK
»«qw<ew*e Понедд^адж B<»p*NK
СИД»
СИД»
Попаду
Попаду
Оббок
Оббок
2а
2а
2»
2»
СегодняСегодня| Общий
Сегодня
Сегодня
■ Поиск по календарю
[введите ключевое слово... Go
Кэ1 Pro Calendar
Рис. 8.25. Календарь JCal Pro
Для создания событий JCap Pro использует стандартный WYSIWYG- редактор Joomla!, поэтому вы сможете применить функции форматирования в своих событиях. События можно настроить как повторяющиеся, а также поместить в специальные категории: JCal предоставляет полный контроль над просмотром событий. Также вы можете выбрать общий календарный режим, в котором события отображаются от самого последнего до самого давнего.
Используя панель управления JCal Pro (рис. 8.26), вы можете настроить компонент. создать категории событий (они похожи на стандартные Joomla!- категории), создать сами события, установить и выбрать темы, а также про
смотреть документацию.
Рис. 8.26. Используйте панель управления JCal Pro для настройки компонента
Рис. 8.27. Создайте новое событие и установите его дату и время
Перед созданием событий я рекомендую создать соответствующие категории. По умолчанию есть лишь одна категория— Общие. Можно создать следующие категории: праздники, конференции, фестивали, фильмы, концерты, туры и т. д.
После добавления категорий, соответствующих вашему сайту, с помощью редактора событий можно добавить и отредактировать события (рис. 8.27). Как видите, при создании события нужно установить довольно много параметров. Параметры повтора позволяют повторять событие через определенное число дней, недель, месяцев, лет. Можно повторять событие постоянно, а можно установить число повторений или дату, после которой событие повторяться не будет.
JCal Pro позволяет импортировать события из компонента ExtCalendar (компонент Mambo). Импорт осуществляется автоматически, если ExtCalendar будет установлен на момент установки JCal Pro.
Создание форума
Форумы очень полезны для создания сообщества пользователей, но одновременно они довольно опасны. Каждый, у кого хотя бы раз был форум, знает о войнах флейма, возникающих между пользователями, о брани на форумах, о мертвых форумах, на которых нет ни одного сообщения. Довольно сложно поддерживать форум. Зато, если форум будет успешно развиваться, он станет настоящим складом контента и основой вашего сообщества.
Вы можете выбрать один из нескольких компонентов форума. Но главный сайт Joomla! использует форум SMF (Simple Machines Forum), который настоятельно рекомендуется использовать и вам. Несмотря на то, что SMF написан на PHP, это не родной Joomlal-форум. Для его интеграции с Joomla! используется несколько дополнительных компонентов.
Примечание переводчика
На момент перевода этой книги форум официального Web-сайта Joomla! работал под управлением форума phpBB.
Примечание
SMF — это не "родной" Joomla! форум (т. е. не выполнен в виде Joomla!- компонента), существует несколько "родных" Joomlal-форумов Наверное, самое популярное расширение— Fireboard Forum (http://joomlacode.org/gf /project/f reboard/frs), обладающее дружественной дизайнеру системой шаблонов, поддержкой личных сообщений, возможностью добавлять модули Joomla! на форум, предоставляющее статистику форума и многое другое. Другое популярное расширение форума — Kookaburra (ww.theyfactory.com) — облегченная версия PubBB с возможностью интеграции с Joomla!.
С момента установки командой разработчиков Joomla! форума SMF насчитывается более 60 тысяч активных пользователей, а каждый день пользователи отправляют более 1200 сообщений. Судя по всему, SMF — отличный выбор. SMF распространяется свободно, для него разработано много скинов и шаблонов, а после установки компонента-моста SMF станет частью Joomlai-сайта (рис. 8.28).
МнЮ H*»nwМнЮ H*»nwКс*» ecdaКс*» ecdaHome > My ForumHome > My ForumHello adminMarch 02. 2007. 11:52.41 amHello adminMarch 02. 2007. 11:52.41 amShow u read posts - nee last «sit.Show new replies to your posts.Total time logged in: 3 minutes.Show u read posts - nee last «sit.Show new replies to your posts.Total time logged in: 3 minutes.Му Gaienr CMt RoomQ"Hwfc.psS<rt Huts Miiory 2 Phots G*K«ry 3 М/ СМ*п>й<Jcown? Home Joom-a' t-orum» ОХИ Nome A^i'iiX МГхМу Gaienr CMt RoomQ"Hwfc.psS<rt Huts Miiory 2 Phots G*K«ry 3 М/ СМ*п>й<Jcown? Home Joom-a' t-orum» ОХИ Nome A^i'iiX МГхNews: SMF - just installed!Z5News: SMF - just installed!Z5My CommunityMy CommunityLast post by_ I•SimpleGenet al Discussionм^Ноа^Last post by_ I•SimpleGenet al Discussionм^Ноа^
МнЮ H*»nw
МнЮ H*»nw
Кс*» ecda
Кс*» ecda
Home > My Forum
Home > My Forum
Hello adminMarch 02. 2007. 11:52.41 am
Hello adminMarch 02. 2007. 11:52.41 am
Show u read posts - nee last «sit.
Show new replies to your posts.
Total time logged in: 3 minutes.
Show u read posts - nee last «sit.
Show new replies to your posts.
Total time logged in: 3 minutes.
Му Gaienr CMt Room
Q"
Hwfc.psS<rt Huts Miiory 2 Phots G*K«ry 3 М/ СМ*п>й<
Jcown? Home Joom-a' t-orum» ОХИ Nome A^i'iiX МГх
Му Gaienr CMt Room
Q"
Hwfc.psS<rt Huts Miiory 2 Phots G*K«ry 3 М/ СМ*п>й<
Jcown? Home Joom-a' t-orum» ОХИ Nome A^i'iiX МГх
News: SMF - just installed!Z5
News: SMF - just installed!Z5
My Community
My Community
Last post by
_ I•Simple
Genet al Discussionм^Ноа^
Last post by
_ I•Simple
Genet al Discussionм^Ноа^
Рис. 8.28. Форум SMF в действии
Помимо выбора форума, вам нужно также выбрать мост, позволяющий интегрировать форум с Joomla!. Для SMF вы можете выбрать один из коммерческих или бесплатных мостов. В следующем разделе мы рассмотрим мост JoomlaHacks Joomla!-SMF Bridge.
Установка SMF
Перед установкой форума убедитесь, что ваш сервер соответствует всем требованиям форума. Если на вашем сервере уже запущены Joomla! и MySQL, скорее всего, проблем не будет. Минимальные системные требования к серверу следующие:
♦ PHP 4.1.0 или выше (может быть запущен как на Apache, так и на Microsoft 11S);
♦ MySQL 3.23.4 или выше;
PHP-директива engine должна быть установлена в cm;
PHP-директива magic quotes sybase должна быть выключена (значение off);
PHP-параметр session, save path должен указывать на существующий каталог, доступный для записи;
PHP-параметр upload_tmp_dir должен содержать имя существующего каталога, доступного для записи;
PHP-директива file uploads должна быть включена (значение On).
Если ваш сервер может запустить SMF, загрузите форум с сайта wwvv.simplemachines.org.
При загрузке доступны следующие базовые пакеты: full install (полная установка), large update (значимое обновление), small update (незначительное обновление) и web install (Web-установка). Поскольку вы никогда не устанавливали SMF, нужно выбрать full install. Можно также выбрать Web- установку, если этот вариант вас устроит.
Совет
Как системный администратор, я пришел к выводу, что лучше всегда сохранить инсталлятор любой системы, которую я устанавливаю. Сначала я думал, что инсталлятор всегда можно скачать в Интернете, как только он понадобится, поэтому никогда не сохранял его. Однако несколько раз. когда я нуждался в инсталляторе при восстановлении системы после ошибки, нужная мне версия не была доступна. А новая версия пакета была не совместима с данными и конфигурацией моей версии. Хуже всего то, что разработчик мог просто испариться, и я вообще не мог найти нужную мне версию инсталлятора. Поэтому я всегда сохраняю инсталлятор системы — на всякий случай. Если у вас нет другого выбора, вы можете попытаться использовать интернет-инсталляторы.
Мост SMF-Joomla! доступен по адресу www.joomlahacks.com/joomla /components/Joomlal-SMFForum.
Чтобы наиболее эффективно использовать SMF вместе с Joomla!, нужно извлечь файлы из архива в каталог, находящийся в пределах каталога Joomla!. Проще говоря, создайте каталог forum в корневом каталоге Joomla!. В Windows этот каталог будет называться примерно так: C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\forum.
Сразу после распаковки файлов форума в этот каталог обратитесь к нему с помощью браузера. Будет автоматически запущен файл index.php, который произведет весь процесс установки форума. На первом этапе установки нужно будет установить базовые параметры и ввести параметры доступа к MySQL (рис. 8.29).
Basic Settings
Just a few things for you to setup , ,
Forum name:Forum name:■My Community■My Communityi sting Forum"i sting Forum"Forum URL:Forum URL:http dkws om ua/mmla/forumThis is the URL to your forum without the trailing "/'I.In most cases, you can leave the defau t value in this box alone - it Is usually ighthttp dkws om ua/mmla/forumThis is the URL to your forum without the trailing "/'I.In most cases, you can leave the defau t value in this box alone - it Is usually ightGzip Output:Gzip Output:0 Compress output to save bandwidth.This function does not woik property on all servers but can save you a lot of bandwidth Click here to test It (it should just say "PASS”-)0 Compress output to save bandwidth.This function does not woik property on all servers but can save you a lot of bandwidth Click here to test It (it should just say "PASS”-)Database Sessions:Database Sessions:@ Use the database for sessions nstead of using files.@ Use the database for sessions nstead of using files.UTF-6 Character Set:UTF-6 Character Set:0 Use UTF-B as default character set0 Use UTF-B as default character setAllow Stat Collection:Allow Stat Collection:□ Allow S mple Machines to Collect Basic Stats Monthly□ Allow S mple Machines to Collect Basic Stats MonthlyIf enabled, this willIf enabled, this willmonth to collect basic stat sties. Th s w I help us makemonth to collect basic stat sties. Th s w I help us makedecisions as to which configurations to optimize the software for. For more information please visit our nfo page.decisions as to which configurations to optimize the software for. For more information please visit our nfo page.MySQL Server SettingsMySQL Server SettingsThese are the settings to use for your MySQL server. If you don't know the values, you should ask your host what they areThese are the settings to use for your MySQL server. If you don't know the values, you should ask your host what they areMySQL server name:MySQL server name:'Qcain st'Qcain st
Forum name:
Forum name:
■My Community
■My Community
i sting Forum"
i sting Forum"
Forum URL:
Forum URL:
http dkws om ua/mmla/forum
This is the URL to your forum without the trailing "/'I.
In most cases, you can leave the defau t value in this box alone - it Is usually ight
http dkws om ua/mmla/forum
This is the URL to your forum without the trailing "/'I.
In most cases, you can leave the defau t value in this box alone - it Is usually ight
Gzip Output:
Gzip Output:
0 Compress output to save bandwidth.
This function does not woik property on all servers but can save you a lot of bandwidth Click here to test It (it should just say "PASS”-)
0 Compress output to save bandwidth.
This function does not woik property on all servers but can save you a lot of bandwidth Click here to test It (it should just say "PASS”-)
Database Sessions:
Database Sessions:
@ Use the database for sessions nstead of using files.
@ Use the database for sessions nstead of using files.
UTF-6 Character Set:
UTF-6 Character Set:
0 Use UTF-B as default character set
0 Use UTF-B as default character set
Allow Stat Collection:
Allow Stat Collection:
□ Allow S mple Machines to Collect Basic Stats Monthly
□ Allow S mple Machines to Collect Basic Stats Monthly
If enabled, this will
If enabled, this will
month to collect basic stat sties. Th s w I help us make
month to collect basic stat sties. Th s w I help us make
decisions as to which configurations to optimize the software for. For more information please visit our nfo page.
decisions as to which configurations to optimize the software for. For more information please visit our nfo page.
MySQL Server Settings
MySQL Server Settings
These are the settings to use for your MySQL server. If you don't know the values, you should ask your host what they are
These are the settings to use for your MySQL server. If you don't know the values, you should ask your host what they are
MySQL server name:
MySQL server name:
'Qcain st
'Qcain st
"h s Is nearly always localhost - so if you don t know, try localhost.
MySQL username:
MySQL password:
Неге, put the password you need to connect to your MySQ^ database If you don't know this you should try the password to your ftp account.
MySQL database name:MySQL database name:
MySQL database name:
MySQL database name:
Fi In the name of the database you want to use for SMF to store ts data in
MySQL table prefix:MySQL table prefix:
MySQL table prefix:
MySQL table prefix:
I Proceed J
Рис. 8.29 Как только установите параметры, нажмите кнопку Proceed
ITp имечани^переводчик a
На самом деле в реальных условиях первый этап установки — это установка необходимых прав доступа. Вы можете ввести параметры доступа к FTP, чтобы инсталлятор автоматически установил права доступа к файлам и каталогам, или же установить права доступа вручную (инсталлятор выведет список файлов и каталогов, права доступа к которым нужно изменить). Автор книги устанавливал форум под Windows, поэтому окно с параметрами FTP у него не появилось.
Второй экран инсталлятора позволяет вам создать учетную запись администратора форума (рис. 8.30). При выборе пароля администратора учитывайте все правила безопасности (пароль должен состоять из букв разного регистра и цифр), чтобы его не подобрали хакеры.
На этом установка форума завершена!
Рис. 8.30. Придумайте безопасный пароль администратора форума
Примечание переводчика
После установки форума не забудьте удалить файл index, php с сервера
Запуск SMF
Запустите браузер и обратитесь к URL форума, вы увидите только что установленный форум (рис. 8.31). SMF — это полнофункциональный форум, который можно просто использовать, создав на него ссылку в меню Joomla!. Однако в этом случае вы потеряете много функций, например, навигацию сайта, поэтому желательно использовать расширение Joomla!-SMF, что и будет продемонстрировано чуть позже, но прежде мы рассмотрим SMF, чтобы понять, как он работает.
Перейдите по ссылке General Discussion — вы увидите все темы данной категории форума (рис. 8.32). Форум отображает всю основную информацию о каждой теме — имя пользователя, создавшего тему, количество просмотров и ответов, а также дату последнего ответа. Данная информация очень полезна для частых посетителей.
При создании новой темы вам будет доступен стандартный редактор (рис. 8.33). Это не WYSIWYG-редактор, подобный тому, который вы использовали в Joomla!. Однако данный простенький редактор позволяет выполнять несложное форматирование текста и вставлять смайлики (рис 8.33).
Рис. 8.31. Основные категории и статистика форума
Му Community > General Category > General Discussion
My Community > General Category > General Discussion
I Topic you have posted лQ Locked Topic
i1 Normal Topic^ Sticky TopicJump to; => Genera[ Di
Ij Hot Topic (More than 15 repfies)*: PaR:
Very Hot T°P*C (More than 25 re pl es)
v:*< • г ft; _-. * *, I В | r_ * • j <_ M p’^ ■<#.• ii '„
Для администрирования SMF используется SMF Administration Center (Центр администрирования SMF), показанный на рис. 8.34. Он довольно сложный, но вместе с SMF поставляется превосходное руководство. Чтобы изучить и настроить эту систему, вам понадобится немного времени.
Установка компонента-моста JoomlaHacks Joomla!-SMF
Как только вы установите и настроите форум, можно приступить к его интеграции с Joomlal. Если вы уже загрузили архив моста (у него будет длинное имя файла вроде smf_l-l_jsmf_l-0-x_bridge_l-l-7.zip), извлеките из него архив компонента (имя файла comjsmf.zip).
Установите компонент с помощью Менеджера расширений. После этого в меню Компоненты появится подменю установленного компонента. Выберите команду Install для настройки связки SMF и Joomla!. Единственный параметр, который вам нужно изменить, — это путь к каталогу, в котором установлен форум (SMF Absolute Path — рис. 8.35). Укажите каталог SMF и нажмите кнопку Сохранить
Рис. 8.34. SMF Administration Center используется для настройки форумаРис. 8.34. SMF Administration Center используется для настройки форума^^ Joomla-SMF Forum Installation
Рис. 8.34. SMF Administration Center используется для настройки форума
Рис. 8.34. SMF Administration Center используется для настройки форума
Instai ■ tion Registration
Joomla SMF Forum Installation
Forum URISMF Absolute Path;SMF Table PreF кft,:*i■ie [verify]Forum URISMF Absolute Path;SMF Table PreF кft,:*i■ie [verify]/home/dkwsoigu/domains/dkws oig ua/public_html/|Gmla/foiunr|
Forum URI
SMF Absolute Path;
SMF Table PreF к
ft,:*i
■ie [verify]
Forum URI
SMF Absolute Path;
SMF Table PreF к
ft,:*i
■ie [verify]
smf~|
SMF Forum installed on the same database as Joomla.
Patch Joomla Sou ce F3es.
Patch SMF Source F les (Note: Unpatch before upg ading SMF or installing mod.) Optional: Synchronize Joomla and SMF usersfusername or real name).
Примечание переводчика
В старых версиях компонента Joomla!_SMF для настройки пути к форуму нужно было выбрать команду Configuration (из меню Конфигурация | Joomla!-SMF Forum), в новой версии настройки каталога и префикса таблиц изменяются через команду Install, как было показано ранее.
После этого вам останется создать ссылку в главном меню, указывающую на компонент-мост SMF, при переходе по которой станет доступен форум SMF внутри интерфейса Joomla! (рис 8 36).
40,000mb space / SOOgb bandwidth web hosting
JoomlaHacksJoomlaHacksstarting $4.95 per month!
JoomlaHacks
JoomlaHacks
5 Login Regnier Submit New* Topstes Bugs Advertise About .uniact Re^wnfoend Search
Homo ■ Forum
Welu^ ne, Guest. Please . ir r Did voи rm$c your pcli vat fn email! May OS 21 OB 09 37 14 AM
Forever V- [ *-0gin
Login with username, password and session length
Build a free g^bsite Free web» te b^Riei. IrvBuild a free g^bsite Free web» te b^Riei. IrvWindows VPS HostingWind» /0Е iET G SOI 60daysFreeWindows VPS HostingWind» /0Е iET G SOI 60daysFreeSpecial:» « 2* I jppert $0Special:» « 2* I jppert $0
Build a free g^bsite Free web» te b^Riei. Irv
Build a free g^bsite Free web» te b^Riei. Irv
Windows VPS Hosting
Wind» /0Е iET G SOI 60daysFree
Windows VPS Hosting
Wind» /0Е iET G SOI 60daysFree
Special:» « 2* I jppert $0
Special:» « 2* I jppert $0
Ade by Google
-Ji Joomla Forum
Joomla HacksJoomla Hacksan-,OL' -^n-en*an-,OL' -^n-en*Chud Boards- IChud Boards- IFeedbackFeedbackAnnouncementsAnnouncementsJaomle-SMF Forum SupportSudp--.it board for J la-SMF arum Bridge.•arH J -^ ",* -fr^» .«^ * a, Joomte-^T#-'1 < Маг-Ъ-y. A#»-4F1 ; Pa I - ??Jaomle-SMF Forum SupportSudp--.it board for J la-SMF arum Bridge.•arH J -^ ",* -fr^» .«^ * a, Joomte-^T#-'1 < Маг-Ъ-y. A#»-4F1 ; Pa I - ??FAQ'sFAQ's for ail protects Feel free to add vour own FAQ.FAQ'sFAQ's for ail protects Feel free to add vour own FAQ.VF AVF A22 PostsIS Topics22 PostsIS Topics16396Posts in311916396Posts in311976 Posts25 Topics76 Posts25 Topics91 Posts91 PostsLaft po<- on 11 у 1 21 6, - 1’19’3 PMLaft po<- on 11 у 1 21 6, - 1’19’3 PMLast • is* on Today at 03.Г- BAM " »*e. Heis please User. by I •Last • is* on Today at 03.Г- BAM " »*e. Heis please User. by I •Last рог on March 17, 2C 4 34 54 PM m ^,t Huw can 1 get the cn* .. by ■ jpe-^aar».®Last рог on March 17, 2C 4 34 54 PM m ^,t Huw can 1 get the cn* .. by ■ jpe-^aar».®Last post on April OS, 2C- , 11 2 J AMLast post on April OS, 2C- , 11 2 J AM
Joomla Hacks
Joomla Hacks
an-,OL' -^n-en*
an-,OL' -^n-en*
Chud Boards- I
Chud Boards- I
Feedback
Feedback
Announcements
Announcements
Jaomle-SMF Forum Support
Sudp--.it board for J la-SMF arum Bridge.
•arH J -^ ",* -fr^» .«^ * a, Joomte-^T#-'1 < Маг-Ъ-
y. A#»-4F1 ; Pa I - ??
Jaomle-SMF Forum Support
Sudp--.it board for J la-SMF arum Bridge.
•arH J -^ ",* -fr^» .«^ * a, Joomte-^T#-'1 < Маг-Ъ-
y. A#»-4F1 ; Pa I - ??
FAQ's
FAQ's for ail protects Feel free to add vour own FAQ.
FAQ's
FAQ's for ail protects Feel free to add vour own FAQ.
VF A
VF A
22 Posts
IS Topics
22 Posts
IS Topics
16396
Posts in3119
16396
Posts in3119
76 Posts
25 Topics
76 Posts
25 Topics
91 Posts
91 Posts
Laft po<- on 11 у 1 21 6, - 1’19’3 PM
Laft po<- on 11 у 1 21 6, - 1’19’3 PM
Last • is* on Today at 03.Г- BAM " »*e. Heis please User
. by I •
Last • is* on Today at 03.Г- BAM " »*e. Heis please User
. by I •
Last рог on March 17, 2C 4 34 54 PM m ^,t Huw can 1 get the cn* .. by ■ jpe-^aar».®
Last рог on March 17, 2C 4 34 54 PM m ^,t Huw can 1 get the cn* .. by ■ jpe-^aar».®
Last post on April OS, 2C- , 11 2 J AM
Last post on April OS, 2C- , 11 2 J AM
Рис. 8.36. Форум SMF внутри интерфейса Joomla
Добавление поля предложений
Довольно редко я вижу на сайтах очень полезную вещь — поле предложения. Посетители частенько желают сделать предложения (или, наоборот, выска-
зать свое недовольство), если на вашем сайте они не нашли того, что искали. Вы хотите знать, что именно не нашли пользователи? Ведь на одно предложение обычно приходится множество пользователей, которым необходима та же информация.
Вы можете реализовать поле предложения с помощью одного из уже рассмотренных расширений. Например, с помощью комментариев или гостевой книги. Добавление на сайт поля предложений сделает его более лояльным.
Так как поле предложения достаточно простое, мы реализуем его самостоятельно в г часе 13, когда будем рассматривать разработку собственных компонентов.
Совет
Когда вы добавите возможность предложений, отправьте простое сообщение "Спасибо" (автоматически или вручную). Ни одно предложение не должно быть проигнорировано, и вы должны благодарить посетителей за время, уделенное вашему сайту.
Использование Community Builder
Community Builder (СВ)— это одно из самых популярных Joomlal-расши- рений в Web, предоставляющее расширенные функции по управлению пользователями. Стандартные функции управления пользователями в Joomla! довольно примитивны, а СВ дополняет их, а также расширяет профиль пользователя. Свободно распространяемое расширение СВ добавляет в Joomla! следующие возможности:
надежная система аутентификации;
расширенный профиль пользователя с возможностью добавления полей и таблиц;
страница информации о пользователе, показывающая все посты пользователя;
списки пользователей, в том числе вывод информации о связи пользователей друг с другом;
возможность загрузки аватар (аватара — это маленькая картинка, обозначающая конкретного пользователя);
индивидуальные страницы пользователей;
возможность добавления плагинов, например, CAPTCHA, Google Map (через Joomla!), PonyGalery (отображение картинок), статус пользователя и отслеживание событий сессии.
СВ — это настолько популярное расширение в мире Joomla!, что много других расширений интегрируется с его системой аутентификации, например. Fireboard, OpenSEF, Zoom Gallery и phpBB.
Установка Community Builder
Прежде чем вы загрузите СВ, вам нужно зарегистрироваться на сайте Joomlapolis (www.joomlapolis.com). Без регистрации вы не сможете перейти в область Downloads, т. е. не сможете скачать СВ. После регистрации на ваш e-mail придет ссылка подтверждения регистрации вашей учетной записи. После подтверждения вы сможете скачать архив с именем вроде CBuilderl_0_2_ unziplst.zip, содержащий полный пакет СВ.
Пакет СВ содержит несколько взаимосвязанных расширений. Инсталляция по умолчанию содержит:
Comprofiler— основной компонент, используемый СВ Предоставляет основную часть пользовательского интерфейса СВ;
CBIogin — этот модуль заменяет стандартный Joomlal-модуль Login на вашей главной странице и дает возможность пользователям регистрироваться, входить и выходит из СВ-системы;
Modcomprofilermoderator— модуль управляет процессом регистрации пользователей и позволяет указать модератора, ответственного за индивидуальную регистрацию пользователей;
Modcomprofileronline — этот модуль отображает список СВ-пользова- телей, которые в данный момент находятся на сайте.
Для установки СВ нужно с помощью Менеджера расширений установить comprofiler.zip и cblogin.zip. Если вы будете использовать функции модератора, также установите mod_comprofilermoderator.zip.
После установки вышеуказанных расширений вам нужно отключить стандартную систему аутентификации пользователей. Откройте Менеджер модулей и отключите модуль Login Form (modlogin или Авторизация — в некоторых локализациях Joomla!). Затем активируйте модуль СВ Login. Если вы после этого откроете главную страницу своего сайта, то увидите модуль СВ Login, заменивший стандартную форму входа (рис. 8.37).
Используя новый модуль, вы можете войти в систему. Если вы создали ссылку меню, указывающую на компонент СВ (Comprofiler), щелкните по ней, и вы увидите свою страницу профиля (если вы в данный момент зарегистрированы на сайте), изображенную на рис. 8,38.
Пароль
€отгп.»»Ь
Запомнить меня
Войти
Забыли пароль?
admin Profile PagePortrait [_
Contact * ^Articles [
Date
Monday, 09 August 2004
Monday, 09 Aug met 2004
Monday, 09 August 2004
Wednesday, 07 luly 2004
Wednesday, 07 _uly 2004
Wednesday, 07 "uly 2004
Saturday, 12 Jure 2004
Wednesday, 12 May 2004
Wednesday, 12 May 2004
СВ Login
Пользователь
зарегистрированы, Регистрация
Hits
Online Status
Member Since
Last Online
Last Updated
Newsflash 2
Nqweflayh 1
Newsflash 3
О
Title
Example News Item 2
Example News Item 4
Example News item 1
Welcome tg joomlai
Example FAQ Item 1
Example FAQ Item 2
Рис. 8.37. Модуль СВ Loginзаменил стандартный модульLogin
ONLINE
12/24/2005 23:43:03
06/13/2007 19:04-02
06/13/2007 18:12:18
Hits
8
2
6
8
10
Рис. 8 38 Страница профиля пользователя, отображаемая компонентом СВ
Управление компонентом Community Builder
В интерфейсе администратора в меню Компоненты | Community Builder вы найдете следующие команды:
User Management (Управление пользователями) — отображает Менеджер пользователей, позволяющий вам выполнять операции над пользователями, в том числе создание, модификация, поиск, включение, подтверждение и одобрение;
Tab Management (Управление таблицами) и Field Management (Управление полями)— данные команды позволяют вам вносить собственные изменения в профиль пользователей (наверное, это наиболее популярная функция СВ);
Рис. 8.39. Список СВ-плагинов
List Management (Управление списками)— позволяет вам создавать новые списки пользователей. Списки могут быть отсортированы по одному или нескольким полям и содержать до четырех столбцов (каждый столбец может содержать одно или несколько значений). Также реализованы фильтры списка и групповое изменение прав доступа;
Plugin Management (Управление плагинами)— менеджер плагинов отображает все установленные по умолчанию плагины (рис. 8.39). Вы можете найти множество дополнительных СВ-плагинов. скачать и установить их. Плагины для СВ доступны на сайте Joomla!polis в разделе Add-ons области Downloads;
Tools (Инструменты) — менеджер инструментов позволяет вам загружать типичные данные, синхронизировать существующие таблицы пользователей Joomla! с таблицами пользователей СВ, а также проверять целостност ь баз данных СВ;
Configuration (Настройка)— менеджер конфигурации позволяет изменять все настройки СВ— от отображения пользовательских профилей до процесса регистрации пользователей и интерфейса модератора.
Если вы нуждаетесь в расширенном управлении пользователями, вам нужно загрузизь и установить СВ.
Резюме
С помощью расширений Joomla! вы можете создать виртуальное сообщество сайта. Правильно выбрав профиль сайта, вы можете существенно увеличить посещаемость, и ваш сайт может стать настоящим центром Web-трафика.
Когда вы решите создать сообщество пользователей, вы также должны решить, какой тип взаимодействия вы хотите позволить посетителем и сколько времени вы можете себе позволить на управление сообщест вом
Контент традиционного сайта определяется только администратором и специально назначенными авторами. В отличие от обычного сайта виртуальное сообщество может самостоятельно добавлять контент сайза. С одной стороны. это расширяет возможности сайза, но и таит опасность. Без надлежащего присмотра ваш Web-сайт станет подобным ребенку, которого никто не воспитывает.
Поэтому прежде чем добавить функции виртуального сообщества, вы должны решить^ хватит ли вам времени и энергии для надлежащего управления сайтом. Иначе в один не очень прекрасный день ваш сайт превратится в свал
ку ненужного контента.
ГЛАВА 9
Статистика сайта
Чем больше трафика расходует ваш Joomlal-сайт, тем больше информации можно узнать о ваших посетителях. Хорошо, что Web-сервер может зафиксировать все попытки обращения к вашему сайту, что позволяет исследовать и проанализировать трафик, т. е. узнать, кто посещает ваш сайт, как долго средний посетитель остается на вашем сайте, какие браузеры и операционные системы чаще всего используют ваши посетители, а также много другой полезной информации. Но наиболее важная задача— это определение самых популярных страниц и страниц, которые никто не читает.
Существуют три основных метода сбора статистики сайта: анализатор файла протокола Web-сервера, Joomlal-расширение и онлайновый пакет статистики. В этой главе мы подробно рассмотрим два свободно распространяемых пакета (Webalizer и AWStats), несколько Joomlai-расширений и один онлайновый пакет (Google Analytics), который может быть использован для определения шаблонов трафика.
Информация, необходимая Web-мастеру, и ее формат зависят от личных предпочтений. Кому-то нравится пакет А, умеющий рисовать красивые диаграммы, а кто-то в восторге от текстового отчета пакета В. Поэтому важно рассмотреть возможности всех доступных пакетов и выбрать тот, который вам больше всего понравился.
Примечание
В старых версиях Joomla! (до версии 1.5) был стандартный пакет статистики, встроенный в интерфейс администратора. Этот пакет был исключен из Joomla! потому, что команда разработчиков Joomla! решила, что существует много более функциональных расширений. Если в каком-нибудь устаревшем руководстве вы увидите упоминание о стандартной статистике Joomla!, не тратьте время на ее поиск — ее уже нет.
Web-аналитика
Изучение Web-посетителей называется Web-аиачктикой. Коррелируя разную информацию, например, точку входа на сайт, Web-мастер может точно настроить сайт так, чтобы получить дополнительных посетителей. Основной анализ направлен на обработку информации Web-сервера, установку отношений с другой информацией (информацией об использовании e-mail, о произведенных заказах) — все это осуществляется с помощью Web-аналитики.
Чтобы получить от Web-сервера информацию, необходимую для анализа, применяются два основных метода: анализ файла протокола сервера и активный сбор информации о посетителях (этот метод также называют page tagging). У каждого метода есть свои преимущества и недостатки, в этой главе мы рассмотрим методы, подходящие для анализа любого Joomla’-сайта.
Примечание
Много информации по Web-аналитике вы сможете найти на сайте ассоциации Web-аналитиков (www webanalyticsassociation огд). Данная организация занимается анализом Web-данных. Вы даже можете пройти онлайн-курсы по Web-аналитике.
Анализ Web-протоколов
Web-протоколы — это обычные текстовые файлы, хранимые на Web-сервере, в которые сервер записывает информацию (в определенном формате) об обращениях к нему. Практически каждый Web-сервер использует один из двух наиболее популярных форматов (Apache Custom Log Format— формат Apache и W3C Extended Log File Format— расширенный формат W3C). Программы-анализаторы протоколов выполняют парсинг этой информации и генерируют общий отчет об использовании сайта. Одним из лучших анализаторов протоколов считается программа WebTrends (w^vw.webtrends.com).
Файлы протоколов содержат всю информацию о посещениях сайта, а также информацию о посетителе: тип и версию его браузера, операционной системы. Анализатор протокола создает отчет по вашему трафику в прошлом и даже может прогнозировать трафик в будущем.
Протоколы также содержат информацию о ботах (поисковых пауках), посещающих ваш сайт. Изучив эту информацию, Web-мастер узнает, как часто его страничка индексируется поисковыми машинами и какие поисковые машины индексируют сайт чаще.
Один из недостатков анализа протоколов заключается в погрешности, когда удаленный сервер кэширует страницы сайта. Некоторые организации используют прокси-серверы для кэширования страниц сайтов, поэтому при запросе
страницы сайта она будет запрошена не с вашего сервера, а из кэша прокси- сервера. Чтобы избавиться от этой проблемы, была создана технология маркировки страниц (Page Tagging).
Маркировка страниц
Технология маркировки страниц заключается в помещении небольшого HTML-кода (обычно JavaScript) в каждую страницу сайта. Когда браузер посетителя отображает страницу, внедренный код обращается к удаленному серверу, который и записывает информацию о пользователе. Данный код может быть невидимым для пользователя или же представлять собой картинку- счетчик, отображающую количество обращений к сайту
Маркировка страниц наиболее явно используется при размещении контента на сайте третьего лица (например, на eBay). Многие продавцы на eBay размещают пункты аукциона, содержащие небольшой код, отображающий счетчик посещения страниц, или тиккер. Существуют бесплатные сервисы, предоставляющие счетчики, которые можно поместить на любой сайт, например, Easy Counter (twwv.easycounter.com), Simple Hit Counter (twwv.simplehitcounter.com). Когда браузер пользователя отображает страницу, картинка тиккера (счетчика) запрашивается с удаленного сервера — и одновременно с этим удаленный сервер записывает информацию о пользователе, запросившем тиккер
Маркер страницы не всегда обращается к удаленному сайту. Много Joomla!- расширений создают собственные маркеры, которые обращаются к вашему серверу и записывают информацию непосредственно в вашу базу данных MySQL на сервере.
Наиболее известными коммерческими сервисами маркировки страниц являются Google и Visual Sciences (tvtvtv.visualsciences.com), который также известен как WebSideStory. Система маркировки Google бесплатна, a Visual Sciences доступна только предприятиям, которым нужна мощная система статистики обращений к их узлам.
У маркировки страниц есть множество преимуществ по сравнению с обработкой файлов протокола. Поскольку код выполняется в окне браузера, это решает проблему с кэшированием страниц. К тому же, поскольку JavaScript- код выполняется в окне браузера, он может полечить дополнительную информацию (например, разрешение экрана) о машине пользователя.
С другой стороны, у маркировки страниц есть и свои недостатки. Боты (поисковые пауки) не выполняют код маркера, следовательно, мы не можем получить информацию об индексировании нашего сайта поисковыми машинами. К тому же, если вы используете удаленную систему маркировки, она хранит данные в виде свойств, и этот форма! недоступен Web-мастеру для дальнейшего анализа. Другими словами, если вы использовали разные счетчики, то не сможете интегрировать полученную с их помощью информацию в единое целое.
Многие решения маркировки требуют, чтобы у браузера посетителя были включены cookies, иначе они не смогут эффективно отслеживать каждую сессию пользователя. Но это не проблема, поскольку в большинстве случаев cookies включены.
Автономные пакеты анализа протоколов
Автономные пакеты предоставляют, наверное, самый удобный способ Web- анализа, особенно, если у вас есть доступ к файлам протокола (журналам) сервера. Многие автономные пакеты разрешают пользователю указать один или несколько файлов для осуществления анализа и выбрать необходимый тип отчета. Отчеты, как правило, сохраняются в формате HTML, что позволяет просматривать их локально или опубликовать на Web-сайте.
Каждый опытный Web-мастер знает, что журналы сервера могут быть просто огромными, поэтому их нужно регулярно резервировать и очищать. Автономные пакеты анализа превосходно для этого подходят, поскольку они могут использовать заархивированные данные, которые хранятся вне сервера. Иногда полезно проанализировать архивные протоколы, чтобы увидеть тенденции использования сайта в прошлом.
В этом разделе мы рассмотрим два наиболее популярных пакета — Webalizer и AWStats. Обе программы свободно распространяемые и доступны абсолютно бесплатно. Программы по мере развития получили все необходимые Web-мастеру функции.
Примечание
Отчеты по трафику будут более полезными, если URL вашего сайта отформатированы в соответствии с форматом SEP (Search Engine Friendly). В главе 12 мы подробно обсудим активацию опции SEF в Joomla!. Я рекомендую активировать эту функцию как можно скорее, чтобы максимизировать полезность информации, собранной Web-сервером.
Webalizer
Созданный в 1997 году Бредфордом Барретом (Bradford L. Barrett) Webalizer— это один из самых старых и в то же время самых популярных авто-
номных анализаторов. Он обладает прекрасной международной поддержкой — программа переведена примерно на 25 языков. Webalizer может обрабатывать файлы журналов, невзирая на их размер, а также Webalizer доступен для всех популярных платформ (Windows, Mac OS и Linux).
У Webalizer нет графического интерфейса, он запускается из командной строки, но этого достаточно, чтобы создать серию HTML-страниц отчета с текстовой информацией и графиками использования сайта. Webalizer бесплатно доступен по адресу www mrunix.net/webalizer
Webalizer может обрабатывать журналы, сохраненные в трех наиболее популярных форматах: CLF (Common Log Format), Apache Custom Log Format и W3C Extended Log File Format. По умолчанию, Apache использует второй формат, a Microsoft IIS — третий. Формат CLF предоставляет мало информации о трафике, поэтому в нормальных условиях Web-сервер никогда не будет настроен для этого формата (кроме тех редких случаев, когда используемый анализатор поддерживает только CLF).
Как уже было отмечено, Webalizer запускается из командной строки. Программа может обращаться к файлам протоколов, сохраненным на локальном жестком диске, или же обращаться к ним по протоколу FTP. что позволяет использовать программу для обработки журналов, хранимых на удаленных узлах, а это устраняет потребность в передаче по сети огромных файлов журналов перед их анализом.
Если ваш журнал находится на жестком диске, вы можете запустить Webalizer так:
webalizer с:\mywebserver\logs\access.log
В результате выполнения этой команды будет создан главный файл index.html, предоставляющий основной обзор использования сайта (рис. 9.1). На рисунке представлено три графика: общая статистика использования сайта по месяцам и два параллельных графика, отображающих количество посещений и переданный трафик (в килобайтах). Таблица под графиком показывает среднее ежедневное и полное ежедневное использование сайта в разрезе по передаче файлов, доступу к страницам, посещениям сайта и переданным килобайтам.
Примечание переводчика
На моем хостинге программа Webalizer не была русифицирована. Возможно, вам повезет больше.
Страница Usage Statistics (рис. 9.1)— это только итоговая часть отчета Webalizer. Для каждого месяца программа создает отдельный файл, в котором вы найдете следующую информацию:
Monthly statistics (Ежемесячная статистика) — покажет вам общее количество хитов, переданных файлов, страниц, посещений, трафика (в килобайтах), уникальных сайтов, уникальных URL и т. д.;
Hits by response code (Хиты по коду ответа) — двух- или трехсимвольные коды HTTP информируют о статусе HTTP-запроса. Например, большое число кодов 404 (ошибка "Файл не найден") говорит о том, что на сайте много "битых" ссылок;
Рис. 9.1. Отчет, сгенерированный программой Webalizer
Daily usage graph (График ежедневной статистики)— показывает график ежедневной статистики использования сайта в разрезе по хитам, файлам, сайтам и переданным килобайтам;
Daily statistics in terms of hits, files, pages, visits, sites, and kilobytes — ежедневная статистика использования сайта в разрезе по хитам (Hits — количество запрошенных файлов), файлам (Files— количество переданных сервером файлов), страницам (Pages— количество HTML-страниц, отправленных сервером), посещениям (Visits— количество уникальных посетителей), сайтам (Sites— количество уникальных сайтов, ссылающихся на ваш) и переданным килобайтам (Kbytes);
Hourly usage averages graph (График среднего почасового использования) — показывает график средней почасовой статистики в разрезе по хитам, файлам, сайтам и переданным килобайтам;
Hourly statistics (Почасовая статистика)— то же самое, что и Daily statistics, но выводится почасовая статистика, а не ежедневная;
Top URLs of total URLs (Лучшие URL) — наверное, самая полезная часть отчета, позволяющая определить, какие страницы самые популярные;
Top URLs by kilobytes downloaded (Лучшие URL по загруженным килобайтам)— показывает самые популярные страницы не по количеству загрузок, а по количеству переданных килобайтов;
Top entry and exit pages (Точки входа и выхода) — показывает точки входа (т. е. страницы сайта, которые посетитель открыл первыми) и точки выхода (страницы, которые посетитель просмотрел последними, прежде чем покинуть сайт);
Usage graph by country (График no странам)— показывает страны посетителей и различные виды доменов (.edu, .gov, .com).
Представленная статистика генерируются программой по умолчанию — без задания специальных опций. Вы можете указать опции, позволяющие сгенерировать дополнительные отчеты, например, отчет-сравнение с предыдущим месяцем, ранг всех URL и т. д. В файле ReadMe вы найдете список всех возможных опций. Также можно запустить программу с параметром -h для вывода всех доступных опций командной строки.
Поскольку исходный код Webalizer свободно распространяется, на базе этой программы было создано несколько альтернативных программ Вот несколько программ, основанных на Webalizer:
Log Miner — мощный анализатор журналов для Apache/lIS (и других Web- серверов, использующих форматы Apache или W3C). Он может извлекать и показывать статистику о посещениях, хитах, трафика, навигационных путях, браузерах и операционных системах пользователей. В отличие от
Webalizer, Log Miner генерирует отчет в базу данных PostgreSQL, поэтому на основе одних и тех же данных может быть быстро сгенерировано много отчетов. К сожалению, программа поддерживает только базу данных PostgreSQL. Программа доступна на сайте SourceForge: http://Iogminer. sourceforge.net/:
Webhpalizer— известна как "улучшенный Webalizer", программа использует PHP для сбора статистики о посетителях. Она обладает лучшей, чем у Webalizer, визуализацией и поддерживает базу данных MySQL, что позволяет ей немедленно обрабатывать журнал. Программа также доступна на SourceForge: http://sourceforge.net/projects/wephpalizer;
AWFFull— программа использует Webalizer в качестве основы и расширяет его функции, например, осуществляется поддержка CSS для пользовательских отчетов, строятся графики изменяемых размеров, выполняется автоматическое определение типа журнала, поддержка GeoIP для определения страны посетителя. Программа свободно доступна по адресу: www.stedee.id.au/awffull.
AWStats
AWStats— полнофункциональный автономный пакет, написанный на Perl (Webalizer написан на C++). Perl доступен для большинства известных платформ и операционных систем, поэтому AWStats можно запустить практически везде. Программа умеет работать с журналами в форматах Apache Custom Log format (NCSA combined/XLF/ELF Log Format или common/CLF Log Format), WebStar. W3C Extended Log File Format (для Microsoft IIS) и в других менее распространенных форматах. Программа также может анализировать журналы FTP и почтовые журналы.
У AWStats много расширенных функций, например, распознавание посещений человека и бота, уникальная статистика посетителя, технология вычисления статистики использования Flash-. QuickTime-, RealPlayer-роликов и других мультимедийных файлов сайта и др. AWStats можно бесплатно скачать по адресу: http://awstats.sourceforge.net/.
Как показано на рис. 9.2, программа предоставляет превосходный Web- интерфейс с двумя фреймами — фреймом статистики (слева) и фреймом отображения (справа).
Для AWStats доступно множество плагинов, дополняющих его новыми функциями, например, поддержка адресов IPv6, GeoIP для определения географии доступа и Clusterinfo для обработки журналов кластеров сервера.
В отличие от Webalizer, вам нужно загрузить и установить Perl на вашу машину. Это преимущество, а не недостаток, поскольку большинство хостов
разрешает выполнение скриптов Perl, но не разрешает выполнение обычных исполнимых файлов (вроде Webalizer). С другой стороны, если на вашей платформе не установлен Perl, вам понадобится еще одна машина для запуска AWStats (на которой будет установлен Perl).
Рис. 9.2. AWStats использует фреймы для отображения статистики
Расширения для Joomla!
Для Joomla! доступно много расширений, предоставляющих статистику посещений. Вместо анализа журналов Web-сервера эти расширения выполняются под Joomla! и собирают статистическую информацию, которая будет очень полезна для администратора Joomla!. Вот некоторые полезные пакеты.
♦ AstatsPro— наверное, самый всесторонний свободно распространяющийся пакет статистики для Joomla!. AstatsPro (http://astatspro.joom.la) переведен на много языков и предоставляет отличный интерфейс администратора, позволяющий создавать пользовательские отчеты. Качество статистики, предоставляемой этим расширением, сопоставимо с автономным пакетом AWStats.
♦ Joomla!Stats— этот пакет (www.joomlastats.org) предоставляет много разной информации о посетителе, и вся статистика приводится в разрезе по перемещениям посетителя. Он также записывает поисковые слова, которые посетители ввели в Google и других поисковых машинах, чтобы найти ваш сайт. Пакет содержит много модулей и административный компонент.
♦ Entana Statistics — отличный коммерческий пакет (www.entanacomponents.com), позволяющий отслеживать трафик нескольких Joomlai-сайтов и регистрировать информацию о посетителях в базе данных JoomlaL
♦ BSQ Sitestats — "легкое" расширение (www.bs-squared.com/wp), собирающее основную статистику сайта. Оно также собирает поисковые слова, введенные в поисковую систему JoomlaL Расширение предоставляет множество отчетов, в том числе графическую диаграмму посещений за определенный период времени, лучшие страницы, лучшие ссылки на ваш сайт, лучших посетителей, лучших пользователей, лучшие браузеры, лучшие языки, отслеживание сеанса посетителя, географическую информацию о посетителе; ежедневный, еженедельный и ежемесячный итоговый отчеты.
Недостаток всех пакетов статистики, инсталлируемых в Joomla!, заключается в снижении производительности системы — ведь нужны дополнительные системные ресурсы для сбора статистики. Эти пакеты создают дополнительную нагрузку как на Web-сервер, так и на базу данных MySQL. Многие Joomlal-провайдеры запрещают устанавливать статистические пакеты из-за снижения производительности.
Google Analytics
Компания Google предоставляет бесплатный статистический Web-сервис. Он называется Google Analytics (https://www.google.com/analytics/) и предоставляет практически любой тип статистического анализа сайта, а также обладает дружественным интерфейсом (рис. 9.3). Страница отчетов динамическая, потому вы можете легко изменять период статистики или даже сравнивать два периода. Поскольку Google Analytics запускается на серверах Google, процесс обработки журналов не влияет на производительность вашего сервера. И еще: т. к. Google Analytics обладает Web-интерфейсом, статистика сайта доступна повсеместно.
Google Analytics предоставляет всевозможные отчеты — от хитов каждой страницы до поисковых слов, которые были использованы для нахождения вашего сайта. Вся эта информация генерируется путем добавления небольшого скрипта на страницы вашего сайта.
Код маркера страницы
Когда вы зарегистрируетесь в Google Analytics, будет создана ваша учетная запись, откуда вы сможете управлять статистикой всех ваших сайтов. Для каждого сайта будет предоставлен специальный скрипт, который нужно поместить до тега </body>.
Go ^к* An 'lies
<*»M>»d4|ir>«ixnm I HKTfljH» НгЙК1« • К till &йи
1 887 Rk6U I к!»М)Ш
00:02:14 ккииу“мг‘-мдм1 ткдшздиедцмидх -мп
1.98 кцииид? wtttM
О6«ф по<*тнпвп»й
85.20 % Пгрмш.пяхш.яс-^жун^
Ншдаиххе джя№* на *»pi
Рис. 9.3. Google Analytics отображает графический анализ информации сайта
Код Google выглядит примерно так:
<script src="http://www.google-analytics.com/urchin.js" type="text/j avascript">
</script>
<script type="text/javascript">
uacct = "UA-xxx-xxx";
urchinTracker();
</script>
Данный код нужно вставить в каждую страницу Web-сайта. Для пользователей Joomla! внедрение кода Google Analytics чрезвычайно простое, поскольку доступ ко всем страницам осуществляется через один и тот же файл index.php текущего шаблона. Для добавления кода в Joonilal-шаблон просто откройте Менеджер шаблонов (в интерфейсе администратора), выберите шаблон по умолчанию и нажмите кнопку Редактировать HTML. Будет отображен код выбранного шаблона. Пролистайте код шаблона до закрывающего тега </body> и вставьте код Google, что обеспечит выполнение вставленного кода
на каждой странице сайта. Все отображенные с помощью этого шаблона страницы будут автоматически отслежены сервисом Google.
Примечание
Google Analytics получает информацию путем выполнения JavaScript-кода в окне браузера. Это означает, что браузеры, не поддерживающие JavaScript (браузеры многих сотовых телефонов), браузеры с выключенным JavaScript, а также машины с установленной программой блокировки рекламы (например, Adblock) не будут видны движку Google Analytics Поэтому желательно сравнивать анализ Google с анализом одной из автономных утилит. Сравнение отчетов Google Analytics с независимыми отчетами позволит получить предоставление о том, как Google Analytics отображает трафик вашего сайта.
Вместо модификации шаблона вы можете загрузить модуль Google Analytics Tracking Module, доступный на сайте Estime (www.estime.fi/en/reading- room). Модуль обеспечивает выполнение кода Google без изменения шаблона.
Как только код будет помещен на ваш сайт, вернитесь в окно сервиса Google и нажмите кнопку Проверить статус. Система попытается проверить, правильно ли установлен код на вашем сайте. Не волнуйтесь, если попытка проверки статуса в первые несколько минут завершится неудачей. Скорее всего, механизм кэширования еще не обновил страницу, поэтому помещенный код пока не виден механизму проверки Google. Подождите полчаса и попытайтесь проверить статус снова.
После активации Google Analytics на вашем сайте нужно подождать 24 часа, чтобы получить первую статистику. Чем дольше код установлен на вашем сайте, тем больше интересных отчетов вам будет доступно.
Google Analytics особенно полезен, если вы участвуете в маркетинговой кампании AdWords. Он помогает вам более точно определить целевую аудиторию вашей кампании, анализируя сайты, с которых пришли ваши посетители, а также географическое местоположение посетителей. Для кампании вы мсь жете также установить различные цели, например, продажи или целевые страницы посетителей. Тогда Google Analytics проследит, какие объявления наиболее популярны, и определит лучшие источники посетителей.
Внимание!
Помните, что бесплатный сыр может быть только в мышеловке. Да, сервис Google бесплатный, но, используя его, вы предоставляете Google информацию обо всех ваших посетителях. Для большинства сайтов отток данной информация — не проблема. Но для многих коммерческих сайтов и сайтов виртуальных сообществ важно хранить эту информацию в тайне. Если вы разрабатываете Joomlal-сайт для какой-нибудь организации, предупредите заказчика об этом аспекте использования сервиса Google и получите его согласие перед установкой счетчика!
Отчеты Google Analytics
Итоговый отчет в Google Analytics называется панелью инструментов (dashboard). На ней вы найдете много определенных отчетов, но все этих отчеты можно разделить на четыре больших категории: посетители, источники трафика, содержание и цели. Каждый набор отчетов предоставляет статистическую информацию, наиболее полезную для соответствующей области. Данные сайта отформатированы, поэтому вы можете взглянуть на них с разных перспектив.
Для каждой области будет представлена отдельная таблица или диаграмма статистических данных. Например, Самые популярные страницы входа (рис. 9.4) отображает точки входа для различных страниц, которые являются частью "цели", настроенной с помощью системы Google Analytics. Отчет позволяет вам отслеживать успешное достижение целей сайта.
Рис. 9.4. Точки входа
Google Analytics предоставляет много различных отчетов. Эти отчеты можно выбрать из иерархического списка в левой части экрана. В основных четырех категориях вы найдете следующие отчеты:
Посетители — наложение данных на карту, новые и вернувшиеся, языки, тенденции посетителей, посещения, абсолютно уникальные посетители,
12 Зак 468
просмотры страниц, среднее число просмотров, длительность пребывания на сайте, показатель отказов, лояльность посетителей, лояльность, продолжительность посещения, глубина посещения, возможности браузеров, браузеры, операционные системы, браузеры и ОС цвета экрана, разрешения экрана, версии Flash поддержка Java, сетевые параметры, местоположение в сети, названия хостов, скорости подключения и характеристики, определенные пользователем;
Источники трафика — прямой трафик, сайты-источники переходов, поисковые системы, все источники трафика, ключевые слова, AdWords, кампании, версии объявлений;
Содержание — самое популярное содержание, содержание по заголовкам, развернутый просмотр содержания, самые популярные страницы входа, самые популярные страницы выхода, наложение данных на сайт;
Цели — обзор, общее количество переходов, показатель переходов, прерванные последовательности, полезность цели, визуализация последовательностей.
Все отчеты и даже приборная панель могут быть загружены на вашу машину в различных форматах. Обычно используются три основные формата: текстовый файл с табуляцией, XML и Excel CSV-формат. Также доступна кнопка Печать, выводящая пригодную для печати версию отчета (она удаляет элементы пользовательского интерфейса и лишнюю информацию).
Резюме
Без статистики Web-мастер не может знать, кто посещает его узел. Web- мастер может создать сайт определенной тематики, в которой он хорошо разбирается, и предугадать, какой контент будет популярным. Достаточно часто эксклюзивная статья может захватить внимание публики или получить ссылку от сайта с более высокого рейтинга. Но какая статья самая популярная и кто на нее ссылается Эту информацию можно получить, только исследуя трафик сайта.
Существует очень много статистических пакетов, не описанных в этой главе. Рассмотренные в этой главе программы могут послужить фундаментом для исследования других приложений. Лучше всего попробовать несколько программ, сравнить их и выбрать лучшую.
ГЛАВА 10
Фотогалерея
Широкое распространение Joomla! среди отдельных пользователей и целых организаций создано потребностью в одновременно быстром (простом) решении и мощном решении индустриальной степени. Заполнить нишу между начинающим пользователем и профессиональным разработчиком призван целый поток расширений. Например, на момент написания этих строк было доступно 75 расширений, реализующих только галерею фотографий для Joomla! (не говоря уже об остальных расширениях).
В интересах обоих сообществ (начинающих и профессионалов), в этой главе будут продемонстрированы два компонента — один простой (Easy Gallery) и один полнофункциональный (Gallery2). Большинство программного обеспечения для фотогалерей попадают в одну из этих категорий, поэтому приведенный материал будет полезен для большинства расширений фотогалереи. Независимо от того, какой сайт вы создаете— простой фотоальбом ваших детей или большой узел, Joomla! будет соответствовать вашим нуждам.
Перед изучением Joomlai-расширений подумайте об установке FTP-сервера для более удобного управления галерей. Если вы уже активировали возможности FTP-сервера для использования совместно с интерфейсом администратора Joomla!, вы можете пропустить следующий раздел. Если же нет, обязательно это сделайте, поскольку установка FTP-сервера упрощает загрузку больших фотографий при создании галереи
FTP-сервер для управления галереей
Многие расширения галереи позволяют загружать картинки и управлять ими по FTP Если у вас еще не установлен FTP-сервер, сейчас мы рассмотрим, как это сделать. В этом разделе будут приведены инструкции по установке FTP- сервера в Linux, Mac OS и Windows. В этой главе будет описана базовая на-
стройка сервера. Я рекомендую просмотреть документацию по FTP-серверу для получения более подробных инструкций.
Большинство дистрибутивов Linux уже содержат FTP-сервер, вам нужно только активировать его. В Mac OS X I0.2 (и выше) тоже есть встроенный FTP-сервер. В Windows, если вы используете Web-сервер Microsoft I1S, с помощью консоли управления HS можете легко включить и настроить встроенный FTP-сервер. Если же у вас установлен Apache, вам нужно установить FileZilla— бесплатный и свободно распространяемый FTP-сервер.
Совет
Если FTP-серверы, представленные в этой книге, вам не нравятся или же не обладают нужными вам функциями, попробуйте использовать FTP-сервер CrossFTP Server, который написан на Java и может запускаться на любой платформе. Вы можете скачать его с сайта http://sourceforge.net /projects/crossftpserver Также можно посетить домашнюю страничку проекта (www.crossftp com), где найдете "живой" инсталлятор Web Start, существенно упрощающий установку.
Активация FTP-сервера в Linux
В большинстве дистрибутивов Linux установлен FTP-демон, обслуживающий файлы по протоколу FTP. Найти FTP-сервис можно путем выполнения следующей команды: chkconfig —list | grep ftpd
Для Linux разработано несколько разных FTP-серверов, один из которых может быть установлен в вашей системе: VSFTPD, ProFTPD, Glftpd, pureftpd, wzdftpd и wu-ftpd. Большинство FTP-серверов может быть активировано одноименными командами, например, если у вас установлен VSFTPD, для его активации нужно ввести команду: vsftpd start
Можно также использовать команду service:
service vsftpd start
Для автоматической загрузки FTP-сервера в Fedora/Red Hat нужно использовать команду chkconfig: chkconfig vsftpd on
В дистрибутиве Ubuntu или Debian вместо команды chkconfig нужно запустить следующую команду: sysv-rc-conf on
Проверить, запущен ли FTP-сервер, можно с помощью команды:
netstat -a I grep ftp
Если в ответ вы ничего не увидите, значит, сервис не запущен. Попытайтесь запустить его снова.
Вам нужно добавить пользователя, с помощью которого расширение Joomla! будет обращаться к каталогу для загрузки картинок. Для создания нового пользователя с домашним каталогом /home/gallery2 можно использовать следующую команду:
useradd -d /home/gallery2 galleryadmin
После этого нужно изменить пароль учетной записи:
passwd galleryadmin
Команда попросит ввести текущий пароль пользователя (по умолчанию у пользователя нет пароля), новый пароль и его подтверждение:
Current Password:
New Password:
Confirm New Password:
Нам осталось изменить права доступа к каталогу загрузки с помощью команд chmod и chown:
chmod 750 /home/gallery2
chown root:galleryadmin /home/gallery2
Некоторые брандмауэры Linux закрывают порты с низкими номерами (в том числе и стандартный порт FTP — 21). Вам нужно настроить брандмауэр, разрешив трафик через этот порт.
Активация FTP-сервера в Mac OS
В Mac OS X 10.2 и более новых версиях FTP-сервер можно включить в системных настройках. Дважды щелкните по пиктограмме Sharing для отображения окна Settings На вкладке Services включите параметр FTP Access для активации FTP-сервера.
Проверьте настройки вашего брандмауэра, чтобы убедиться, что FTP- соединения (через порт 21) разрешены на этой машине. В Mac OS Server вы можете активировать Internet File Sharing Server, который поддерживает FTP- протокол.
Установка сервера FileZilla в Windows
Если у вас установлен Microsoft IIS, вам нужно только активировать FTP- сервер. необходимый для расширения галереи Joomla!. А вот если у вас Apache, вам нужно использовать FileZilla FTP Server— бесплатный, свободно распространяющийся, простой FTP-сервер, забирающий минимум систем-
ных ресурсов вашей машины. Вы мажете скачать FileZilla с сайта SourceForge: http://filezilla.sourceforge.net.
После загрузки инсталлятора FileZilla на жесткий диск запустите его и установите необходимые вам опции (например, автоматический запуск сервера при загрузке системы). Убедитесь, что вы установили административную утилиту (она называется FileZilla Server Interface), которая нужна для ограничения доступа к серверу.
Для настройки FTP-сервера запустите приложение F leZilla Server Interface и войдите как администратор. По умолчанию у администратора нет пароля, поэтому для входа просто нажмите кнопку ОК.
Первым делом нужно позаботиться о безопасности сайта. Выполните команду Settings | Edit. Вы увидите окно FileZilla Server Options (рис. 10.1). Для установки пароля администратора выберите опцию Admin Interface settings в списке General settings. Включите параметр Change admin password и введите новый пароль администратора. Для сохранения изменений нажмите кнопку ОК.
Рис. 10.1. Выберите опцию Admin Interface settings в списке General settings
После установки пароля администратора нужно добавить пользователя, который будет использоваться компонентом Easy Gallery. Для создания нового пользователя выберите команду Users из меню Settings. Вы увидите конфигурационное окно, изображенное на рис. 10.2. Нажмите кнопку Add и добавьте нового пользова еля.
Рис. 10.2. Конфигурационное окно позволяет добавить пользователей и установить их права
Как только FileZilla Server будет установлен и настроен, попытайтесь получить доступ к своему сайту с помощью любой FTP-программы (можно использовать FileZilla Client). Браузеры Mozilla Firefox и Internet Explorer 6 обладают встроенными FTP-клиентами. Вы можете использовать их для проверки конфигурации вашего FTP-сервера, чтобы убедиться, что Easy Gallery сможет получить доступ к Web-каталогам, через созданного пользователя.
Easy Gallery
Easy Gallery (рис. 10.3)— небольшой компонент, позволяющий добавлять фотографии в альбомы и отображать их на Joomlal-сайте. Расширение Easy Gallery предоставляет полноценный административный интерфейс, позволяющий загружать картинки (несколькими способами) и помещать их в созданные пользователем категории. Расширение применяется только для отображения картинок и не позволяет обычным пользователям загружать картинки.
Несмотря на простоту интерфейса Easy Gallery, у этого расширения есть следующие специальные функции:
расширение может работать с ZIP-архивами, поэтому вы можете добавить в галерею много картинок за один раз;
позволяет сканировать каталоги сервера на предмет картинок;
Рис. 10.3. Easy Gallery может отображать фотографии, помещенные в категории
позволяет загружать картинки по FTP, поэтому у вас не будет проблем с правами доступа к ним;
автоматическое создание миниатюр изображений, в том числе и миниатюр категорий;
поддержка изменения размера изображения (изменение размера происходит на сервере) и некоторых световых эффектов.
Easy Gallery очень прост в установке и использовании, поэтому приступим!
Загрузка и установка Easy Gallery
Easy Gallery— абсолютно бесплатен и доступен для загрузки по лицензии Creative Commons license. Данная лицензия позволяет вам распространять, размещать и использовать компонент бесплатно. Однако вам запрещается создавать свой компонент на базе Easy Gallery или удалять текст лицензии или ее атрибуты из кода (хотя можно удалить текст "Powered by", отображаемый компонентом).
Загрузить Easy Gallery можно по адресу: www.joomla-addons.org/components /easy-gallery/easy-gallery.html.
Вы загрузите небольшой ZIP-архив (чуть больше 100 Кбайт), содержащий все файлы пользовательского и административного компонентов. Сохраните этот файл на жестком диске для его последующей загрузки в Joomla!.
Для установки Easy Gallery откройте Менеджер расширений. Отыщите ZIP- архив компонента, выберите его и нажмите кнопку Загрузить & Установить. В случае успешной установки вы увидите соответствующее сообщение. Обратите внимание: даже если компонент установлен успешно, он требует дополнительной настройки.
Примечание переводчика
Для установки компонента в Joomla! 1.5 нужно включить режим обратной совместимости.
Для успешного запуска Easy Gallery необходимо всего одно условие: наличие библиотеки управления картинками GD2. Easy Gallery использует эту библиотеку для создания миниатюр загруженных изображений и для изменения размеров изображений. Библиотека GD2 — это набор PHP-функций для манипуляций картинками и очень часто устанавливается вместе с PHP и поддерживается многими Web-провайдерами. Иногда нужно ее активировать (разрешить ее выполнение) на сервере.
Чтобы определить, установлена ли GD2 на вашем сервере, проверьте каталог PHP-расширений, который обычно называется \ext или \extension в зависимости от версии PHP. В Windows, если библиотека установлена, вы найдете в этом каталоге файл php_gd2.dll. Также вы можете запустить функцию phpinfof) на вашем PHP-сервере, чтобы убедиться в наличии GD2 (будут доступны параметры GD Support, GD Version, FreeType Support, JPG Support и PNG Support).
В Linux можно убедиться в наличии библиотеки только посредством вызова phpinfof). Практически в самом начале вывода phpinfof) (примерно третья строчка) вы увидите строку "Configure Command". Если GD2 доступна, в правом столбце вы увидите строчку:
cscript /nologo configure.js "—with-gd=shared"
Если GD2 не установлена, вам нужно ее установить до начала использования Easy Gallery. Несмотря на то, что GD2 включена в состав современных РНР- инсталляторов, это необязательное расширение и по умолчанию может и не быть установлено. Чтобы получить СВ2-файл, просто загрузите архив РНР- дистрибутива (ZIP или TAR) с сайта www.php.net/downloads.php.
Откройте архив и просмотрите каталог \extensions. В нем вы должны найти СП2-файл (php_gd2). Извлеките его и поместите в ваш каталог расширений PHP.
Чтобы PHP использовал эту библиотеку, вам нужно ее активировать в вашем файле конфигурации PHP. Откройте его (обычно называется php.ini) в текстовом редакторе и найдите следующую директиву:
;extension=php_gd2.dl1
Удалите точку с запятой в начале строки и сохраните файл. После перезапуска PHP библиотека GD2 должна быть загружена. Убедитесь, что вы перезапустили сервер Apache, иначе библиотека не будет найдена.
Примечание
Если вы используете удаленный сервер хостинг-провайдера и для настройки сервера применяется панель управления cPanel, вы можете активировать GD2 оттуда В разделе Update Apache нужно отметить переключатель GD2. После этого библиотека будет активирована, что сделает возможным создание миниатюр изображений.
Настройка Easy Gallery
После установки компонента Easy Gallery, настройки FTP-сервера и активации GD2 можно приступить к настройке компонента. В меню Компоненты вы найдете новый пункт Easy Gallery Выберите команду Configuration из меню Easy Gallery. Вы увидите экран конфигурации, изображенный на рис. 10.4.
Чтобы разрешить загрузку картинок, вам нужно ввести параметры FTP. Первый параметр, FTP host, — это URL-путь к FTP-серверу. В большинстве случаев путь можно установить в localhost.
В качестве имени FTP-пользователя (параметр FTP username) и его пароля (FTP password) укажите параметры недавно созданного пользователи или ваши собственные параметры, если FTP находится на удаленном сервере. FTP-порт по умолчанию— 21. В большинстве случаев это так, за исключением использования прокси-сервера или брандмауэра, который закрывает этот порт. В этом случае свяжитесь с администратором вашего узла для получения возможных настроек.
* V ©
СохранитьПрименитьОтменить
Configuration Manage Categories Manage Photo's
Manage configuration
FTP Setting®
FTP host^oMlhost5
FTP 130,1^J
FTP username:|;
FTP password.
FTP path: Оfloomi,
FTP disabled:С Нет <• Да
Image Settings
image path: ОpJn^lJMjWorlefM^g^hi^
Maximum width500
Maximum height400
Thumbnail Settings
Thumbnail path О|/imjgestaonetfea$ygallery^^^
Thumbma I width:150
Thumbmail he ght112
Рис. 10.4. Экран конфигурации Easy Gallery позволяет установить параметры FTPминиатюр и путей
Параметр FTP path (Путь FTP) отличается от обычного абсолютного URL. Например, если бы по умолчанию FTP получал доступ к корневому каталогу системы, a Joomla! была установлена в подкаталог /joomla корневого каталога, и к этому каталогу получал бы доступ Web-сервер, тогда параметр FTP path мог бы быть установлен в /joomla.
Но на многих удаленных серверах вы должны использовать префикс /www для получения доступа к корневому каталогу FTP-сервера. Если же файлы хранятся в вашем домашнем каталоге, нужно установить FTP path в I<имя пользователе. Обратите внимание, что вы обязательно должны ис-
пользовать прямой слэш (/) в начале пути, иначе Easy Gallery не сможет корректно использовать этот путь.
Примечание переводчика
На многих серверах хостинг-провайдеров пользовательские файлы хранятся в каталоге 1Ъоте1<имя_пользоеателя>. Следовательно, если Joomla! установлена в корневой каталог Web-сервера, в качестве параметра FTP path вам нужно указать /Ьоте/<имя_лопьзователя>/риЫ1с_Ь1т1/. Если же Joomla! установлена в каталог /joomla, тогда FTP path нужно установить в /Ьоте/<имя_ лользоеателя>/риЫ1с_К1т1/}оот1а. Для более точной информации лучше связаться с хостинг-провайдером, хотя есть и другие способы уточнения абсолютного пути, но звонок к хостинг-провайдеру самый простой из них.
Примечание
Если при попытке загрузки картинок вы получите сообщение об ошибке "Fatal error: Call to undefined function: ftp_connect()", это означает, что ваш хостинг- провайдер отключил FTP-сервисы, доступные PHP.
Управление Easy Gallery
После настройки Easy Gallery можно приступить к добавлению картинок в систему. Подобно Joomla!, Easy Gallery организует картинки в определенные пользователем категории. Поэтому прежде, чем приступить к добавлению картинок, можно создать одну или несколько категорий для них.
Для создания категории выполните команду Manage Categories в административном интерфейсе компонента Easy Gallery. Будет отображен пустой список категорий. Чтобы создать новую категорию, нажмите кнопку Новый. Вы увидите экран Add a category (рис. 10.5). Введите информацию, соответствующую создаваемой категории, и нажмите кнопку Сохранить. Теперь осталось добавить в нее несколько фотографий.
Выполните команду Manage Photos из меню Easy Gallery. Вы увидите окно менеджера фотографий, в нем будет кнопка Загрузить, нажмите ее. Появится форма загрузки картинок Upload Photos, выводящая уведомление о максимальном размере загружаемого файла по протоколу HTTP (обычно 2 Мбайт) и позволяющая выбрать категорию, в которую будут помещены новые фотографии. Параметр Name позволяет задать имя загружаемой фотографии, но его можно оставить пустым, тогда в качестве имени будет использоваться имя файла.
Вы можете выбрать один из трех методов загрузки фотографий (рис. 10.6): единственный файл, ZIP-архив или сканирование каталога. Добавление одного файла или ZIP-архива подобно добавлению расширений в Joomla!. А вот для сканирования каталога нужно вручную указать путь к серверу, где расположены файлы картинок.
CoitTioui alien Manage Categories Manage Photo's
Add a category
Category Details
Летний отдых 2007Летний отдых 2007Отдых с семьейОтдых с семьей<* Нет ₽ Да<* Нет ₽ ДаCategory Tile
Летний отдых 2007
Летний отдых 2007
Отдых с семьей
Отдых с семьей
<* Нет ₽ Да
<* Нет ₽ Да
Category Name
Access Level
Parent
Pubished:
Descr ption.
В Z Umk|EsS9 || -Styles- Vе! - Format - у | - Font family - v~i
Е ■= I tFH I 4 1 jr-«t;$a§flH U Д— -2 Q | *? *• | ю =■= ей 1|| til
О том, как мы отдохнули прошлым летом
Рис. 10.5. Вы можете задать название категории, ее имя,указать родительскую категорию (Parent) и ввести описание
Картинка •" Pegebreakr Readmore
There are three ways to upload photo's
Upload one photo
F Ie:Обзор.
Upload zip archive
FileОбзор.
Directory scan
D* ectory:/home/dkwsorQu/domains/dkAs.orQ.ua/publii
Рис. 10.6. Три способа загрузки файлов
Добавьте несколько картинок прямо сейчас, чтобы созданная вами галерея была видимой, когда вы добавите галерею в Joomla!. Если у вас много картинок или же некоторые картинки очень большие, рекомендуется использовать FTP-сервер для быстрой и надежной загрузки картинок. Максимальный раз-
мер загружаемой по протоколу HTTP картинки задается директивой в файле конфигурации PHP. Если вы хотите загружать большие файлы, вам нужно увеличить значение параметра upload max filesize, установив его больше, чем 2 Мбайт.
Примечание
Если при попытке загрузки фалов вы получите ошибку, это означает, что конфигурационные параметры установлены неправильно. Например, если не установлена библиотека GD2, Easy Gallery вернет ошибку, что недоступна функция создания картинки (при попытке создать миниатюру изображения). Если вы столкнулись с такой проблемой, прочитайте разд. "Настройка Easy Gallery" ранее в этой главе для получения инструкций по установке GD2.
Создание меню для компонента
Чтобы вы могли увидеть загруженные вами картинки на сайте, нужно создать меню для доступа к компоненту Easy Gallery. Перейдите в Менеджер меню и откройте редактор главного меню, выбрав Main Menu и щелкнув кнопку Редактировать пункты меню Для создания нового пункта меню нажмите кнопку Новый.
Рис. 10.7. Выберите опцию Easy Gallery для создания присоединенного меню
Выберите внутреннюю ссылку Easy Gallery (рис. 10.7). Затем введите название пункта меню (я ввел название Фотогалерея (Photo Gallery)) и нажмите кнопку Сохранить для сохранения меню в Joomla!.
Откройте главную страницу вашего сайта: вы увидите ссылку на фотогалерею (рис. 10.8). Когда вы ее нажмете, будет отображена Joomlal-страница с категориями картинок.
Ноте
Login Form
Имя пользователя V{
Рис. 10.8. Щелкните по ссылке Фотогалерея,и вы увидите галерею
Пользовательский интерфейс Easy Gallery
У Easy Gallery очень простой пользовательский интерфейс (рис. 10 9). Все категории будут отображены миниатюрами, созданными по первой загруженной фотографии. Выбрав категорию, вы увидите таблицу фотографий в этой галерее, а щелкнув по фотографии, вы увидите ее в полном размере.
Видите, как просто добавить галерею в Joomla!. Однако, возможно, вам нужна более мощная алерея, позволяющая пользователям загружать картинки, обладающая лучшей категоризацией и корзиной для заказов, а также другими функциями. У галереи Gallery2 есть все эти функции и много других.
Gallery2
Gallery2 (рис. 10.10)— это полнофункциональная галерея картинок. В отличие от компонента Easy Gallery, который можно использовать только вместе с Joomla!, Gallery2 рассчитана на независимое выполнение, поскольку написана на PHP.
^ Joomla I
VIEW MAGE GALLERIES
AI>um 1
' Joomlo!
Search
Eeay Calendar
EaeyfAQ
Home • EasyGaRery
ARtum 2
Easy Gueatiroc*
Easy Gallery
Album 1
View c-ateyoiy
Album 1
View сЛеуму
F -* Bh»yGa#Ary »Xl '-loomU addonitoiy
Admesatteto
^ALLE* EAUL^
Рис. 10.9. Easy Gallery позволяет вам выбрать категорию, чтобы вывести изображение
Для пользователей Joomla! был создан мост— специальное расширение, позволяющее интегрировать Gallery2 в Joomla!. На сайте Joomla! (http://extensions.joomla.org) вы можете найти много мостов для РНР- программ, которые не были написаны непосредственно для Joomla!.
Поскольку Gallery2 рассчитана на независимое использование, она требует особой процедуры установки и обладает собственными системными требованиями. Хотя на большинстве серверов, где установлена Joomla!, можно установить и Gallery2, лучше проверить соответствие сервера требованиям галереи перед ее установкой.
Для запуска Gallery2 необходимо следующее программное обеспечение:
PHP версии 4.1.0 или выше с выключенным безопасным режимом;
MySQL 3 .х или выше;
графическая библиотека (GD2jc или выше, ImageMagic 4.x или выше, GraphicsMagick 1.x или выше или Netpbm 9.x или выше) для создания миниатюр и изменения размера картинок;
Gallery! Demo Created by My Website Adviser
GeileryZ DemoGeileryZ Demo(тучанное тобрагени*(тучанное тобрагени*Туп ChurchТуп ChurchGallery 2 DemoGallery 2 DemoАльбом; Motorcycle RacingАльбом; Motorcycle RacingMr.torc riff-rcad desert racingMr.torc riff-rcad desert racingTrBvel photography zechTrBvel photography zechАльбом: Czedi RepublicАльбом: Czedi RepublicАльбом: Flowers CloseupАльбом: Flowers CloseupFlow rs Civse^yFlow rs Civse^y
GeileryZ Demo
GeileryZ Demo
(тучанное тобрагени*
(тучанное тобрагени*
Туп Church
Туп Church
Gallery 2 Demo
Gallery 2 Demo
Альбом; Motorcycle Racing
Альбом; Motorcycle Racing
Mr.torc riff-rcad desert racing
Mr.torc riff-rcad desert racing
TrBvel photography zech
TrBvel photography zech
Альбом: Czedi Republic
Альбом: Czedi Republic
Альбом: Flowers Closeup
Альбом: Flowers Closeup
Flow rs Civse^y
Flow rs Civse^y
Рис. 10.10. Gallery2 запускается как независимое PHP-приложение
место на диске для хранения картинок (больше, чем вам может показаться).
В отличие от Easy Gallery, галерея Gallery? более требовательна к серверу, но взамен предоставляет большие возможности как пользователю, так и администратору системы.
Большая часть провайдеров предоставляет графические библиотеки, некоторые провайдеры даже позволяют устанавливать библиотеки пользователю, поэтому у вас не должно быть проблем с установкой Gallery?.
Совет
Вы можете использовать GD2 (ведь она у вас уже установлена для использования компонентом Easy Gallery), но это не лучшее решение. На момент написания этих строк, ImageMagic справлялся с созданием миниатюр и изменением размеров картинок быстрее, чем GD2. Зато Netpbm, с другой стороны, позволял создавать более качественные миниатюры.
Загрузка и установка Gallery2
Gallery?— это свободно распространяемый проект, который можно скачать со следующего сайта: http://gallery.menalto.com.
Доступны следующие версии этого приложения:
Minimal — содержит само приложение, две темы внешнего вида, три графических набора инструментов и самые необходимые модули (их можно сравнить с компонентами Joomla!);
Typical — то же, что и Minimal, но содержит шесть тем внешнего вида и самые популярные модули;
Full — полная версия, содержащая 6 тем и все модули (на момент написания этих строк их насчитывалось 56);
Developer — то же, что и Full, но также содержит инструменты разработчика, позволяющие создавать собственные модули для Gallery2.
Я рекомендую использовать версию Typical из соображений экономии пространства, что важно для большинства удаленных сайтов. Если же у вас собственный локальный сервер, можно использовать полную версию, демонстрирующую все возможности Gallery2.
Создайте каталог gallery2 в корневом каталоге сервера, где выполняется Joomla!. Joomla! понадобится доступ к этому каталогу, поэтому проще всего его разместить в той же самой области доступа, что и Joomla!. На большинстве Linux-систем путь зависит от имени пользования и будет напоминать этот: /home/<имя по чъзователя>/pub 1 ic_htm 1/galIery2.
В Windows путь будет примерно таким: C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\gallery2.
Скопируйте все файлы из выбранного вами инсталляционного архива в каталог gallery2. Потом вам нужно будет запустить из этого каталога программу установки, которая настроит приложение.
Gallery2 оптимизирована для выполнения на Web-сервере Apache, но она также может быть настроена для запуска под Microsoft IIS. Для получения подробных инструкций посетите следующий сайт:
http ://codex.gallery2.org/index.php.
Примечание
Некоторые Web-провайдеры предоставляют встроенную Gallery2 как часть своего сервиса. Вот некоторые такие провайдеры: DreamHost, Go-Daddy, PowerWeb, OpenSource-Host, Delphian Internet, HostGo, CitrexHosting и DownTownHost. Перед установкой приложения с нуля, проверьте, возможно, ваш провайдер предоставляет уже настроенное приложение.
Создание базы данных для Gallery2
Перед установкой Gallery2 вам нужно создать базу данных, которая будет использоваться для галереи, поскольку инсталлятор не может создать ее для
вас. Хотя Gallery2 совместима с несколькими серверами базы данных (в том числе PostgreSQL и Oracle), мы будем использовать MySQL, поскольку с ним совместима Joomla!.
5 joomla|oomla15 ' rrysql5 joomla|oomla15 ' rrysqlDrop SchemaDrop Schema~3 TABLE_CONSTRAIN ~* TABLE-PRIVILEGES 5 TRIGGERSД USER-PRIVILEGESCtrl+Del~3 TABLE_CONSTRAIN ~* TABLE-PRIVILEGES 5 TRIGGERSД USER-PRIVILEGESCtrl+Delphpmyadmi* lestphpmyadmi* lestCopy CREATE statement to Clipboard Ctrl+CCopy CREATE statement to Clipboard Ctrl+CwebauthwebauthCreate New SchemaCreate New TableCreate New SchemaCreate New TableCtrh-NCtrl+TCtrh-NCtrl+T
5 joomla
|oomla15 ' rrysql
5 joomla
|oomla15 ' rrysql
Drop Schema
Drop Schema
~3 TABLE_CONSTRAIN ~* TABLE-PRIVILEGES 5 TRIGGERS
Д USER-PRIVILEGES
Ctrl+Del
~3 TABLE_CONSTRAIN ~* TABLE-PRIVILEGES 5 TRIGGERS
Д USER-PRIVILEGES
Ctrl+Del
phpmyadmi* lest
phpmyadmi* lest
Copy CREATE statement to Clipboard Ctrl+C
Copy CREATE statement to Clipboard Ctrl+C
webauth
webauth
Create New Schema
Create New Table
Create New Schema
Create New Table
Ctrh-N
Ctrl+T
Ctrh-N
Ctrl+T
F5F5Ref re .h
F5
F5
Рис. 10.11 Правой кнопкой щелкните на области Schemaи выберите команду Create New Schema
Рис. 10.12. Предоставьте пользователю все права доступа к базе данных gallery?
Для создания базы данных для Gallery2 запустите приложение MySQL Administrator. Как только вы войдете на сервер, щелкните правой кнопкой на панели Schema и выберите команду Create New Schema (рис. 10.11). Введите имя схемы gallery? (чтобы было проще).
Будет создана пустая база данных, и инсталлятор Gallery2 заполнит ее необходимыми таблицами и базовой информацией. Пока еще вы не закрыли MySQL Administrator, создайте учетную запись пользователя для доступа к только что созданной базе данных.
Для добавления пользователя выберите раздел User Administration. Создайте новую учетную запись с именем galleryadmin и установите подходящий вам пароль. В разделе разрешений доступа предоставьте этому пользователю все привилегии для базы данных gallery?. Просто щелкните кнопку « для помещения всех привилегий в список привилегий пользователя и нажмите кнопку Apply для сохранения изменений (рис. 10.12).
Настройка Gallery2
Когда все настроено, можно запустить процесс установки Gallery2. Процесс установки состоит из нескольких этапов мастера установки, который выполнит за вас всю работу. Он настроит все необходимые файлы, разрешит выборочную активацию модулей, создаст необходимые таблицы и заполнит их основными данными.
Для начала установки Gallery2 вам нужно запустить файл index.php из каталога \gallery2. В Windows URL будет выглядеть так:
http://localhost/gallery2/index.php
Первый шаг инсталляции — просто приветствие. Нажмите кнопку Далее для перехода к следующему этапу. На втором этапе вам нужно сформировать ключевой файл аутентификации (рис. 10.13). Этот шаг необходим для создания файла с ключом аутентификации, сгенерированным системой на вашем Web-сервере. Этот ключ позже будет использоваться системой для предотвращения атак хакеров.
Щелкните правой кнопкой на ссылке файла аутентификации и сохраните его на жестком диске. Если у вас собственный локальный сервер, данный файл нужно сохранить в каталог \gallery2. Если же вы используете удаленный Web-хост, тогда сохраните файл на жестком диске, а затем по FTP загрузите его в соответствующий каталог сервера.
Как только файл будет помещен в нужное место, нажмите кнопку Идентифицировать меня. Если у вас возникли проблемы с аутентификацией, перейдите на домашнюю страницу Gallery2, на которой очень часто обновляет-
2.2 Installer2.2 InstallerШаги инсталляцииДобро пожаловал»Шаги инсталляцииДобро пожаловал»ся детальное решение проблем аутентификации, возникающих на узлах разных Web-провайдеров.
2.2 Installer
2.2 Installer
Шаги инсталляции
Добро пожаловал»
Шаги инсталляции
Добро пожаловал»
3 HA4«mi ГИАЧАП*
Инсталляция завершена на 0%
1 АмТпрккаций1 АмТпрккацийАвторизация
1 АмТпрккаций
1 АмТпрккаций
Для того, чтобы продол кить инсталляцию, мам необходимо проверить, что Вы тот, sa кого себя выдаете Самым надежным способом удостовериться в этом является просьба внести Вас незначительные изменения в директорию, где установлена Галерея, что и докажет Ваши права доступа. Так, мы хотим попросить Вас создать новый текстовый файл под названием logln.txt в Вашей директории gallery^ на веб-сервере (это та хе самая директория, где находится файл main php). Он должен содержать следующую последовательность случайно сгенерированных символов-
faBc04484ad57a3dc7fba2f2191 f5287
В качестве удобства для Вас мы подготовили корректную версию фи ила lngln.txt Скачайте вго и скопируйте в Вашу палку g*ll*ry2, таким образом, подготовка будет завершена
Как только Вы закончите загрузку файла, нажните ниже для продолжения.
Рис. 1013. Экран аутентификации предоставляет ссылку на автосгенерированный файлдля размещения на вашем Web-сервере
Если аутентификация прошла успешно, инсталлятор приступит к проверке системы (рис. 10.14). Если столкнетесь с проблемами при проверке системы, большинство из них можно решить путем редактирования файла конфигурации PHP.
Следующий экран (рис. 10.15) позволяет вам выбрать способ использования Gallery2: стандартная (одна галерея на сервере) или мультисайтовая (несколько галерей на одном сервере). В большинстве случаев нужно выбрать Стандартная инсталляция и продолжить.
Очень важно правильно выбрать хранилище для картинок. Для большей безопасности лучше всего каталог \images выбрать так, чтобы он был доступен галерее, но не был доступен Web-серверу. Поэтому на четвертом этапе (Установка хранилища, рис. 10.16) вы должны создать каталог за пределами стандартного пути Web-сервера и установить нестандартное имя для этого каталога, что сделает его труднодоступным хакерам. Если возможно в вашей
6ai»f
Поноем»
2.2 InstallerВ «—«»«««—»•
Шаги инсталляции
Добро поэкепоеагт
Инсталляция завершена на 15%
Аегориваияя
Проверка системы
Проверка системы
версия рнрУспешно
3 Выбор типа
инсгаллямяи
директива FiteУспешно
Safe MedeУспешно
execOaiowedУспешно
set_timejimit() allowedУСПЕШНО
•
Memory limit (32Mb)У СПО11IHO
File uploads allowedУспешно
Й
Maximum upload size (32Mb)УСпеШ! IO
Maximum POST size (16Mb)УСпеШ!Ю
•
поддержка переводаУ1ПРШНО
1»
Целостность файлов ГалереиУспешно
И
Перейти к Шегу 3» ]
Рис. 10.14. Проверка системы позволяет проверить функциональность Web-серверадля надлежащего выполнения Gallery2
^diwrtl
Щ Помощь
2.2 installerВ н»чкг. <.н*ч*л«
Шаги инсталляции
Добро nowaxioeem
Инсталляция •свершена на 15%
Авторизация
Выбор типа инсталляции
Проварка системы
Пожалуете, выберите тип инсталляции
1 Выбор Виим инсталляции
<• Стандартная имстапляция
Это тип инсталляции по умолчанию Выберите данный тип инсталляции, если Вы хотите
инсталлировать новую Галерею в директорию с V^janpp^hedocs^sallcKytS которая будет
э —
доступна по адресу USLheep //1осд1Ь»жт/У1Ц «tyZ/.
С" Мультосайгоаая (muitis te) инсталляция
*
Галерея может поддерживать множество независимых сайтов на одном инсталляционном коде. Выберете двинь и тип инсталляции, если Вы холите инсталлировать новую Галерею на один и тот же сервер но в резные палки, поддомены или основные домены URL. Мультисайты не имеют общих альбомов, фотографии, пользователей или что-либо еще
Каждому из них необходима своя дубственная бава данных и своя собственная папка хранилища. Для более подробной информацией о Мультисайгоеой инсталляции посетит» страницу M«f1h«itw Ооглмпе ital on
в
Все мультисаиты инсталлируются из этой центральной базы осноеого коде.
Введите директорию для нового мультисайта ниже. Путь должен быть отличным от
а
инсталляции базы основого кода
1С
Директория должна быть доступна для записи пользователю web«arver/php или содержать следующие доступные ая записи файлы i
11
meln.php
Рис. 10.15. Стандартная или мультисайтовая установка
Шаги инсталляции
Инсталгяиия завершена на 25%
Установка хранилища
Gallery needs a directory to store your >mege$. The directory we chose for you will work but its location or current name does not provide maximum security. Either seSecc a new directory outside of the document root directory or add a random stony to the end of the directory name (e.g. g2data_941510c724).
For maximum security you should pick a directory that Is not web accessible. If this Is not possible, specify в randomized name for this directory.
Если бы используете современный браузер, мы попытаемся автоматически заполнить любой вводимый бани здесь путь Поэтому, если Вы испытываете сложности при нахождении верного пути к Башей g2date директории, попытайтесь поэкспериментировать с путями в текстовом иоле ниже и посмотрите, какие автозаполнения Вам будут предложены.
пут. К «ир.ктории, |с xam plhtdoc \gallery2\g2 ata
Баш веб-сервер должен иметь право доступа на запись в данную директорию, чтобы выполнить это требование, бы можете следовать следующим примерам:
Вминание: это только примеры» бы можете обнаружить, что они будут работать не совсем верно на Вашей системе
Windows
C:\> inkdix C: \xewpp\htdoc«\galJ.Bry2\g2data
Для получения более детальной информации о защите директории хранилища Галереи, пожалуйста ознакомтесь с РУковёМ т» f*1 rf£_ B«'»#\i zy >• 1 л -z Tziti-zit-
Рис. 10.16. Если возможно, расположите каталог хранилища картинокза пределами пути Web-сервера
Apache-инсталляции, попытайтесь создать каталог за пределами каталога \htdocs.
Данный каталог нужно создать до нажатия кнопки Продолжить. После этого инсталлятор проверит доступность каталога и сообщит, безопасен ли он.
На следующем этапе (Установка базы данных, рис. 10.17) вам нужно ввести параметры доступа к базе данных. Инсталлятор считает, что вы уже создали базу данных, необходимую для хранения информации галереи. Если вы еще не создали ее, сейчас самое время это сделать. В качестве имени пользователя вы можете указать имя созданного ранее с помощью MySQL Administrator пользователя galleryadmin.
Инсталлятор Gallery2 проверит соединение, создаст необходимые таблицы и заполнит их данными. Самое сложное уже позади. На следующем экране (Создание администратора) можно указать имя, пароль и e-mail администратора галереи. Рекомендуется использовать параметры, совпадающие с параметрами Joomla! для более простого управления.
Нажатие кнопки Продолжить приведет к процедуре создания конфигурационного файла Gallery2 (config.php в каталоге \gallery2). Если при этом воз-
никнет какая-то проблема, инсталлятор сообщит вам и даже попытается вам помочь, подсказав, как ее решить.
Инсталляция зееершеиа не 35%Инсталляция зееершеиа не 35%Шаги инсталляцииШаги инсталляцииДобро ложа поветьДобро ложа поветь
Инсталляция зееершеиа не 35%
Инсталляция зееершеиа не 35%
Шаги инсталляции
Шаги инсталляции
Добро ложа поветь
Добро ложа поветь
АвтормеецинПроверка системыВь бортипа инсталляцииIУстановка хранилищ*Установка базы данныйАвтормеецинПроверка системыВь бортипа инсталляцииIУстановка хранилищ*Установка базы данный4tft4tft
Автормеецин
Проверка системы
Вь бортипа инсталляции
I
Установка хранилищ*
Установка базы данный
Автормеецин
Проверка системы
Вь бортипа инсталляции
I
Установка хранилищ*
Установка базы данный
4
tft
4
tft
Установка базы данных
Пожалуйста, выберите тип базы данных и введите аутентификационную информацию базы данных. Инсталляция не создаст для Вес базу данных, поэтому Бы должны создать одну из них самостоятельно и ввести здесь имя базы данных. Если Вы инсталлируете Галерею в базу данных, в которой уже содержатся таблицы внутри, то префиксы table и column позволят уберечь данные Галереи от конфликтов стен, что Вы уже имеете.
Тип базы донных: L MySQL (v3 23 34а and newer) v
DB Hostname: [localhosl
DB Username: [root
DB Password: |
DBName: gaDBer z
Table Prefix: jg2__
Column Prefix.
f Сохранит^
Рис. 10.17. Введите параметры доступа к базе данных
Совет
Файл конфигурации критически важен для Gallery2. Именно по этой причине я регулярно делаю его резервные копии и сохраняю за пределами Web-сервера (из соображений безопасности). Если конфигурационный файл будет поврежден (при редактировании вручную или вследствие системной ошибки), Gallery2 прекратит работу. Восстановление этого файла избавит вас от переустановки системы
Нажатие кнопки Продолжить запустит процесс установки основных модулей Gallery2. Если на этом этапе возникнут проблемы, инсталлятор поможет вам их решить, и вы сможете продолжить установку.
На следующем экране (Install Plugins, рис. 10.18) будет показан полный список доступных для установки модулей. Если вы загрузили полную установку, список модулей может занять несколько экранов. Вне зависимости от выбранного вами дистрибутива, вы можете оставить все модули включенными, кроме тех, в которых вы точно не нуждаетесь.
Шаги инсталляции
Добро пожелоевт»
Инсталляция завершена
Авторизация
Install Plugins
Проверка системы
Следующие нодули могут быть автоматически инсталлированы и активизированы для Вас. Вам ивобходнио инсталлировать по крайней мере один из графических инструментов, в противном с
Выбор типа инсталляции
Галерея не сможет создать макеты Ваших изображений. В большинстве систем автоматическая инсталляция должным образои сделает это для Вас. Однако, в некоторых других случаях она г не удаться- Вы сможете всегда активизировать новый модуль, либо деактивизировать любой и
Установка хранил-щ»
что выберите на странице Администрирования, так что любое принятое Вами решение здесь не является окончательным.
Установка базы данных
Некоторые модули не могут быть установлены автоматически Это нормально Обычно это ознас что они требуют дополнительной конфигурации, которую Вы сможете осуществить на странице
Создание Администратора
Администрирования.
Создание файла конфигурации
.НазваниеВереи* Ппсаиие
Импорт
^ Загрузка Архива1.0 6 Распаковка файлов из загруженного zip файла
Инсталляция Ядра Галереи
Дополнительные данные
Install Mugtnc
Р Комментарии113 2 Добавление коиментариев пользователями
^ ЕУ1Е/1РТС1-1.0 Извлечение данных EXIF/IPTC из JPEG фотографий
16 Проверка безопасности
V Рейтинг1.0,8 Интерфакс Рейтинга Элементов
11
Галерея
г - - . .. .■......
v Упорядочивание1.0.5 Изменение порядка следования элементов в альбом
. -_ Enables short URLs using Apache mod rewrite, ISAP1 I
v Перенаправления URL1 1,13.3 pafhjnfo~
P Поиск1.0 5 Поиск в Галерее
Гиафическир инструменты
Рис. 10.18. Список плагинов, доступных для установки
Последний экран предоставит вам доступ к руководству по безопасности. Прочитайте его! Это лучший способ убедиться, что Gallery2 безопасна, насколько это возможно. Так как приложение разрешает загрузку файлов, создает новые файлы на сервере и отображает картинки (основная точка входа для хакерских атак на переполнение буфера), очень важно сделать ваш сервер безопасным. Даже если вы запускаете приложение на удаленном сервере, все равно прочитайте руководство безопасности.
Вот и все! Попытайтесь получить доступ к Gallery2 по следующему URL:
http://localhost/gallery2
Войдите в Gallery2 как администратор. В отличие от Easy Gallery, для организации картинок Gallery2 использует альбомы, а не категории, хотя разница только в названии, суть остается той же. Добавьте несколько альбомов и фотографий, чтобы убедиться, что система работает должным образом. Как только вы выполните несколько простых функций галереи, она будет готова для интеграции с интерфейсом Joomla!.
Использование Gallery2 вместе с Joomla!
Gallery2 может быть запущена на сервере как отдельное приложение. Однако для большего удобства необходимо интегрировать ее в существующий Joomla!-сайт. Для этого нужно не только запустить ее внутри интерфейса сайта, но и синхронизировать пользователей сайта и галереи. Для этого нужно использовать одну и ту же систему регистрации пользователей. Интеграция Gallery2 с вашим сайтом предоставит однозначный и непротиворечивый пользовательский интерфейс вашим посетителям.
Для интеграции Gallery2 в Joomla! нужно установить специальный компонент— Gallery2 Bridge. Этот компонент позволяет интегрировать пользовательских интерфейс и координирует функции системы
Установка Gallery2 Bridge
Для интеграции Gallery2 в Joomla! вам нужно загрузить компонент Gallery2 Bridge и библиотеку JoomlaLib — это библиотека функций, которые использует компонент. Самые последние версии этих расширений можно скачать с сайта Joomlal-расширений (http://extensions.joomla.org). Их также можно скачать с сайта http://trac.4theweb.nl.
Загрузите оба компонента и установите их с помощью Менеджера расширений. Первым нужно устанавливать JoomlaLib. Когда установка Gallery2 Bridge будет завершена, Joomla! сообщит вам об этом (рис. 10.19).
№ Загрузка component - Успешная
G«* lery?
Component to Bridge Gallery 2.
You must nstall JoomUllb before using Gallery 2 Bridge component!
[Продолжить. .]
Рис. 10.19. Установка Gallery2 Bridge завершена
Перед запуском Gallery2 в интерфейсе Joomla!, вам нужно настроить расширение, предоставив ему информацию о галерее.
В подменю Gallery! меню Компоненты будут три команды: Config (Настройки), User Management (Управление пользователями) и Album Management (Управление альбомами). Выберите команду Config для настройки компонента. В правом верхнем углу конфигурационного окна вы увидите
кнопку Wizard. Нажмите ее для запуска мастера, позволяющего пошагово настроить конфигурацию моста.
Когда вы нажмете кнопку Wizard, будет отображен экран, где можно указать путь к Gallery2 (рис. 10.20). Данный параметр наиболее важен, поскольку этот путь используется мостом для нахождения всех файлов, необходимых для интеграции с Joomla!.
Рис. 10.20. Мастер настройки компонента Gallery2 Bridge
С помощью мастера вы быстро настроите мост. Однако для отображения галереи в Joomla! вам еще нужно добавить пункт меню для доступа к мосту галереи.
В меню Компоненты компонент моста будет обозначен как Gallery2. Вы уже знаете, как добавить меню, вызывающее компонент сайта. Создайте меню, вызывающее компонент Gallery2, при вызове которого в центре сайта будет отображена галерея Gallery2 (рис 10.21).
В дополнение к главному компоненту, интегрирующему основной интерфейс пользователя Gallery2 в Joomla!, вы можете использовать модули, позволяющие отображать определенные часть галереи на вашем сайте. Все эти модули доступны на том же сайте, где вы скачали компонент Gallery2 Bridge.
На момент написания этих строк было доступно пять дополнительных модулей:
Statistics — предоставляет статистику по самым популярным частям галереи. Статистика выводится по картинкам, альбомам, комментариям, а также выводится итоговая страница по доступу к галерее;
Рис. 10 21. Gallery2 появилась в центральной части шаблона
Sidebar— отображает меню автономного приложения Gallery2. С помощью модуля меню Gallery2 можно лучше интегрировать в шаблон Joomla!, к тому же будет освобождено пространство вверху компонента, обычно занимаемое меню;
Image — отображает в позиции модуля определенную картинку. В опциях вы можете выбрать, какую именно: Random Image (Случайная картинка), Last Added Image (Последняя добавленная картинка), Most Viewed Image (Самая популярная картинка), Random Album (Случайный альбом), Most Viewed Album (Самый популярный альбом), Daily Image (Картинка дня), Weekly Image (Картинка недели), Monthly Image (Картинка месяца), Daily Album (Альбом дня), Weekly Album (Альбом недели). Monthly Album (Альбом месяца);
Comments — отображает комментарии пользователя о различных картинках, сохраненных в галерее;
Album — представляет список текущих фотоальбомов для прямого доступа к ним.
Каждый модуль работает, как обычный Joomlal-модуль. Просто установите и настройке модуль, а затем поместите в его в удобную вам позицию шаблона.
Другие плагины для Gallery2
Если вы планируете в дальнейшем расширить интерфейс Joomla!/Gallery2, то можете использовать несколько дополнительных плагинов, добавляющих в мост этих двух систем дополнительные функции:
Search Bot — плагин позволяет интегрировать описания фотографий и галереи. хранимые в Gallery2. в поисковую систему Joomla!. Этот плагин делает поиск более удобным, а сайт менее противоречивым;
Joomap— интегрирует Gallery2 в карту сайта, генерируемую через Joomap (также имеется поддержка создания Google Sitemap XML);
Community Builder — плагин интегрирует контент Gallery2 с интерфейсом Community Builder, который предоставляет большую безопасность для изображений и альбомов.
Помните, что все эти расширения — плагины, т. е. интегрируются с Joomla! на низком уровне. Следовательно, если после установки плагинов у вас возникли проблемы с сайтом или заметно понизилась его производительность, убедитесь, что все ваши плагины работают корректно.
Резюме
Расширения фотогалереи для Joomla! предоставляют размещать на сайте цифровые изображения. Популярность цифровых фотоаппаратов и сотовых телефонов с фотокамерами растет с каждым днем. С надлежащими расширениями ваш Joomlal-сайт послужит фундаментом для распространения изображений.
Для небольших или личных сайтов идеально подойдет расширение Easy Gallery, сочетающее простую установку с понятным администрированием. Оно может отображать ваши картинки с помощью родного компонента Joomla!. Хотя пользователи не смогут размещать свои изображения (потому что нужен доступ к интерфейсу администратора), это расширение идеально подходит для быстрой публикации ваших фотографий. А поддержка FTP позволит вам избежать возможных проблем с правами файлов.
Для больших галерей или коммерческих сайтов управления изображениями больше подойдет приложение Gallery2, предоставляющее расширенные функции галереи: от мультиформатной загрузки до корзины для заказа изображений. С помощью компонента Gallery2 Bridge приложение Gallery2 мо-
жег быть интегрировано с Joomlai-сайтом. Галерея Gallery2 обладает даже собственной архитектурой плагинов, что позволяет расширять ее функции.
В этой главе были рассмотрены всего два расширения для создания галереи, но для Joomla! написаны десятки других подобных расширений. Наиболее впечатляющие галереи интегрируются в Joomla! с помощью Adobe Flash- плагина для предоставления более функционального пользовательского интерфейса.
В главе 11 мы рассмотрим расширения для организации бизнеса в Интернете, позволяющие добавить на Joomlai-сайт каталог товаров и возможности его заказа.
ГЛАВА 11
Joomla! и электронная коммерция
Хотя Joomla! в основном используется для создания персональных сайтов, посвященных хобби владельца, с соответствующими расширениями ее можно превратить в феноменальную коммерческую платформу. В Web электронная коммерция стала большим бизнесом, особенно в В2В-транзакциях (business-to-business). Интернет позволяет привлечь покупателей со всего мира, а ваш сайт покажет каталог товаров и поможет вам обрабатывать онлайн- заказы. .
В этой главе мы сфокусируемся на OpenSource-решении для электронной коммерции (далее e-commerce)— VirtueMart. VirtueMart— это популярный Web-магазин, который используют более 600 зарегистрированных онлайн- магазинов для продажи своих товаров. Чтобы продемонстрировать, как работает VirtueMart, мы пройдем все этапы создания онлайн-магазина Movie Maninee. Наш магазин будет продавать старые фильмы на DVD. На этом примере вы сможете понять, как настроить и разместить ваш виртуальный магазин.
VirtueMart: The Joomla! Store
VirtueMart — е-соттегсе-решение, рассчитанное выполнение в среде Joomla!. VirtueMart предоставляет полноценный каталог товаров, управление инвентарем, а также возможности корзины для заказов. Приложение администрируется через Web-интерфейс, подобный интерфейсу Joomla!. Приложение также поддерживает импорт существующей продукции через CSV- файлы, содержащие цены товаров, их описания, параметры, перекрес тные ссылки и другую информацию о товарах.
VirtueMart— одно из самых полнофункциональных Joomlai-расширений для электронной коммерции, предоставляющее следующие функции
продажу и управление загружаемыми продуктами (например, программное обеспечение и электронные книги);
показ как обычного каталога, так и каталога с возможностью заказа товара;
интерфейс администратора, интегрируемый с пользовательским интерфейсом Joomla!, поэтому администрирование магазина возможно без предоставления прав Joomla!-администратора (следовательно, управлением магазина могут заниматься наемные специалисты, не имеющие доступа в панель управления сайтом);
пользовательские атрибуты для каждого продукта, возможность изменения порядка атрибутов;
функции отслеживания инвентаря и заказов;
функцию "Shopping Groups", позволяющую устанавливать отдельные цены для каждой группы;
калькулятор рейтинга отгрузок и интерфейс взаимодействия с грузопере- возчиками UPS, USPS, InterShipper и Canada Post;
создание отчетов по заказам, продажам товара и доходу;
встроенные возможности поиска;
поддержку платежных систем PayPal, eWAY, WorldPay и Paymate;
расширяемую архитектуру, позволяющую добавлять пользовательские плагины, например, для грузоперевозки и оплаты.
VirtueMart состоит из различных расширений, поэтому вы можете установить только необходимые вам части. Минимальная версия VirtueMart состоит всего из одного компонента и одного модуля. Главный компонент реализует функции виртуального магазина, поэтому без него никак не обойтись.
Системные требования
Если у вас уже есть сервер, на котором запущена Joomla!, на нем, скорее всего, можно запустить VirtueMart. Минимальная конфигурация следующая:
PHP 4.3 или выше с установленными расширениями поддержки MySQL, XML и zlib;
MySQL 3.23 или выше;
Apache 1.13.19 или выше с поддержкой HTTPS (OpenSSL) и cURL.
Убедитесь, что ваша система соответствует системным требованиям перед установкой VirtueMart. Приложение не проводит проверку системы, как это
делает Joomla!, поэтому эффект его применения на не соответствующей системным требованиям машине неизвестен.
Версии установки
VirtueMart (ранее известный как mambo-phpShop)— бесплатное, свободно распространяемое по лицензии GNU/GPL (как и Joomla!) решение для электронной коммерции. Загрузить его можно с домашней странички VirtueMart — vvww.virtuemart.net.
VirtueMart— это набор модулей, компонентов и плагинов, поэтому существует много способов его загрузки и установки. Каждое расширение требует отдельной установки в Joomla!. На домашней страничке вы найдете три пакета расширений, доступных для загрузки:
Complete installation — полная установка содержит главный компонент VirtueMart, десять дополнительных модулей (например, для отображения последнего продукта или десяти лучших продуктов) и два плагина (для поиска и контента);
Joomla! installation — версия Joomla! с уже установленным и настроенным VirtueMart. Если у вас уже установлена Joomla!, вам не нужна эта версия. Зато этот инсталлятор позволяет просто и быстро создать виртуальный магазин;
Upgrade installation — если у вас уже была установлена предыдущая версия VirtueMart, тогда вы можете использовать этот пакет для ее обновления с сохранением всех существующих данных.
Примечание переводчика
На сайте VirtueMart можно также скачать четвертый тип пакета — Manual Instllation, предназначенный для ручной установки пакета, если с автоматической установкой возникнут проблемы (в частности, если включен безопасный режим PHP, т. е. директива Safe Mode включена — значение On). В архиве вы найдете руководство (в формате PDF) по ручной установке магазина
Примечание переводчика
Вы также можете скачать языковый пакет. Архив Language_Pack_for_ VirtueMart_1.10.zip нужно распаковать и загрузить на сервер в каталог Joomla!/administrator/components/com_virtuemart/. Все графические копии экранов будут приведены с использованием русской версии магазина.
В состав полного пакета входят десять модулей:
mod product categories — отображает категории продуктов;
mod_ productscroller— выводит бегущую строку с информацией о выбранном продукте;
I3 Зак 468
modvirtuemartallinone— показывает экран с несколькими вкладками: лучшие 10 продуктов, случайные продукты и последние продукты;
modvirtuemartcart— отображае небольшой значок с ссылкой на корзину заказов;
modvirtuemartfeatureprod — отображает продукты со специальной ценой (со скидками);
modvirtuemart manufactures— показывает список производителей или брэндов доступных продуктов и позволяет просматривать продукты по этим категориям;
modvirtuemartrandomprod — выводит случайный продукт из всего каталога или из выбранной категории;
mod virtuemart search — выводит поле поиска по каталогу продуктов;
mod virtuemart topten— отображает лучшие (наиболее продаваемые) товары сайта.
Загрузите дистрибутивный файл, соответствующий вашим нуждам. Все архивы содержат файлы инсталлятора, поэтому перед установкой их нужно извлечь. Например, главный модуль VirtueMart называется mod_virtuemart_ cartl.O. IO.tar.gz и содержится в полном дистрибутивном архиве с именем VirtueMartl.O.lO-COMPLETE PACKAGE.zip (номера версий могут отличаться).
rtuertuePleas» та der i em - Il da nation to help me keep up the work on th» componentPleas» та der i em - Il da nation to help me keep up the work on th» componentУстановку нужно начать с распаковки главного модуля. У меня имя архива главного модуля было mod virtuemart l.O.lO.tar.gz. Используя Менеджер
rtue
rtue
Pleas» та der i em - Il da nation to help me keep up the work on th» component
Pleas» та der i em - Il da nation to help me keep up the work on th» component
Welcome to VirtueMart 1.1.0 stable !
VirtueMart 1.1.0 stable I Hey Saturday Sunl23/04/2000 20:00 CUT
r*^«.4l • .4 лиан.- Г. ,.«t SUCCESSFUL
To fl your Shop with dummy products, and to see how things can be set up. you can Instal some Sample Date nowTo fl your Shop with dummy products, and to see how things can be set up. you can Instal some Sample Date nowLet's prepare tire database now (the Installation Script hasn't found existing mambo- plipSImp VitneMait Tables, so let's do a fresh nstallahon).
To fl your Shop with dummy products, and to see how things can be set up. you can Instal some Sample Date now
To fl your Shop with dummy products, and to see how things can be set up. you can Instal some Sample Date now
Basic Installation has been freshed You can use VirtueMart in a moment after havng clicked on a ink below
fnetall SAMPLE DATA >fnetall SAMPLE DATA >Go directly to the Shop > •
fnetall SAMPLE DATA >
fnetall SAMPLE DATA >
Goto virtuemart ле! for further Help
Рис. 11.1. После установки компонента вы можете установить демонстрационные данные
расширений, установите его. Убедитесь, что он установлен в нужной позиции сайта.
После установки модуля распакуйте главный компонент (он называется comvirtuemartl.O.IO.tar.gz) и с помощью Менеджера расширений установите его. После завершения установки вы увидите кнопку, позволяющую установить демонстрационные версии данных (рис. 11.1). Это превосходная идея, поэтому нажмите эту кнопку для установки этих данных.
Создание виртуального магазина
Как только VirtueMart будет установлен, вы можете сразу приступить к созданию виртуального магазина. Одно из самых весомых преимуществ этого приложения— гибкость конфигурации. Все настройки могут быть изменены позже. Нет таких ошибок, которые нельзя исправить позже.
Как и в случае с Joomla!-сайтом, время, вложенное в планирование структуры магазина, окупится в будущем. Проектировать структуру магазина нужно сверху вниз — сначала создавать категории, а затем заполнять их продуктами.
Панель управления VirtueMart
Если вы выбрали установку демонстрационных данных, то после их установки вы сразу попадете в панель управления VirtueMart, отображенную в интерфейсе администратора (хотя она также доступна через интерфейс пользователя). В интерфейсе администратора панель управления магазином
Панель управления Статистика
♦ I Электронный магазин "Панель управления
ПродануПродануСписок тсеаров■'’лисок к^т^гг^йЭжазыСписок тсеаров■'’лисок к^т^гг^йЭжазы'п особы оплаты'п особы оплатыПо пыюеете- лиПо пыюеете- лиИнформ ацил оИнформ ацил оПсмо»1у>Псмо»1у>магазинемагазине
Продану
Продану
Список тсеаров■'’лисок к^т^гг^йЭжазы
Список тсеаров■'’лисок к^т^гг^йЭжазы
'п особы оплаты
'п особы оплаты
По пыюеете- ли
По пыюеете- ли
Информ ацил о
Информ ацил о
Псмо»1у>
Псмо»1у>
магазине
магазине
Рис. 11.2. Панель управления виртуальным магазином
доступна через подменю VirtueMart меню Компоненты. Панель управления (рис. 11.2) предоставляет кнопки быстрого доступа к наиболее часто используемым конфигурационным окнам. Также в панели управления вы найдете статистику виртуального магазина (вкладка Статистика).
Меню, отображаемое в панели управления VirtueMart, предоставляет доступ ко всем экранам магазина, а т. к. они не очень часто используются, то для них не предусмотрены кнопки быстрого запуска в панели управления. Для доступа к ним используется только меню.
Налоговые ставки
Налогообложение— серьезная штука, поэтому настройку вашего магазина вы должны начать с добавления налоговой ставки. Установка по умолчанию содержит всего лишь одну ставку для штата Калифорния (США). Если вы находитесь не в Калифорнии, вам нужно добавить налоговую ставку для вашего региона.
Для настройки налоговой ставки выберите команду Добавить налоговую ставку из меню Налоги. Вы увидите экран Добавить информацию о налоговой ставке (рис. 11.3), позволяющий добавить информацию о налогах.
Добавить информацию о налоговой ставке
Добьешь информашн* о налоговой ставке
Страна, где действует налог
Регион, где действует налог
Ставка налога (если 16% -* вводим 0.18)
Рис. 11.3. Экран Добавить информацию о налоговой ставке позволяет выбрать странуштат/регион и установить налоговую ставку
VirtueMart содержит огромный список стран и регионов этих стран. Если вашей страны нет в списке, вы можете добавить ее через интерфейс администратора VirtueMart. Для этого выполните команду Список стран из меню Настройки. Данная команда добавит новую запись в таблицу jos vm country.
Добавить регион можно только вручную с помощью MySQL-приложения. Откройте приложение MySQL Administrator, щелкните правой кнопкой мыши на таблице jos_vm_country и выберите команду Edit Table Data. Найдите
страну, для которой вы хотите добавить регион, и запишите ее номер (поле country id) для дальнейшего использования. Если вы только что добавили свою страну, то найдете ее в конце списка.
Откройте таблицу jos_vm_state и создайте новую запись. Поле state id можно не заполнять (оно будет заполнено автоматически). Введите ID вашей страны (в поле country id), введите название региона и его трехбуквенную аббревиатуру в соответствующие поля и сохраните изменения.
Добавленная вами запись будет сразу же отображена в соответствующем раскрывающемся списке. Обратите внимание: все эти изменения нужно проделать заново в случае переустановки Joomla! (например, из-за системного сбоя), поэтому регулярно делайте полную резервную копию базы данных Joomla!.
Общая настройка
В меню Настройки вы найдете несколько команд управления виртуальным магазином. Команда Настройки вызовет одноименный экран (рис. 11.4), содержащий несколько вкладок, первая вкладка — Общие настройки.
Настройки
fliome/dktoSOfQUfdumains.^ erg ud/puWi£_htmi^cml«/admfrtstratur/currporientsfcomj^tuemar1^ cfg php Доступен дпя мп и с и
Общие настройки Безопасность Сайт Доставка Оформление заказа Скачивание Настройки ленты носастей
Оишме настройки
Ма8га,ин Отметьте, если ►необходимо сокрыть магнии акрыг ? Г Соот в етст в уюш£е уведомление б* дот покорю при заводе в маткин
Уведомлен ее <h2>0ur Shop is currently down tor о ЮМ, что aemtenance. </h2> Please check back MWa ни again soon.
MKpwt:
Иснопь овйуьтолько мк мгаяогИснопь овйуьтолько мк мгаяогЕсли отга но. то магазин будет работать толью Г как каталог При этом все функции корзины будут отключены
Иснопь овйуь
только мк мгаяог
Иснопь овйуь
только мк мгаяог
О оО оЦена
О о
О о
ПОКЛгЫЬ.МЬ ^мемы
Группа ^ йх точить угу огч^сп ни» овагепеи, —-=-^—~—— -
-Administrator^
Рис. 11.4. Экран Настройки содержит все глобальные настройки VirtueMart
Вкладка Общие настройки
Если вы хотите использовать VirtueMart только как онлайн-каталог, включите параметр Использовать только как каталог, что отключит функции корзины. Настройки по умолчанию на этой вкладке устроят большинство пользователей, но на всякий случай проверьте, подходят ли они вам.
По умолчанию параметр Разрешить клиентам оставлять отзывы/рей- тинги в области Возможности магазина включен. Данный параметр разрешает пользователям не только участвовать в рейтинге продуктов, но и оставлять собственные обзоры продуктов. Хорошо подумайте, хотите ли вы оставить включенным этот параметр. Если вы не представляете огромную компанию вроде Wal-Mart, один отрицательный отзыв может негативно сказаться на продажах.
Так вы должны внимательно прочитать текст Правовая информации в области Регистрация пользователей. Текст по умолчанию содержит политику возврата, но вы можете дополнить его. Убедитесь, что он точно отражает политику вашего магазина.
Вкладка Безопасность
Вкладка Безопасность содержит настройки, используемые для обнаружения и предоставления информации о вашем магазине (рис. 11.5). Если у вас есть SSL-сертификат (см. разд. "VirtueMart u Secure Socket Layer" далее в этой главе), вы сможете здесь указать URL защищенного режима (протокол HTTPS). Также здесь вы можете изменить префикс таблиц, URL домашней страницы и URL страницы ошибок, хотя изменять эти параметры, скорее всего, вам не придется
Другие вкладки конфигурационного окна
Большинство параметров на остальных вкладках конфигурационного окна (Сайт, Доставка, Оформление заказа, Скачивание, Настройки ленты новостей) можно оставить по умолчанию. Вы можете разве что на вкладке Доставка выбрать грузоперевозчиков, с которыми работаете. Если вы продаете электронные продукты (электронные книги, программы), вам нужно посетить вкладку Скачивание и установить ее параметры, например, Путь к файлам для скачивания и Возможность скачивания истекает через.
Как только вы установите все глобальные параметры, нажмите кнопку Сохранить для их сохранения. В отличие от нормального интерфейса Joomla!, нажатие этой кнопки возвратит вас на главную страницу окна настроек.
Настройки
яWdorFainSfaKwsorc tpjbl htmvjcomia idmi istrator<componenis<com_vinuemarWirtuemart fgphp
Досту к#и для записи
Общие настройки Безопасность Сайт Доставка Оформление заказа Скачивание Настройки ленты новостей
Наи роики безопасностиНаи роики безопасностиSite URLАдрес для защищенного pe*i наSite URLАдрес для защищенного pe*i наhttpV/dk*» org ил/joomla/httpV/dk*» org ил/joomla/Дополнительные настроитПреф» кс для таблиц VirtueMartДополнительные настроитПреф» кс для таблиц VirtueMartPa щепыPa щепыhttp.//dk*e org.u»/joomlj/http.//dk*e org.u»/joomlj/acc&uniacc&uniкоторые должны использовать littpeкоторые должны использовать littpeJ Обычно пред от вращать соединение no протоколу https?J Обычно пред от вращать соединение no протоколу https?@о@оГЛ4ВНМ страница snop indexГЛ4ВНМ страница snop indexСтраница для .ihop. error вывода ошиоок -Страница для .ihop. error вывода ошиоок -Настр- ики рюхуНастр- ики рюхуОООО
Наи роики безопасности
Наи роики безопасности
Site URL
Адрес для защищенного pe*i на
Site URL
Адрес для защищенного pe*i на
httpV/dk*» org ил/joomla/
httpV/dk*» org ил/joomla/
Дополнительные настроит
Преф» кс для таблиц VirtueMart
Дополнительные настроит
Преф» кс для таблиц VirtueMart
Pa щепы
Pa щепы
http.//dk*e org.u»/joomlj/
http.//dk*e org.u»/joomlj/
acc&uni
acc&uni
которые должны использовать littpe
которые должны использовать littpe
J Обычно пред от вращать соединение no протоколу https?
J Обычно пред от вращать соединение no протоколу https?
@
о
@
о
ГЛ4ВНМ страница snop index
ГЛ4ВНМ страница snop index
Страница для .
ihop. error вывода ошиоок -
Страница для .
ihop. error вывода ошиоок -
Настр- ики рюху
Настр- ики рюху
О
О
О
О
URL-ссылка рюху сервераПорт proxyИмя полыователяПароль для рюхуURL-ссылка рюху сервераПорт proxyИмя полыователяПароль для рюху© ©9 ©© ©9 ©©©
URL-ссылка рюху сервера
Порт proxy
Имя полыователя
Пароль для рюху
URL-ссылка рюху сервера
Порт proxy
Имя полыователя
Пароль для рюху
© ©
9 ©
© ©
9 ©
©
©
функция AES EHCRVPT(rtiCh security) V©
шифрования -
КЛ1°Ч Bd58Q6f253fi435c607О
шифрования |5 Сохранять имформе^ю о кредитной^
карточке?
р* Разрешить администрирование через магазин (trontend) пользователям, не допущенным в панель ад министриро в амия'?
Рис. 11.5. Вкладка Безопасность содержит параметры безопасного пути, отладкишифрования и префикса таблиц
Настройка магазина
Перед открытием вашего виртуального магазина вам нужно настроить его для представления вашего бизнеса. Выполните команду Информация о магазине из меню Магазин. Эта команда отобразит экран Информация о магазине (рис. 11.6), позволяющий вам редактировать основную информацию о вашем магазине: название магазина, URL-адрес, телефон и контактную информацию. Также вы можете загрузить логотип магазина. Помните, что выбранная картинка не будет загружена на сайт до нажатия кнопки Сохранить.
Экран Информация о магазине позволяет также изменять тип валюты, общее описание магазина и определять условия обслуживания. После нажатия кнопки Сохранить VirtueMart сохранит все параметры магазина и покажет их вам.
^ Информация о магазине
МагазинМагазинНа ванне мага ина;На ванне мага ина;Wa«hupilo'$ TiendiUWa«hupilo'$ TiendiUНазваниеНазваниекомп НИНвладельцакомп НИНвладельцаWish u pile’s TiendittWish u pile’s Tiendittмага хина:мага хина:URL: http //dhw org.ua/joomliURL: http //dhw org.ua/joomliАдрес 1: too Waehupito Avenue. N.WАдрес 2:Город: Lake ForestАдрес 1: too Waehupito Avenue. N.WАдрес 2:Город: Lake ForestКоктякипя । «формацияФамилия: ownerИмя; DemoОтчество: storeОбращение: мг.Телефон 1: 555 555 1212Телефон 2: 555 555-1212Факс: 555 555-1212Е mail: dhsriab$@miil tuКоктякипя । «формацияФамилия: ownerИмя; DemoОтчество: storeОбращение: мг.Телефон 1: 555 555 1212Телефон 2: 555 555-1212Факс: 555 555-1212Е mail: dhsriab$@miil tuCipwe United SidlesРегион: cilifoim*vCipwe United SidlesРегион: cilifoim*v
Магазин
Магазин
На ванне мага ина;
На ванне мага ина;
Wa«hupilo'$ TiendiU
Wa«hupilo'$ TiendiU
Название
Название
комп НИНвладельца
комп НИНвладельца
Wish u pile’s Tienditt
Wish u pile’s Tienditt
мага хина:
мага хина:
URL: http //dhw org.ua/joomli
URL: http //dhw org.ua/joomli
Адрес 1: too Waehupito Avenue. N.W
Адрес 2:
Город: Lake Forest
Адрес 1: too Waehupito Avenue. N.W
Адрес 2:
Город: Lake Forest
Коктякипя । «формация
Фамилия: owner
Имя; Demo
Отчество: store
Обращение: мг.
Телефон 1: 555 555 1212
Телефон 2: 555 555-1212
Факс: 555 555-1212
Е mail: dhsriab$@miil tu
Коктякипя । «формация
Фамилия: owner
Имя; Demo
Отчество: store
Обращение: мг.
Телефон 1: 555 555 1212
Телефон 2: 555 555-1212
Факс: 555 555-1212
Е mail: dhsriab$@miil tu
Cipwe United Sidles
Регион: cilifoim*v
Cipwe United Sidles
Регион: cilifoim*v
Индекс: 8z63oИндекс: 8z63oТелефон: 555 555.1212Телефон: 555 555.1212Стиль отображен гя валютыСтиль отображен гя валюты
Индекс: 8z63o
Индекс: 8z63o
Телефон: 555 555.1212
Телефон: 555 555.1212
Стиль отображен гя валюты
Стиль отображен гя валюты
Форм I (sdorenaae)адреса (addrl**_i)магнии»: (addr.H_2|О (city), (zip)Форматдаты KA Kd KB KY %H:KM unto) иага.ина:Форм I (sdorenaae)адреса (addrl**_i)магнии»: (addr.H_2|О (city), (zip)Форматдаты KA Kd KB KY %H:KM unto) иага.ина:Информация о магазинеПотопит:Информация о магазинеПотопит:Загрузить изображение:Загрузить изображение:валина; us DollarСимвол валюты: $Количество 9разрядов:Десятичныйращел «ель:Разделитель ^Формат положительного . SymbOO V ^ значен м;Формат отрицательного -SymbOO V | @ значения:СМСОК 4s о ulh) Ко re an Won допустимы* Afghanistan Afghani валют: Albanian Lekвалина; us DollarСимвол валюты: $Количество 9разрядов:Десятичныйращел «ель:Разделитель ^Формат положительного . SymbOO V ^ значен м;Формат отрицательного -SymbOO V | @ значения:СМСОК 4s о ulh) Ко re an Won допустимы* Afghanistan Afghani валют: Albanian Lek
Форм I (sdorenaae)
адреса (addrl**_i)
магнии»: (addr.H_2|
О (city), (zip)
Формат
даты KA Kd KB KY %H:KM unto) иага.ина:
Форм I (sdorenaae)
адреса (addrl**_i)
магнии»: (addr.H_2|
О (city), (zip)
Формат
даты KA Kd KB KY %H:KM unto) иага.ина:
Информация о магазине
Потопит:
Информация о магазине
Потопит:
Загрузить изображение:
Загрузить изображение:
валина; us Dollar
Символ валюты: $
Количество 9разрядов:
Десятичныйращел «ель:
Разделитель ^
Формат положительного . SymbOO V ^ значен м;
Формат отрицательного -SymbOO V | @ значения:
СМСОК 4s о ulh) Ко re an Won допустимы* Afghanistan Afghani валют: Albanian Lek
валина; us Dollar
Символ валюты: $
Количество 9разрядов:
Десятичныйращел «ель:
Разделитель ^
Формат положительного . SymbOO V ^ значен м;
Формат отрицательного -SymbOO V | @ значения:
СМСОК 4s о ulh) Ко re an Won допустимы* Afghanistan Afghani валют: Albanian Lek
Рис» 11.6. Параметры вашего виртуального магазина
Создание категорий
В VirtueMart продукты представляются так же, как и в обычном почтовом каталоге. Сначала вам нужно создать категории для различных продуктов, а затем добавить в них продукты. Категории используются для сортировки списка продуктов пользователем, а также для анализа в административном отчете.
Начнем с добавления категории Драма (ведь мы создаем магазин, продающий старые фильмы на DVD), как показано на рис. 11.7 (для этого выполните
команду Добавить категорию из меню Товары). Введите название категории и ее краткое описание. Раскрывающийся список Родительская категория позволяет определить категории иерархически. Параметр Просмотр представления (fly-страницы) категории позволяет вам создать пользовательский шаблон страницы, применяемый для отображения продуктов этой категории. Когда вы создаете реальный сайт, используя эту опцию, можно создать пользовательскую страницу с некоторыми специфическими картинками и специфическим фоном.
Информация о категории
Информация о категории HS Изображения
Опубликовать?- v
Название категории- Драм л
Описание категории, у ^ D «1$ g 3 Й|| -Stylesv -Foimjt- V Font family V
;E jE ^& & У w ^ * ’ 5 ^ ^ В U ti Д’
X1‘^
Картинка Pagebreak Pead | e
Порядок сортировки. Новые значения по умолчанию находятся на последнем месте. Сортировка может быть изменена, когда позк^я сохранена Родительская категория Deiiuit-Тор Level v
> Показывать х товаров в 1
Страница отображения menaged у категории
Просмотр fiyP,cetpi представления (fly-
страмк4р|) категории:
Рис. 11.7. Добавление категории Драма
Поле Описание категории использует выбранный вами редактор Joomla! (например, TinyMCE). С помощью этого редактора вы можете отформатировать текст, вставить картинки и Flash-анимацию.
Нажмите кнопку Сохранить для сохранения информации о категории. Для сайта Movie Matinee я добавил еще одну категорию — Комедия. Дчя корректного отображения категорий на главной странице вам нужно добавить как минимум две категории.
Добавление продуктов
Для добавления нового продукта в каталог выберите команду Добавить товар из меню Товары. Вам нужно ввести название продукта и номер, по
которому вы будете отслеживать продукт (артикул, ISBN и т. д.). Выберите категорию Драма (рис. 11.8). В этом примере я добавил классический фильм "Касабланка". Введите остальную информацию (цену, короткое описание, полное описание и установите другие параметры, которые вы посчитаете необходимыми).
Перейдите на вкладку Статус товара (рис. 11.9) и введите информацию о наличии товара на складе. Здесь вы можете указать количество товара на складке, ввести дату, начиная с которой товар будет доступен для продажи. Также вы можете указать выбрать картинку (или ввести текст), информирующую пользователя о доступности товара.
Дополнительный список свойств— это одна из самых полезных возможностей VirtueMart. В это поле вы можете ввести строку параметров продукта. Различные параметры разделают точкой с запятой (,-). После названия параметра через запятую должны следовать доступные значения.
Новый товар пне
Информация о товаре Показать опции Статус товара Габариты и вес Изображения товара Сопутствующие товары
’ Статус товара
$На складе: 10
МАИ мапьное количество tпр юбрегаеыого товара-
Максимально а количество wцмеобрегеемого товара-
<Доступно у 2006 оз и
Доступен 2-3 d gifQ
Q 2-3 Days
2-3d.gifv V 4r^**
Специальное .— предложен те:
Cn icok свойств:
Titleмое oo«»ойст* о | Но п а я ос Ьбеннссте-
ОсобенностьЦена
Example» for the Attf llxrte List Format:
Title - Color, Property - Red, Click on New Property to add e new cotor Green, Then click on New attribute lo add a new attribute, and so on
InIne price adjustment» for using the Advanced Attributes mоdrtication:
Price - +10 to add this arnoirt to the conflgued price
Price - -to to subtract this amoirl from the configured price Price - 1 Oto sei the product's price to this amoirl.
Дополнительным список *DVD_VHS.Blu. ■ hd.dvd
свойств: •
Пример формата списка дополнительных свойств: Нжикйноееми ;Дополнительно,..
Рис. 11.9. На вкладке Статус товара вы можете указать количество товара на складе
Например, на складке Movie Matinee доступно видео в разных форматах. При добавлении товара в корзину покупатель может выбрать один из форматов. Список свойств в этом случае будет выглядеть так:
Формат,DVD,VHS,Blue-ray, HD-DVD
При оформлении заказа покупатель сможет указать необходимый ему формат из раскрывающегося списка (рис. НЛО), который будет сохранен вместе с заказом. Если ваш сайт специализируется на продаже обуви, вы можете задать примерно такие атрибуты: размер обуви, ширина обуви, цвет и т. д.
Перейдите на вкладку Габариты и вес для установки информации, полезной при доставке товара (рис. ll.ll). Все эти параметры будут использоваться различными приложениями, автоматизирующими доставку товаров, при вычислении стоимости доставки. Если продукт загружаемый (программа, картинка, видеоролик, электронная книга, т. е. файл), вы можете указать имя файла. Файл не будет загружен на сервер, пока вы не нажмете кнопку Сохранить.
ДоступенОбычно отгружается в течение:2-3 Days****ДоступенОбычно отгружается в течение:2-3 Days****Формат [oVD ' ~TDVD кдпииаг 1Формат [oVD ' ~TDVD кдпииаг 1
Доступен
Обычно отгружается в течение:
2-3 Days
****
Доступен
Обычно отгружается в течение:
2-3 Days
****
Формат [oVD ' ~TDVD кдпииаг 1
Формат [oVD ' ~TDVD кдпииаг 1
Касабланка
Цена за шт. nut.): $10.83
Задайте допрос по этому товару
Классика, драма
Мнения покупателей:
Еще нет мнений об этом товаре
Пожалуйста, войдите, чтобы оставить свое мнение
Рис. 11.10. Список свойств, установленный на вкладке Статус товарабудет доступен для выбора из раскрывающегося списка
. f Новый товар мм
И ф рм ция о товаре Показать опции Статус товара Габариты и весИзображения товара 1 опутствующие товары
Габариты и вес
Длина:
Ширина:
Высота;
(Единица измерения: см
Вес;
Един 1ца измерения- кг
Единица- шт.
Кол-во в упаковка: оО
Единиц в коробке: о@
Рис. 11.11. Параметры вкладки Габариты и вес используются
для вычисления стоимости доставки
Примечание переводчика
Чтобы появилась возможность продавать загружаемые товары, нужно в настройках VirtueMart на вкладке Скачивание включить параметр Включить скачивание товара.
Для загрузки изображения товара перейдите на вкладку Изображения товара (рис. 11.12). VirtueMart автоматически создаст миниатюру главного изображения, если вы это еще не сделали. Выбранное изображение не будет загружено до тех пор, пока вы не нажмете кнопку Сохранить
Новый товар
■ГОИ
Информация о товаре Показать опций Статут товараГабариты и весИзображения товара Сопутствующие товары
/home/dkwscrgu/domains/dkws 0rg.ua/puDlic_html/j30mia/c0mp3nents/c0m_virtuemarVsn0pjrnage/product Доступе»для ЗАПИСИ
/home/dkwsorguroomams.rdKw^ org uazpubhc..himi/joomiafcomponents/c3m_viituemajVshop_image/pruducVresized Доступен для записи
Больиия коринкуОбзор.Денсюня над изображениями:Автоматически создавать уменьшенные изображения?URL(Необязательно!)Больиия коринкуОбзор.Денсюня над изображениями:Автоматически создавать уменьшенные изображения?URL(Необязательно!)Маленькая мерщикаОбзор.Дейспшя над изображениями:URL(Необязательно)Маленькая мерщикаОбзор.Дейспшя над изображениями:URL(Необязательно)
Больиия коринку
Обзор.
Денсюня над изображениями:
Автоматически создавать уменьшенные изображения?
URL
(Необязательно!)
Больиия коринку
Обзор.
Денсюня над изображениями:
Автоматически создавать уменьшенные изображения?
URL
(Необязательно!)
Маленькая мерщика
Обзор.
Дейспшя над изображениями:
URL
(Необязательно)
Маленькая мерщика
Обзор.
Дейспшя над изображениями:
URL
(Необязательно)
Рис. 11.12. Вкладка Изображения товара позволяет загрузить изображение товараи его миниатюру
Если имеются сопутствующие продукты, перейдите на вкладку Сопутствующие товары. На ней вы увидите список всех товаров вашего магазина. Если вы найдете сопутствующие продукты, то можете выбрать их из списка. При отображении основного продукта на сайте сопутствующие продукты будут отображены внизу страницы в разделе Вам могут быть интересны следующие товары в виде миниатюр с названиями товаров.
Добавьте несколько продуктов, чтобы ваш магазин не выглядел пустым. Я добавил фильм "Летающая парочка" ("The Flying Deuces") со Стэном Лорелом и Оливером Харди в главных ролях в категорию Комедия. Также я добавил фильм Богарта "Иметь и не иметь" ("То Have and Have Not").
Для просмотра созданного виртуального магазина добавьте элемент меню, ссылающийся на компонент VirtueMart так же, как вы добавляли элементы меню для других компонентов. Далее откройте браузер, перейдите по соз-
данной ссылке магазина, затем выберите категорию, и вы увидите список то
ДоступенДоступенКасабланкаКасабланкаЦена за шт. (шт.): $10 83Зэдаите вопрос по этому товаруЦена за шт. (шт.): $10 83Зэдаите вопрос по этому товаруваров выбранной категории (рис. 11.13).
Доступен
Доступен
Касабланка
Касабланка
Цена за шт. (шт.): $10 83
Зэдаите вопрос по этому товару
Цена за шт. (шт.): $10 83
Зэдаите вопрос по этому товару
Обычно отгружается в течение:
2-3 Days
****
Рис. 1113. Выбрав категорию, вы увидите список всех товаров категории
Сейчас вы только начали настраивать VirtueMart. У этого расширения очень много параметров, но в этой главе мы рассмотрели только самые важные — чтобы вы смогли запустить магазин. Интерфейс администратора магазина предельно прост, а большинство не рассмотренных здесь параметров очевидно.
VirtueMart и Secure Socket Layer
Если вы принимаете конфиденциальную информацию по Web (например, номера кредитных карт), вам нужно убедиться, что прием и передача этих данных безопасны. Обычно Web-информация передается по Интернету в открытом виде (как обычный текст) и при этом проходит через множество разных компьютеров и маршрутизаторов. Это означает, что информация может быть перехвачена.
Практически невозможно защитить информацию от перехвата (перехват производится специальными программами — снифферами пакетов), но возможно зашифровать передаваемые данные. Для этого используется Secure Sockets Layer (SSL). В случае с SSL информация проходит через те же узлы, но в зашифрованном виде.
Когда установлено безопасное соединение, в панели состояния браузера появится небольшой замок (рис. П.14). Кроме этого, в строке адреса браузера вместо обычного префикса http:// будет отображаться https://, что означает HTTP Secure, т. е. безопасное HTTP-соединение. Теперь данные шифруются на одной стороне и расшифровываются на другой. Даже если трафик будет
перехвачен, каждый пакет должен быть расшифрован, а для этого нужно много времени и мощные компьютеры.
^Готово5 Ф Интернет
Рис. 11.14. Небольшой замбк свидетельствует о безопасном соединении
Для использования SSL, Web-сервер, размещающий ваш Web-сайт, должен заказать SSL-сертификат у провайдера сертификатов (за это взимается ежегодная плата). Большинство Web-провайдеров предоставляет SSL-сервис. Чтобы установить SSL-сертификат на своем сервере, вам нужно заказать его у VeriSign (www.verisign.com). Инструкции по активации сертификата в Apache можно найти на сайте www.apache-ssl.org.
Примечание переводчика
Инструкции по настройке SSL в Apache на русском языке вы можете найти на сайте http://www.dkws.org.ua/index.php?page=show&file=a/servers/ssl-ssh.
Примечание
На момент написания этих строк Windows-версия Apache (в отличие от Linux- версии) не поддерживала SSL в загружаемых двоичных файлах. Это означает, что вам нужно загрузить, настроить и установить Apache вручную Выполните поиск по запросу Apache SSL module (mod_ssl), и вы найдете инструкции по установке. Windows IIS поддерживает SSL без всяких модулей.
Как только вы активируете ваш сертификат на сервере, перейдите на вкладку Безопасность экрана Настройки VirtueMart и установите HTTPS-адрес. Теперь VirtueMart защищен и может гарантировать, что все ваши сделки зашифрованы и безопасны.
Много сайтов, работающих с конфиденциальными данными (вроде номеров кредитных карточек), кодирует только те страницы, которые нуждаются в этом Хотя из года в год компьютеры становятся все мощнее, цикл шифрова- ния/расшифровки все еще очень интенсивен и сложен даже для мощной машины, поэтому на него тратится много процессорного времени, и пока невозможно зашифровать весь передаваемый трафик.
Способы оплаты
Ваш виртуальный магазин может работать с популярными платежными системами для принятия оплаты за заказанные товары. На момент написания этих строк VirtueMart поддерживал следующие системы: 2Checkout, PayPal (IPN), Payflow Pro, Authorize.Net (AIM), eCheck, eProcessingNetwork, eWAY
(XML-транзакции), LinkPoint, Montrada, Nochex, Paymate, Pay-Me-Now, PBS, Skipjack и WorldPay. Но еще лучше то, что система позволяет вам создавать собственные типы оплаты и определять процесс транзакции для взаимодействия с другими платежными системами.
Вы можете настроить методы транзакции (для взаимодействия с компаниями вроде PayPal, Paymate, eWAY и т. д.) путем выбора команды Способы оплаты из меню Магазин. Для каждого метода оплаты отображается его код, скидка, группа покупателей и статус (активен или нет), как показано на рис. 11.15. Как видно на рисунке, вы можете для отдельных групп покупате-
Список способов оплаты
*
г
На ванне
Код
Сюцка
Групп» покупателей
Способ оплаты
Акутные
Удалить
1
г
2Checkout
2CO
$000
-default-
। HTML-форма (например, для PayPal)
о
41
2
г
Credit Card
AN
$0.00
-default-
Использовать платёжный процессор
V
41
3
г
Credit Card (eProcessngNelwork)
EPN
$0.00
-default-
Использовать платёжный процессор
о
41
4
г
Cree# Card (PayMeNow)
PN
$0.00
-default-
Использовать платежный процессор
о
•
5
г
Dankort/PBS
PBS
$0.00
-default-
HTML-форма (например, для PayPal)
о
41
6
г
eCheck.net
ECK
$0.00
-defaut-
Банковский дебет
о
А
7
г
ePay
EPAY
$0.00
-default-
HTML-форма (например, для PayPal)
V
Я
8
г
eW»y
EWAY
$0.00
-default-
Использовать платежный процессор
о
41
9
г
Kobo
IK
$0.00
default-
HTML-форма (например, для PayPal)
о
4#
10
г
iTransact
ITR
$0.00
-default-
HTML-форма (например, для PayPal)
о
4!
11
г
NoChex
NOCHEX
$0.00
-default-
HTML-форма (например, для PayPal)
о
41
12
г
PayMNe
PM
$0.00
-default-
HTML форма (например, для PayPal)
о
И
13
г
PayPal
PP
$000
-default-
HTML-форма (например, для PayPal)
V
41
14
г
Verisign PayFfcrw Pro
Г PFP
$0.00
-default-
Использовать платёжный процессор
V
41
15
г
WorldPay
WP
$000
-default-
HTML-форма (например, для PayPal)
о
в
16
г
Purchase Order
$0.00
Gold Level
Доставка по адресу (оплата наличными при получении)
V
в
17
г
Cash On Delivery
COD
-$2.00
default-
Доставке по адресу (оплата наличными при получении)
V
4!
Показать * | 20 ^
Результаты 1 -17 из 17
лей задать подходящие им методы оплаты. Вы можете также отключить не подходящие вам методы оплаты без удаления их из системы (возможно, вы будете ими пользоваться в будущем).
При модификации существующего способа или при создании нового вы увидите вкладку Добавить способ оплаты (рис. 11.16). На ней находятся общие параметры оплаты. Наиболее важный параметр— Код, поскольку именно он непосредственно участвует в транзакции. Код — это ключ или имя пользователя, предоставленное вам платежной системой.
Добавить способ оплаты
Добавить способ оплаты На тройки
Активные?: р
Кивание способа оплаты: PayPal
Код: рр
Класс имени платежа р$_раурд( ^ Q Способ оплаты:кредитная карта
Ислользо в ать платёжнь й процессор Банковский дебет
^ Доставка по адресу (оплата наличнь ми при получении) ^ HTML-форма (напримip, для PayPal)
Группа покупателей: -default- V-Скцдка: о.оо QТип скидки: р относительная (%) @f* Абсолютная
Максимальным размер скидки: о 00
Минимальный размер скидки: о оо
Лорящок отооражения: о
Рис. 11.16. Общие параметры способа оплаты
Вкладка Настройки (рис. 11.17) используется для организации взаимодействия с платежной системой. В области Дополнительная информация но платежу вы можете добавить код, предоставленный платежной системой для проверки факта оплаты. С помощью этого кода VirtueMart сможет проверить, был ли оплачен заказ, и автоматически обновит статус заказа. Автоматизация платежей — очень полезная функция, особенно для сайтов, специализирующихся на загружаемых продуктах.
Тестовый режим ?PayPal e-maiСтатус заказа после услевного завервения платежаСтатус заказе, у которого платеж обрабатываетсяПонимать только проверенгеях покупателей?Статус заказа для иву дав шихся оплат через РеуРЫТестовый режим ?PayPal e-maiСтатус заказа после услевного завервения платежаСтатус заказе, у которого платеж обрабатываетсяПонимать только проверенгеях покупателей?Статус заказа для иву дав шихся оплат через РеуРЫСписок кредитных картСписок кредитных карт
Тестовый режим ?
PayPal e-mai
Статус заказа после услевного завервения платежа
Статус заказе, у которого платеж обрабатывается
Понимать только проверенгеях покупателей?
Статус заказа для иву дав шихся оплат через РеуРЫ
Тестовый режим ?
PayPal e-mai
Статус заказа после услевного завервения платежа
Статус заказе, у которого платеж обрабатывается
Понимать только проверенгеях покупателей?
Статус заказа для иву дав шихся оплат через РеуРЫ
Список кредитных карт
Список кредитных карт
Добавить способ оплаты
Добавить сгоссо:аплэты Настройки
/t»,meJChv Grgu/doniamsJdlwyois uaJpuyic_MmUjoom! w&dmin siratorfrurrpun Hisrcomjrirtuemsrtwsses/paym пир5_рзуры fstMn
Доступе» для записи
Когда включено, то позволяет гротвстировать Вав файл уведомлении
Дт гhttp.//dkwx.org,ua/jooiila/Mdxlni.etrator/coa,pon*ntx/coM_virtueaert/notify php
через тестовую форму **yWK ttiexfcKver.co.jkAestiTsiAmSestphi
уои@уои1Ьи«пе*.сог Вак почтовый адрес дня получения денег через РауРЫ Шоке используется как receiver_етай
Выберите статус заказ для установки, если платеж гровел через PayPal IPN Если используете функцию скачивания
Confirmed ^ товара, выберите статус, который включает возможность скачивания этого товара (при этом покупателю приходит письмо о том, что товар доступен для ска^вания)
— Статус заказа,-оторьм присваивается заказу, у которого не провел платеж Гранэашуя при этом не отменяете я а откладывается и ждет завервения
Нет ^Здесь Вы можете вьйрать, хотите пи Вы гринеяать платежи только от покупателей с лровереюьми счетами в
системе PayPal (когда счет не проверен, PayPal переводит средства, но не погеюстыо гаранткрувт законность продажи)
CmcKlied vВыберите статус заказа для неудаввихся оплат через PayPal
Дополнительная ютформация по платежу.®
«7 Php^
#dbl ■ new ух_DBG
Jq в "SILICT country_2_code FROM ♦ ra country WHZB1 ccuntry_3_code-'*.lueer-^country.*‘ OM>IR BY country_Z_code ASC"; #dbl-*query(#q);
furl ■ "https.//vwv.paypal.сов/cgi-bin/vabxcr",
|t«x_total - |db->t("order-tax*) * fdb~>t<"order_shipping—tax-), fdlscountcotal ■ rdb-»t<"conpon_discount*) + #db-*t<"ordar_discount"); Вpoet—variables - ArrayC
, "ar — " ,m-t№tre.,
Рис. 1117. Вкладка Настройки содержит параметры, определяющие,как будет организовано взаимодействие с платежным сервисом
Н^гвамие кредитной картыAmerican ExpressAustraian BankcardDiners ClubDiscover CardJCBMasterCardН^гвамие кредитной картыAmerican ExpressAustraian BankcardDiners ClubDiscover CardJCBMasterCard
Н^гвамие кредитной карты
American Express
Austraian Bankcard
Diners Club
Discover Card
JCB
MasterCard
Н^гвамие кредитной карты
American Express
Austraian Bankcard
Diners Club
Discover Card
JCB
MasterCard
Кредитная к.1|иа - короткий кодУдтлшь
emex,| •
austraian_tej I
diners discover
to4$
мсД<
Показать t i 20 v Результаты 1 - 7 из 7
VrtueMart 1.1.0 (Проверить последнюю версию)
Рис. 11 18. Список поддерживаемых кредитных карт
Для магазинов, принимающих оплату по кредитным картам, есть много сервисов, позволяющих работать с кредитными картами разных типов— от American Express до Dinnei's Club. Выберите пункт Список кредитных карг из меню Магазин, и вы увидите поддерживаемые магазином карты (рис. 11.18). Каждый из этих типов карт можно настроить для работы с поддерживаемыми платежными системами.
Группы покупателей
и управление пользователями
Одна из наиболее полезных функций VirtueMart— это возможность настроить группы покупателей. Группы покупателей позволяют вам создать специальную категорию для определенных покупателей. Например, вы можете сформировать группы по географическому признаку или же для более эффективного обслуживания покупателей (т. е. создать группу постоянных покупателей).
Географические группы могут использоваться, когда цена зависит от местонахождения покупателя. Виджит (небольшая программа), проданный в Лос- Анджелесе, будет стоить дороже, чем тот же продукт в Миннесоте.
Добавить группу покупателей
По- W— умолчанию ?:
На вамие old Level B-pynnih^
Продавец: Washupito's Tiendita
Показать цены, включая р- Q налоги?:
Скидке для
группы ПО- £ ™- Q
умолчанию (в
*)'
°групльк В ^ У ак | 2£ S :В 16 || Styles-у | -Foimat- v| -Fontfamily- v E!E|^№| I -LSI V-M'^agifi i' П Д -^gl x. x- |n - ^|। ч । . a
Odd Level phpShoppers.
Картике F» PagebrooK Readmore
Рис. 11.19. Вы можете использовать группы покупателейдля контроля за отображением ваших продуктов
Определяя географические группы, вы можете адаптировать цены для разных географических регионов. Другой способ определения групп — группы постоянных покупателей, получающих скидки за повторные заказы.
Для просмотра групп покупателей выберите команду Группы покупателей из меню Покупатели. При выборе существующей группы или создании новой группы вы увидите экран Добавить группу покупателей (рис. Il l9). Параметры группы очень просты и очевидны. Группы покупателей часто используются в VirtueMart: для определения скидок, параметров доставки и т. д.
Управление производителями/брэндами
Меню Производители предназначено для управления брэндами и дистрибьюторами товаров вашего виртуального магазина. Меню позволяет просматривать, редактировать и добавлять производителей и их категории. Также можно использовать эту функцию для заполнения контактной информации (например, адреса сайта) о производителе, если вы хотите, чтобы ваши покупатели обращались непосредственно к производителям для получения информации о продуктах и о гарантии.
При создании нового товара вы можете выбрать его производителя из списка Производитель. У продукта может быть только один производитель. Магазин позволяет осуществлять поиск товаров по производителю.
Создайте список производителей, если вы хотите, чтобы покупатели могли сортировать продукты по брэнду. Например, если вы продаете ноутбуки, то можете добавить следующих производителей: Lenovo ThinkPad, Dell, Fujitsu, Sony и т. д. Это позволяет быстро выбрать товар, необходимый покупателю.
Модуль доставки
У VirtueMart мощная система контроля доставки. Магазин поддерживает не только много различных способов доставки (рис. 11.20). но и позволяет настроить каждый способ в отдельности
По умолчанию доступны только два способа доставки: Purchase Order (оплата при получении) и Cash On Delivery (оплата при отправке). С распространением кредитных карт эти способы стали менее популярными из-за бюрократии при получении платежа. Решите, нужны ли вам эти два старых способа, прежде чем включать их на вашем сайте.
Управление заказами
Когда VirtueMart получает заказ, заказ отображается в Списке заказов (рис. 11.21). Просмотреть этот список можно с помощью команды Список
Список модулей доста вки
Гитиепние
екянчить? На ванне
Вере и
Автор
URL:
Е-птаЯ
euspost
V
Настроить
доставки
1 04
Benwtson
<*vereionw*e com au/
ben^dNersionware com.au
Au* ala Post Shipping Modulo
2
V
Canada Роя Настроить
доставки
1 Л
Репе-Yves Snou
hUA
ainou _pyQyahoo ca
Sei Ontoe*" Shippop Module trem Cenad» Post
ОМ.
3
V
Настроить
10
Mhe Durwi
http./jprodHg-hd com!
durien®8hadetreeiunwara com
The DM. Shipping modi*
доставки
4
V
Настроить
1.02
Joy Powers /Soeren Eberhardt f Grog Ре»Ипз
www vermonstar.com/
jay ©v «monster .com
The FedEx shaping modi*
$
V
Ftex Настроить вариант доставки
0S
Micah Shawn
NA
mcan©ridgebackdogs .com
Flex Shipping Fi>ed shppngcost to set base value oi orrtor win percentage cl total saw above base value
в
V
inter Shipper Настроить
доставки
1 Л
irierihipperxom
wwwxiershpper com
N/A
The interShipper Stepping
»
No Shipping
1 0
soeren
wwwwtueman.net
soerenig?wiLWimart net
Disables SNpping
8
J
shpvaiue Настроить
доставки
01
Rhys Lewis thanks lo Mean Shawn eno В ел aibtoodrtx’ired
http /Mww.lemonyetow.co.uk/
mat*o®temonyeilow co.u*
Shtppng based on orde- tct^S Fixed shfjDprig costs based on values entered ri configuration
Standard
8
V
Shppry MoraJe Настроить
доставки
11
Ekkehard Domnfrig Soeren Eberhardt
www phpeuroshop.ee/
N/A
The Standard Shuping moduw Configure end iT>aintan our own Camera end Rates
IPS
10
V
Настроить
1 0
www.upa.com
www ups com/
N/A
The UPS® Shipping module
доставки
USPS
и
V
Настроить
гЗППТПЯПП
Coray НоДт
www.uspa.comJ
N/A
The USPS Shppng mo**
Рис 11.20. Способы доставки
^ Список заказов
Ре 1 Ihkj | СопПшь <11 Can etted | PefuiMlnd | Shipped | Все
j— Номер
- ^ ^-‘ ^"м‘ к ^"—"r"^ °— ^“•«>’«-*-' ,„„.,.
Г OUOUOOOl
11-r- v
ИванxvMay 11-Mey-_ „Уседомить
Иванов** to0614 11• "° 8 пмутчтел^$12 63Д£
i в! чОвнокить статуе
VHueMart 1 1 О Проверить поспедгеою версию)
Рис. 11.21. Список заказов отображает состояние каждого заказа
заказов из меню Заказы. Нажав пиктограмму принтера, вы увидите версию заказа для печати.
Столбец Статус отображает состояние заказа. Вы можете корректировать состояние, выбрав новое значение из раскрывающегося списка и нажав кнопку Обновить статус. Если параметр Уведомить покупателя включен, пользователю будет отправлено сообщение об изменении статуса заказа.
Резюме
Используя VirtueMart, на базе Joomla! можно сделать не просто виртуальный магазин, а полнофункциональный магазин. У VirtueMart достаточно возможностей для малого и среднего бизнеса: корзина, автоматическая система оплаты, управление складом. VirtueMart позволяет создать магазин, соответствующий вашим потребностям. А возможность продавать загружаемые продукты еще больше расширяет потенциал магазина.
Однако если у VirtueMart нет необходимых вам функций, не волнуйтесь! Кроме него для Joomla! разработано много других как свободно распространяемых, так и коммерческих расширений (EZ-Catalog, osCommerce), которые, возможно, будут соответствовать вашим нуждам. У Joomla! огромное сообщество разработчиков, поэтому вы найдете решение, удовлетворяющее всем вашим требованиям.
ГЛАВА 1 2
Поисковая оптимизация и Joomla!
Не имеет значения, как ваш сайт выглядит, как реализован и какой у него контент, если пользователи не могут его найти. Поэтому нужно приложить определенные усилия, чтобы ваш сайт был найден в Google, MSN, Ask.com и других популярных поисковых машинах по соответс i вующим ключевым словам. Ссылка на ваш сайт в популярной поисковой машине— это залог и его популярности.
Существует множество стратегий поисковой оптимизации. Поисковая оптимизация (SEO, Search Engine Optimization) — это процесс адаптации вашего сайта с целью получения высоких мест в результатах поиска по заданным запросам. Множество компаний вроде Search Agency (www.thesearchagency.com) предоставляют консультации по максимально эффективному размещению сайта. Однако вы можете проделать много работы по продвижению вашего сайта в поисковых машинах самостоятельно.
Поисковые машины используют специальные программы, называемые поисковыми пауками, которые постранично индексируют контент вашего сайта и помещают индекс в базу данных поисковой машины. Позиция вашего сайта в результатах поиска напрямую зависит от того, как эффективно паук проиндексировал контент вашего сайта.
В Joomla! есть несколько параметров, оптимизирующих сайт для поискового паука. Кроме того, имеется множество способов повышения рейтинга сайта. При этом вам нужно потратить всего несколько часов для подстройки вашего Joomla.'-сайта для SEO, и вы увидите разницу.
SEO на Joomla’-сайте
Разработчики Joomla! осознают важность поисковой машины для посещаемости сайта. Чтобы Joomlai-сайты хорошо индексировались поисковыми ма-
шинами, разработчики добавили множество функций, позволяющих улучшить рейтинг сайта в результатах поиска. Для более эффективного индексирования контента сайта в Joomla! используются различные параметры.
Поскольку Joomla! динамически генерирует страницы сайта, отправляемые пользователю, это позволяет немедленно применять изменения, сделанные в конфигурации Joomla!, на уровне всего сайта. Однако у динамической природы Joomla! есть и недостатки, например. Web-мастер больше не контролирует организацию и конфигурацию сайта, как это можно сделать со статичными Web-сайтами. Чтобы обойти эту проблему, Joomla! содержит параметры. влияющие на индексирование сайта поисковыми машинами. Наиболее важные из них — параметры, позволяющие сделать URL, генерируемые Joomla!. "дружественными" по отношению к поисковым машинам, т. е. перевести их в формат SEP (Search Engine Friendly URL).
Делаем Joomla! "дружественной" к поисковым машинам
По умолчанию URL, генерируемые Joomla! для доступа к страницам сайта, не очень дружественны к поисковым паукам. Посмотрите на URL, генерируемые Joomla! по умолчанию. Они будут выглядеть примерно так:
http://www.exam ple.com/index.php?option=com_content&
view=catego ry & id=33&Itemid=53
Данный URL выглядит не очень понятным вам, и точно так же он непонятен поисковому пауку. Этот URL содержит параметры, которые говорят движку Joomla!, какой контент нужно получить из базы данных и передать пользователю. Во время загрузки страницы Joomla! использует текущий шаблон и запрашивает из базы данных контент для создания форматированной Web- страницы, чтобы отправить ее пользователю. URL понятен Joomla!, но не поисковому пауку.
Более понятным как пользователю, так и поисковой машине, выглядит URL вот такого вида:
http://www.cnn.com/2007/SHOWBIZ/
URL сайта CNN похож на URL статического сайта. В отличие от динамического сайта (вроде Joomla!), контент которого форматируется на лету, статический Web-сайт хранит информацию в файлах Web-страниц в разных каталогах и получает ее, когда в URL указан путь к документу.
Поисковые машины могут каталогизировать контент динамического сайта (с URL в формате Joomla!), но страницы статического сайта всегда будут выше по рейтингу, чем динамически созданные страницы. Как решить эту проблему?
К счастью, разработчики Joomla! включили две опции, разрешающие Joomla! генерировать более понятные URL. После включения этих опций Joomla! будет генерировать понятные поисковым машинам URL (SEP URL), напоминающие структуру каталогов статического сайта (как URL сайта CNN), и у поисковых машин больше не будет проблем с индексированием вашего сайта.
Почему же эти опции не включены по умолчанию? А потому, что для реализации режима SEE Joomla! динамически перезаписывает URL на Web- сервере. Некоторые Web-провайдеры не разрешают программам изменять URL из соображений безопасности — этим могут воспользоваться хакеры для взлома сайта.
Активация SEF-параметров
SEF-параметры находятся в интерфейсе администратора в разделе Общие настройки. Всего имеется два SEF-параметра (рис. 12.1): Включить SEO и Использовать mod_rewrite. Наверняка вы включите первый параметр, чтобы система генерировала URL в формате папок.
Примечание переводчика
В последней версии Joomla!, которую использовал переводчик, появился третий SEF-параметр— Добавить суффикс к URL. Если он включен, то к URL система добавит суффикс, зависящий от типа документа.
Когда этот параметр включен, URL будут генерироваться сайтом в следующем формате:
http://www.example.com/index.php joomla-overview
Этот параметр использует трюк маршрутизации, заставляющий сервер читать и выполнять файл index.php, указанный в URL. При запуске index.php обрабатывает путь, указанный после него в URL. и выводит соответствующий ему контент. Есть две новости: хорошая и плохая. Хорошая заключается в том, что вам не нужно активировать расширение modrewrite. А плохая новость — некоторые узлы неправильно работают с этой техникой. Если это так и сервер возвращает ошибку 404 ("Файл не найден") при переходе по любой ссылке к главной странице, вам нужно активировать опцию Использовать mod rewrite. Если этот параметр включен, URL будут форматироваться немного иначе, чем было показано ранее:
http://w3vw.example.com/home/47-joomla-overview
Настройка mod_rewrite в Apache
Первым делом нужно проверить, доступен ли mod rewrite на вашем сервере. Определить это можно путем выполнения функции phpinfoO (см. гчаву 3 для более подробной информации). Если расширение mod rewrite доступно, вы его увидите в списке модулей Apache (рис. 12.2).
apache
APACHEJHCLUDEAPACHEJHCLUDEno-a/ueno-a/ue
APACHEJHCLUDE
APACHEJHCLUDE
no-a/ue
no-a/ue
APACHE_TARGET
Apache VersionApache VersionApacheApache
Apache Version
Apache Version
Apache
Apache
1033710010337100Apache Release
10337100
10337100
Apache API
Version
Hostnaine:PoitUser Gr ottp Max RequestsHostnaine:PoitUser Gr ottp Max RequestsThiieontsServer RootLoaded ModulesThiieontsServer RootLoaded Modulesww die-5 v j.uaOO
Hostnaine:Poit
User Gr ottp Max Requests
Hostnaine:Poit
User Gr ottp Max Requests
Thiieonts
Server Root
Loaded Modules
Thiieonts
Server Root
Loaded Modules
Per C 200 -Ipoff- Max Per Coni ■1
] ~gnneston er • nep-AIVe 15 rcnnpd
mid_pt ' • dj ■ ; onn.inod-Sfrriidv.mod-Sei rnod^ped modjrpntpage, . i_ tn__ ... I_e»n.-^, i-iod_pn . mod_sjth_arr”
d_i= mod_re l_a.a-. mcj_"co™,r, mud_"! >rs.
-d_in , том_ 1 '” " _*, nod_.a d mod. nciude, modjr'o, nr id_‘ atus, rnod_- , i on, mod_mlme. "*-' „rekrer, mod_log_aQent L adJog_ int^тоц_ек.,,mod_vho»t_alia=, 1>Ян_сог»
Рис. 12.2 Область Loaded Modules вывода phpinfo ()должна содержать строку mod_rewrite
Для активации этого модуля на вашем Apache-сервере откройте файл конфигурации httpd.conf. Если модуль не загружен, вы найдете следующую строку:
#LoadModule rewrite_module nodules/mod_rewrite.so
Для активации модуля следует раскомментировать строку, удалив в ее начале решетку (#). После этого вам нужно добавить директиву, включающую этот модуль:
RewriteEngine On
Для тестирования модуля modrewrite вам нужно добавить rewrite-команду (команду перезаписи пути). Например, вы можете добавить альтернативный путь \myadmin к каталогу интерфейса администратора Joomla! — \administrator. В файле httpd.conf сразу после строки, включающей mod rewrite (RewriteEngine), добавьте следующий код:
RewriteRule myadmin/(.*) /Administrator/$1 [PT]
Перезапустите Apache и попытайтесь обратиться к каталогу \myadmin в вашем браузере
http://localhost/myadmin/
Если Joomla! установлена в корневом каталоге Web-сервера, ссылка \myadmin должна отобразить форму входа в интерфейс администратора Joomla!. Если вы хотите отслеживать маппинг пути, то можете попросить Apache записывать все перенаправления в журнал. Просто добавьте две следующие строки в ваш httpd.conf:
RewriteLog "С:/rewrite.log"
RewriteLogLevel 9
Включив модуль mod rewrite, вы активировали необходимую Joomla! маршрутизацию.
Активация файла .htaccess
Чтобы разрешить Apache правильно обрабатывать URL в формате SEE, вам нужно создать пользовательский файл htaccess в корневом каталоге Web- сервера. Инсталляция Joomla! уже содержит файл, необходимый серверу Apache.
Этот файл называется htaccess.txt и находится в корневом каталоге вашего Joomla’.-сайта. Чтобы разрешить Joomla! использовать mod rewrite, вам нужно переименовать этот файл в .htaccess (или ht.acl в Windows). После этого нужно перезапустить Apache
Примечание
В Windows Проводник не может переименовать файловое имя, состоящее только из одного расширения (в .htaccess). Чтобы обойти это ограничение, можно использовать командную строку, но есть более элегантное решение Откройте файл httpd.conf в текстовом редакторе и добавьте в него следующую строку:
AccessFileName ht.acl .htaccess
QpenB*^*ch Eng ne FriendlyAdministration| * Menage friend у RL*^ Liel Friendly URL*Hew Fi loudly URL Q Delete AM ll ipubUshod o Delete AM itwaIW О Delete AU. $> мапеде 1:1»* ^ Uwt S**»I $ 3trtigie Sitemap■ Goo | e SitemapGenerate XMLView the XML He*• UJK«StW«QpenB*^*ch Eng ne FriendlyAdministration| * Menage friend у RL*^ Liel Friendly URL*Hew Fi loudly URL Q Delete AM ll ipubUshod o Delete AM itwaIW О Delete AU. $> мапеде 1:1»* ^ Uwt S**»I $ 3trtigie Sitemap■ Goo | e SitemapGenerate XMLView the XML He*• UJK«StW«^ SEO AveLtarit^] Google Poekton Pesuha0] Google Page Rank^ Link Populai My^ Keyword Density^ Keywoid EditorCheck L inka^ Mrt^Aij Gener .ftoi^ SEO AveLtarit^] Google Poekton Pesuha0] Google Page Rank^ Link Populai My^ Keyword Density^ Keywoid EditorCheck L inka^ Mrt^Aij Gener .ftoiOpenSEF ?.O.O-RC6_SP2 for Joomla? 1 0.1 Writen by The CvenSEF Project Team (Info®open-3e1.org) Copyright © 2004-2006 Xaneon Development & The OpenSEF Protect Al rights reservedOpenSEF ?.O.O-RC6_SP2 for Joomla? 1 0.1 Writen by The CvenSEF Project Team (Info®open-3e1.org) Copyright © 2004-2006 Xaneon Development & The OpenSEF Protect Al rights reservedРис. 12.3. Панель управления OpeSEF, предоставляющая доступ ко всем функциям компонентаРис. 12.3. Панель управления OpeSEF, предоставляющая доступ ко всем функциям компонента
Qpen
B*^*ch Eng ne Friendly
Administration
| * Menage friend у RL*^ Liel Friendly URL*
Hew Fi loudly URL Q Delete AM ll ipubUshod o Delete AM itwaIW О Delete AU
. $> мапеде 1:1»* ^ Uwt S**»
I $ 3trtigie Sitemap
■ Goo | e Sitemap
Generate XML
View the XML He
*• UJK«StW«
Qpen
B*^*ch Eng ne Friendly
Administration
| * Menage friend у RL*^ Liel Friendly URL*
Hew Fi loudly URL Q Delete AM ll ipubUshod o Delete AM itwaIW О Delete AU
. $> мапеде 1:1»* ^ Uwt S**»
I $ 3trtigie Sitemap
■ Goo | e Sitemap
Generate XML
View the XML He
*• UJK«StW«
^ SEO AveLtarit
^] Google Poekton Pesuha
0] Google Page Rank
^ Link Populai My
^ Keyword Density
^ Keywoid Editor
Check L inka
^ Mrt^Aij Gener .ftoi
^ SEO AveLtarit
^] Google Poekton Pesuha
0] Google Page Rank
^ Link Populai My
^ Keyword Density
^ Keywoid Editor
Check L inka
^ Mrt^Aij Gener .ftoi
OpenSEF ?.O.O-RC6_SP2 for Joomla? 1 0.1 Writen by The CvenSEF Project Team (Info®open-3e1.org) Copyright © 2004-2006 Xaneon Development & The OpenSEF Protect Al rights reserved
OpenSEF ?.O.O-RC6_SP2 for Joomla? 1 0.1 Writen by The CvenSEF Project Team (Info®open-3e1.org) Copyright © 2004-2006 Xaneon Development & The OpenSEF Protect Al rights reserved
Рис. 12.3. Панель управления OpeSEF, предоставляющая доступ ко всем функциям компонента
Рис. 12.3. Панель управления OpeSEF, предоставляющая доступ ко всем функциям компонента
После этого перезапустите сервер. Добавленная директива разрешает вместо файла .htaccess использовать файл ht.acl
Просмотрите файл .htaccess. В нем сказано, что некоторые директивы этого фала могут вызывать ошибку. В частности проблемы могут быть со следующей директивой:
Options +FollowSymLinks
Данная директива может быть уже установлена в другой части конфигурации Apache (на удаленном сервере). Если данная директива вызывает ошибку при перезапуске Apache, вам нужно закомментировать ее (добавить # в начале строки) и перезапустить Apache.
Использование посторонних SEF-плагинов
Для Joomla! разработано множество SEF-плагинов, доступных на сайте расширений Joomla! — http://extcnsions.jooinla.org, но наиболее популярен OpenSEF. Стандартные опции SEF удобны, но URL, генерируемые с их помощью, все еще не так наглядны, как нам бы этого хотелось. Дополнительные расширения позволяют вам точно определить URL, появляющиеся на определенной странице.
Inttnihtion succeeded1
ktst^iaiton Successful
Thank you tor hsteAng OpenSEF for Joorrta1 Ude that the advanced S^ functionaity provided by the component t$ at tne moment not yet enabled In order to give you ft chance to cusiomiTe the friendly URLs to your Wing »з togetatertad please review ihe conti^jrabonto tel you preferences and enable CpenSEF
After that, you can proceed to the Tools one Unties secoon Io import you existing inertly URLs nt you've previously used a compatible product such as Xaneon Alias Manager) and to check ipr avalabfe updates and add-ons for OpenSEF
_'^ About OpenSEF for Joomla!
Вы можете загрузить OpenSEF с сайта http://forum.j-prosolution.com /opensef. После его установки вам нужно настроить его. Выберите команду OpenSEF из меню Компоненты, вы увидите панель управления, позволяющую настроить все функции компонента (рис. 12.3).
Вы можете установить дружественные URL для любого URL используемого системой Joomla! (рис. 12.4). Чтобы установить ваш собственный маппинг URL, вам нужно открыть контент, для которого вы хотите создать дружественный адрес, записать его адрес и добавить его вместе с SEF-адресом.
Рис. 12 4 Вы можете установить SEF-адреса для всех адресов Joomla!
Внимание/
Некоторые посторонние SEF-расширения используют MySQL-таблицу для конвертирования URL между Joomla! URL и SEF URL. Поэтому, если на сайте много страниц (например, установлен заполненный календарь событий) это может негативно сказаться на производительности сервера. Убедитесь, что вы указали страницы, которые должны игнорироваться расширением.
Использование заголовков, МЕТА-тегов и ключевых слов
У Joomla! есть функции, позволяющие поисковой машине надлежащим образом распознавать страницы вашего сайта. Два наиболее важных параметра
можно найти на вкладке Мета-данные, которая доступна при редактировании или создании статьи. Параметр Описание генерирует тег Description в HTML-коде статьи (рис. 12.5), используемый большинством поисковых систем для получения общей информации о Web-странице. Описание страницы вместе с ее заголовком служит для установки наиболее уместной информации о странице. Используя эту информацию, поисковая машина зарегистрирует страницу в своей базе данных под наиболее релевантными (уместными) ключевыми словами.
Параметры Статьи
Параметры - Расширенные
•~ Мета данные
Описание
Ключевые
слова
ГЬр-ые»р Robots
Amhoi
Рис. 12.5. Расширенные параметры статьи содержат метаданные,используемые поисковыми машинами
Параметр Ключевые слова позволяет задать ключевые слова страницы. Ключевые слова очень важны для классификации статьи. Поскольку спаммеры искажают эту информацию (путем добавления популярных ключевых слов, не имеющих отношения к странице), поисковые машины определяют, стоит ли использовать ключевые слова или игнорировать их. Тем не менее, ключевые слова предоставляют дополнительную информацию и помогают локальной поисковой системе Joomla! находить статьи, соответствующие запросу пользователя. Поэтому благоразумно потратить немного времени и указать ключевые слова для каждой статьи.
Заголовок страницы — это самый часто пропускаемый начинающими Web- мастерами аспект SEO. В Интернете есть много Web-сайтов, у страниц которых нет заголовков, заголовки дублируются или не соответствуют содержимому страницы. Но многие поисковые машины считают заголовок чуть ли не основным элементом страницы, особенно, если он совпадает с одним из главных заголовков в тексте страницы. Поэтому убедитесь, что заголовки ваших страниц установлены и соответствуют содержимому страницы.
Карты сайта
Добавление карты сайта— это отличный способ убедиться в том, что поисковый паук найдет и проиндексирует отдельные страницы вашего сайта. Поисковые пауки понимают карты сайта, поэтому они будут их использовать при индексировании вашего сайта.
Однако длина карты сайта ограничена Длинные карты сайта (содержащие более 100 ссылок на одной странице) помещаются в очередь поискового паука— обрабатываются первые 100 ссылок, а остальные ссылки помещаются в очередь для дальнейшего посещения, которое, возможно, произойдет через пару месяцев. Для Joomla! разработаны следующие популярные карты сайта: Joomap, Google Sitemap Generator и SED Service Map.
Joomap
Joomap — лучший генератор карты сайта для Joomla!. Его можно загрузить с сайта http://joomlacode.org/df/project/joomap/frs. Joomap не только обеспечивает полную карту сайта с разделами и категориями, он также позволяет добавлять в карту сайта товары из каталога VirtueMap (см. главу 11), если вы его, конечно, используете. Он может выводить карту сайта так же, как это делает Google Sitemap XML.
Google Sitemap Generator
Если вы хотите "заточить" ваш сайт под поисковую машину Google, вам нужно использовать Google Sitemap Generator. Генератор карты сайта написан на языке Python и может быть скачан с сайта Google — www.google.com/webmasters/tools/docs/en/sitemap-generator.xml.
В Интернете есть много сайтов, позволяющих выполнять Google Sitemap Generator для создания карты вашего сайта. Например, сайт XML-Sitemaps (www.xml-sitemaps.com) позволяет вам пошагово сгенерировать карту вашего Joomlal-сайта. Он создаст XML-файл, который может использоваться Joomla! для отображения карты вашего сайта. Сайт XML Sitemaps может также сгенерировать карту сайта в текстовом формате, используемом Yahoo.
SEF Service Map
Компонент SEF Service Map (http://fun.kubera.org) создает карту сайта динамически. Он также содержит генераторы Google Sitemap Generator и Yahoo (генератор карты в текстовом режиме) для использования соответствующими поисковыми машинами. Этот компонент совместим со всеми компонентами, устанавливаемыми по умолчанию, и со следующими дополнительными ком-
понентами: Fireboard, Joomlaboard, SMF, DOCMan, Remository, JCal Pro, ExtCalendar 2, RSGalIery2, Zoom Gallery, SOBI2 и VirtueMart.
SEF Service Map помещает в карту даже RSS-заголовки, ссылки и контакты. К тому же этот компонент поддерживает кэширование, поэтому карта не генерируется каждый раз заново, что экономит ресурсы сервера. Компонент обладает многоязычной поддержкой.
Одна из наиболее полезных функций SEF Service Мар — это возможность исключить некоторые элементы меню или даже целые меню из карты сайта. Данная опция позволяет вам исключить из карты сайта нежелательные страницы.
Навигационная строка
Навигационная строка (в английской литературе— breadcrumbs)— это набор ссылок, показывающий путь к текущий странице относительно остального сайта. Например, если вы сейчас просматриваете статью А, которая находится в категории В, а она, в свою очередь, в разделе С, навигационная строка покажет ссылки на раздел и на категорию, в которых находится статья. Это позволяет посетителю перемещаться вверх по иерархии сайта, часто для просмотра контента такого же типа. Навигационная строка будет показана на странице примерно так:
Ноте —> Раздел С -> Категория В —» Статья А
Навигационная строка также важна для SEO, предоставляя поисковой машину понятное представление о структуре вашего сайта. Они также предоставляют внутренние ссылки, которые обладают небольшим, но важным эффектом при оценке отдельных страниц сайта в индексе паука.
Независимо от используемого шаблона, убедитесь, что навигационная строка имеется на странице. В Joomla! она отображается как модуль (mod breadcrumbs) в верхней части каждой страницы (в большинстве шаблонов), как показано на рис. 12.6.
По умолчанию модуль настроен для появления в позиции breadcrumbs текущего шаблона. Если в шаблоне нет такой позиции, тогда навигационная строка не будет отображена. Если это так, вам нужно самостоятельно добавить в модуль данную позицию.
Чтобы сделать это, откройте файл index.php вашего шаблона. Вы можете отредактировать шаблон в вашем любимом текстовом редакторе или же использовать Менеджер шаблонов (сначала выберите шаблон, в который вы хотите добавить навигационную строку, а затем нажмите кнопку Редактировать HTML, как показано на рис. 12.7). Вы увидите экран, отображающий PHP/HTML-код главной страницы шаблона.
о проекте ] -о&. гео 1 рекламо проекте ] -о&. гео 1 рекламHvme ♦ Пфл раямирг ♦ Профессиональное программ роняй г на PHP * Описание книгиHvme ♦ Пфл раямирг ♦ Профессиональное программ роняй г на PHP * Описание книгиОписание книги
о проекте ] -о&. гео 1 реклам
о проекте ] -о&. гео 1 реклам
Hvme ♦ Пфл раямирг ♦ Профессиональное программ роняй г на PHP * Описание книги
Hvme ♦ Пфл раямирг ♦ Профессиональное программ роняй г на PHP * Описание книги
Детор: Administrator
14 04.2008 16:00
Шаблон: [Правка]Шаблон: [Правка]Просмотр Редактир ватьНТМк Реда тироса™ С«мниПросмотр Редактир ватьНТМк Реда тироса™ С«мниПодробностиНа ««мни: Шаолон RHUK МПкуллуПодробностиНа ««мни: Шаолон RHUK МПкуллуПараметрыФайл параметро t$ Aemp!atesA-huk_milky'vПараметрыФайл параметро t$ Aemp!atesA-huk_milky'vОписе ние: MilkyWay но в ыи ш аблон д л я Joomla» Аккуратный дизайн этого шаблона делает его очень лёгким и быстрым.Описе ние: MilkyWay но в ыи ш аблон д л я Joomla» Аккуратный дизайн этого шаблона делает его очень лёгким и быстрым.Цветовая схемаЦветовая схемаСинийСинийФоновое оформлениеФоновое оформлениеСинийСинийРис. 12.6. Навигационная строка
Шаблон: [Правка]
Шаблон: [Правка]
Просмотр Редактир ватьНТМк Реда тироса™ С«мни
Просмотр Редактир ватьНТМк Реда тироса™ С«мни
Подробности
На ««мни: Шаолон RHUK МПкуллу
Подробности
На ««мни: Шаолон RHUK МПкуллу
Параметры
Файл параметро t$ Aemp!atesA-huk_milky'v
Параметры
Файл параметро t$ Aemp!atesA-huk_milky'v
Описе ние: MilkyWay но в ыи ш аблон д л я Joomla» Аккуратный дизайн этого шаблона делает его очень лёгким и быстрым.
Описе ние: MilkyWay но в ыи ш аблон д л я Joomla» Аккуратный дизайн этого шаблона делает его очень лёгким и быстрым.
Цветовая схема
Цветовая схема
Синий
Синий
Фоновое оформление
Фоновое оформление
Синий
Синий
Ширина шаблонаШирина шаблонаПлдеаю!Плдеаю!Привязка к пунктам меню
Ширина шаблона
Ширина шаблона
Плдеаю!
Плдеаю!
Меню: Невозможно назначить шаблон по умолчанию
Рис. 12.7. Нажмите кнопку Редактировать HTML для редактирования кодаосновного файла шаблона
Хорошая идея — поместить навигационную строку вверху страницы. В Joomla!- шаблоне по умолчанию модуль появляется слева от модуля поиска (в коде это позиция user4). В следующем PHP-листинге показана ссылка, отображающая навигационную строку:
<div id="search">
<jdoc:include type="modules" name="user4" />
</div>
<div id="pathway">
<jdoc:include type="niodule" name="breadcrumbs" />
</div>
<div class="clr"x/div>
14 Зак 468
Если вы поместите ссылку модуля в соответствующее место кода шаблона, на сайте появится навигационная строка. Посмотрите на страницу и убедитесь, что она появилась в надлежащей позиции. Для ее правильного размещения нужно просматривать вашу главную страницу при редактировании шаблона.
Для предварительного просмотра главной страницы вы можете использовать кнопку Просмотр (она расположена на том же экране, что и кнопка Редак- гировагь HTML). Она отображает текущий шаблон с фиктивным содержимым и отмечает позиции размещения модулей. Предварительный просмотр позволяет определить расположение модуля навигационной строки и правильно разместить его, если вы добавляете его в существующий шаблон.
Создание SEF-шаблона для Joomla!
В гчаве б мы создали простой Joomlai-шаблон, отображающий с помощью CSS два столбца. Используя подобный CSS-код, вы можете сделать отображение более дружественным к поисковым машинам путем перестроения столбцов шаблона. Новый шаблон улучшит видимость центральной части (контента) каждой страницы вашего сайта.
Когда паук поисковой машины индексирует Web-сайт, сначала индексируется текст, находящийся ближе к началу файла. В двух- или в трехстолбцовом шаблоне сначала в HTML-коде появляется навигационная панель, за которой следует центральный столбец, содержащий контент текущей страницы. Это не очень идеальная ситуация, поскольку навигация не является самым важным элементом страницы — центральная часть содержит более важную информацию.
Для определения столбцов наш шаблон использует следующий код: tcoll (
float:left;width:20%;
background:#244223; padding: Юрх;
#- 012 {
float:left;width: 75% ;
border:3px solid #244223;
background:#58al55; padding: Юрх;
}
Эти стили выглядят логично и правильно отображают контент. Однако столбец 1 (отображающий навигацию) появляется в исходном коде первым
В идеале нужно создать такую таблицу стилей, в которой бы столбец 2 появлялся в исходном коде первым, но страница отображалась бы корректно (сначала навигация, а потом — текст страницы, т. е. наоборот). Должного эффекта можно добиться путем использования элемента container.
Если вы создаете контейнер, стиль для столбца 2 появится в коде первым, по будет ассоциирован с правой частью контейнера. Затем в исходном коде появится столбец 1, он будет размещен слева. Как видите, все будет отображаться так, как нужно. Измените таблицы стилей в вашем CSS-файле, добавив СТИЛИ container И myclear:
div#logo {
width: 110%; height: lOOpx;
margin-left: -lOpx;
margin-bottom: lOpx;
background: url(../images/LSlogo.jpg) left no-repeat;
border: Ipx solid #244223 ; padding: Opx;
}
#coll (
float:left;width:2 0%;
display:inline;
background:#244223; padding: lOpx;
)
#col2 (
float:right;width:75%;
display:inline;
border:3px solid #244223;
background:#58al55; padding: lOpx;
}
ttcontainer {
float:left;width:85%;
display:iniine;
#myclear { clear:both;
}
Также вы должны отредактировать ваш index.php, чтобы столбец со12 отображался первым. Измененный код выделен жирным:
c?php echo 'c?xml version="1.0" encoding="utf-8"?' . *>'; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtmll/DTD/xhtinll-transitional.dtd">
chtml xmlns="http://www.w3.org/1999/xhtml"
lang="c?php echo —LANGUAGE; ?>" xml:lang="c?php echo —LANGUAGE; ?>"> <head>
<jdoc:include type="head" />
clink rel="stylesheet" href="templates/_system/css/general.css" type="text/css" />
clink rel="stylesheet" href="templates/
<?php echo $this->template ?>/css/template.css" type="text/css" />
c/head>
cbody id="page_bg">
cjdoc:include type="message" />
Cdiv id="logo">SnbspC/div>
Cdiv id="container">
Cdiv id="col2">
Cjdoc:include type="component" />
C/div>
Cdiv id="coll">
Cjdoc:include type="modules" name="left" style="xhtml" />
C/div>
Cdiv class="myclear"> C/div>
C/div>
cjdoc:include type="modules" name="debug" />
c/body>
c/html>
Как видно из кода, оба столбца инкапсулированы в структуру container. Сначала появляется столбец 2, содержащий контент страницы, и поэтому он будет первым проиндексирован пауком.
Общие методы оптимизации
Joomla! содержит много SEO-функций. Однако для поисковой оптимизации можно использовать другие технологии, не относящиеся к Joomla!. Все эти
методы работают на сайте любого типа — как на динамическом, так и на статическом.
Проблемы JavaScript, Flash и Ajax
Постоянно растет количество узлов, использующих JavaScript для организации динамического взаимодействия (например, выпадающие меню) или технологии сообщества вроде Ajax для динамического получения информации (без перезагрузки страницы). Все эти технологии создают динамичный и очень дружественный пользовательский интерфейс, но кроме этого они также создают проблемы при индексировании страниц.
Например, у обычного Joomlal-сайта меню— это простой HTML-список ссылок, который с легкостью распознается поисковым пауком, и он может посетить остальные страницы сайта. В случае с JavaScript-меню ссылка появляется при наведении указателя мыши на меню. Но если поисковый паук не выполняет JavaScript-код, как ему узнать, какие ссылки доступны?
Аналогичная ситуация с Flash-сайтом: ведь весь его контент скрыт внутри SWF-файла, который пауки не могут эффективно обрабатывать. Поисковая машина не может прочитать и выполнить Flash-код, поэтому весь контент внутри Flash-ролика останется невидимым пауку.
Если вы заботитесь о поисковой оптимизации, отличная идея создать не- Flash-версию своего сайта. Без параллельной HTML-версии Flash-данных поисковая машина не сможет каталогизировать контент сайта или ссылки, ссылающиеся на контент.
Соотношение "HTML/текст"
Один из методов оценки контента поисковыми машинами — это вычисления соотношения "HTML/текст". Это соотношение помогает понять, содержит ли страница больше HTML-кода (например, много таблиц или много JavaScript- кода) или актуального текста. Чем ниже это соотношение, тем более важным считается текст.
Это одна из причин размещать ваш CSS- и JavaScript-код во внешних файлах. Поисковые машины не просматривают внешние файлы при вычислении соотношения, считая, что контент в главном файле важнее, чем все, что находится в море дополнительного кода.
Эмулируем работу поискового паука
Большинство функций поисковых пауков — коммерческая тайна, но вы можете понять, как работает паук путем эмуляции его работы на примере собст-
венного сайта. Для этого существует несколько бесплатных Web-пауков, ко- юрые можно применять для сканирования и анализа вашего сайта. Наиболее популярный из них— бесплатно распространяемый Pavuk Web Spider and Performance Measure, доступный по адресу http://sourceforge.net /projects/pavuk (программа написана на Java, поэтому кроссплатформенна).
Если у вас Windows, вы можете попробовать Xenu's Link Sleuth, доступный по адресу: http://home.snafu.de/tilman/xenulink.html.
Xenu — быстро и полностью обойдет весь ваш сайт и предоставит много информации о нем (рис. 12.8). Эта утилита очень полезна, поскольку показывают любые проблемы с вашим сайтом, в том числе битые ссылки и отсутствующие картинки. Программа создаст полный отчет обо всех битых ссылках на страницах вашего сайта.
Рис. 12.8. Xenu обойдет все страницы вашего сайта и обнаружит битые ссылки или отсутствующие файлы
Одна из самых полезных колонок в отчете Xenu —- это колонка Duration, означающая, как программа пыталась получить файл по ссылке. Анализируя эту колонку, вы узнаете, где происходит задержка при доступе к сайту (возможно, "тормозят" какие-то расширения Joomla!).
11рограмма также генерирует отличный отчет о контенте сайта. Внизу отчета >удет выведена итоговая информация — что-то вроде этого:
All pages, by result type: ok 165 URLs 83.76% not found 10 URLs 5.08% server error 20 URLs 10.15% skip type 2 URLs 1.02% Total 197 URLs 100.00%
Если Xenu обошел все страницы сайта, в большинстве случаев у пауков поисковой машины не будет проблем с индексированием вашего сайта.
Проверка ранга страницы
Google при оценке важности сайта использует специальное значение, называемое рангом страницы (page rank). Каждой странице сайта (ранг вычисляется отдельно для каждой страницы) присваивается значение от 0 до 10. Число 0 означает, что Google еще не проиндексировал сайт. У новых страниц часто ранг 2 или 3, а у хорошо известных сайтов — ранг от 6 до 9.
Для получения информации о ранге сайта можно установить Google Toolbar (рис. 12.9). Используя панель Google, вы узнаете важность каждого сайта в Интернете.
Рис. 12.9. Панель Google показывает ранг страницы
Как только Google выпустил свою систему ранга страницы, она стала считаться самой важной. В настоящее время имеются другие методы оценки, используемые другими поисковыми серверами, поэтому рейтинг Google стал менее важным Однако он все еще позволяет оценить популярность страницы в Google. Ранг Google может использоваться для оценки вашего сайта, а также похожих по тематике или конкурирующих сайтов.
Использование ключевых слов
Список ключевых слов должен содержать всю важную информацию о странице. Даже Web-страница с вашей контактной информацией должна содержать ключевые слова— синонимы основных терминов, относящихся к контенту вашего сайта. Например, страница по ссудам может содержать следующие ключевые слова: доверенность, активы, кредитор, залог и т. д.
Из-за спаммеров, злоупотребляющих этой технологий, поисковые пауки редко обращают внимание на список ключевых слов, указанный в метаданных. Для поисковой оптимизации список ключевых слов не очень важен — вы можете создать его разве что для себя (для локальной поисковой машины).
Список ключевых слов можно использовать только для того, чтобы убедиться, что все ключевые слова есть в контенте статьи. Если все важные ключевые слова включены в заголовки и тело статьи, поисковая машина оценит релевантность страницы по отношению к указанным терминам.
Выборочное исключение страниц сайта из поиска
Большинство Web-сайтов доступно всем желающим. Однако некоторые сайты или отдельные страницы этих сайтов должны оставаться невидимыми Эти страницы часто доступны только уполномоченному персоналу, когда URL предоставляется индивидуально, и нет необходимости размещать ссылку на него в поисковой машине.
Типичный пример такого сайта — это сайт, занимающийся оптовыми поставками. Доступ к сайту разрешен только определенным менеджерам, которым назначены имена пользователей и пароли для доступа к сайту, поэтому нет никакой причины афишировать URL сайта всему миру. Если вы запретите индексирование такого сайта, то уменьшите случайный и нежелательный трафик, не будете вводить в заблуждение покупателей (в частности розничных клиентов, которые найдут ваш сайт и попытаются войти) и оградите сайт от чрезмерного внимания хакеров.
Вместо исключения из поиска всего сайта вы можете создать список отдельных страниц и каталогов, которые будут проигнорированы пауком. Создавая список исключенных страниц, вы можете скрыть содержание, которое адресовано только определенным посетителям сайта. Например, вы хотите создать калькулятор залога для местных (из вашего географического региона) пользователей. Если ссылка на этот калькулятор появится в поисковой машине, это привлечет на сайт посетителей со всего мира, а им ваш калькулятор неактуален, поэтому они не могут считаться вашими потенциальными клиентами, а только израсходуют трафик вашего сайта.
Исключаемые из поиска файлы и каталоги должны быть перечислены в текстовом файле robot.txt, который должен быть расположен в корневом каталоге сайта. Файл содержит список полей, не чувствительных к регистру символов. Знак решетки (#) служит для добавления комментариев в этот файл, которые будут проигнорированы пауком. Поле User-agent может использоваться для уточнения паука (например, вы можете указать только паука Yahoo), для которого предназначен этот файл. В большинстве случаев данное поле устанавливается в * для выбора всех пауков.
Например, файл robot.txt, запрещающий индексирование содержимого форума и файла client! isthtm, будет выглядеть так:
Файл исключений для http://www.exarnple.com/
User-agent: *
Disallow: /forum# Не просматривать каталог /forum
Disallow: /clientlist.htm # Не просматривать список клиентов
Поле Disallow исключает из поиска каталог \forum со всеми его файлами и подкаталогами. Иногда нужно исключить из поиска только главный файл (index.html, index.php, default.htm, index.htm или любой другой, который используется в качестве index-файла на вашем сервере), укажите дополнительный слэш (/) после имени каталога:
Disallow: /forum/# Не индексировать только index-файл
К сожалению, вы не можете делать исключение по строке запроса, поэтому для использования robots.txt вам нужно включить Joomlai-опцию SEF (параметр Включить SEO) для исключения Web-сайта из поиска.
Стратегия размещения ссылок
Очень полезно выбрать правильную стратегию ссылок. Чем больше ссылок с других важных сайтов указывает на ваш сайт, тем более важным считает ваш сайт поисковая машина.
Например, ESPN — очень важный сайт для спортивных фанатов. Если у вас сайт, посвященный футболу, ссылка с сайта ESPN поднимет ваш рейтинг в любых запросах, связанных со спортом. Ссылка с сайта очень популярного производителя одежды не так поможет спортивному сайту, как ссылка с ESPN, даже если сайт производителя одежды более популярен.
Аналогично, ссылка с маленького, непопулярного сайта не добавит вам столько рейтинга, сколько ссылка с популярного сайта. Понимая, как ссылки с других сайтов могут влиять на рейтинг вашего сайта, вы можете разработать правильную стратегию ссылок и сосредоточить свои усилия на получении ссылок с важных для вас сайтов.
Рассмотрим несколько способов получения ссылок.
Предложите обмен ссылками— если у вас есть электронный адрес администратора популярного сайта, вы можете предложить ему обменяться ссылками. Но для этого ваш сайт должен иметь достаточно контента или же примерно такой же рейтинг, как и у другого сайта.
Напишите статьи для публикаг^ии в сети— многочисленные сайты (например, www.ezinearticles.com и www.onlypub.com), которые опубликуют ваши статьи, установят ссылки на ваш сайт. Написание статьи по теме, связанной с вашим сайтом — прекрасный способ продвинуть себя как эксперта в вашей области.
♦ Установите в качестве вашей подписи на форумах адрес вашего сайта — в сети есть много форумов, посвященные практически любым темам. Часто на форумах новички задают вопросы. Вы можете выступить как эксперт и ответить на них. Для форумов характерно указание адреса своего сайта в качестве своей подписи на форуме. Но не нужно спамить на форумах! Ваша реклама будет попросту удалена. А вот если вы будете отвечать на вопросы других пользователей форума, ваша ссылка не будет раздражать других участников форума, и вы сможете сгенерировать приток трафика на свой сайт.
Избегайте поискового спама!
Большинство советов по поисковой оптимизации вашего сайта также полезно при создании хорошо организованного сайта для ваших посетителей. Но есть аспекты, которые могут понизить рейтинг сайта и после реализации которых ваш сайт попадет в черный список поисковых машин.
Вам нужно избегать поискового спама. Это форма спама подразумевает размещения на странице сотни ключевых слов (при этом используется небольшой размер шрифта или же вообще невидимый текст), никак не связанных с тематикой вашего сайта. Раньше поисковые машины были сбиты с толку и повышали рейтинг страницы. Но не сейчас. Если поисковая машина определит, что ваш сайт пытается с помощью данного способа манипулировать рейтингом, ваша страница будет оштрафована в индексе поиска. Избегайте поискового спама!
Резюме
Нужно приложить некоторые усилия, чтобы у вашего сайта был высокий рейтинг при поиске информации, релевантной к вашему сайту. Joomla! об- ле1 чает поисковую оптимизацию, и вы должны воспользоваться ее функциями. Несмотря на небольшие сложности с конфигурацией, самым первом шагом процесса оптимизации должно стать включение Joomlai-параметра Включить SEO для генерации системой дружественных к поисковым машинам URL. Чем быстрее вы активируете эту опцию, тем быстрее поисковые машины получат надлежащий список URL статей вашего сайта. Данная опция значительно увеличит эффект вашего присутствия в сети, и она стоит всех трудностей. с которыми вы столкнетесь при настройке вашего сервера.
До этого вы использовали расширения, написанные другими разработчиками: от интернет-магазина до SEF-расширений. В следующей главе вы узнаете, как создать собственные модули и компоненты, чтобы добавить в Joomla! любую необходимую вам функцию.
ГЛАВА 13
Создание расширений
Joomla! дружественна не только к администраторам, но и к разработчикам. Создание расширений (модулей, компонентов или плагинов)— настоящее удовольствие для разработчика. Поскольку Joomla! заботится о выводе интерфейса пользователя, имеет встроенные функции для доступа к базе данных, обеспечивает безопасность доступа, создание расширений тля Joomla! намного проще, чем создание отдельного РНР-приложения.
В этой главе мы рассмотрим создание трех типов расширений: модуля, модуля администратора и компонента. Процесс создания этих расширений похож, как мы убедимся в этой главе.
Разработка модуля
Как было отмечено в главе 7, модули используются преимущественно для отображения информации. В качестве демонстрации этой возможности модуля мы создадим модуль, выводящий простое приветствие. Наш модуль мы назовем modhellofrom, и у него будет один параметр— location (месторасположение), который можно будет установить в Менеджере модулей, и он будет выводиться в приветствии. Как показано на рис. 13.1, модуль будет отображаться в вверху левого столбца.
После установки файлы модуля будут записаны в каталог \modules. Имя каждого подкаталога в этом каталоге совпадает с названием модуля. Все файлы модуля хранятся в его подкаталоге. Позже, когда вы будете создавать компонент, вы заметите, что инсталляционный файл компонента не будет скопирован в соответствующий компоненту подкаталог.
Совет
После разработки модуля самый простой способ использовать его— сжать в архив и установить в Joomla!. В процессе инсталляции будут внесены все необ-
ходимые изменения в базу данных. После установки вы можете редактировать код модуля и вспомогательные файлы в каталоге \modules вашего сайта. После внесения изменения в код модуля нужно нажать кнопку Обновить в окне браузера, чтобы перезагрузить модуль.
• What is an Adjustab-e Rate Mo• My Frst Article• CoeJdais fur Two• What is an Adjustab-e Rate Mo• My Frst Article• CoeJdais fur TwoCocktails for TwoCocktails for TwoJoomla! =
• What is an Adjustab-e Rate Mo
• My Frst Article
• CoeJdais fur Two
• What is an Adjustab-e Rate Mo
• My Frst Article
• CoeJdais fur Two
Cocktails for Two
Cocktails for Two
Home
Helio from Los Angefe^ CA. Right now. It ts ^alurdoy, March 17th. 2007
Main ««hi
^«r»»m
Рис. 13.1. Модуль modjiellofrom также будет отображать дату в приветствии
Структура модуля
Каждый пакет модуля содержит как минимум два файла: файл кода модуля и XML-файл описания модуля. Файл кода— это PHP-сценарий, содержащий код модуля. XML-файл содержит все необходимые инсталлятору директивы, а также информацию о модуле. Также этот файл содержит описание параметров модуля, которые потом можно будет изменять с помощью Менеджера модулей.
Создайте каталог modjiellofrom на вашем локальном диске. Все файлы модуля будут помещены в этот каталог, а затем вы заархивируете его (можно использовать архиваторы ZIP и TAR) и установите с помощью Менеджера расширений. *
XML-файл модуля modjiellofrom
Для нашего модуля Hello From XML-файл будет содержать всю основную (директивы инсталлятора, названия модуля, перечень файлов), а также некоторую дополнительную (дата создания, версия, автор и т. д.) информацию о нашем модуле.
Создайте файл с именем mod hellofrom.xml и поместите его в каталог \mod_hellofrom и введите следующий код:
<?xml version="1.0" encoding="utf-8"?>
<install type="module" version="l.5.0">
<name>Hello From</name>
<author>Dan Rahmel</author>
<creationDate>July 2007</creationDate>
<copyright>(C) 2007 Dan Rahmel.
All rights reserved.</copyright>
<authorEmail>admin@joomlajumpstart.org</authorEmail>
<authorUrl>www.joomlajumpstart,org</authorUrl>
<version>l.0.0</version>
<description>Module that displays the date/time of
the server. <p /> Be sure to set the Location parameter
in the Module Manager.</description>
<files>
<filename module="mod_hellofrom">mod_hellofrom.php</filename>
</files>
<params>
<param name="location" type="text" default="Los Angeles, CA" label="Server Location" description="The location of the server." /> </params>
</install>
Файл описания начинается стандартным XML-тегом. Тег <install> описывает устанавливаемое расширение. Атрибут type задает тип расширения, в данном случае — это модуль (module). Атрибут version указывает, что данный модуль может запускаться в Joomla! версии 1.5 или выше.
Элемент <name> указывает имя нашего модуля, которое будет использоваться Joomla! после установки модуля. Из главы 7 вы узнали, что тип модуля подобен шаблону документа: экземпляр модуля, как документ, создается из него. Для нашего модуля тип модуля — modhellofrom, а экземпляр модуля будет называться Hello From. Текст из элемента <description> будет отображен после установки модуля, обычно он содержит инструкции по использованию модуля.
В элементе <f ilename> указывается имя модуля (атрибут module), которое будет сохранено в базе данных Joomla!, и будет использоваться для создания ссылок на модуль. Это имя также будет использоваться как тип модуля, когда вы будете создавать новые экземпляры модуля. Как только файл описания будет готов, можно приступить к РНР-файлу — ядру модуля.
PHP-файл
Главный файл модуля содержит весь PHP-код, выполняемый при вызове модуля. Код модуля похож на код обычной PHP-страницы, посылающей с помощью инструкции echo любой текст в браузер пользователя.
В начале каждого модуля нужно проверить, выполняется ли он системой Joomla! или запущен непосредственно. Это предотвратит попытки хакеров запустить расширение, зная его URL, используя некоторые параметры, которые, возможно, скомпрометируют ваш сайт. При выполнении модуля через Joomla! он получит надежную защиту.
Создайте файл modhellofrom.php и поместите его в каталог \mod_hellofrom. Код модуля приведен далее:
c’php
/*♦
* Qversion $Id: mod._hellofrom.php 5203 2007-07-17 02:45:14Z Danr $
* @copyright Copyright (C) 2007 Dan Rahmel. All rights reserved.
* Модуль отображает приветствие
// Запрещаем прямой доступ
defined( '_JEXEC ) or die( 'Restricted access' );
I/ Получаем местонахождение (установлено с помощью Менеджера модулей) $myLocation = $params->get(*location*, 0);
// Устанавливаем дату
$myDateTime = date("l, F dS, Y");
// Выводим приветствие
echo "<small>" . JText::_('Hello from ') . '<b>* , $myLocation . "</b>.";
echo JText: :_('* Right now, it is ") . $myDateTime .
JText::_(" here.") . "</smallxbr />";?>
Если вы знаете PHP, код модуля вам должен быть понятен. После проверки того, что сценарий выполняется в среде Joomla!, будет создана переменная $myLocation. Для этого используется метод get() объекта $params: мы получим значение параметра location, который был определен ранее в XML- файле.
Для второй переменной с именем $myDateTime устанавливаем значение — строку, содержащую отформатированную дату и время. Если вы хотите использовать данный модуль на своем сайте, нужно будет откорректировать время, если физическое местоположение Web-сервера, на котором находится
ваш сайт, не соответствует временной зоне места, указанного в парамефе location. После этого следуют две функции echo(), выводящие текст в браузер.
Обратите внимание: весь текст отправляется методу JText::_(). Этот меточ отправляет полученный текст Менеджеру языков. Если язык отличается от языка по умолчанию, Мейеджер языков (или JoomiFish) переводит текущий текст на выбранный язык, после чего перевод будет возвращен методу JText::_()- Если же язык текста и язык по умолчанию совпадают, просто будет возвращен тот же текст (перевод осуществляться не будет).
Использование этого метода позволит вашему расширению соответствовать функции интернационализации Joomla!: если перевод имеется в системе, расширение может выводить сообщения на разных языках, которые поддерживаются системой Joomla!.
Заархивируйте оба файла модуля в архив mod_hellofrom.zip. Для установки модуля откройте Менеджер расширений, выберите архив с модулем и установите его. После установки с помощью Менеджера модулей установите параметр location (рис. 13.2), после этого нажмите кнопку Сохранить для сохранения параметров модуля.
Если вы установили отображение модуля в левом столбце, отройте браузер. н вы увидите приветствие модуля. Если же вы не изменяли порядок модуля
в Менеджере модулей, чтобы модуль отображался первым, модуль появится в самом низу левого столбца.
Поздравляю! Вы только что создали ваше первое расширение. Однако этот примитивный модуль совсем не тот, который вам хочется разместить на реальном Joomla'.-сайте. Большинство модулей предоставляет более сложные функции и часто нуждается в доступе к базе данных. Следующий модуль будет более сложным — это будет модуль администратора.
Разработка модуля администратора
Missing Metadata
Модули администратора функционируют так же. как и модули пользовательского интерфейса, но они используются в интерфейсе администратора. Модуль администратора никогда не будет показан в интерфейсе пользователя, поскольку в большинстве случаев он отображает частную системную информацию и помогает администратору обслуживать сайт, т. е. информация модуля администратора нежелательна для всеобщего обозрения. В нашем примере мы создадим модуль, показывающий список статей, у которых не заполнены метаданные.
Для надлежащей поисковой оптимизации каждая страница должна содержать две части уникальных метаданных: поля metadescription (описание страницы) и metakeywords (ключевые слова). Эти поля используются поисковыми пауками при индексировании страницы. Например, Google использует поле metadescription для предоставления итоговой информации о странице (рис. 13.3).
Несмотря на важность этой информации, у многих Joomlai-сайтов есть масса статей, у которых не заполнены метаданные. Игнорирование метаданных может понизить рейтинг вашего сайта в поисковой машине и затруднит нахождение вашего сайта другими пользователями при поиске информации. Желательно заполнить эти два поля для каждой страницы сайта.
Для решения данной проблемы мы создадим модуль администратора, отображающий все статьи, у которых метаданные не заполнены. Для каждой статьи будет создана ссылка редактирования, поэтому администратору нужно просто щелкнуть на ней, чтобы перейти в режим правки. Отсутствующая информация будет сразу же добавлена в контент. Модуль будет отображать только опубликованные статьи (неопубликованные или архивные статьи показываться не будут).
Денис Колисниченко Документация no Linux и PHP. Linux-cepeep... Документация no Linux, программированию на PHP, С, Delphi, Java Авторский сайт Дениса Колисниченко.
^"L - >ш -■ эдие -* *■►• гп <и>«и i
Динамические массивы в Delphi Программирование ImageОбзоры систем управления ,
Контру под LinuxDenix
Сообщение
Г '1 l^1 erg ua >
Денис Колисниченко Документация по Linux и PHP Linux-cepeep...
Автор Колисниченко Денис Николаевич Издательство Диалектика ISBN 978-5-84591360-9 Стр: 352. Год: 2008 .... 2006 2006 Денис Колисниченко ...
w-^ dk*** г га на/ in sex php^page-^hr^Jile^r "^ ’edt; 8 u -
Денис Колисниченко - Getlnfo Ru
Программное обеспечение HTML-редакторы, Unix, Браузеры, Обзоры ПО, Почта
Информация об авторе Денис Колисниченко dhsilabs@mail ги blip //dkws narod ги/ ...
v ч ,- ■ 13 ik- _._ -L •_ J
OZON ru - Денис Николаевич Колисниченко
Денис Колисниченко Серверное применение Linux Мягкая обложка £008) Для
администраторов Linux описана настройка различных типов серверов' Web, FTP, DNS, ...
-.•■<•• ?.■»• u/cr'-.-BTU'Ceta:-'d<2M7f?7- Tk- гхпан^нп г ri<-Lk ХЛ * * ^ииы
Рис. 13.3. Поле metadescription Web-страницы используется для отображенияитоговой информации в поисковых машинах вроде Google
Создание ХМL-дескриптора
Файл XML-дескриптора будет примерно таким же, как для нашего первого модуля Hello From. Этот модуль будет состоять из одного РНР-файла (modmissingmeta.php), содержащего весь основной код. В каталоге \mod_missingmeta создайте файл mod missingmeta.xml и введите следующий код:
<?xml version="l. 0" encoding="utf-8"?>
cinstall type="module" version="1.5.0" client="administrator">
<name>Missing Metadata Items</name>
<author>Dan Rahmel</author>
<creationDate>July 2007</creationDate>
<copyright>(C) 2007 Dan Rahmel. All rights reserved.</copyright>
<authorEmail>admin@joomlajumpstart,org</authorEmail>
<authorUrl>www.joomlajumpstart.org</authorUrl>
<version>l.0.0</version>
<description>Module to display any articles that have missing metadescription or metakeywords fields.</description>
<files>
<filename module="mod_missingmeta">mod_missingmeta.php</filename> </files>
</install>
Обратите внимание, что тег <instail> содержит дополнительный атрибут client, которого не было в предыдущем модуле. Если атрибут client отсутствует, модуль считается модулем пользовательского интерфейса и ассоциируется с типом клиента site. Поскольку мы разрабатываем модуль, который будет доступен только через интерфейс администратора, то установили тип клиента в administrator, что создаст модуль администратора и поместит его в каталог \admmistrator\modules.
Создание файла модуля
Код модуля Missing Metadata Items (Отсутствующие метаданные) требует наличия двух файлов — файла стилей и файла кода. В более сложном приложении есть смысл в подобном разделении, как мы делали ранее в этой книге, когда создавали шаблон. Если вы поместите CSS-код и PHP-код в отдельные файлы, тогда вам будет проще их редактировать. Но в этом модуле для большей простоты мы весь код будем хранить в одном файле.
Создайте новый файл mod missingmeta.php и поместите его в каталог \mod_missigmeta и добавьте следующий код:
<?php /“
* (Aversion $Id: mod_missingmeta.php 2007-07-12 21:49:30Z Danr $
*/
11 Запрещаем непосредственный доступ
defined('_JEXEC') or die('Restricted access');
$db =& JFactory::getDBO();
// Найдем все статьи, у которых не заполнены метаданные, // и убедимся, что статьи опубликованы (state=l).
$where = "(metakey = '' or metadesc = '') and state = 1 ";
$query = "SELECT id, title, metakey, metadesc"
. " FROM #content WHERE "
. $where . " ORDER BY title ASC";
$db->setQuery( $query, 0);
ctable class="adminlist">
<tr>
<td class="title">
<strongx?php echo JText::_( 'Article' ); ?x/strong>
</td>
<td class="title">
<strongx?php echo JText::_( 'Empty Description' ); ?x/strong>
</td>
<td class="title">
<strongx?php echo JText::_( 'Empty Keys' ); ?x/strong>
</td>
</tr>
<?php
// Проверяем, есть ли соответствующие запросу статьи
if (Srows = $db->loadObjectListО) {
foreach (Srows as $row) {
// Создаем URL, позволяющий администратору перейти к правке статьи Suri = "index.php?option=com_content&task=edit&" .
"&id=" . $row->id;
// Проверяем поля с метаданными для записи
Ни установки значения Yes/No
if ($row->metadesc ="") Smetad = JText::_("Yes");
else Smetad = JText::_("No");
if ($row->metakey ="") Smetak = JText::_("Yes");
else Smetak = JText::_("No");
echo "<tr>";
// Помещаем статью внутри ссылки echo "<tdxa href='" . Suri . "’>" . $row->title . "</ax/td>"; // Отображаем статус метаданных echo "<td>" . Smetad . "</td>";
echo "<td>" . Smetak . "</td>"; echo "</tr>";
} else (
// Статьи с отсутствующими метаданными не найдены echo ' <trxtd>nycTO</td>' ;
echo '<td>n/a</td>';
echo ' <td>n/a</tdx/tr>' ;
)
?>
</table>
Код этого модуля более сложен, чем код ранее рассмотренного модуля. Первая секция PHP-кода получит доступ к объекту базы данных и сохранит его в переменной $db. Инструкция where в созданном MySQL-запросе выбирает только те записи, у которых пустые поля metakey и metadesc. Запрос выбирает только те статьи, у которых поле state установлено в 1, т. е. только опубликованные статьи.
Переменная $query создана для хранения запроса, выбирающего поля id, title, metakey и metadesc. Результат запроса будет сохранен в переменной $db. Переменная запроса использует инструкцию #content для произведения поиска в таблице контента Joomla!. Директива #будет заменена текущим префиксом таблицы, установленным администратором — обычно по умолчанию используется префикс jos_. Метод setQueryt) объекта базы данных вызывается для сохранения строки запроса.
После секции PHP-кода следует HTML-код, создающий таблицу для отображения списка статей. Таблица использует классы adminlist и title, поэтому будет выглядеть так же, как и остальные таблицы в интерфейсе администратора. Созданная таблица будет состоять из трех полей: в первом будет заголовок статьи (он же — ссылка на редактирование статьи), второе — индикатор отсутствующего описания статьи (поле metadesc пустое), третье — индикатор отсутствующих ключевых слов (поле metakey— пустое).
Вторая часть PHP-кода производит вывод списка статей. Условный оператор if проверяет, есть ли статьи без метаданных. Если таких статей нет, тогда выводится один ряд со значениями "Пусто", "п/а" и "п/а".
Если же были найдены статьи, соответствующие параметрам поиска, цикл foreach "пройдется" по каждой записи. В цикле сначала будет создан URL, позволяющий редактировать статью. Обратите внимание, что в качестве значения параметра task (задача) указан параметр edit (редактирование).
Следующие два оператора if проверяют, заполнены ли поля метаданных, и выводят слова "Yes" или "No" в соответствующих столбцах. Поскольку используется метод JText::_(), слова "Yes" и "No" при необходимости будут переведены на установленный язык. Для каждой записи будут выведены три столбца, в том числе заголовок статьи и индикаторы отсутствия метаданных.
Заархивируйте файл кода и XML-дескриптор в архив mod_nrissingmeta.zip и установите его с помощью Менеджера расширений. Теперь перейдите в Менеджер модулей и убедитесь, что установленный модуль отсутствует в его списке. По умолчанию Менеджер модулей отображает пользовательские модули, но не модули администратора. Перейдите по ссылке Administrator (рис. 13.4). В списке вы увидите модуль Missing Metadata Items.
Щелкните по имени модуля — вы перейдите в режим редактирования. По умолчанию модуль будет помещен слева. Даже если у шаблона администратора эта позиция (left) не определена. Раскройте список Позиция и выберите позицию cpanel для отображения модуля на главной панели администратора (рис. 13.5). Нажмите кнопку Сохранить для внесения изменений в базу данных.
Рис. 13.5. Выберите позицию cpanel
Перейдите в панель управления и посмотрите на список модулей справа. Найдите установленный модуль и нажмите на стрелку раскрытия для отображения списка статей без метаданных (рис. 13.6).
• Missing Memdata Items
Artif IeEm|ty DescriptionEntity Keys
TeciДиДи
Условия использования сайтаДиДа
» Welcome to Joemla!
■ Logged in Llseis
» Popular
■ Recent added Articles
» Menu Stats,
Рис. 13.6. Новый модуль отображает статьи без метаданных
Теперь вы знаете, как реализовать модуль администратора для Joomla! и можете приступить к разработке собственных модулей с необходимыми вам функциями.
Эти модули являются основой для создания функций администратора в Joomla!. Но что если вам нужно что-то более интерактивное? В этом случае нужно создавать не более мощный модуль, а новый компонент.
Структура компонента Suggestion Box
Структура компонента подобная структуре модуля. Основное отличие заключается в наличии интерфейса пользователя. Компонент обладает полноценным интерфейсом администратора, в то время как модуль ограничен экраном установки параметров. Интерфейс администратора компонента доступен через меню Компоненты панели управления.
Поскольку компоненты помещаются в центральную часть большинства шаблонов, они позволяют лучше контролировать вывод информации, чем модули. Вы можете установить прямые ссылки меню на компоненты для вызова их пользователями. Компоненты могут принимать параметры, что будет показано на примере компонента Suggestion Box (Книга жалоб и предложений).
Один из способов улучшить обратную связь с пользователем — это добавление компонента жалоб и предложений. Пользователи смогут добавить свое предложение, которое будет записано в базу данных для рассмотрения администратором.
Начать разработку компонента предложений нужно с создания каталога \com_suggestionbox на вашем жестком диске. В этот каталог нужно поместить все файлы компонента.
Файл ХМL-дескриптора
Файл дескриптора для компонента практически идентичен дескриптору модуля. Разница в том, что в теге <install> нужно изменить атрибут type и установить его в component, вместо module. Также будет дополнительная секция <administration>, определяющая интерфейс администратора для компонента.
В случае с компонентом предложений интерфейса администратора не будет как такового, но в следующем коде я сделаю так, чтобы при выборе компонента из меню Компоненты (в панели управления) отображался стандартный интерфейс компонента. Зачем я это сделал?
Когда Joomla! устанавливает компонент без интерфейса администратора, он не будет помещен в меню Компоненты. Большинство компонентов должно быть в этом меню, даже если у них нет интерфейса администратора, поскольку наличие компонента в меню Компоненты позволяет администратору быстро определить, установлен ли компонент.
Но более важно то, что компонент должен обладать интерфейсом администратора для регистрации в базе данных, иначе вы не сможете создать на него ссылку в меню. Поскольку компонент Suggestion Box должен быть доступен из главного меню, вы должны добавить секцию <administration> в XML- файл.
В каталоге \com_suggestionbox создайте файл suggestionbox.xml и введите следующий код:
<?xml version="1.0" encoding="utf-8"?>
<install version="1.5.0" type="component">
<name>SuggestionBox</name>
<author>Dan Rahmel</author>
<version>l.0.0</version>
<description>Displays a suggestions form and records suggestions in the jos_suggestion table.</description>
<filename conponent="com_suggestioribox">suggestionbox.php</filename> </files>
<administration>
<menu>Suggestion Box</menu>
<fliename component="com_suggestionbox"> suggestionbox.php</filename>
</files>
</administration>
</install>
Файл дескриптора готов к использованию. Теперь вам нужно создать файл кода, содержащий всю логику выполнения компонента.
PHP-файл кода
Код компонента будет производить множество различных операций. Прежде всего, он проверит, были ли переданы компоненту какие-то параметры. Один и тот же URL будет использоваться для первой (вывод формы для ввода предложения пользователем) и для второй (запись предложения в базу данных) стадий предложения. На первой стадии будет просто выведена форма предложений, а на второй, если форма будет заполнена, введенные пользователем данные будут записаны в таблицу.
В каталоге \com_suggestionbox создайте файл suggestionbox.php и введите следующий код:
* (Aversion $Id: suggestion.php 5203 2007-07-27 02:45:14Z DanR $
* @copyright Copyright (C) 2007 Dan Rahmel. All rights reserved.
* Компонент принимает предложения пользователей и сохраняет их в БД
// Запрещаем непосредственный доступ
defined('_JEXEC) or die('Restricted access');
if(JRequest::getVar('suggestion')) {
$db =& JFactory::getDBO();
// Автоматически пытаемся создать таблицу. Если таблица уже существует, // попытка ее создания будет проигнорирована
$createTable = "CREATE TABLE IF NOT EXISTS #suggestions'" .
"('id' INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, ". "'suggestion' text NOT NULL, 'email' VARCHAR(45)," . "'location' VARCHAR(45), 'created' TIMESTAMP NOT NULL, " . "'userip' VARCHAR(16), PRIMARY KEY('id'))";
$db->setQuery(ScreateTable, 0) ;
// Запускаем создание таблицы
$db->query()J
// Получаем и форматируем все переменные формы
$fIdSuggest = "'" . $db->getEscaped(JRequest::getVar(1 suggestion *)) .
$fldEmail = "'" . $db->getEscaped(JRequest::getVar( 'email')) . "'";
$fldLocation = '"" . $db->getEscaped(JRequest::getVar( 'location' )) .
// Сохраняем IP-адрес пользователя, сделавшего предложение $userlp = ""■ . $_SERVER['REMOTE_ADDR'] . '"";
II Помещаем все предложения в таблицу jos_suggestions $insertFields = "INSERT INTO #suggestions " .
"(suggestion, email, location, userip) " .
"VALUES (" . $fIdSuggest . "," . SfldEmail . "," . SfldLocation . "," . $userlp . ");";
$db->setQuery( SinsertFields, 0);
$db->query();
<hl class="contentheading">CnacM6o за ваше предложение!</hl>
<?php } else {
<hl class="contentheading">OopMa предложения</Ы>
<form id="forml" name="forml" method="post"
action=”index.php?option=com_suggestionbox">
<р>Ваше предложение:<br />
<textarea name="suggestion" cols="40" rows="4" id="suggestion"x/textarea>
<p>Email (необязательно) : cinput name="email" type="text" id="email" />
<1аЬе1>Откуда вы (необязательно) : </label>
<input name="location" type="text" id="location" />
<input type=”submit" name="Submit" уа1ие="0тправить" />
</form>
<?php ) ?>
Первая часть кода проверяет, были ли переданы компоненту параметры — особенно параметр suggestion. Если переменная suggestion передана компоненту, компонент начинает обрабатывать информацию. Код загружает ссылку на объект базы данных.
Затем он осуществляет запрос create table (создать таблицу). Использование модификатора if not exist позволяет создать таблицу, только если она не существует. Если это так, будет создана таблица с использованием текущего префикса таблиц (в большинстве случаев будет создана таблица jos suggestions) для хранения предложений.
В определении таблицы мы видим два поля, генерируемые базой данных MySQL: id и created. Поле id автоматически увеличивается при добавлении новой записи, поэтому оно будет использоваться в качестве уникального ключа. Поле created — это дата добавления предложения.
После создания таблицы компонент обрабатывает три поля формы предложения (suggestion — текст предложения, email — электронный адрес пользователя и location— расположение пользователя) и сохраняет их как переменные. Метод getEscapedO используется для добавления необходимых escape-символов, чтобы убедиться, что текст правильно запишется в базу данных. Например, если бы пользователь ввел текст с кавычками, они бы стали частью запроса, и запрос не был бы выполнен из-за синтаксической ошибки, поэтому нам не обойтись без вызова метода getEscapedO.
Четвертая переменная создана для хранения IP-адреса отправителя предложения. Хотя IP-адрес может быть подменен, большинство спаммеров не тратят свое время и энергию на это, поэтому в большинстве случаев 1Р-адрес поможет администратору проследить, кто нарушает условия использования узла, и запретить этим IP-адресам доступ к системе.
Когда все четыре переменные установлены надлежащим образом, команда Insert Into добавит новую запись в таблицу. После сохранения записи пользователь будет поблагодарен за предложение.
Оставшаяся часть компонента будет отображена, только если не будут обнаружены переменные формы. В этом случае будет отображена форма добавления предложения. В коде формы есть только два элемента, достойных внимания. Для тега заголовка <hi> используется класс contentheading, поэтому наш компонент будет оформлен в соответствии с выбранным шаблоном.
Второй элемент — это атрибут action формы. Он установлен в index. php?option=com_suggestionbox, поэтому как только пользователь нажмет кнопку Отправить, будет снова вызван наш компонент. Компонент обнаружит заполненные поля формы и добавит предложение в базу данных.
Установка компонента
Заархивируйте содержимое каталога comsuggestionbox в архив com_siiggestionbox.zip, после чего загрузите и установите его в Joomla! с помощью Менеджера расширений. Как только компонент будет установлен, перейдите на вкладку Компоненты Менеджера расширений и опубликуйте компонент (по умолчанию компоненты не публикуются после установки).
Теперь в меню Компоненты появится новый компонент. Не нужно выбирать его — просто убедитесь, что он есть. Из меню Все меню выберите главное меню. Нажмите кнопку Новый для создания новой ссылки меню. В группе Выберите тип меню выберите компонент Suggestion Box (рис. 13.7).
Рис. 13.7. Выберите компонент Suggestion Box
Назовите пункт меню Предложения и откройте в браузере свою главную страницу. В главном меню вы должны увидеть только что созданный элемент меню. Нажмите его, и вы увидите форму предложений (рис. 13.8).
Введите любое предложение и нажмите кнопку Submit. Предложение будет отправлено в базу данных для изучения администратором. Теперь вы создали ваш первый компонент и получили основу, необходимую для создания других компонентов в будущем.
Фосма ппедложенияФосма ппедложенияLast comments by AkoComment Tweaked SELast comments by AkoComment Tweaked SEEmail (необязательно) ГEmail (необязательно) ГFeed Your Brain with...Books from the Joomla' ShopFeed Your Brain with...Books from the Joomla' Shop
Фосма ппедложения
Фосма ппедложения
Last comments by AkoComment Tweaked SE
Last comments by AkoComment Tweaked SE
Email (необязательно) Г
Email (необязательно) Г
Feed Your Brain with...
Books from the Joomla' Shop
Feed Your Brain with...
Books from the Joomla' Shop
© 2008 Joomla JumpStait Все права защищены
Joomial — свободное программное обеспечение, распространяемое по лицензии.
No comment
Рис. 13.8. Компонент Suggestion Box отображает форму предложения
Резюме
В этой главе вы создали три разных расширения: пользовательский модуль, модуль администратора и компонент. В большинстве случаев модули и компоненты позволяют добавить необходимые функции, если вы не можете найти реализующие их посторонние расширения.
Первый модуль, отображающий простое приветствие, демонстрирует интегрирование модулей в Joomla!. Модуль администратора более сложный, он использует базу данных и доступен только из интерфейса администратора. Наконец, компонент— самый сложный из всех— состоит из двух частей: формы ввода данных и алгоритма их сохранения в базе данных. Расширение демонстрирует, как компонент может изменять свое поведение в зависимости от переданных ему параметров.
Я надеюсь, что вам понравилась эта книга, посвященная Joomla!, и вы узнали с ее помощью больше, чем ожидали. Joomla! может использоваться для создания любых сайтов — от персональных страничек до полноценных интернет-магазинов. Надеюсь, что вы присоединитесь к Joomlal-сообществу и сделаете свой вклад в развитие некоммерческой организации Open Source Matters (подробнее см. www.joomla.org и w'ww.opensourcematters.org)— новыми шаблонами, новыми расширениями или просто своим присутствием.
Joomlai-сообщество включает десятки тысяч энтузиастов. Надеюсь, что вы присоединитесь к нам и станете одним из нас. Увидимся в Сети!
Предметный указатель
А
Adobe Dreamweaver 17, 222
Adobe Photoshop 254
Ajax 421
AkoBook+ 310
AkoComment 316
Apache Custom Log Format 342
ASP 140
AstatsPro, программа 349
Atom-лента 301
A WStats, программа 348
В
Backup Easy 205
Breadcrumbs 416
BSQ Sitestats, программа 350
c
CAPTCHA 312
CGI 98
CLF 345
CMS 15
Community Builder 336
cPanel 116
CRM 265
CSE HTML Validator 263
CSS 242
D
Drivelmage XML 204
E
Easy Gallery 359
Eclipse 227
Entana Statistics, программа 350
eWAY 384
Expression Web 223
EZ-Catalog 406
F
Fantastico 25
FileZilla 29
FileZilla FTP Server 29, 357
FreeMind, программа 135
0 сервер 356
0 сервис 356
G
Gallery2 367
Gallery2 Bridge, компонент 378
GD2 309, 361
GIMP 209, 254
Gmail 184
Google Analytics Tracking Module, модуль 352
Google Analytics, сервис 350
Google Reader 301
Google Sitemap Generator 415
GPL, лицензия 41
H
HSB 236
HTML 17
J
Jambook 306
JCal Pro 324
jEdit 228
JoomlFish 172, 266
Joomap 415
Joomla Stand Alone Server 26
JoomlaLib, библиотека 378
Joomla-SMF Bridge 328
JoomlaStats, программа 349
joomlaXplorer 266
К
KISS 48
KompoZer 225
L
LAMP 86
LDAP 24, 184
Leo 137, 229
M
Mambo 15
mambo-phpShop 385
MAMP 86
Microsoft FrontPage 17
Microsoft Internet Information Server 75
MySQL 19, 103
MySQL Administrator 103, 203
MySQL GUI Tools 110
N
Nvu 224
О
Open Source 16
OpenSEF413
osCommerce 406
P
Pavuk Web Spider and Performance
Measure 422
Pay mate 384
PayPal 384
PHP 19, 98
phpMyAdmin 202
Python 137
R
RGB 234
Robots 152
RSS301
s
Sage 301
SAP1 98
Script-Fu 256
Secure 398
SEF 94, 207,408
SEF Service Map 415
SEO 180,407
SharpReader 301
SMF 169, 327
SOAP 79
SSI 93
SSL 398
Suggestion Box 438
System - Legacy, плагин 164
T
ThinFeeder Java RSS Aggregator 301
TinyMCE 146
u
UTF-8 108
WorldPay 384WYSIWYG 21 0 редактор 145XXAMPP 79Xcode 101Xenu 422XHTML 146XML 79XML-RPC 79XStandard Lite 147WorldPay 384WYSIWYG 21 0 редактор 145XXAMPP 79Xcode 101Xenu 422XHTML 146XML 79XML-RPC 79XStandard Lite 147
WorldPay 384
WYSIWYG 21 0 редактор 145
X
XAMPP 79
Xcode 101
Xenu 422
XHTML 146
XML 79
XML-RPC 79
XStandard Lite 147
WorldPay 384
WYSIWYG 21 0 редактор 145
X
XAMPP 79
Xcode 101
Xenu 422
XHTML 146
XML 79
XML-RPC 79
XStandard Lite 147
V
VAA-приложения 32
VirtueMart 383
w
W3C 242
W3C Extended Log File Format 342
WAMP 86
Webalizer, программа 344
WebTrends, программа 342
Web-аналитика 342
Web-редактор 220
A
Администраторы 188
Б
База данных 103
Баннер 254
Безопасность 205
В
Виртуальное сообщество 295
Виртуальный магазин 387
Г
Голосование 68, 303
Гостевая книга 306
К
Календарь события 323
Карта сайта 415
Категории 130
Категории пользователей 187
0 Registered Author 166
0 Registered Editor 166
0 Registered Publisher 166
Команда chmod 116
Комментарии пользователей 315
Компонент 268
0 Banners (баннеры) 283
0 Contacts (контакты) 286
0 Newsfeed (лента новостей) 288
0 Polls (голосования) 289
0 Weblinks (каталог ссылок) 291
0 разработка 438
Контент 129
0 некатегоризированный 130
Корзина 142
Л
Логотип сайта 61
м
Медиаменеджер 176
Менеджер:
0 баннеров 283
0 главной страницы 176
0 голосований 69, 289
0 категорий 143
0 контактов 286
0 корзины 177
0 лент новостей 288
0 массовой рассылки 198
0 материалов 131, 142, 174
0 меню 189
0 модулей 59, 193
0 общих настроек 178—179
О плагинов 195, 292О пользователей 184О почтовый 197О разделов 143О расширений 164, 173, 192О статического контента 133О шаблонов 63, 170О языков 169, 172Меню:0 горизонтальное 710 категорий 1610 скрытие 59Метод:0 getEscaped() 442О JText()431О setQueryQ 436Модуль 268О Advertisement 274О Banners 274О Breadcrumbs 276О Feed Display 277, 301О Main Menu 279О Newsflash 66О Polls 58О Random Image 2730 Syndication 2770 Wrapper 272О администратора 282, 432О разработка 427О типы 269нНавигационная строка 416Новостная лента 277, 301ООпрос 68пПанель управления 50Плагин 266, 292Поисковый паук 407Поле предложения 335О плагинов 195, 292О пользователей 184О почтовый 197О разделов 143О расширений 164, 173, 192О статического контента 133О шаблонов 63, 170О языков 169, 172Меню:0 горизонтальное 710 категорий 1610 скрытие 59Метод:0 getEscaped() 442О JText()431О setQueryQ 436Модуль 268О Advertisement 274О Banners 274О Breadcrumbs 276О Feed Display 277, 301О Main Menu 279О Newsflash 66О Polls 58О Random Image 2730 Syndication 2770 Wrapper 272О администратора 282, 432О разработка 427О типы 269нНавигационная строка 416Новостная лента 277, 301ООпрос 68пПанель управления 50Плагин 266, 292Поисковый паук 407Поле предложения 335
О плагинов 195, 292
О пользователей 184
О почтовый 197
О разделов 143
О расширений 164, 173, 192
О статического контента 133
О шаблонов 63, 170
О языков 169, 172
Меню:
0 горизонтальное 71
0 категорий 161
0 скрытие 59
Метод:
0 getEscaped() 442
О JText()431
О setQueryQ 436
Модуль 268
О Advertisement 274
О Banners 274
О Breadcrumbs 276
О Feed Display 277, 301
О Main Menu 279
О Newsflash 66
О Polls 58
О Random Image 273
0 Syndication 277
0 Wrapper 272
О администратора 282, 432
О разработка 427
О типы 269
н
Навигационная строка 416
Новостная лента 277, 301
О
Опрос 68
п
Панель управления 50
Плагин 266, 292
Поисковый паук 407
Поле предложения 335
О плагинов 195, 292
О пользователей 184
О почтовый 197
О разделов 143
О расширений 164, 173, 192
О статического контента 133
О шаблонов 63, 170
О языков 169, 172
Меню:
0 горизонтальное 71
0 категорий 161
0 скрытие 59
Метод:
0 getEscaped() 442
О JText()431
О setQueryQ 436
Модуль 268
О Advertisement 274
О Banners 274
О Breadcrumbs 276
О Feed Display 277, 301
О Main Menu 279
О Newsflash 66
О Polls 58
О Random Image 273
0 Syndication 277
0 Wrapper 272
О администратора 282, 432
О разработка 427
О типы 269
н
Навигационная строка 416
Новостная лента 277, 301
О
Опрос 68
п
Панель управления 50
Плагин 266, 292
Поисковый паук 407
Поле предложения 335
Права доступа 116
О в Linux/UNIX 39
Профиль сайта 296
Р
Разделы 130
Редактор кода 226
Режим обратной совместимости 164
Резервное копирование сайта 201
Рейтинг статей 301
С
Смайлики 53
Статистика сайта 341
Статический материал 130
Статья:
О добавление 149, 153
О создание 50
т
Тип меню 55
У
Уровень доступа 144
Ф
О .htaccess 93
О configuration.php 39
О httpd.conf91
О index.php 211
О phpinfo.php 103
О robots.txt 424
О template.css 232
О templateDetails.xml 210
Форум 327
Фотогалерея 355
ш
Шаблон 210
О проверка кода 262
О создание 231
О установка нового 163