Апрель
18
2012

Использование TI Stat в других CMS

Меня уже несколько раз спрашивали как адаптировать код TI Stat к использованию в CMS отличных от WordPress. Я решил написать небольшую инструкцию, по тем средствам, которые нужны для успешного переноса кода на другие платформы.

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

Все важное находится в нескольких файлах

Yauth.php — класс для авторизации

Yreport.php — классы формирования отчетов

amcharts.js — файлы для визуализации графиков
amfallback.js
raphael.js

Создание объекта авторизации

ID можно получить создав новое приложение oauth.yandex.ru

На этом этапе наилучши образом будет серриализовать объект и сохранить в БД, чтобы каждый раз не запрашивать имя пользователя и пароль.

Функция которая получает список всех доступных счетчиков

 

На выходе получаем массив, в котором перечислены все доступные пользователю счетчику. Нужно организовать выбор подходящего и запоминание его id. Лучше всего записать его в поле $auth->counter_id

Генерация отчетов

Все графики хранят данные и настройки в XML файлах. Пути к этим файлам прописаны в файле Yreport.php, так что нужно найти строки завязанные на wordpress и поменять пути на те, в которых ваша CMS может записывать файлы и выдавать их посетителям.

Теперь создаем переменную, которая хранит настройки генерации отчетов

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

Я показываю генерацию всех доступных отчетов.

Именно функция ready() запускает генерацию отчетов. Если все прошло успешно, то возвращается true.

Показ графиков пользователю

Для начала нужно вызвать библиотеки визуализации

И для каждого графика вызвать функция визуализации

 Другие полезные вещи

Некоторые методы, которые могут быть полезны:

  • Для очистки объекта авторизации можно вызвать функцию $auth->clear();
  • Можно передать необязательный параметр в функцию отчета ready(true), тогда новый файл отчета будет сгенерирован независимо от состояния кеша.
  • Для генерации файла с внешним видом (settings.xml) можно воспользоваться онлайн генератором.

 

Если остались вопросы, то можно их задать в комментариях

Неправильная раскладка: bcgjkmpjdfybt еш ыефе d lheub[ сьы

Понравилась статья? Посоветуйте друзьям!

Metrika PHP Yandex статистика


Понравилась статья? Подпишись на рассылку по E-Mail или в RSS.