Myengine

Создание первого расширения

На этой странице мы подробно разберем процесс создания расширения. Мы будем создавать расширение, которое будет выводить на страницу количество ее просмотров.

Как это расширение будет работать? Оно будет при каждом обращении к странице считывать данные счетчика, увеличивать на единицу и обратно записывать.

Подготовка фалов

Для начала создадим в папке modules новую папку с именем counter, это будет название нашего расширения. После того как вы создали эту папку, в движке уже можно увидеть наличие расширения с именем counter. Чтобы убедиться, можете зайти в "Панель управления" и перейти в раздел Расширения. Там в списке вы увидите свое новое расширение, которое пока, что ничего не делает.

Далее в нашей созданной папке создадим файл, который будет встраиваться в страницу и выводить наш счетчик, файл будет называться "integration_page.php". Файлы именно с таким именем отвечают за встраивание в страницу сайта.

Откроем файл и впишем туда следующий php код:

<?php

$return = "Привет мир!!!";
return $return;
?>

В коде мы создали переменную и вернули её содержимое, именно это содержимое и встроится в страницу.

Теперь давайте встроим наше расширение в страницу. Делается это стандартным способом: создаем новую страницу, заполняем все поля, в месте где нужно выбрать "Модуль для страницы", выбираем наше расширение. Нажимаем "Сохранить" и переходим по адресу только, что созданной страницы, видим, что в странице выводится наш текст "Привет мир!!!".

Делаем счетчик

Мы все подготовили, теперь можно приступить к созданию счетчика. Модифицируем наш код:

<?php

// Создаем хранилище с именем myStorage
$myStorage = new EngineStorage('myStorage');
// Проверяем есть ли в нем ключ count
if($myStorage->iss('count')){
   // Если ключ есть, то сохраняем его значение в переменную $count и прибавляем 1
   $count = $myStorage->get('count') + 1;
}else{
   // Если ключа нет, то записываем в переменную 1
   $count = 1;
}
// Сохраняем в хранилище ключ count со значением переменной $count
$myStorage->set('count', $count);
// Формируем строку для вывода
$return = "Нас посетили $count раз";
// Выводим
return $return;
?>

Сохраняем и переходим на нашу страницу, видим, что счетчик начал работать.

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