Я пытаюсь заставить кэш Produclist работать в моем плагине.
Мой ext_localconf.php
if (!is_array($GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']['product_cache'])) {
$GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']['product_cache'] = [];
}
if( !isset($GLOBALS['TYPO3_CONF_VARS'] ['SYS']['caching']['cacheConfigurations']['product_cache']['frontend'] ) ) {
$GLOBALS['TYPO3_CONF_VARS'] ['SYS']['caching']['cacheConfigurations']['product_cache']['frontend'] = 'TYPO3\\CMS\\Core\\Cache\\Frontend\\VariableFrontend';
}
И мой контроллер
$cache = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Cache\CacheManager::class)->getCache('product_cache');
if(($products = $cache->get($cacheIdentifier)) === FALSE){
$objectManager = GeneralUtility::makeInstance(ObjectManager::class);
$productController = $objectManager->get(ProductController::class);
$productController->setSettings($this->settings);
$products = $productController->getEditedProducts($catId);
$cache->set($cacheIdentifier, $products, ['productajax'], 84600);
}
Нормальное содержимое, напримерСтрока, int или массив работает нормально, но когда я пытаюсь это сделать с DatabaseResultquerie, чем система с этой ошибкой: Call to a member function map() on null
(толькона get, set отлично работает)