Вступление для создания компонентов (Часть 1)

1520
Всем привет!
Перед началом создания своего компонента давайте разберем файловую структуру InstantCMS и структуру БД!

Файловая структура

Папка components - в этой папке содержатся каталоги всех компонентов, которые выводятся на сайте!
В каждом из этих каталогов есть файлы которые отвечают за вывод компонентов! Обязательным файлом есть - frontend.php. В котором должна присутсвовать функция с одноименным названием компонента. Общий вид этого файла такой:

Код PHP:
<?
if(!defined('VALID_CMS')) { die('ACCESS DENIED'); }

function имя компонента(){// 

    $inCore = cmsCore::getInstance();//Подключаем главное ядро(движок) сайта, который содержит главные ф-ции
    $inDB = cmsDatabase::getInstance();//Подключаем БД


....//Тело функции компонента

} 
?>

Этот файл отвечает за вывод на сайте, а файлы, которые отвечают за вывод компонента в админке, находятся в каталоге admin\components\<название компонента>. Там главным и обязательным файлом является backend.php, который по структуре похож на frontend.php.

За вывод компонента на сайте еще отвечают файлы .tpl с папки шаблона! Их название может быть любым, но как правило оно такое:
com_<название компонента>_<название страницы компонента>

На сегодня пока все! Разберитесь с файловой структурой InstantCMS, в следующем посте посмотрим на БД и разберем ее по косточкам  smile  И потом уже преступим к созданию своего компонента!!!!
P.S. Жду комментариев и пожеланий для следующих постов... Первый пост, так что сильно не критикуйте...  laugh

Оригинал данной статьи >>>
Открытие блога! | Вступление для создания компонентов (Часть 2)
Комментарии (17)
0 28 июля 2009 в 12:15 +3
Нормальный такой пост, продолжай в том же духе joke
Юра 28 июля 2009 в 12:25 +3
Спасибо! Буду держать марку smile
Думаю до конца недели напишем уже свой модуль!
0 28 июля 2009 в 13:16 +1
Какой функционал у модуля планируется? Я с ПШП не знаком, вопрос есть, а например модули от джумлы можно адаптировать?
Юра 28 июля 2009 в 13:34 +3
Буду думать! Жду предложений от вас и от всех! Компонент и модуль будем делай простой!
Сложные делаю только за деньги! А с джумлой не хочу даже работать, проще с нуля написать суто под Инстант!
0 28 июля 2009 в 14:40 +2
можно нет никаких сложностей!
Юра 28 июля 2009 в 14:43 +2
Никто не говорит что не можно, просто лично для меня проще с нуля! И на сколько я знаю к Джумле все модули много весят! А я за быстроту загрузки сайта!
lezginka.ru 28 июля 2009 в 14:48 +1
примеры есть ?
0 28 июля 2009 в 13:42 +1
Да у меня спроса на компоненты и модули нет, мне стандартных пока хватило) А джумла тебе чем не угодила?) Там же куча хороших модулей и компонентов, которые в одиночку написать думаю будет сложновато, а адаптировать вполне возможно. А кстати насчёт предложений, зайди в блог к widik у него там есть идейки, самая перспективная это афиша, вот этот модуль реально пригодился бы.
0 28 июля 2009 в 14:02 +1
Да там же свои константы, свои переменные...запаришься с ними, пока месь на инстантовские переставишь)))
Юра 28 июля 2009 в 14:04 +2
Во-во! А в Инстанте все намного проще, что и с нуля можна сделать любой компонент! Было бы только время и желание!
0 28 июля 2009 в 14:43 +1
В моём случае желания не достаточно))) нужны ещё и знания ПШП, коих почти нет)))
lezginka.ru 28 июля 2009 в 14:43 +2
Юра, хорошое дело делаешь.
а идей у нас валом, реализовать некому :)
------------------------------------------------
по поводу БД, все с этим столкнуться, так как бывают сбои в БД, а зная "кто и за что отвечает" легче разобрать.
нужно подробно расписать
какие таблицы за что отвечают, "статьи", "комментарии" и т.д.
----------------

по поводу идей.
в конструкторе форм нет возможности прикрутить файл, а надо
Юра 28 июля 2009 в 14:48 +2
Спасибо!
Возьму во внимание твое пожелание! Буду работать!
О БД на этой недели ждите описание!
lezginka.ru 28 июля 2009 в 14:47 +1
по поводу идей.
в багтрекере есть "пожелания", там можно посмотреть что-то попроще.
и еще , как-то была идея создать валюту сайта, система баллов
Юра 28 июля 2009 в 14:52 +2
Буду по чуть-чуть реализовывать! Если бы еще кто-нибудь спонсировал это дело - было бы быстрее!
smile

Буду в свободное время Вам предоставлять бесплатные модули, а так нет времени не халяву все делать, ведь кушать то хочется laugh
lezgin 28 июля 2009 в 17:33 +1
InstantCMS Guest
Юра, спонсоры тоже будут, если не потеряешься.
кстати,за систему баллов, были люди готовые частично спонсировать.
платный совет(потом рассчитаемся): - сделай пару нужных вещиц, чтобы народ видел, как рекламу для будущих спонсоров
lezginka.ru 28 июля 2009 в 19:20 +1
Юра,немного не по теме, но если знаешь:

не работает ссылка "комментарии" в фотогалерее, как исправить ?
т.е. при попытке добавить комментарии, окно не открывается и ничего не происходит.