2016-05-24 8 views
2

Ich habe eine OpenCart-Website mit zwei Geschäften in verschiedenen Domänen, Domain1.com und Domain2.com.Opencart Multi-Store-Warenkorb durch verschiedene Domänen

Was ich will, ist in der Lage, den Warenkorb durch sie zu teilen, so dass, wenn ich ein Produkt in den Warenkorb in domain1.com hinzufügen und ich auf domain2.com gehe ich immer noch diese Produkte im Warenkorb haben.

Ich habe so etwas gesehen, aber für verschiedene Subdomains und ich habe nichts für verschiedene Domains gefunden. ex: question for subdomains

ich laufe Version 1.5.6 und die Session-Datei ist dies:

class Session { 
    public $data = array(); 

    public function __construct() { 
    if (!session_id()) { 
     ini_set('session.use_cookies', 'On'); 
     ini_set('session.use_trans_sid', 'Off'); 


     session_set_cookie_params(0, '/'); 
     session_start(); 
    } 

    $this->data =& $_SESSION; 
    } 

    function getId() { 
    return session_id(); 
    } 
} 

Wie konnte ich diese Datei ändern, um die Sitzung und den Wagen zu teilen?

Alle Hilfe ist willkommen!

Danke!

+0

Ich ging diese Option nicht durch, und ich wechselte zu Subdomains. Leider konnte ich das nicht lösen. – spkkya

Antwort

0

Ich bin mir nicht sicher, dass dies eine echte Lösung ist, aber ich weiß, dass die Warenkorb-Details in "Kunden" -Tabelle auf SQL gespeichert. Also müssen Sie ändern oder löschen, wo der Abschnitt jeder SQL-Abfrage, die Ihnen die Warenkorb-Details gibt.

Zum Beispiel löschen where store_id = x Abschnitt auf jeder Abfrage.

+0

Ich verstehe Ihre Antwort, aber ist nicht etwas einfacher durch die Sitzungsvariablen? – spkkya

0

Warum setzen Sie die Cookie-Lebensdauer auf 0? Scheint, dass du vorhast, die Sitzung zu zerstören. Sie sollten auf jeden Fall versuchen, so etwas wie

<?php 
session_set_cookie_params(1800, '/', $_SERVER['HTTP_HOST']); 

Sie müssen für die HTTP_HOST einige zusätzliche Validierung kann verwenden, aber es ist im Grunde eine ziemlich zuverlässige Variable da Apache oder Nginx auf sie verlassen. Sollte es auf Ihren aktuellen Hostnamen beschränken.

+0

Das ist Standard von Opencart, ich weiß nicht genau warum. – spkkya