LittleBird: Seite anderer Tab bei Klick neu laden - Wer kann mir (Rookie) helfen?

Hallo zusammen,

ich beiße mir gerade an einem Code die Zähne aus.

Wenn ein Besucher auf den Button zur Kasse klickt, wird ein neuer Tab geöffnet. Die Endung der URL = checkout/1234

Nun möchte ich, dass wenn der Besucher auf meiner Seite nochmals den Button zur Kasse anklickt sich der Tab mit einer neuen URL öffnet - Hier checkout/1235

Mit anderen Worten soll die Seite neu geladen werden.

Hier der Code:

</script><script type="text/javascript">
//<![CDATA[
Cart("orderform_as_popup");
//]]>
</script><a href="https://www.example.com/cart"><img src="url-zum-button-bild" alt="" /></a> <a href="https://www.example.com/add"><img src="url-zum-button-bild" alt="" /></a>
<script src="https://www.example.com/service/javascript.js" type="text/javascript">
</script><a href="https://www.example.com/cart"><img src=
"https://image.jimcdn.com/app/cms/im...ccea1949e430e456/version/1505734313/image.png 104w" alt="" /></a>

</div>

</div>

Also irgendwie muss die Bezeichnung Cart("orderform_as_popup"); neu geladen werden, wenn ein Besucher auf den Button "zur Kasse" anklickt.

Ich weiß, dass es momentan nur funktioniert, wenn man die Cookies/Browserdaten löscht. Wie ich dass in dem Code einbauen kann, weiß ich allerdings nicht.

Bin n absoluter Anfänger und wäre dankbar, wenn mir jemand helfen könnte.

Danke im Voraus

EDIT: Seite anonymisiert -- Matthias Apsel

  1. Ich bezweifle zweierlei. Erstens dass sowas überhaupt geht, zumindest so zuverlässig geht dass ein Bezahlsystem damit eindeutig sicher bedient werden kann und keine doppelte Zahlungen passieren oder sonstige Verwirrungen des Nutzers auftreten.
    Zweitens frage ich mich wie bedienerfreundlich es ist, innerhalb eines Ablaufs in verschiedenen Tabs/Browserfenstern zu landen. Siehe Verwirrung. Gerade wenns ums bezahlen geht will der Nutzer klare Fakten. Ist der Ablauf schlüssig oder geht alles mögliche auf und ich weiß danach nicht mehr ob es jetzt funktioniert hat oder nicht, weil noch immer Überreste des Ablaufs irgendwo offen stehen?

    Eine Antwort war das nicht direkt, aber vielleicht überlegst du dir ja dass dein Bezahlablauf lieber anders und dafür übersichtlicher ist, und bist dann automatisch dein Problem los 😀

  2. Lieber LittleBird,

    Wenn ein Besucher auf den Button zur Kasse klickt, wird ein neuer Tab geöffnet.

    das da ist genau der Fehler.

    Liebe Grüße,

    Felix Riesterer.

    1. sorry aber das ist nicht gerade hilfreich.

      Eine andere Möglichkeit gibt es momentan nicht, da es eine Partnerwebsite ist, die die Bezahlung abwickelt.

      1. Hallo LittleBird,

        Eine andere Möglichkeit gibt es momentan nicht, da es eine Partnerwebsite ist, die die Bezahlung abwickelt.

        Was spricht gegen einen einfachen Link zur Partnerwebsite?

        Bis demnächst
        Matthias

        --
        Rosen sind rot.
        1. Hallo Matthias,

          Was spricht gegen einen einfachen Link zur Partnerwebsite?

          vermutlich die Systematik des Bezahldienstes. Der vom OP genannte Link ist im gezeigten Code so nicht erkennbar, von daher denke ich mal, dass die Cart-Funktion das erzeugt und die Link-Elemente im HTML irgendwie umbaut - oder ein click-Event drauflegt.

          Wir haben nun keine Ahnung

          • welcher Bezahldienst das ist
          • woher er die Nummer 1234 bekommen hat
          • ob es Probleme macht, einfach die Cart-Funktion nochmal aufzurufen

          Hast Du eine URL für uns, LittleBird, damit wir uns das mal live anschauen können?

          Rolf

          --
          sumpsi - posui - clusi
          1. problematische Seite

            Hallo Rolf,

            vielen Dank schon mal.

            Hier die URL zum Testen

            Vorgang

            • Leg einfach das Produkt in den Warenkorb
            • Klick dann auf den Button zur Kasse (ein neuer Tab öffnet sich - der von digistore24)
            • Schließe das Bestellformular und gehe zurück auf die Verkaufsseite
            • Entferne das Produkt aus dem Warenkorb
            • Lege ein anderes Produkt in den Warenkorb und klicke auf den Button "zur Kasse"
            • Nun öffnet sich der Tab mit der Fehlermeldung

            Erst wenn das erst gewählte Produkt wieder in den Warenkorb gelegt wird, wird das Bestellformular wieder geöffnet. Dann auch mit mehreren Produkten.

            Den Support von Digistore habe ich schon angeschrieben, bekomme hier allerdings noch keine konkrete Hilfestellungen.

            Vielen Dank schon mal fürs nachschauen.


            Edit von Rolf b: Link zum Link gemacht und in die "Problematische Seite" kopiert

            1. problematische Seite

              Hallo LittleBird,

              das komplette Warenkorbgeschäft wird von digistore24 abgewickelt. Es ist daher entweder ein Bug von Digistore, oder eine falsche Benutzung deinerseits.

              Mir ist aufgefallen, dass Du digistore.js zweimal lädst. Das Init-Script von digistore macht den Eindruck, als würde es sich auf alle a Elemente hängen und dort einen Klick-Handler hinterlegen.

              Es könnte helfen, digistore.js nur einmal zu laden, und zwar am Ende der Seite. Ich vermute, dass sich digistore durch das Doppelladen selbst auf den Füßen steht, bzw. du durch das Doppelladen letztlich mit 2 Shops gleichzeitig arbeitest, wovon nur einer den Löschbefehl mitbekommt.

              Rolf

              --
              sumpsi - posui - clusi
              1. problematische Seite

                Hi Rolf,

                danke.

                Könntest du mir jetzt bitte sagen, wie der Code lautet, damit es nur einmal geladen wird?

                Viele Grüße

                1. problematische Seite

                  Hallo LittleBird,

                  ich sehe im Browser das, dein Shop an HTML heraushaut. Ich weiß natürlich nicht, inwieweit Du auf diesen Code selbst Einfluss hast bzw. ob dieser Code von Dir zusammengestellt wurde oder von deinem Shop-Provider generiert ist.

                  Und da sehe ich dies:

                  <div id="cc-m-11139089921" class="j-module n j-htmlCode ">
                    <div class="n">
                      <div style="position: fixed; bottom: 475px; right: 10px;">
                        <script src="https://www.digistore24.com/service/digistore.js" type="text/javascript">
                  </script>
                        <script type="text/javascript">
                        //<![CDATA[
                          digistoreCart();
                        //]]>
                        </script>
                        <a href="https://www.digistore24.com/cart"><img src="url-zum-button-bild" alt=""/></a>
                        <a href="https://www.digistore24.com/add/164225"><img src="url-zum-button-bild" alt=""/></a>
                        <script src="https://www.digistore24.com/service/digistore.js" type="text/javascript">
                  </script>
                        <script type="text/javascript">
                        //<![CDATA[
                          digistoreCart("orderform_as_popup ");
                        //]]>
                        </script>
                        <a href="https://www.digistore24.com/cart"><img src="https://image.jimcdn.com/app/cms/image/transf/dimension=104x10000:format=png/path/scfeecd695b6d6e0b/image/iccea1949e430e456/version/1505734313/image.png 104w" alt=""/></a>
                      </div>
                    </div>
                  </div>
                  

                  Mit erscheint das redundant. Ich habe aber keine Ahnung von digistore24. Ein "How-to" bekommt man dort auch nicht, ohne sich zu registrieren, deswegen kann ich auch nicht ins Handbuch schauen.

                  Möglicherweise hast Du eine Vorlage mehrfach kopiert? Der Teil ab dem ersten <script> (Zeile 4) bis zu dem zweiten <a> (mit dem /add/164225) kommt mir überflüssig vor. Vor allem, weil als Image-Quelle so ein Mustertext ("url-zum-button-bild") steht.

                  Verbindlich vorschlagen kann ich Dir aber nichts. Dazu fehlt mir das konkrete Know-How und die Anleitungen von Jimdo bzw. Digishop24.

                  Rolf

                  --
                  sumpsi - posui - clusi
                  1. problematische Seite

                    Hallo Rolf,

                    erst mal vielen Dank für deinen Support.

                    Habe es allerdings noch nicht geschafft.

                    Den Code habe ich jetzt einmal geändert:

                    <script src="https://www.digistore24.com/service/digistore.js" type="text/javascript">
                    </script><script type="text/javascript">
                    //<![CDATA[
                    digistoreCart();
                    //]]>
                    </script><a href="https://www.digistore24.com/cart">Link Text</a> <script src="https://www.digistore24.com/service/digistore.js" type="text/javascript">
                    </script><script type="text/javascript">
                    //<![CDATA[
                        digistoreCart("orderform_as_popup");
                    //]]>
                    </script>
                    

                    Du findest diesen hier auf der Website mit 2 Produkten https://www.hanseatic-business-school.com/excel-box/ecommerce/korb-neu-laden

                    Wenn du auf Link Text gehst, siehst du die Übersicht aus dem Warenkorb.

                    Hier noch der Link mit den Codes von digistore24, falls dir das weiterhilft: https://doc.digistore24.com/produktverkauf/verkaufsprozess/digistore24-warenkorb-auf-ihrer-website-einbinden/

                    Was allerdings auffällig ist, wenn ich meinen Browserverlauf lösche, wird mir vom Bestellformular auch eine neue URL aufgerufen, falls sich so ein Code programmieren lässt.

                    Vielleicht hast du ja noch eine Idee.

                    1. problematische Seite

                      Hallo LittleBird,

                      da stimmt nun was nicht - das Warenkorb Icon taucht gar nicht mehr auf. Ich kann also nichts mehr aus dem Warenkorb löschen und das Symptom damit herbeiführen.

                      Rolf

                      --
                      sumpsi - posui - clusi
                      1. problematische Seite

                        Hi Rolf,

                        klick dafür mal auf "Link Text" über den Share Buttons.

                        Findest du rechts unter dem letzten Produkt.

                        Wollte das "Problem jetzt mal so klein wie möglich halten und habe deswegen den Icon vorerst entfernt.

                        Wenn du auf "Link Text" klickst, siehst du die Übersicht der Produkte und kannst diese auch entfernen.

                        1. problematische Seite

                          Hallo LittleBird,

                          du rufst das digistore.js immer noch zweimal auf. Man sieht auch in der Leiste, die oben am Bildschirmrand erscheint, auch nach Löschen eines Artikels immer noch 2 Artikel. Das spricht für meinen Verdacht, dass Du mit 2 parallelen Shop-Schnittstellen hantierst und diese auseinanderlaufen.

                          Rolf

                          --
                          sumpsi - posui - clusi
                          1. problematische Seite

                            Hi Rolf,

                            habe, soweit meine HTML Kenntnisse das zulassen digistore.js einmal entfernt.

                            Aber irgendwie haut das noch nicht hin?

                            Was müsste ich ändern?

                            1. problematische Seite

                              Hallo LittleBird,

                              du musst Dich EXAKT an die Anleitung halten, und Platzhalter als solche erkennen (damit meine ich das <img src="url-zum-button-bild"/>, das Du auf den anderen Seiten drin hast...)

                              Das folgende JS Fragment ist das Problem. Du rufst die digistoreCart-Funktion, die den Shop initialisiert, zweimal auf. Zusätzlich hast du die CDATA Maskierung, die man ohnehin nur bei XHTML braucht (was Du nicht tust), auch noch gedoppelt. Das CDATA schadet nicht, macht es aber zusätztlich unübersichtlich.

                              <script src="https://www.digistore24.com/service/digistore.js"></script>
                              <script type="text/javascript">
                              //<![CDATA[
                              digistoreCart();
                              //]]>
                              //<![CDATA[
                                  digistoreCart("orderform_as_popup");
                              //]]>
                              </script>
                              

                              Mach es so:

                              <script src="https://www.digistore24.com/service/digistore.js"></script>
                              <script type="text/javascript">
                                  digistoreCart("orderform_as_popup");
                              </script>
                              

                              Der Aufruf von digistoreCart("order_form_popup") ist das, was Du willst. Ich würde wetten, dass der Aufruf ohne Parameter den zweiten Shop-Anschluss erzeugt, der das Problem macht.

                              Mit den Bedienbarkeitsproblemen ("Accessibility"), die der digistore-Shop mitbringt, will ich Dich nicht belästigen. Das wird mir zu komplex, es zu erklären, und du hast auch nicht auf alles Einfluss, was da faul zu sein scheint.

                              Rolf

                              --
                              sumpsi - posui - clusi
                              1. problematische Seite

                                Hi Rolf,

                                nochmals danke, allerdings:

                                Mit deinem oben genannten Code habe ich keine Warenkorbübersicht, so dass ich den ersten Artikel nach dem ersten Aufruf des Bestellformulars entfernen könnte, um dann ein neues Bestellformular zu öffnen?

                                1. problematische Seite

                                  Hallo LittleBird,

                                  der von mir gezeigte Code konzentriert sich auf die Initialisierung des Shop-Anschlusses. Bereitstellung von Bestell-Links und Warenkorb-Übersicht musst Du gemäß den Vorgaben von Digistore hinzufügen. Das hattest Du doch schon drin - du musst nur die Bilder sauber einsetzen.

                                  Rolf

                                  --
                                  sumpsi - posui - clusi
                                  1. problematische Seite

                                    Hi Rolf,

                                    habe den Code für den Warenkorb eingefügt.

                                    Ich habe zwar den Warenkorb, allerdings bin ich wieder beim Anfang meines Problems.

                                    1. problematische Seite

                                      Hallo LittleBird,

                                      wir sind am Anfang der Symptome. Das Problem "mehrfacher Cart-Aufruf" ist schonmal weg, und damit eine mögliche Ursache eliminiert. Ein Grund weniger für den Digistore-Support, dich in die Warteschleife zu schicken. Du wolltest die doch ansprechen. Hat sich was ergeben?

                                      Warum digistore jetzt immer noch nicht merkt, dass Du gelöscht hast, dazu kann ich im Moment nichts sagen. Das muss ich mir in Ruhe anschauen, meine Zeit ist grad knapp.

                                      Vielleicht hat ja noch jemand anderes eine Idee.

                                      Rolf

                                      --
                                      sumpsi - posui - clusi
                                      1. problematische Seite

                                        Hi Rolf,

                                        kein Problem. Danke für deinen Support.

                                        Digistore hat sich hierzu noch nicht direkt geäußert. Haben heute lediglich nochmal gefragt, auf welcher Seite das Problem auftaucht.

                                        Viele Grüße

      2. Lieber LittleBird,

        eine Partnerwebsite ist, die die Bezahlung abwickelt.

        Und Du kannst die Sache nicht in einem Frame machen, damit der Besucher Deine Seite wenigstens gefühlt nicht verlässt? Alternativ bieten solche Bezahlservices die Möglichkeit, die Zielseite mit der Bezahlfunktionalität "mitzugestalten", dass man als Kunde zumindest ein Bisschen das Gefühl hat, noch auf Deiner Seite zu sein.

        Liebe Grüße,

        Felix Riesterer.

        1. Hallo Felix,

          und wie mach ich das? Weiter oben findest du einen Link zur URL zum nachsehen.

          Viele Grüße

          1. Hallo LittleBird,

            und wie mach ich das?

            So.

            Bis demnächst
            Matthias

            --
            Rosen sind rot.