Hi, vielleicht weiß jemand Rat … Problem Sprachshop: http://www.domain.de ist der Hauptshop. http://www.domain.de/shop1 ist ein Sprachshop, ebenso wie http://www.domain.de/shop2 und http://www.domain.de/shop-3-name. Leider werden Kunden, auch wenn sie die URL richtig eingeben, fast immer erst auf den Hauptshop geroutet, obwohl sie gleich im Srachshop landen müßten. Die Einstellungen sind alle richtig. Wo liegt das Problem, oder ist dieses Verhalten beabsichtigt, was aber ja kaum sein kann, denn wenn ich mit Sprachshop EN/US beispielsweise Kunden in USA bedienen wollen würde, würden die auch erst auf der deutschen Startseite landen - was sicher extrem kundenunfreundlich ist. Danke für Hilfe!
Hallo! Hast du dafür eine Lösung gefunden? Wie haben dasselbe Problem, es funktioniert immer erst beim zweiten Mal. Beim ersten Mal landet man auf der Startseite des Hauptshops. Aber ich habe generell beobachtet, dass manchmal, wenn man auf einen Link im Shop klickt (z.b Kategorie oder Artikel), auf der Startseite landet. Klickt man dann nochmal auf den selben Link/Kategorie funkt es dann. LG beeblebrox
Hi, ich hatte dafür sogar ein Supportticket bei Shopware. Leider hat der Support geantwortet, daß sie das Problem nicht nachvollziehen können, bei ihnen gäbe es das Problem nicht. Es existiert aber, wie auch von dir beschrieben, noch immer, und tritt außerdem auch bei Kunden immer wieder sporadisch auf. Worans liegt - ich habe keine Ahnung und keine Lösung.
Hallo, das ist technisch gar nicht anders möglich. Das ist immer die Einschränkung, wenn man euf einer Domain ist. Sobald du einen “Sprachshop” mit oder ohne virtueller URL nutzt bzw. diesen bewusst ansteuerst, dann wir fur die Domain global eine Session erzeugt. Diese Session kann nur über den Sprachwechsel neu gestartet werden. Das ist nicht über den Aufruf der URL möglich. Für den Browser ist das einfach der selbe Shop. Ob man nun eine Seite, Kategorie oder auf virtuelle URL aufruf, so ist das immer die selbe Domain. Heißt also, dass man generell problemlos alles aufrufen kann. Auch die Sprachshops per Link untereinander, so lange man nicht den Sprachwechsel genutzt hat oder speziell eingeloggt ist. Will man sowas wirklich komplett sauber trennen, so geht das einfach nur mit getrennten Domain, da man dann für jede Domain eine eigene Session und Cookie setzen kann. Das ist also kein direktes Shopware Problem, sondern einfach des strukturellen Aufbaus. Die virtuellen URLs sind ja dazu gedacht, dass man mit verschiedenen Sitemaps auch alles an Suchmaschinen senden kann. Ohne virtuelle URLs würden die Seiten gar nicht in den Index aufgenommen werden können. Ist eine Kunde also auf dem Shop und wählt eine Sprache aus, so landet er mit anderen Links in dem Moment immer in diesem Sprachshop. Das Thema ist ja, wie du auch schreibst, nicht neu und wurde etliche Male behandelt. Wenn der Kunde also immer, auch z.B. im Checkout oder Kontobereich, immer jede URL aufrufen können soll, so geht das nur mit getrennten Domains. Sebastian
Hi Sebastian, ich weiß nicht, ob wir aneinander vorbeireden … Man kann eben NICHT alles problemlos aufrufen. Wenn ich einem Kunden die URL einer Kategorie eines Sprachshops gebe, erwarte ich, daß er diese direkt aufrufen kann. Kann er aber nicht beim ersten oder zweiten Mal, denn er landet im Hauptshop - was er aber eben nicht soll! Und dafür muß ich auch keine andere Domain benötigen, das geht in anderen Shops in der Regel auch problemlos!
[quote=“Uli Lächelt”]Hi Sebastian, ich weiß nicht, ob wir aneinander vorbeireden … Man kann eben NICHT alles problemlos aufrufen. Wenn ich einem Kunden die URL einer Kategorie eines Sprachshops gebe, erwarte ich, daß er diese direkt aufrufen kann. Kann er aber nicht beim ersten oder zweiten Mal, denn er landet im Hauptshop - was er aber eben nicht soll! Und dafür muß ich auch keine andere Domain benötigen, das geht in anderen Shops in der Regel auch problemlos![/quote] Hi, ich habe gerade einmal bei Dir im Shop auf Englisch umgestellt, einen Artikel aufgerufen, die URL kopiert und dann die Sprache wieder zurück auf Deutsch gestellt. Dann habe ich alle Browser-Tabs geschlossen und die URL aus Deinem englischen Sprachshop aufgerufen. Ich lande dann, so wie es sein soll, auf dem entsprechenden Artikel im englischen Sprachshop? Habe es zudem auch mit einer Kategorie getestet, funktioniert auch. Oder habe ich irgendetwas falsch verstanden und es ist etwas anderes gemeint? Getestet mit Firefox sowie Chrome Gruß
Danke Uli+Sebastian fürs Feedback. bei uns macht es keinen Sinn eine virtuelle URL beim Sprachshop zu benutzen, da sich Content und Artikel inhaltlich nicht vom Hauptshop unterscheiden - ausser dass die Währung CHF ist, und nicht EUR. Ich habe jetzt einfach eine php Datei erzeugt, die bei Aufruf (z.b. „shop.de/ch.php“) das Cookie für den Sprachshop setzt und auf den Hauptshop („shop.de“) weiterleitet. Somit ist der Sprachshop aktiv. LG beeblebrox
@trixx: es geht nicht um meinen Shop (der ist SW 5), sondern um Shops eines Kunden (SW 4.3.6), wo es nicht funktioniert. Wenn dessen Kunden Urls zu Kategorien weitergegeben werden eines Sprachshops, landen diese eben immer erst im Hauptshop, was sie eben nicht sollen. Erst bei mehrmaligem Aufruf landen sie im richtigen Shop. Und da es viele Kunden betrifft, ist das Problem schon gravierend. @beeblebrox: wenn du das Problem mit der Datei so generell gelöst hast, würdest du den Inhalt hier zur Verfügung stellen?
Hallo, es können da natürlich auch Plugins eingreifen. Hast du das Plugin “automatische Sprachsop-Auswahl” in diesem Shop aktiv? Hier würde ggf. ein Test ohne das Plugin Sinn machen. Grüße Moritz
@uli gerne, ist ganz einfach - hier der Inhalt meiner ch.php, diese habe ich einfach in den /web/shopware/ Pfad gelegt <?php setcookie("shop","6",0);
header("Location: /");
?>
„6“ = die ShopID Nr. des Sprachshops „Location: /“ ist die URL wo der Kunde weitergeleitet werden soll - in meinem Fall einfach auf die Base-URL - „/“.
[quote=„beeblebrox“]@uli gerne, ist ganz einfach - hier der Inhalt meiner ch.php, diese habe ich einfach in den /web/shopware/ Pfad gelegt <?php setcookie("shop","6",0);
header("Location: /");
?>
„6“ = die ShopID Nr. des Sprachshops „Location: /“ ist die URL wo der Kunde weitergeleitet werden soll - in meinem Fall einfach auf die Base-URL - „/“.[/quote] Da muss ich doch nochmal nach haken, denn wir haben das problem das mit deinem php code sich leider nichts ändert. Hast du eventuell tipps ? wofür steht die 0 beim setcookie ? Grüße
http://php.net/manual/de/function.setcookie.php 0 wäre hier die Laufzeit des Cookies. Laufzeit = 0 bedeutet, dass der Cookie nur in der aktuellen Session gültig ist. Wird denn bei eurem Test der Cookie gesetzt? Kann man z.B. im Chrome mit den Entwicklertools sehen.