Матвей Земсков

Заметки веб-мастера

Вторник, 22 января 2013 16:27

Создаем компонент с помощью Joomla Component Creator

Оцените материал
(4 голосов)

Для удобства разработки компонентов CMS “Joomla” в сети существую сервисы, с помощью которых за несколько шагов можно создать компонент, включая всю структуру папок и файлов, а также таблиц базы данных. Разработчикам, использующим эти сервисы, не приходится создавать всю структуру компонента вручную, что сильно экономит их время. Об одном из таких сервисов и пойдет речь в этой статье. Этот онлайн-сервис называется “Joomla Component Creator” и доступен по адресу http://www.notwebdesign.com/joomla-component-creator/. Регистрация несложная и занимает не более 5 минут. Есть 2 варианта аккаунтов – обычный с ограниченными возможностями сервиса и премиум, с полным доступом ко всем функциям.

Порядок работы.

После прохождения процесса регистрации, пользователю становится доступна возможность создавать компоненты. На главной странице своего аккаунта перечислены уже созданные компоненты “Joomla”, а также кнопка, запускающая процесс создания нового компонента. Моя страница пока пуста - я не создал ни одного компонента.

Личная страница пользователя Joomla Сomponent Сreator

Процесс создания компонента состоит из нескольких шагов. Давайте рассмотрим их по порядку.

Шаг 1.

На первом шаге нужно ввести все данные о новом компоненте: название, описание, выбрать иконку компонента (можно выбрать из предлагаемого списка или загрузить свою), указать версию компонента, выбрать версию системы “Joomla”, под которую создается компонент, а также заполнить поля данными о лицензии, авторских правах и об авторе.

Вводим данные о новом компоненте для Joomla

Для того чтобы показать процесс создания шаблона - я решил создать простейший компонент “Joomla”, который просто будет выводить на экран текст “Hello, world!”. Назвал его “com_hello”. Данные из полей формы будут сохранены в файле hello.xml. После заполнения нажимаем на кнопку “Save Component” и переходим к следующему шагу.

Шаг 2.

На втором шаге пользователь может создать таблицы, в которых будут храниться данные компонента. При установке эти таблицы будут добавлены в базу данных “Joomla”. Мой будущий компонент не будет использовать базу данных, поэтому я пропущу этот шаг. Кстати уже сейчас можно создать архив с компонентом. Для этого нужно нажать на кнопку “Build component”, расположенную в правой части страницы.

Запускаем процесс создания таблиц компонента для базы данных Joomla

Тем не менее, я опишу поля, которые нужно заполнить на этом шаге. Нажимаем на кнопку “Add a Table” и видим форму для заполнения.

Форма для создания таблицы базы данных Joomla

Table name – имя таблицы в базе данных (вместо решетки во время установки компонента будет подставлен префикс, используемый в базе данных);

Storage engine – выбираем тип создаваемой таблицы (по умолчанию значение – “Server Default”). Доступны следующие типы таблиц:

  • MyISAM – одна из основных систем хранения данных в MySql. Таблицы такого типа показывают хорошие результаты при запросах SELECT.
  • CSV – при использовании этой системы хранения данные хранятся в текстовых файлах, для разделения внутри одной записи используется «;»
  • MRG_MYISAM – псевдоним типа таблиц MERGE. Может объединять несколько «одинаковых» таблиц в одну. Объединяться могут таблицы, имеющие поля с одинаковыми типами и именами, расположенные в одном и том же порядке во всех таблицах. Индексы также должны совпадать.
  • BLACKHOLE – по-русски «черная дыра». Отражает свое название при работе с данными. Принимает данные, но не хранит их. Поддерживает все виды индексов.
  • InnoDB – тип таблиц с высокой надежностью хранения данных. Поддерживаются транзакции и внешние ключи
  • Archive- используется для хранения больших объемов данных. Не поддерживает индексы. Операторы DELETE, UPDATE, REPLACE не поддерживаются.
  • Memory – тип таблиц также известный как “HEAP”. Хранит данные в памяти, поэтому он не надежен – данные пропадут после остановки сервера. Используется только для временных таблиц

Подробнее обо всех системах хранения данных вы можете почитать в руководстве по MySql.

Collation – список для выбора кодировки будущей таблицы (значение по умолчанию – “utf_general_ci”);

Admin views - Генерация файлов для 2 видов (View) для административной части: списка элементов и формы для редактирования каждого элемента;

Frontend views – Генерация файлов для 2 видов (View): списка элементов и подробного описания каждого элемента;

Individual ACL – индивидуальный контроль доступа к элементам;

Сохраняем результаты заполнения формы, нажав на кнопку “Create Table” – из низ формируются файлы install.mysql.utf8.sql и uninstall.mysql.utf8.sql. Эти файлы находятся в папке /administrator/sql внутри архива с компонентом.

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

Шаг 4.

На этом шаге вы сможете получить результат ваших действий. Нажимаем на кнопку “Build component” и переходим на страницу с результатами. После открытия этой страницы, начинается загрузка компонента “Joomla”.

Результат создания компонента Joomla

Преимущества платного использования.

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

Альтернативы Joomla Component Creator.

Альтернативой инструменту “Joomla Component Creator” может служить приложение “Marco's Component Maker for Joomla! 1.5”. Оно предназначено для работы в различных операционных системах. Однако, на момент написания статьи на сайте разработчика была доступна версия 1.5.2, созданная еще в январе 2011 года.

Прочитано 17163 раз
Мои услуги

Предлагаю следующие услуги:

  • Верстка шаблона сайта из дизайн-макета для CMS «1С-Битрикс Управление сайтом» и CMS “Joomla”
  • Создание форм различной сложности (обратная связь, анкеты и тп) для указанных CMS
  • Настройка и кастомизация компонентов и модулей для указанных CMS
  • Доработка модулей и компонентов для указанных CMS, добавление нестандартного функционала
  • Разработка лендингов (landing-pages)

По все вопросам обращайтесь через форму обратной связи

Скачать

Предлагаю вашему вниманию:

Наверх