MODX. Подключение внешних php файлов
Отредактировано: 19 Января 2018
Поскольку MODX кеширует файлы, так просто подключить свой php класс или библиотеку не получится. Для того чтобы это сделать, необходимо добавить файл до окончания инициализации MODX.
Будьте внимательны, неправильное указание пути может привести к 500 ошибке при попытке попасть в административную панель, которую можно исправить только c наличием доступа к SQL базе и FTP.
Создаем плагин привязанный к событию OnMODXInit
Идем на вкладку элементы, нажимаем кнопку «Новый плагин», даем ему имя и указываем следующий код. На вкладке «системные события» ставим галку напротив OnMODXInit
switch ($modx->event->name) {
case 'OnMODXInit':
// Укажем путь до файла
$file = MODX_CORE_PATH . 'classes/my.class.php';
if (file_exists($file)) {
require_once $file;
}
break;
}
Если вы все же нарвались на 500 ошибку, удалите плагин с помощью phpMyAdmin в таблице prefix_site_plugins, и удалите папку с кешем /core/chache
Вариант с инициализацией MODX в классе/файле/библиотеке
/* Подключаем MODX */
require_once '/absolute/path/to/modx/config.core.php';
require_once MODX_CORE_PATH.'model/modx/modx.class.php';
$modx = new modX();
$modx->initialize('web');
$modx->getService('error','error.modError', '', '');
$classPath= MODX_CORE_PATH . 'classes/';
if (file_exists($classPath)) {
$files= scandir($classPath);
foreach ($files as $file) {
if (preg_match('/.+\.class.php$/',$file)) {
require $classPath . $file;
}
}
}
Здравствуйте!
Позвольте представиться, меня зовут Марина. Более 10 лет я занимаюсь обслуживанием сайтов и развитием интернет проектов. Если вы хотите избавиться от хлопот связанных с созданием и поддержкой сайта, тогда вы попали по адресу. При работе с сайтами я предоставляю качественные услуги, ориентируясь на ваши индивидуальные потребности. Для связи со мной воспользуйтесь формой обратной связи.