
3538
- 4
Всем привет. Вот вопрос уже довольно старый на форуме "как сделать кнопку очистки папки кеша в движке" . Я там даже давал код который нашел на просторах интернета, но сам прикрутить так и не смог. Но несколько сайтов я перевел на двиг bixbite.site , это форк ngcms от Русика , и там в админке есть кнопка очистки кеша движка и плагинов. НУ и теперь не большая инструкция по установке очистки кеша для ngcms. Сразу поясняю все что я буду делать на последней ngcms и новой админке.
Открываем engine/skins/default/index.php
Ищем там вот этот код (примерно 115 - 116 строка)
Код:
<div class="navbar-custom-menu">
<ul class="nav navbar-nav">
Код:
<li><a href="admin.php?mod=extras&action=clearCacheFiles" title="Очистить кэш"><i class="fa fa-recycle" aria-hidden="true"></i></a></li>
Далее идем /engine/actions и открываем файл extras.php и там примерно после 17 строки добавляем
Код:
if ('clearCacheFiles' == $action)
clearCacheFiles();
Там же в директории открываем файл extra-config.php и после 28 строки добавляем
Код:
if ($plugin and 'clearCacheFiles' == $action)
clearCacheFiles($plugin);
Код:
// clear Cache Files
function clearCacheFiles($plugin = false)
{
$listSkip = '';
$cacheDir = $plugin ? get_plugcache_dir($plugin) : root . 'cache/';
$dirIterator = new RecursiveDirectoryIterator($cacheDir, RecursiveDirectoryIterator::SKIP_DOTS);
$iterator = new RecursiveIteratorIterator($dirIterator, RecursiveIteratorIterator::LEAVES_ONLY);
foreach ($iterator as $object)
if ($object->isFile() and !unlink($object->getPathname()))
$listSkip .= '
' . $object->getBasename();
if (!empty($listSkip)) {
msg(array('type' => 'error', 'text' => 'Не весь кэш удалось очистить!<hr>Список пропущенных файлов:' . $listSkip));
} elseif ($plugin) {
msg(array('text' => 'Кэш плагина очищен!'));
} else {
msg(array('text' => 'Кэш системы очищен!'));
}
// Clear cache OPCache
if(function_exists('opcache_get_status'))
opcache_reset();
// Create a protective .htaccess
create_access_htaccess();
}
Вот и все . Все работает, вычищаются все папки в папке кеша , и файлы в папке кеша,сами папки не удаляются.
Можешь почитать и вот эту статейку "Вставляем правильно дополнительное поле xfields"
Это тоже интересно
- 31.07.14Установка движка NGCMS
- 13.03.25Снова мучаем изображения
читать полностью
[/comment_full] [answer]--------------------
Ответ от{name}
{answer}[/answer] [quote]
irbees2008');" style="cursor: pointer;">ответить[/quote]
читать полностью
[/comment_full] [answer]--------------------
Ответ от{name}
{answer}[/answer] [quote]
irbees2008');" style="cursor: pointer;">ответить[/quote]
читать полностью
[/comment_full] [answer]--------------------
Ответ от{name}
{answer}[/answer] [quote]
irbees2008');" style="cursor: pointer;">ответить[/quote]
читать полностью
[/comment_full] [answer]--------------------
Ответ от{name}
{answer}[/answer] [quote]
irbees2008');" style="cursor: pointer;">ответить[/quote]