В этом уроке мы разберем простой пример создания плагина выводящего текст Hello World. Для начала выполнения урока вам необходимо заранее скачать и установить актуальную на данный момент версию Cotonti (Siena 0.9.18) на ваш локальный веб-сервер или хостинг.

  1. Для начала создадим папку с именем плагина hello в директории plugins/. 
  2. В директории плагина создадим установочный файл с именем hello.setup.php и следующим содержимым:
    <?php
    /* ====================
    [BEGIN_COT_EXT]
    Name=Hello
    Description=
    Version=0.0.1
    Date=2015-aug-23 
    Author=Bulat Yusupov (devkont)
    Copyright=(c) CMSWorks Team 2010-2015
    Notes=BSD License
    Auth_guests=R
    Lock_guests= 
    Auth_members=R
    Lock_members=
    [END_COT_EXT]
    
    [BEGIN_COT_EXT_CONFIG]
    [END_COT_EXT_CONFIG]
    ==================== */
    ?>

     

  3. В директории плагина создадим еще один файл, в котором мы и будем прописывать код плагина. Назовем его просто hello.php и в начале файла вставим следующие строки:
    <?php
    
    /* ====================
      [BEGIN_COT_EXT]
      Hooks=standalone
      [END_COT_EXT]
      ==================== */
    
    defined('COT_CODE') or die('Wrong URL');
    
    Хук standalone говорит системе, что это самостоятельная часть плагина выводимая вместе с шапкой и подвалом сайта.
     
  4. Так как Cotonti это MVC-фреймворк, то вывод информации осуществляется через шаблоны (.tpl файлы). Обычно все шаблоны плагина размещаются в директории plugins/название_плагина/tpl/. Создадим такую директорию для нашего плагина и в ней создадим шаблон с именем hello.tpl. 
     
  5. Теперь научимся декларировать шаблон в основном коде в hello.php. Это делается просто: 
    $mskin = cot_tplfile('hello', 'plug');
    $t = new XTemplate($mskin);
    
    

    Здесь мы создаем объект $t (экземпляр класса XTemplate) и указываем в его свойствах имя нашего шаблона. Дальше мы будем работать с объектом $t и сможем создавать в нем любые тэги для использования в шаблоне.

  6. Теперь давайте создадим тэг {HELLO}, которому присвоим значение "Hello World!":

    $t->assign('HELLO', 'Hello World!');

    С помощью метода assign мы сообщаем имя тэга и его значение через запятую.
     

  7. Теперь мы можем прописать тэг в нашем шаблоне hello.tpl:

    <!-- BEGIN: MAIN -->
    
    <h1>{HELLO}</h1>
    
    <!-- END: MAIN -->

     

  8. Осталось установить плагин через административную панель Cotonti и перейти на страницу плагина по адресу: http://ваш_сайт.ру/index.php?e=hello, где будет выведена наша заветная фраза.

 

Чтобы скачать исходники и видеть комментарии, пожалуйста, авторизуйтесь или зарегистрируйтесь на сайте.