Marktplatz - Eine große Auswahl an neuen und hilfreichen Modulen sowie modernen Templates für die modified eCommerce Shopsoftware
Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Wie funktioniert der Modified Cache?

    Teratek

    • Schreiberling
    • Beiträge: 273
    Wie funktioniert der Modified Cache?
    am: 02. Februar 2018, 22:05:03
    Ich baue gerade ein Modul um. Zwar für die 1.06er aber der Cache scheint für beide Module ähnlich zu sein. Es geht dabei um die product_listing.php

    Code: PHP  [Auswählen]
    if (!CacheCheck()) {
        $module_smarty->caching = 0;
        $module = $module_smarty->fetch(CURRENT_TEMPLATE.'/module/product_listing/'.$category['listing_template']);
      } else {
        $module_smarty->caching = 1;
        $module_smarty->cache_lifetime = CACHE_LIFETIME;
        $module_smarty->cache_modified_check = CACHE_CHECK;

        //setting/clearing params
        $get_params = isset($_GET['manufacturers_id']) && xtc_not_null($_GET['manufacturers_id']) ? '_'.(int)$_GET['manufacturers_id'] : '';
        $get_params .= isset($_GET['filter_id']) && xtc_not_null($_GET['filter_id']) ? '_'.(int)$_GET['filter_id'] : '';
        $get_params .= isset($_GET['page']) && $_GET['page'] > 0  ? '_'.(int)$_GET['page'] : '';
        $get_params .= isset($_GET['categories_id']) && xtc_not_null($_GET['categories_id']) ? '_'.(int)$_GET['categories_id'] : '';
        $get_params .= isset($_GET['keywords']) && !empty($_GET['keywords']) ? '_'.stripslashes(trim(urldecode($_GET['keywords']))) : '';
        $get_params .= isset($_GET['pfrom']) && !empty($_GET['pfrom']) ? '_'.stripslashes($_GET['pfrom']) : '';
        $get_params .= isset($_GET['pto']) && !empty($_GET['pto']) ? '_'.stripslashes($_GET['pto']) : '';
        $get_params .= isset($_GET['x']) && $_GET['x'] >= 0 ? '_'.(int)$_GET['x'] : '';
        $get_params .= isset($_GET['y']) && $_GET['y'] >= 0 ? '_'.(int)$_GET['y'] : '';
            $get_params .= isset($_GET['sort']) && $_GET['sort'] >= 0 ? '_'.(int)$_GET['sort'] : '';
            echo('get_params = '.$get_params.'<br>');
        $cache_id = $current_category_id.'_'.$_SESSION['language'].'_'.$_SESSION['customers_status']['customers_status_name'].'_'.$_SESSION['currency'].$get_params;
        echo('cache_id = '.$cache_id.'<br>');
            $module = $module_smarty->fetch(CURRENT_TEMPLATE.'/module/product_listing/'.$category['listing_template'], $cache_id);
      }
      $smarty->assign('main_content', $module);
     
    } else {
      $error = TEXT_PRODUCT_NOT_FOUND;
      include (DIR_WS_MODULES.FILENAME_ERROR_HANDLER);
    }

    Der Cache ist bei mir standardmäßig aktiviert. Allerdings wir der Inhalt der product_listing nicht im Frontend aktualisiert. Erst wenn ich den Cache abschalte oder die entsprechende Datei im Cache Verzeichnis lösche.

    Wenn ich den Inhalt der $get_params ausgebe dann ist dieser leer. Liegt es vielleicht daran oder wie erkennt das System,dass neue Daten vorhanden sind und die Datei erneuert werden soll?

    Linkback: https://www.modified-shop.org/forum/index.php?topic=38560.0
    1 Antworten
    2549 Aufrufe
    15. September 2012, 12:45:14 von NicoDeluxe
    6 Antworten
    6727 Aufrufe
    07. Februar 2010, 19:59:35 von Tomcraft
    2 Antworten
    2044 Aufrufe
    05. Oktober 2013, 16:01:07 von 0815
               
    anything