Помощь Как реализовать кэширование для модуля DLE?

Тема в разделе "DLE", создана пользователем Attyla, 22 апр 2014.

Информация :
Актуальная версия DataLife Engine 11.2
( Final Release v.11.2 | Скачать DataLife Engine | Скачать 11.2 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.1 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Модераторы: killoff
  1. Attyla

    Attyla

    Регистр.:
    21 ноя 2012
    Сообщения:
    159
    Симпатии:
    43
    Как реализовать кэширование в модуле, если в модуле такие строки:

    PHP:
    $sql_result $db->query$sql_request );
    $found_result $db->num_rows$sql_result );
    $result_count $db->super_query"SELECT COUNT(*) as count $sql_from $where);
    $count_result $result_count['count'];

    $tpl->load_template'/personaj.tpl' );
    $build_navigation false;
    include (
    ENGINE_DIR '/modules/show.custom.php');

    $tpl->result['content'] = str_ireplace'[personaj]'''$tpl->result['content'] );
    $tpl->result['content'] = str_ireplace'[/personaj]'''$tpl->result['content'] );
    if( 
    $config['files_allow'] )
    if( 
    strpos$tpl->result['content'], "[attachment=" ) !== false ) {
    $tpl->result['content'] = show_attach$tpl->result['content'], $attachments );
    }
    Я так понял выборка из бд передается в show.custom.php, чтобы был наложен шаблон на все строки выборки. А как сделать так, чтобы модуль создавал кэш в данном случае?
    Спасибо.
     
  2. penguen

    penguen

    Регистр.:
    7 янв 2007
    Сообщения:
    824
    Симпатии:
    94
    show.custom.php нету кеширования, да оно там и не нужно. Данные то не статичные, постоянно динамич. думаю поняли меня
     
  3. Attyla

    Attyla

    Регистр.:
    21 ноя 2012
    Сообщения:
    159
    Симпатии:
    43
    Так можно же указать префикс news_ для кэша...
     
    elwebmaestro нравится это.
  4. Горбушка

    Горбушка Ищу её...

    Регистр.:
    2 май 2008
    Сообщения:
    3.116
    Симпатии:
    2.130
    Кто тебе сказал этот бред? custom уже несколько версий как кэшируется...
    Так что кэш в show.custom.php есть...

    Что касается ТС, для тебя есть прекрасная возможность использовать использовать API:
    $dle_api->save_to_cache ( string $fname, mixed $vars); //Записать в кеш
    $dle_api->load_from_cache ( string $fname, [, int $timeout [, string $type]]); //Читать из кеша
    $dle_api->clean_cache ( [string $name] ); //Удалить из кеша
    $dle_api->get_cached_files(); //Получение массива содержащего названия файлов кеша.

    Для доступа к API достаточно прописать:
    include ('engine/api/api.class.php');
     
    elwebmaestro и Attyla нравится это.