Login / Sign Up


Enter site:
Login: 
Password: 


First time here?
 
Register [?]:
Registering allows you:
  • Purchase products from the product catalog and access them any time.
  • Ask questions to another specialists in IT
  • Publish your own Joomla extensions, soft or other products if you are developer or distributor
  • Add interesting weblinks and access them from any place
  • Watch the updates of the site and have special abilities that guests don't have
  • Watch the news of the service and new articles and get knowledge
Choose login:
Your Email:
Enter the result of operation (in digits):
30 + 6 = ? Update

Пишем компонент под Joomla 2.5 - (Часть 3) - Создаём каталог компонента и основные файлы PDF Print E-mail
Written by Максим   
Sunday, 02 March 2014 14:13
Liked:
15


Did not like: 0

Создание главного каталога компонента - com_megashop

Итак, создаем где-нибудь на локальном диске каталог com_megashop, а внутри него каталоги site, admin, media, а также два пустых файла - index.html и megashop.xml. В итоге получится вот такая картинка:

Создание файлов и каталогов для backend-части компонента

Теперь заходим в каталог admin и создаем следующие каталоги:

  • controllers - тут будут храниться файлы с классами контроллеров back-end части
  • css - для хранения файлов CSS-стилей, используемых для отрисовки элементов компонента внутри админки Joomla
  • help - для хранения справки для нашего компонента (на разных языках). Понадобится, если мы захотим написать инструкцию по использованию компонента
  • helpers - для хранения классов-помощников
  • language - здесь будут размещаться языковые файлы компонента
  • models - сюда будем помещать модели для административной части
  • sql - в этом каталоге будут храниться файлы с SQL-запросами для создания всех таблиц компонента в базе данных Joomla
  • tables - тут будут располагаться классы для работы с таблицами компонента
  • views - тут будут храниться файлы представлений, которые будут рисовать всё, что мы увидим в админке Joomla - относительно нашего компонента

После создания каталогов создадим пустые файлы:

  • access.xml - файл прав доступа для компонента для разных категорий пользователей
  • config.xml - файл всех параметров нашего компонента
  • controller.php - файл главного контроллера административной части
  • index.html - индексный файл, который предотвратит отрисовку содержимого каталога, если умный пользователь напрямую пропишет путь к админ-каталогу компонента
  • megashop.php - "входная" точка админ-части компонента. Его Joomla вызовет в первую очередь, когда мы будем обращаться через админку к компоненту

Созданные каталоги и файлы выглядят у меня вот так:

Создание файлов и каталогов для frontend-части компонента

Теперь переходим снова на уровень выше и заходим в созданный нами в начале каталог site. Там потребуется создать каталоги и файлы:

  • css - для хранения файлов CSS-стилей, предназначенных для отрисовки компонента на сайте. Это все стили, которые и будут формировать внешний "облик" компонента - то, что увидит пользователь сайта.
  • js - сюда будем помещать все JavaScript-файлы скриптов, jQuery-библиотеки, плагины jQuery и т.д., словом всё, что относится к скриптам. Они будут выполнять всю динамическую логику на стороне браузера, когда пользователь будет работать с частями компонента на сайте.
  • language - сюда поместим файлы локализации - с сообщениями, которые будут встречаться в нашем компоненте.
  • models - здесь будут храниться файлы моделей для frontend-части компонента
  • views - тут будут размещены файлы представлений, которые отрисуют разные части нашего компонента на сайте
  • controller.php - файл главного контроллера для frontend-части
  • index.html - индексный файл, который предотвратит отрисовку содержимого каталога, если умный пользователь напрямую пропишет путь к frontend-каталогу компонента
  • megashop.php - "входная" точка frontend-части компонента. С неё всегда начинается исполнение компонента, когда пользователь работает с частями компонента на сайте Joomla

У меня после создания всего вышеперечисленного вышло вот такое:

Создание каталога изображений - media/images

Снова выходим на уровень "вверх" и переходим к созданному каталогу media. Внутри него потребуется создать вложенный каталог images и пустой файл index.html. Получится следующее:

На этом этапе мы создали почти все основные каталоги и самые главные файлы компонента. Наполнение каталогов (например models, views и т.д.) будет осуществляться дальше по ходу текста статьи. Мне хотелось, чтобы мы вместе прошли этап создания всей файловой структуры компонента, чтобы далее, когда я буду ссылаться на какой-то файл, вам уже было понятно, где его создавать и редактировать.

Кодировка файлов

На данный момент, как вы заметили, мы создали просто "заглушки" - пустые файлы. Наполнять мы их будем позже. Но во избежание дальнеших проблем с кракозябрами я сразу хочу сказать вам, в какой кодировке вы должны набирать код всех классов и примеров, которые будут встречаться - это кодировка UTF-8. Joomla является мультиязычной системой, т.е. CMS системой, поддерживающей множество языков - вплоть до китайского с его иероглифами. Кодировка UTF-8 (в отличие например от windows-1251) способна поддерживать наборы языковых символов, встречающихся во всех странах мира. Для того, чтобы явно указать кодировку, достаточно установить любой редактор кода (например, Notepad++). Лично я пользуюсь очень хорошим редактором EditPlus (он платный), однако вам подойдет любой, поддерживающий сохранение файлов в кодировке UTF-8

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

Продолжение статьи >>




Last Updated on Sunday, 02 March 2014 19:10
 
Автор статьи: Damascus
Всего статей: 62
Рейтинг: 3111
Страница Google+: Google

Found Error?

Система Orphus

Site Statistics

Яндекс.Метрика

Our Pages


Allineed.Ru © 2009-2012 - Allineed.Ru - ответы на IT вопросы, статьи о разработке, IT и программном обеспечении. При использовании материалов сайта ссылка обязательна. Использование данного сайта и любой его части означает принятие условий Пользовательского Соглашения.
Allineed.Ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters. The Joomla! name and logo is used under a limited license granted by Open Source Matters the trademark holder in the United States and other countries.