воскресенье, 24 октября 2010 г.

Подведём итоги и начнём практиковаться

Вообщем хотелось бы полностью подвести итог всему, что мы изучили, и начать писать компонент. Для написания компонента, конечно, ещё нужно создать файл xml, запихнуть всё в zip файл + создать файл, который будет создавать таблицу в базе данных для нашего компонента. Пойду покурю и продолжу. +)

Покурил, начал искать информацию. Нашел интересный источник тут. Теперь может и оттуда буду брать инфу. Ещё нашел заметки для joomla . Жаль не нашёл их до того, как начал писать блог)) Ну раз начал, всё-таки надо закончить

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



 Тут 2 компонента. Один из них пользовательский, другой для администратора. Видно, что в каждом из них есть точка входа, которая называется также как и компонент ( в случае с админ частью admin.название_компонента.php.

Файл index.html создан для того, чтобы, если по какой-то нелепой случайности пользователь перейдёт в этот каталог, то он не увидит структуру организации каталога, а увидит тот самый файл.

Далее рассмотрим xml файлы. Файлы, хранящиеся в этих компонентах не несут интересной для нас информации, мы рассмотри файл из книги Хаген Графа. Вот такие файлы нам придётся всегда писать для того, чтобы установить компонент:


<?xml version="l.0" encoding="utf 8"?> 
<!DOCTYPE install SYSTEM "http://dev.joomla.Org/xml/l.5/ 
              component install.dtd">  
<install type="component" version="l.5.0">  
<name>Auto</name> 
<creationDate>November 2007</creationDate>  
<author>Hagen Graf</author> 
<authorEmail>hagen.graf@gmail.com</authorEmail> 
<authorUrl>http://www.cocoate.com</authorUrl>  
<copyright>All rights reserved</copyright>  
<license>GNU/GPL</license>  
<version>Component Version String</version> 
<description>description of the component ... </description> 
<files folder="site"> 
<filename>index.html</filename> 
<filename>auto.php</filename> 
<filename>controller.php</filename> 
<filename>views/index.html/filename> 
<filename>views/auto/index.html</filename> 
<filename>views/auto/view.html.php</filename> 
<filename>views/auto/tmpl/index.htrnK/filename> 
<filename>views/auto/tmpl/default.php</filename> 
<filename>models/auto.php</filename> 
</files> 
<install> 
<sql> 
<file charset="utf8" driver="mysql">install.sql</file> 
</sql> 
</install> 
<uninstall> 
<sql> 
<file charset="utf8" driver="mysql">uninstall.sql</file> </sql> 
</uninstall> 

<administration> 
<menu>Joomla! 1.5 Book Auto</menu> 
<files folder="admin"> 
<filename>index.html</filename> 
<filename>admin.auto.php</filename> 
<filename>controller.php</filename> 
<filename>controllers/auto.php</filename> 
<filename>controllers/index.html</filename> 
<filename>models/auto.php</filename> 
<filename>models/autos.php</filename> 
<filename>models/index.html</filename> 
<filename>views/autos/view.html.php</filename> 
<filename>views/autos/index.html</filename> 
<filename>views/autos/tmpl/default.php</filename> 
<filename>views/autos/tmpl/index.htrnK/filename> 
<filename>views/auto/view.html.php</filename>  
<filename>views/auto/tmpl/form.php</filename> 
<filename>views/auto/index.html/filename> 
<filename>views/auto/tmpl/index.html/filename> 
<filename>tables/auto.php</filename> 
<filename>tables/index.html/filename> 
<filename>install.sql/filename> 
<filename>uninstall.sql/filename> 
</files> 
</administration>  
</install>


У нас есть секция <files folder="site"> в которой просто описываются файлы, которые существуют в архиве(а мы запихнем наш компонент в архив). Далее идут ссылки на файл install.sql и uninstall.sql, которые соответственно создают и удаляют таблицу из базы данных. Далее идёт раздел административной части. Сначала мы задаём название нашего компонента(как он будет называться в меню в админской части). Задаётся базовая директория <files folder="admin">. И опять перечесляются все файлы.

Думаю основы я описал. Надеюсь, было всё понятно. Теперь перейдём к практике. Тех знаний, которых не хватит..мм... короче выучим всё походу дела)) Ужас, надоела теория, писать уже хочу))

Комментариев нет:

Отправить комментарий