persistenter Warenkorb

  • Bin gerade am Testen,

    wer Lust hat, kann ja mitmachen.

    Einfach folgende Zeile in der /includes/application_top.php ändern.
    Zeile 265

    Code
    session_set_cookie_params(0, '/', (xtc_not_null($current_domain) ? '.'.$current_domain : ''));


    ändern in (1 Tag = 86400, 2592000 = 30 Tage)

    Code
    session_set_cookie_params(2592000, '/', (xtc_not_null($current_domain) ? '.'.$current_domain : ''));


    dann folgendes in Datei einfügen /includes/functions/sessions.php
    Zeile ca. 42 unter global $SESS_LIFE;

    Code
    if (!isset($_SESSION['customer_id']) && is_object($_SESSION['cart']) && !strstr($_SERVER['REQUEST_URI'], FILENAME_CHECKOUT_SUCCESS)) {
                if ($_SESSION['cart']->total > 0) {
                    $sesslife = 2592000; // 30 Tage
                }
            }


    Zeile $expiry = time() + $SESS_LIFE; ändern in

    Code
    $expiry = time() + $SESS_LIFE + $sesslife;

    Es sollte folgendes passieren

    1. wenn User eingeloggt, Session auf normale Länge gesetzt
    2. wenn User nicht eingeloggt und auch keinen Warenkorb hat, Session auf normale Länge
    3. wenn User nicht eingeloggt und Warenkorb, Session auf 30 Tage
    4. wenn User Warenkorb entfernt, Session auf normale Länge
    5. Warenkorb wird bestellt, Session auf normale Länge

    Gruß

    kleine Änderung, habe "->count_contents() > 0" durch "-> total() > 0" ersetzt
    hatte immer immer Suchmaschinen die den Warenkorb gefüllt haben mit Summe 0
    wird damit abgefangen

    8 Mal editiert, zuletzt von mitglied (26. März 2015 um 17:04)