В данной статье расскажем, как добавить и вызвать свою библиотеку в CMS Opencart
Для добавления собственной или сторонней библиотеки в CMS Opencart, необходимо загрузить файл или папку в директорию /system/library/
Допустим, вы добавили папку с названием my_libraby, в которой лежит файл my_library.php.
Код library.php должен содержат следующую конструкцию
<?php class My_library { /* здесь идут методы и свойства */ }
Вызвать библиотеку можно из любого контроллера с помощью загрузчика, вот пример:
$this->load->library('my_library/my_library'); $my_lib = new My_library(); // далее можем пользоваться нашей библиотекой $my_lib->method();
Мы можем добавить библиотеку в автозагрузку и пользоваться ей без дополнительной загрузки библиотеки. Сделать это можно следующим образом.
Для версии Opencart 1.5:
Открываем файл /index.php и находим следующий код:
require_once(DIR_SYSTEM . 'library/cart.php');
Добавляем туда свою библиотеку:
require_once(DIR_SYSTEM . 'library/cart.php'); require_once(DIR_SYSTEM . 'library/my_library/my_library.php');
Находим строку
$registry->set('cart', new Cart($registry));
И добавляем туда:
$registry->set('cart', new Cart($registry)); $registry->set('my_library', new My_library($registry));
Теперь можно вызывать методы и свойства библиотеки без загрузки библиотеки. Сразу так:
$this->my_library->method();
Для Opencart версии 2.3 делается намного проще. Находим файл /system/config/default.php, находим там строку:
$_['config_autoload'] = array();
И добавляем туда свою библиотеку:
$_['config_autoload'] = array('my_library/my_library');
Теперь аналогично мы можем вызывать из контроллера библиотеку.