Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Как сделать Очистку кэша на любой странице админпанели?

Как сделать Очистку кэша на любой странице админпанели?


     23.05.2019    очистка кэша    Общие вопросы, jQuery, Хаки    2276

вопрос
Как сделать Очистку кэша на любой странице админпанели?


У меня DLE 13.2. Есть хак для версии DLE 12.0, но он устаревший. В целом вроде работает, но после нажатия кнопки "Очистить кэш" открывается белая страница с надписью - кэш очищен. Нужно доработать код, чтобы стандартная кнопка "Очистить кэш" в виде значка была на всех страницах (вверху справа) и при нажатии происходила очистка кэша и выскакивало стандартное небольшое сообщение, что кэш очищен.

Старый хак для DLE 12.0:

1) В файле engine/inc/main.php найти и удалить код:
$('#clearbutton').click(function() {

	$.get("engine/ajax/adminfunction.php?action=clearcache&user_hash={$dle_login_hash}", function( data ){

		$('#cachesize').html('0 b');
		Growl.info({
			title: '{$lang[p_info]}',
			text: data
		});

	});
	return false;
});

2) В файле engine/skins/javascripts/application.js найти код:
$('#full_screen_toggle').on('click',function(e) {

и над ним вставить такой код:
$("#clearbutton, #clearbutton2").on("click", function(e){
	e.preventDefault();

	$.get("engine/ajax/adminfunction.php?action=clearcache&user_hash=" + dle_login_hash, function(data){

		$("#cachesize").html("0 b");
		Growl.info({
			title: p_info,
			text: data
		});

	});

	return false;
});

3) В файле engine/skins/default.skin.php найти код:
var dle_login_hash = '{$dle_login_hash}';

и над ним вставить такой код:
var p_info = '{$lang['p_info']}';

найти код:
<li><a href="{$config['http_home_url']}" title="{$lang['skin_view']}" target="_blank"><i class="fa fa-globe"></i><span class="visible-xs-inline-block position-right">{$lang['skin_view']}</span></a>

и над ним вставить такой код:
<li><a href="/engine/ajax/adminfunction.php?action=clearcache&user_hash={$dle_login_hash}" id="clearbutton" title="{$lang['btn_clearcache']}" style="background:#e53a36;"><i class="fa fa-trash"></i><span class="visible-xs-inline-block position-right">{$lang['btn_clearcache']}</span></a></li>

Готово!!

Кстати, в DLE 13.2 скрипт очистки кэша немного отличается от DLE 12.0:

В DLE 12 такой стандартный код:
$('#clearbutton').click(function() {

	$.get("engine/ajax/adminfunction.php?action=clearcache&user_hash={$dle_login_hash}", function( data ){

		$('#cachesize').html('0 b');
		Growl.info({
			title: '{$lang[p_info]}',
			text: data
		});

	});
	return false;
});

В DLE 13.2 вот такой стандартный код:
$('#clearbutton').click(function() {

	$.get("engine/ajax/controller.php?mod=adminfunction&action=clearcache&user_hash={$dle_login_hash}", function( data ){

		$('#cachesize').html('0 b');
		Growl.info({
			title: '{$lang['p_info']}',
			text: data
		});

	});
	return false;
});

Ответа пока нет


8 комментариев

SX2
Эксперт

SX2 - 23 мая 2019 22:04 -

Замените все:
engine/ajax/adminfunction.php

На
engine/ajax/controller.php?mod=adminfunction

Самая сложная часть работы – решиться приступить к ней.

ZeN41k
Юзер

ZeN41k - 23 мая 2019 22:19 -

Я так в принципе и сделал, но после очистки кеша кидает на белую страницу с надписью "Кеш скрипта успешно очищен" - это отличается от стандартного мини-сообщения вверху справа об успешной очистке кеша

SX2
Эксперт

SX2 - 24 мая 2019 04:09 -


Самая сложная часть работы – решиться приступить к ней.

ZeN41k
Юзер

ZeN41k - 24 мая 2019 12:03 -

После нажатия на значок "Очистки кэша" попадаю на главную страницу сайта

SX2
Эксперт

SX2 - 24 мая 2019 12:08 -

Кэш в браузере очистите!

Самая сложная часть работы – решиться приступить к ней.

ZeN41k
Юзер

ZeN41k - 24 мая 2019 12:13 -

Очистил. Всё рано отправляет на главную страницу. Так задумано? Что после очистки кэша отправляет на главную страницу сайта?

SX2
Эксперт

SX2 - 24 мая 2019 12:23 -

Нет! Что то делаете не так. Проверил все Ok.

Самая сложная часть работы – решиться приступить к ней.

ZeN41k
Юзер

ZeN41k - 24 мая 2019 12:57 -

Большое Спасибо! Всё работает) не на том сайте файлы на ftp редактировал))

VPS-хостинг у меня переоптимизированный – после редактирования новостей и часто при добавлении новостей нужна очистка кэша, так как либо новость не будет отредактирована, либо новая новость не появится. Вот такие пироги))

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх