XH-Shop

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: XH-Shop

Post by cmb » Sun Nov 11, 2018 6:05 pm

frase wrote:
Sun Nov 11, 2018 1:07 pm
Ist es möglich, den Warenkorb als Link im "normalen" Seitenmenü zu haben (mittendrin)?

Ich habe mir testweise so geholfen:
Eine Seite angelegt "Ihr Warenkorb".
Diese Seite wird per Pagedata umgeleitet auf "?Shop&xhsCheckout=cart"
Das funktioniert gut, solange etwas im Warenkorb ist.
Befindet sich aber nichts im Warenkorb, wird einfach die festgelegte 1. Shop-Übersichtsseite angezeigt.
Das ist zwar nicht falsch - aber auch nicht schön.
Zu erwarten wäre in etwa: "Ihr Warenkorb ist leer."

Habe ich da einen Denkfehler, oder ist das einfach nicht vorgesehen?
Das ist tatsächlich nicht vorgesehen; es könnte aber natürlich nachgebessert werden.
frase wrote:
Sun Nov 11, 2018 1:07 pm
Ginge es vielleicht, den Menüpunkt abhängig vom Inhalt des Warenkorbes anzuzeigen?
Praktisch genau so, wie den Warenkorb-Button?
Leider wohl nicht so elegant wie wünschenswert, aber mit folgender userfuncs.php kommt man vielleicht in die richtige Richtung:

Code: Select all

<?php

XH_afterPluginLoading(function () {
    global $edit, $cl, $h, $c, $xhsCartPreview;

    if (XH_ADM && $edit) return;
    for ($i = 0; $i < $cl; $i++) {
        if ($h[$i] === 'Warenkorb' && empty($xhsCartPreview)) {
            $c[$i] = '#cmsimple hide#';
        }
    }
});
Also: nach dem Laden der Plugins werden alle Seiten durchlaufen, und wenn eine dieser Seiten “Warenkorb” heißt, und das Cart-Preview leer ist (also keine Artikel im Warenkorb liegen), wird die Seite versteckt. Funktioniert wohl mit folgenden Einschränkungen: wird die Warenkorbseite dann tatsächlich aufgerufen, wird sie nicht im Menü angezeigt (warum?), und natürlich können versteckte Seite auch aufgerufen werden, selbst wenn sie nicht im Menü angezeigt werden.

Gefällt mir nicht wirklich, aber mir fällt jetzt auch nichts besseres ein. Es wäre wohl wirklich besser, wenn ein leerer Warenkorb vom XHShop auch als solcher angezeigt wird, statt auf die normale Shopansicht weiter zu leiten. Und irgendwie erscheint es auch sauberer, wenn es eine eigenständige (automatisch erzeugte) Warenkorb-Seite gäbe.
Last edited by cmb on Mon Nov 12, 2018 10:46 am, edited 1 time in total.
Reason: Code korrigiert (siehe weiteren Diskussionsverlauf)
Christoph M. Becker – Plugins for CMSimple_XH

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: XH-Shop

Post by frase » Sun Nov 11, 2018 7:53 pm

cmb wrote:
Sun Nov 11, 2018 6:05 pm
... aber mit folgender userfuncs.php kommt man vielleicht in die richtige Richtung: ...
Das sieht sehr vielversprechend aus.
Ich schaffe das heute nicht mehr, es zu probieren - aber mosche!

Danke!

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: XH-Shop

Post by frase » Mon Nov 12, 2018 7:06 am

So. Heute ist "mosche".
cmb wrote:
Sun Nov 11, 2018 6:05 pm
... mit folgender userfuncs.php ...
Wie nicht anders zu erwarten, klappt das wie gewünscht.
Nur die letzte Zeile im Code ist zu viel. ;-)

Ist ein Artikel im Korb, dann erscheint der Menüpunkt.
Ist der Korb leer, dann nicht.
Befindet man sich allerdings auf der Warenkorbseite (egal, wie man da hinkam), dann verschwindet der Menüpunkt wieder.

Für meinen Fall ist das eine "echte Option" - wobei noch nicht feststeht, ob nicht vielleicht nur der Warenkob-Button auffälliger und mit Text gestaltet wird. Vielleicht auch beides.

Inwieweit diese Lösung allgemeingültig ist, kann ich nicht beurteilen.
Was sagen denn die xhShop-Praktiker (Albert) dazu?

P.S.
Ist denn eine Lösung für das Startseite-Problem in Sicht?
Ich wöllte am gernsten das Plugin(chen) 0page einsetzen.

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: XH-Shop

Post by cmb » Mon Nov 12, 2018 10:47 am

frase wrote:
Mon Nov 12, 2018 7:06 am
Nur die letzte Zeile im Code ist zu viel. ;-)
Blöder Copy & Paste Fehler. Danke! Nun behoben.
frase wrote:
Mon Nov 12, 2018 7:06 am
Befindet man sich allerdings auf der Warenkorbseite (egal, wie man da hinkam), dann verschwindet der Menüpunkt wieder.
Das liegt letztlich daran, dass der Warenkorbschalter auf der Checkoutseite nicht angezeigt werden soll, und daher $xhsCartPreview leer ist. Sollte diese Variante relevant werden, könnte man noch nachbessern (im „schlimmsten” Fall könnte man auf die Session statt auf $xhsCartPreview zurückgreifen, um die Seite je nach Bedarf zu verstecken).
frase wrote:
Mon Nov 12, 2018 7:06 am
Ist denn eine Lösung für das Startseite-Problem in Sicht?
Na ja, Lösung würde ich es nicht nennen, aber man könnte in index.php die alle Vorkommen von $s durch $pd_s ersetzen, was eigentlich funktionieren sollte. Sauber finde ich das temporäre Manipulieren des Seitencontents allerdings sowieso nicht. Gibt es für dieses Startseitenproblem eigentlich ein Github-Issue? Konnte keins finden.
frase wrote:
Mon Nov 12, 2018 7:06 am
Ich wöllte am gernsten das Plugin(chen) 0page einsetzen.
Kann mir eigentlich nicht vorstellen, dass das überhaupt vernünftig funktioniert.
Christoph M. Becker – Plugins for CMSimple_XH

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: XH-Shop

Post by frase » Mon Nov 12, 2018 11:09 am

cmb wrote:
Mon Nov 12, 2018 10:47 am
frase wrote:
Mon Nov 12, 2018 7:06 am
Befindet man sich allerdings auf der Warenkorbseite (egal, wie man da hinkam), dann verschwindet der Menüpunkt wieder.
Das liegt letztlich daran, dass der Warenkorbschalter auf der Checkoutseite nicht angezeigt werden soll, und daher $xhsCartPreview leer ist. Sollte diese Variante relevant werden, könnte man noch nachbessern (im „schlimmsten” Fall könnte man auf die Session statt auf $xhsCartPreview zurückgreifen, um die Seite je nach Bedarf zu verstecken).
Nach meinen ganzen Experimenten, die ich mit deiner Hilfe jetzt zufriedenstellend hinter mich gebracht habe, bin ich nun doch der Meinung, dass der Shop eine "richtige" Warenkorb-Seite bekommen sollte. Und diese sollte auch so heißen.
Ich habe mir die Templates angepasst und zum Beispiel eine angepasste Kategorie-Auswahl inkl. der h1 "Unsere Angebote" auf den Shop-Seiten immer oben stehen.
Kommt man nun auf den Warenkorb (bei mir Anfrage-Liste), dann steht der Kram auch da oben :cry:
cmb wrote:
Mon Nov 12, 2018 10:47 am
frase wrote:
Mon Nov 12, 2018 7:06 am
Ist denn eine Lösung für das Startseite-Problem in Sicht?
Na ja, Lösung würde ich es nicht nennen, aber man könnte in index.php die alle Vorkommen von $s durch $pd_s ersetzen, was eigentlich funktionieren sollte. Sauber finde ich das temporäre Manipulieren des Seitencontents allerdings sowieso nicht. Gibt es für dieses Startseitenproblem eigentlich ein Github-Issue? Konnte keins finden.
Ich dachte, das Startseite-Problem besteht nicht nur im Shop?
Den Hinweis im Wiki habe ich nur nach "vom Hörensagen" geschrieben.
cmb wrote:
Mon Nov 12, 2018 10:47 am
frase wrote:
Mon Nov 12, 2018 7:06 am
Ich wöllte am gernsten das Plugin(chen) 0page einsetzen.
Kann mir eigentlich nicht vorstellen, dass das überhaupt vernünftig funktioniert.
0page entfern zuverlässig /index.php und /?XXX bei der ersten Seite und vermeidet damit DC (wenn ich das richtig verstand).
Mir scheint: Es funktioniert. (Olape?)

albert
Posts: 526
Joined: Sun Mar 07, 2010 8:01 pm
Location: Germany
Contact:

Re: XH-Shop

Post by albert » Mon Nov 12, 2018 11:17 am

frase wrote:
Mon Nov 12, 2018 7:06 am
Was sagen denn die xhShop-Praktiker (Albert) dazu?
Tja, mir ist nicht ganz klar geworden, wofür der Warenkorb-Menüpunkt gut sein könnte.
Ich finde es so wie es ist eigentlich sehr gut und auch gut verständlich für Kunden...
Hast du eine Test-Demoseite? Vllt. sehe ich dann besser was du meinst?

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: XH-Shop

Post by frase » Mon Nov 12, 2018 11:27 am

albert wrote:
Mon Nov 12, 2018 11:17 am
Hast du eine Test-Demoseite? Vllt. sehe ich dann besser was du meinst?
No, Sir. Noch nicht (jedenfalls noch nicht zeigbar).

Im Moment (im Original-Shop) gelangt man nur über den Warenkorb-Button zum Warenkorb.
Und im schlimmsten Fall ist da wirklich nur das Icon und die Artikelanzahl.
Ich habe jetzt wieder den Fall gehabt, dass jemand vor dem Shop saß und fragte: "Na, wo geht's denn nu weidor?"
Button nicht als solchen erkannt :o
In vielen Shops (nicht in allen) gibt es eben einen ganz normalen Menüpunkt "Ihr Warenkorb".
Klickt man drauf, kommt der - ist er leer steht da "Sie haben noch nichts bestellt" oder ähnlich.

Außerdem ist es eben auch (wie oben beschrieben) ein Frage: Welche Überschrift steht darüber?

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: XH-Shop

Post by cmb » Mon Nov 12, 2018 1:37 pm

frase wrote:
Mon Nov 12, 2018 11:09 am
Nach meinen ganzen Experimenten, die ich mit deiner Hilfe jetzt zufriedenstellend hinter mich gebracht habe, bin ich nun doch der Meinung, dass der Shop eine "richtige" Warenkorb-Seite bekommen sollte. Und diese sollte auch so heißen.
Okay. Stellt sich halt noch die Frage, ob es eine explizit anzulegende Seite sein soll (also wie derzeit die Shop-Seite), oder ob die Seite vom XHShop hinter den Kulissen angelegt wird (was vielleicht auch besser bei der Shop-Seite so sein sollte).
frase wrote:
Mon Nov 12, 2018 11:09 am
Ich dachte, das Startseite-Problem besteht nicht nur im Shop?
Nein, nicht nur dort. Eine allgemeine Lösung kann wegen Plugin-Inkompatibilitäten aber frühestens in XH 2.0 erfolgen. Und das Hauptproblem mit der Startseite trifft vor allem Plugins, die nach $o schreiben (was an sich richtiger ist als $c[$s] temporär zu modifizieren, wenn auch nicht so flexibel); bei $c[$pd_s] Modifikationen kann wohl eher nichts anbrennen.

Jedenfalls nun vermerkt.
frase wrote:
Mon Nov 12, 2018 11:09 am
0page entfern zuverlässig /index.php und /?XXX bei der ersten Seite und vermeidet damit DC (wenn ich das richtig verstand).
Mir scheint: Es funktioniert. (Olape?)
Ich dachte mehr an die Navigation; legt man z.B. einen Artikel in den Warenkorb, dann landet man wieder ganz oben auf der Seite. Steht der Shop nicht gleich am Anfang, dann muss der Besucher wieder nach unten Scrollen.
Christoph M. Becker – Plugins for CMSimple_XH

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: XH-Shop

Post by frase » Mon Nov 12, 2018 2:09 pm

Bin a bissl unter Zeitdruck ...
cmb wrote:
Mon Nov 12, 2018 1:37 pm
Okay. Stellt sich halt noch die Frage, ob es eine explizit anzulegende Seite sein soll (also wie derzeit die Shop-Seite), oder ob die Seite vom XHShop hinter den Kulissen angelegt wird (was vielleicht auch besser bei der Shop-Seite so sein sollte).
Button erhalten, wie bisher.
Korb-Seite händisch anlegen - mit optionaler Überschrift, Text ... und evtl. Pluginaufruf {{{xhsCheckout()}}} ???
Wird sie nicht angelegt - gut, dann eben nur der Button und alles wie bisher (keine Konfig-Option).
Das nur auf die Schnelle ...
cmb wrote:
Mon Nov 12, 2018 1:37 pm
Ich dachte mehr an die Navigation; legt man z.B. einen Artikel in den Warenkorb, dann landet man wieder ganz oben auf der Seite. Steht der Shop nicht gleich am Anfang, dann muss der Besucher wieder nach unten Scrollen.
Nicht ganz verstanden ... liegt wohl an meiner Hektik.

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: XH-Shop

Post by frase » Mon Nov 12, 2018 2:40 pm

cmb wrote:
Mon Nov 12, 2018 10:47 am
Na ja, Lösung würde ich es nicht nennen, aber man könnte in index.php die alle Vorkommen von $s durch $pd_s ersetzen, was eigentlich funktionieren sollte.
Ganz vergessen: Das funktioniert!

Post Reply