О нас
Разработчикам
Заметки
Переводчик
Транслитератор
Сравнить текст
Генератор пароля
Ip и информация
Декодировать JSON
Локация
О нас
Разработчикам
Заметки
Переводчик
Транслитератор
Сравнить текст
Генератор пароля
Ip и информация
Декодировать JSON
Локация
modx
us.content
Modx use modY; $modx = modY::getInstance('modY'); Положить данные в регистр $modx->setPlaceholder('sort', $sort); $modx->getPlaceholder('sort'); // получить Создать настройку в админке и вывести где угодно В админке кликнуть шестерёнку далее системные настройки, далее Создать новый параметр. Выбрать: Пространство имён Core или нужное Использовать: $param = $modx->getOption('param_code'); В tpl вывести снипет [[snipet_name]] smarty шаблонизатор Конкатенация в tpl ~ Главная src/Controllers/Resource/Index/Main.php $_SERVER['DOCUMENT_ROOT'] BASE_DIR со слешом в конце MODX_HTTP_HOST получить домен Env получить getenv('SITE_DOMAIN') $this->modx->config $this->resource()->xpdo Роуты core/config/routes.php src/Router/Builder.php События core/config/events.php Шаблоны core/elements Переводы $this->modx->lexicon(‘slug’); // Получить корзину $miniShop2 = $modx->getService('miniShop2'); $miniShop2->initialize('web'); $cart = $miniShop2->cart->get(); Debug tpl {var $name = $_modx->page['name']} {$name|dump} {'' | date: 'Y'} // Request $url = 'https://site.ru'; $uri = 'api'; $params = [ 'query' => [ 'param1' => 'value1', 'param2' => 'value2', ] ]; $client = new \GuzzleHttp\Client([ 'base_uri' => $url, 'verify' => false, 'connect_timeout' => 2, 'timeout' => 2, ]); $response = $client->request('post', $uri, $params); // $client->post($uri, $params); $status = $response->getStatusCode(); if ($status === 200) { $data = $response->getBody()->getContents(); $data = json_decode($data, true)['data'] ?? []; } // JSON Request try { $url = 'https://site.ru'; $uri = 'api'; $params = [ 'headers' => [ 'Content-Type' => 'application/json; charset=utf-8', ], // form_params query 'json' => [ 'param1' => 'value1', 'param2' => 'value2', ] ]; $client = new \GuzzleHttp\Client([ 'base_uri' => $url, 'verify' => false, 'connect_timeout' => 5, 'timeout' => 10, /*'auth' => [ 'login', 'password', ],*/ ]); $response = $client->post($uri, $params); $data = $response->getBody()->getContents(); } catch (\Exception $e) { $data = $e->getMessage(); } // Записать в логи use modY; use xPDO; $modx = modY::getInstance('modY'); $modx->log(xPDO::LOG_LEVEL_ERROR, $e->getAwsErrorCode()); // Cache кэширование $key = 'key'; $options = [ xPDO::OPT_CACHE_KEY => $key, // 'includes' можно указать раздел, тогда будет удалятся при удалении всего кэша из админки ]; $cacheManager = $modx->getCacheManager(); // Get cache $data = $cacheManager->get($key, $options); if ($data === false) { $expire = 30; // Seconds // Data to cache $data = []; // Set cache $cacheManager->set($key, $data, $expire, $options); } // Удалить кэш $cacheKey = 'cache_key'; $modx->cacheManager->refresh(['context' => 'web', 'resource' => $cacheKey]); // Удалить папку кэша $modx->cacheManager->deleteTree(MODX_CORE_PATH . 'cache/default');
Список