DataLife Engine API

Дорогі друзі,

починаючи з версії DataLife Engine v.8.0 було прийнято рішення почати стандартизацію написання сторонніх модулів для DataLife Engine. Для цього в скрипті розробляються API функції, які дозволяють отримати стандартизований доступ до даних скрипта, і в цій статті хочу написати трохи докладніше про цю нової можливості. Деякі розробники запитають, а для чого цю потрібно? Адже наші модулі прекрасно працюють і без використання API. API призначений для написання модифікацій сумісних зі старими і майбутніми версіями скрипта. У разі використання API для отримання даних з бази, ви можете бути впевненими що даний код буде працювати і в майбутніх версіях, тим самим полегшується перевірка і адаптація коду при виході нової версії. Також при використанні API вам немає необхідності писати власні функції для вибірки даних, немає необхідності підключати і оголошувати необхідні для роботи з БД класи. Досить просто підключити файл API, і почати використовувати його функції, все інше він бере на себе.

Розглянемо невеликий приклад використання API. Наприклад, нам необхідно отримати всю інформацію про користувача з іменем “admin”. Для цього використовуємо дуже простий код:
include_once (‘engine/api/api.class.php’);
$info = $dle_api->take_user_by_name(‘admin’);
В результаті виконання цього невеликого коду змінної $info буде знаходиться вся інформація з профілю користувача з ім’ям admin. При цьому вам немає необхідності замислюватися є підключення до БД чи ні, підключені чи ні необхідні класи. Цей код, ви можете використовувати як всередині файлів самого скрипта DLE, так і просто в інших скриптах, що не мають відношення до DLE. Тим самим ви можете організовувати стандартизовані інтеграції скрипта DLE, з іншими скриптами. Наприклад форумами.

Розробка повноцінного API, тільки розпочато і на даний момент API має дуже обмежений набір функцій, зв’язаний в основному з роботою з користувачами сайту. Повний список існуючих на даний момент функцій ви можете подивитись у файлі engine/api/readme.txt. Тому ми просимо всіх зацікавлений у даному API розробників відвідати спеціально створену для цього тему на форумі і залишити свої побажання про те, які нові функції ви хочете бачити в нових версіях. Тому що тільки спираючись на ваші потреби можна створити повноцінний API, що охоплює всі аспекти взаємодії з скриптом.
68