Основы разработки компонентов для Joomla! CMS 1.5

Автор работы: Пользователь скрыл имя, 16 Ноября 2010 в 16:53, Не определен

Описание работы

Курсовая работа

Файлы: 1 файл

Курсовая работа Колмаков Р.А..doc

— 506.00 Кб (Скачать файл)

         {

             $query = ' SELECT * '

                 . ' FROM #__hello '

             ;

             return $query;

         }

         function getData()

         {

             if (empty( $this->_data ))

             {

                 $query = $this->_buildQuery();

                 $this->_data = $this->_getList( $query );

             }

             return $this->_data;

         }

     }

2.9. Создание вида компонента для административного интерфейса (файл /admin/views/hellos/view.html.php)

     При реализации Вида компонента используется метод get() класса JView. Общий порядок работы Вида: первая строка берет данные из модели, вторая помещает данные в шаблон, третья отображает данные.

     Таким образом листинг файла /admin/views/hellos/view.html.php имеет следующий вид:

     <?php

     defined('_JEXEC') or die();

     jimport( 'joomla.application.component.view' );

      

     class HellosViewHellos extends JView

     {

      function display($tpl = null)

         {

             JToolBarHelper::title( JText::_( 'Hello Manager' ), 'generic.png' );

             JToolBarHelper::deleteList();

             JToolBarHelper::editListX();

             JToolBarHelper::addNewX();

           

            $items =& $this->get( 'Data');

             $this->assignRef( 'items', $items );

      

             parent::display($tpl);

         }

     } 

2.10. Создание шаблона вида для административного интерфейса (файл /admin/views/hellos/tmpl/default.php)

     Как отмечалось выше, шаблон получает данные от Вида и осуществляет их вывод.

     В разрабатываемом компоненте отобразим данные через цикл в виде простой таблицы:

     <?php defined('_JEXEC') or die('Restricted access'); ?>

     <form action="index.php" method="post" name="adminForm">

     <div id="editcell">

         <table class="adminlist">

         <thead>

             <tr>

                 <th width="5">

                     <?php echo JText::_( 'ID' ); ?>

                 </th>

                 <th>

                     <?php echo JText::_( 'Greeting' ); ?>

                 </th>

             </tr>           

         </thead>

         <?php

         $k = 0;

         for ($i=0, $n=count( $this->items ); $i < $n; $i++)

         {

             $row =& $this->items[$i];

             ?>

             <tr class="<?php echo "row$k"; ?>">

                 <td>

                     <?php echo $row->id; ?>

                 </td>

                 <td>

                     <?php echo $row->greeting; ?>

                 </td>

             </tr>

             <?php

             $k = 1 - $k;

         }

         ?>

         </table>

     </div>

     <input type="hidden" name="option" value="com_hello" />

     <input type="hidden" name="task" value="" />

     <input type="hidden" name="boxchecked" value="0" />

     <input type="hidden" name="controller" value="hello" />

     </form>

2.11. Создание установочного файла компонента (файл hello.xml)

     Joomla позволяет устанавливать компоненты вручную, скопировав файлы по FTP протоколу, но лучшим вариантом является использование установочного файла для пакетной загрузки файлов и установки компонента.

     Установочный XML файл может содержать разнообразную  информацию и инструкции по установке:

    • Детали о компоненте и авторе компонента;
    • Список файлов, которые должны быть установлены;
    • Внешние SQL файлы, которые содержат запросы базы данных, отдельно для установки и деинсталляции компонента.
 
 
 
 

     Листинг установочного файла hello.xml:

     <?xml version="1.0" encoding="utf-8"?>

     <!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/component-install.dtd">

     <install type="component" version="1.5.0">

      <name>Hello</name>

     <!-- Далее идут необязательные  элементы-->

      <creationDate>20.02.2009</creationDate>

       <author>Имя автора</author>

      <authorEmail></authorEmail>

      <authorUrl>http://www.example.org</authorUrl>

      <copyright>GNU/GPL</copyright>

      <license>Информация о лицензии</license>

       <!--  Номер версии сохраняется как строковое значение в таблице компонентов -->

      <version>Версия компонента</version>

      <!-- Описание необязательно, и по умолчанию равно имени компонента -->

      <description>Описание  компонента ...</description>

      

      <!--Копирование  файлов в лицевую часть сайта -->

     <files folder="site">

       <filename>index.html</filename>

       <filename>hello.php</filename>

       <filename>controller.php</filename>

       <filename>views/index.html</filename>

       <filename>views/hello/index.html</filename>

       <filename>views/hello/view.html.php</filename>

       <filename>views/hello/tmpl/index.html</filename>

       <filename>views/hello/tmpl/default.php</filename>

       </files>

      

      <administration>

        <!--меню в административном интерфейсе -->

       <menu>Hello World!</menu> 

       <!-- копирование  файлов в административную часть сайта -->

       <files folder="admin">

        <filename>index.html</filename>

        <filename>admin.hello.php</filename>

       </files> 

      </administration>

     </install> 

     Как видно из вышеприведенного листинга, в архиве с компонентом должно быть две директории: site и admin.  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Заключение

 
 
 

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

     Остались  в прошлом времена, когда для разработки крупного интернет-сайта необходимо было писать вручную сотни или тысячи страниц HTML. В современном мире достаточно выбрать подходящую систему управления содержимым и за несколько минут настроить интернет-портал, на разработку которого во времена начального развития Интернета потребовались бы месяцы.

     В первой главе курсовой работе были изучены основные средства, используемые для разработки интернет-сайта, в  частности, язык программирования PHP, СУБД MYSQL, веб-сервер компании Microsoft – IIS, а также наибольшее внимание уделено системе управления содержимым Joomla CMS.

     Во  второй части курсовой работы пошагово описаны и разобраны основы разработки компонентов для этой системы, как наиболее расширяемой части сайта Joomla CMS на примере простейшего компонента «Hello», выводящего приветствие посетителю сайта из базы данных проекта.

Список  использованной литературы

 
  1. Рассохин  Д.Е., Лебедев А.Г. World Wide Web – информационная паутина в сети Интернет. – М.:Техиздат, 2002. –115 с.
  2. Интернет // Википедия – свободная энциклопедия. Страница «Интернет» - http://ru.wikipedia.org/wiki/Internet
  3. Общая статистика интернет-сайтов // Сайт компании «Netcraft». Страница «May 2009 Web Server Survey» - http://news.netcraft.com/archives/2009/05/27/may_2009_web_server_survey.html
  4. Экслер А.Б. Укрощение Интернета, или Самый полный и понятный самоучитель работы в Сети. – М.:НТ Пресс, 2007. –944 с.
  5. PHP // Википедия – свободная энциклопедия. Страница «PHP» - http://ru.wikipedia.org/wiki/PHP
  6. Бенкен Е.С. PHP, MySQL, XML: программирование для Интернета. – С. Пб.:BHV, 2008. –570 с.
  7. Харрис Э. PHP/MySQL для начинающих. – С. Пб.:Издательство «КУДИЦ-Образ», 2005. –384 с.
  8. Конверс Т.А. PHP 5 и MySQL. Разработка и внедрение. Библия пользователя. – М.: «Вильямс», 2006. –1216 с.
  9. MySQL // Википедия – свободная энциклопедия. Страница «MySQL» - http://ru.wikipedia.org/wiki/MySQL
  10. Введение в MySQL // Русское сообщество разработчиков MySQL. Раздел «Документы». Страница «Введение». - http://www.mysql.ru/docs/ilyin/
  11. CMS // Википедия – свободная энциклопедия. Страница «Системы управления содержимым» - http://ru.wikipedia.org/wiki/Системы_управлния_содержимым
  12. Joomla! // Википедия – свободная энциклопедия. Страница «Joomla!» - http://ru.wikipedia.org/wiki/Joomla
  13. Хаген Г.Ф. Создание веб-сайтов с помощью Joomla! 1.5 / Пер. с англ. – М.:Вильямс, 2008. -352 с.
  14. Рамел Д.А. Joomla! / Пер. с англ. – С. Пб.:BHV, 2008. -572 с.
  15. Единый указатель ресурсов // Википедия – свободная энциклопедия. Страница «URL» - http://ru.wikipedia.org/wiki/URL
  16. Веб-сервер Apache // Википедия – свободная энциклопедия. Страница «Apache» - http://ru.wikipedia.org/wiki/Apache
  17. Веб-сервер IIS // Википедия – свободная энциклопедия. Страница «Apache» - http://ru.wikipedia.org/wiki/IIS
  18. Трехуровневая архитектура // Википедия – свободная энциклопедия. Страница «Трехуровневая архитектура» - http://ru.wikipedia.org/wiki/Трехуровневая_архитектура
  19. Результаты ежеквартального опроса профессиональных участников рынка веб-разработок // Веб-сайт CMS Magazine – аналитический портал рынка веб-разработок. Страница «Исследования» - http://research.cmsmagazine.ru/

Информация о работе Основы разработки компонентов для Joomla! CMS 1.5