Библиотека сайта rus-linux.net
Наполним Joomla! эффективными расширениями
Оригинал: Spice up Joomla! with productivity-enhancing extensions
Автор: Razvan T. Coloja
Дата: 24 декабря 2007
Перевод: Александр Тарасов aka oioki
Дата перевода: 29 января 2008
Joomla! - популярная система управления содержанием (CMS) веб-порталов. Она проста в установке и сопровождении, для нее написаны тысячи компонентов, модулей и т.н. mambot'ов (небольших мелкофункциональных скриптов) для решения практически всех задач, связанных с веб-сайтами. Все расширения имеют открытый код, как и сама CMS. В этой статье я рассмотрю несколько расширений, которые мне кажутся наиболее необходимыми.
После установки Joomla!, первое, что нужно добавить - это компонент под названием JoomlaPack. Он предназначен для резервного копирования файлов и баз данных нашей CMS. Хотя он не очень гибок, но тем не менее свою прямую обязанность выполняет хорошо. JoomlaPack может сделать резервную копию либо базы данных, либо сайта, либо и того и другого вместе. В панели управления компонентом можно указать, какие каталоги следует исключить из резервирования (к примеру, каталог временных файлов /temp). После создания резервной копии (в виде архива) можно будет загрузить ее из панели конфигурации JoomlaPack. На мой взгляд, единственный недостаток JoomlaPack, в отличие от JoomlaCloner (конкурента в области резервного копирования), состоит в том, что нет возможности создавать резервные копии по расписанию.
Если вы планируете запустить портал, в котором пользователям будет разрешено публиковать новости и статьи, расширение MyContent наверняка вам будет интересно. Оно гарантирует передачу пользователям необходимых и достаточных (в плане безопасности) прав. Вы устанавливаете компонент, привязываете его к одному из меню и настраиваете права ссылки так, чтобы доступ к нему имели лишь зарегистрированные и особые пользователи. Когда они будут нажимать на ссылке, будет открываться текстовый редактор на их выбор. Пользователь сможет добавлять материал на сайт, который собственно перед появлением на сайте должен быть одобрен вами, т.е. администратором. Лучше иметь такой ограниченный доступ "спереди" для пользователей, чем создавать специальные учетные записи для доступа "сзади", т.е. через административную панель.
Недавно была выпущена альтернатива MyContent - jp Submissionary. Этот компонент позволит пользователям добавлять тексты и изображения в портале - и это содержание должно быть также одобрено администратором перед появлением на сайте. Компонент работает быстрее и меньше конфликтует с JavaScript-модулями (что, к сожалению, часто встречается при использовании MyContent). Из недостатков jp Submissionary можно выделить скудные возможности по форматированию текста и загрузка лишь двух изображений - одно для вводного текста и другое для основной части новости.
При выборе текстового редактора для своих пользователей, обратите внимание на Joomla! Content Editor (JCE). Встроенный редактор Joomla! предлагает лишь базовые возможности форматирования, которые меркнут перед богатством JCE. В окне настроек JCE можно указать ширину и высоту окна редактора, а также кучу других настроек. Можно даже настроить расположение кнопок путем перетаскивания их изображений в окне JCE Layout Manager. Редактор также имеет поддержку различных языков, и на данный момент JCE Language Pack содержит файлы для японского, датского, чешского, французского, испанского, немецкого, каталонского и бразильского языков.
JCE хорошо продуман, прост в использовании и поддерживает множество расширений. Установив расширения ImageManager и Advanced Link, вам не придется переходить из Joomla! Media Manager в редактор для того, чтобы вставить изображение. ImageManager позволяет загружать и управлять изображениями из одного места, не выходя из окна редактора. Advanced Link позволяет вставлять обычные ссылки в текст и предлагает удобный способ создания категорий, секций и ссылок на статьи. К примеру, вы хотите вставить ссылку на существующую категорию; тогда в нижней части окна Advanced Link, в выпадающем списке вы выбираете нужный элемент, и редактор автоматически определит его URL-адрес.
После построения портала, можно обратить внимание на расширение sh404SEF, предназначенное для улучшения индексирования и придания URL-адресам более осмысленные имена. Этот "дружественный к поиску" (search-engine-friendly, SEF) компонент автоматически переименовывает URL-адреса PHP-страниц в удобочитаемый текст, удаляет из него ненужные символы и даже добавляет суффикс файла в его конец. Возможно, ваш сайт уже содержит сотни опубликованных статей, и вы не хотите, чтобы sh404SEF в автоматическом режиме переименовал их все. В данном случае вы можете применить средство лишь к выбранным категориям. Компонент даже позволяет создать свою страницу ошибки 404. sh404SEF уделяет особое внимание URL-адресам, генерируемым такими распространенными компонентами, как VirtueMart, Community Builder, форум FireBoard, DOCman, Remository, Letterman и iJoomla:magazine.
Самое хорошее в sh404SEF - это то, что не придется иметь дела с файлами .htaccess. Многим SEF-компонентам нужно, чтобы модуль mod_rewrite был включен и объявлен в файле .htaccess. Но sh404SEF также может задействовать Apache-функцию PathInfo, для подмены URL-адресов. Некоторым компонентам не требуются подобные средства подмены URL-адресов, и можно указать sh404SEF, какие компоненты следует исключить из обработки.
Есть и другие SEF-компоненты Joomla!, достойные быть упомянутыми: JoomSEO, ARTIO JoomSEF и NuSEF (переписанная версия бывшего OpenSEF). В общем они выполняют ту же функцию, что и sh404SEF, и кроме этого предоставляют дополнительные возможности, но большинство из них задействуют файл .htaccess.
Фотографии
Joomla! Mambot'ы применяются для добавления полезных, в основном носящих косметический характер, атрибутов для содержимого ваших страниц: предварительно форматированный текст, вставка видео в текст, редактирование и управление изображениями. Когда нужен предварительный просмотр изображений, возможно, окажется полезен бот
Multithumb. Если на вашем веб-сервере установлена
графическая библиотека GD или ImageMagick, то Multithumb может автоматически создавать миниатюры каждой картинки при ее добавлении в статью. Это расширение позволяет устанавливать JPEG-качество, устанавливать фиксированную ширину или высоту для миниатюр, указывать стиль рамки и ее толщину, и даже выбирать водяной знак или цвет фона. Если вам потребуется быстро создать галерею, вам придется загрузить несколько изображений в каталог и заменить их альтернативный текст на mt_gallery
при вставке их в статью. Это указывает Multithumb на то, что это изображение (вместе с другими) следует объединить в галерею. Если вы желаете задать каждому изображению в галерее собственное описание, вы можете использовать текстовый файл, содержащий описания. К примеру, если у вас есть изображения с именами picture01.jpg, picture02.jpg и picture03.jpg, тогда вы можете создать текстовый файл picture01.jpg.txt и ввести в него что-то наподобие:
picture01.jpg Какой-то текст picture02.jpg Еще одно описание picture03.jpg И еще одно
Можно переопределить стандартные настройки Multithumb для каких-то отдельных статей, с помощью следующего текста:
{multithumb thumb_width=200 thumb_height=150}
Можно также использовать онлайн-средство для создания таких текстов в интерактивном режиме.
Помимо других полезных функций, Multithumb позволяет устанавливать миниатюру, отличающуюся от просто уменьшенной копии оригинала. К примеру, там можно отобразить фрагмент исходного изображения, либо пропорционально натянуть оригинал на предустановленный фон.
Иногда может потребоваться замена одного-двух файлов на веб-сервере, но запускать ради таких мелких целей FTP-клиент не хочется. Уже находясь в административной панели Joomla!, было бы удобно использовать joomlaXplorer - файловый менеджер, предоставляющий возможность загрузки файлов как с сервера, так и на сервер, установки прав доступа на файлы и редактирования файлов. Также он содержит панель статуса, в которой написано, сколько свободного места осталось на сервере. Если у вас быстрое интернет-соединение, то с установленным расширением joomlaXplorer вы можете забыть о FTP, редактируя файлы прямо на сервере.
Многие сайты предоставляют пользователям возможность взаимодействовать друг с другом. Возможно, лучшим решением в системе Joomla! будет установка компонента форума или системы комментариев. В качестве системы комментариев я использую AkoComment Tweaked Special Edition. Этот компонент предоставляет широкий набор настроек и возможность выбора темы комментирования. К примеру, если вы добавили новость и хотите, чтобы пользователи могли выразить свое мнение о ней, тогда вам следует установить этот компонент и выбрать секции, в которых он будет работать: новости (news), короткие новостные сообщения (newsflash) или статьи (articles). Вы можете выбрать, разрешать ли анонимные комментарии, могут ли зарегистрированные пользователи подписываться на RSS-рассылку комментариев, устанавливать количество комментариев на странице, и нужно ли защищать сайт с помощью CAPTCHA. По причине засилья спамеров в последнее время советую включить последнюю функцию. При этом перед добавлением комментария пользователю придется ввести 5-значное число. Компонент AkoComment Tweaked Special Edition также поддерживает теги BBCode и наборы смайликов, и может оповещать администратора по e-mail, когда кто-то добавляет комментарий на сайт. Пользователи также могут сообщать администратору о подозрительных комментариях, нажимая на соответствующей ссылке. Самым большим недостатком данного компонента является невозможность редактирования комментариев пользователями. Если все же возникнет такая нужда, тогда вам (администратору) по просьбе пользователя придется входить в административную панель Joomla! и самому редактировать комментарий, что весьма неудобно.
В дополнение к AkoComment Tweaked Special Edition можно пользоваться компонентом Last comments for AkoComment TSE. Он отображает последние комментарии в выбранном вами месте, что упрощает зарегистрированным пользователям просмотр и поиск новых комментариев - вы просто указываете, чтобы они были на видном месте, и пользователям не придется искать их в нескольких окнах.
Форум и мультимедиа
Есть и другой способ формирования сообщество вашего сайта - это установка компонента форума. Многие выбирают хорошо известные решения типа Simple Machine Forums или Invision Power Board, и привязывают их к своему Joomla!-сайту с помощью "мостового" компонента наподобие Joomla! SMF Forum Component. Такие мосты позволяют использовать одну и ту же базу данных как для портала, так и для форума, что устраняет необходимость в отдельных учетных записях. Но с другой стороны, установка Joomla!-мостов сложна для начинающих администраторов. Здесь в качестве подходящей альтернативы стоит упомянуть Fireboard Forum. Установка проста, при этом происходит интеграция с Joomla! Помимо всего прочего в комплекте имеется несколько шаблонов и расширений форума. Более того, компонент основан на SMF, поэтому система шаблонов такая же. Форум не настолько гибок, как специальная система форума типа IPB, но для мелких и средних проектов Fireboard Forum может стать оптимальным решением.
Теперь, когда ваш портал имеет самое необходимое, почему бы не закачать на него какие-нибудь мультимедиа-файлы? Расширение
AllVideos Plugin позволяет администратору вставлять в статьи видеофайлы практически любого формата и выбрать способ их просмотра. Для этого требуется лишь вставить текст наподобие {youtube}Video_ID{/youtube}
в элемент содержимого (content item), и в выбранном вами месте появится видеоокно. Его размеры можно настроить в свойствах расширения, в административной панели Joomla!. Расширение AllVideos поддерживает следующие видеосервисы: Yahoo! Video, Google Videos, Vimeo, Metacafe, MySpace, MyVideo.de, iFilm и Jumpcut. Разумеется, можно просматривать локальные файлы форматов AVI, MPEG, MOV, FLV, MP3, WMV, WMA, MP4, RM и RAM. Для этого нужно воспользоваться тегами {avi}filename_without_extension{/avi}
.
Joomla! - замечательная система, для которой уже написаны тысячи расширений, от систем резервного копирования до текстовых редакторов. Все они предназначены для индивидуальных нужд разработчиков. Может быть вам нужно создать галерею картинок или список файлов в каталоге - в любом случае, взгляните на каталог расширений Joomla! и выберите нужный, исходя из рейтинга или своих предпочтений.