Shopseiten Verlinkung seit 5.2.18 nicht korrekt.

Hallo zusammen,

ich habe ein paar eigene Shopseiten angelegt die Unten in Spalte 2 angezeigt werden.

Das klappt auch soweit ordentlich.

Wenn ich allerdings die Shopseite mit einem “Link” versehen möchte. (ich nutze z.B. die Galerie von dreischild), dann klappt das seit 5.2.18 gar nicht mehr.

Der Link wird nicht erkannt. Statt dessen wird auf die Hauptseite verlink.

Nehme ich den Link nun wieder raus - klappt es (also die leere angelegte Shopseite. Link wieder drin --> klappt nicht und wieder Startseite.

 

Der Link wird auch so dargestellt:  http:// meinedomain.de/ custom

Ich denke statt “custom” soll dort eigentlich der Link hin, wo es hingehen soll, oder?

 

Hat jemand eine Idee was das sein könnte, oder ist das bei euch auch so seit 5.2.18?

 

Beste Grüße

Nicole

 

PS: Bis 5.2.17 hat es ohne Probleme geklappt.

 

Kann ich bestätigen.
Ich habe im Hauptshop einen Link zum Subshop, und an gleicher Stelle im Subshop einen Link zum Hauptshop.
Ansteller der Link zum jeweils anderen Shop ist ein Link „auf sich selber“ da.
Oder Auch zu Facebook, andere Seite z.B.

Auf der Startseite geht der Link zur Hauptseite.
In einer Kategorie auf /listing/
In Details nach /detail/
Im Blog nach /detail/blog/

Usw. 

Unschön - alle Footerlinks gebrochen.

Danke für den Hinweis!

Ticket angelegt:
Shopware Issuetracker

Vielen Dank. :slight_smile:

 

Ist ein Duplikat: Shopware Issuetracker

Haben wir schon eingeplant.

2 Likes

Kann aber nichts mit dem “Eingabefeld” zu tun haben, da ich garnicht in der Eingabe war.
Hoffentlich dauert es bis zur 5.2.19 nicht wieder fast drei Wochen, da es ein sehr ärgerlicher Bug ist.

Einen commit gibt es noch nicht, oder?

*Jubel* - geht schon los mit den 404 in den WMT - danke an Eure Qualitätssicherung.  Thumb-Up
Bei „undefined“ war ja noch der Ratschlag, „last seen articles“ einfach zu deaktivieren.
Was ist der neue Rat - einfach den Footer zu deaktivieren?

Nach 5.2.9 ist echt nur noch Müll gekommen…

Für direkte Links steht ja ein Workaround im Ticket, soweit ich das sehe: Shopware Issuetracker

Interne Verlinkungen über den shopware.php-Link funktionieren weiterhin. Die sollte man auch besser verwenden als feste/direkte Links. Der shopware.php-Link wird im Standard umgeschrieben in den SEO-Link vom Router.

@sonic schrieb:

*Jubel* - geht schon los mit den 404 in den WMT - danke an Eure Qualitätssicherung.  Thumb-Up
Bei “undefined” war ja noch der Ratschlag, “last seen articles” einfach zu deaktivieren.
Was ist der neue Rat - einfach den Footer zu deaktivieren?

Nach 5.2.9 ist echt nur noch Müll gekommen…

Da möchte ich sonic mal zustimmen, zwar nicht in Puncto “Müll” aber in Bezug auf die Qualität. Auch ich bekomme regelmäßig Schweißausbrüche und hoffe nach Updates immer, dass nichts passiert und der Shop anschließend wieder läuft. Wenn man hier im Forum mal schaut, wieviele Probleme immer nach offiziellen Updates auftauchen, das ist schon echt viel.

Klar, Shopware ist eine riesig komplexe Lösung. Aber gerade deswegen sollten die offiziellen Updates funktionieren. Ich hab ja manchmal den Eindruck, dass diese Updates raus gefeuert werden und dann erst von uns Usern getestet werden sollen, nach dem Motto “falls Fehler drin sind, werden unsere Kunden die schon finden”, was mit Sicherheit keiner will, auch und zu allerletzt das Shopware-Team.

Da ja mittlerweile sehr viele Shopbetreiber (zu recht) Shopware als Shopsoftware nutzen, wäre da bezüglich “Funktionssicherheit” auch eine effektivere Qualitätskontrolle notwendig. Ich hätte da mal ein paar Voschläge:

Wie wäre es, wenn die Changelogs mal etwas detaillierter auch die grundsätzlichen Core-Änderungen kennzeichnen. Ich finde, wenn so grundlegende Methoden/Funktionen wie z.B. “getTree()” geändert werden, dann sollte man das als User vielleicht auch mal wissen dürfen (jetzt bitte nicht auf Git-Hub oder so verweisen).

Wie wäre es, wenn vor offiziellen Updates so was wie Beta-Versionen zum Testen an erfahrene User oder Entwickler rausgegeben werden und diese dann auf den vielen unterschiedlichen Plattformen und Hostern vorab mal in deren Testumgebungen getestet werden?

Es soll auch einige Shopware-User geben, die sich teuere Pro-Versionen gekauft haben - da sollten Updates vom Hersteller schon funktionieren, wenn diese offiziell angeboten werden. Oder bitte mit Vermerk: “Einsatz auf eigene Gefahr - Update noch nicht abschließend getestet, bitte bis zum nächsten Update warten”. Kann man natürlich auch machen, dann sollte aber auch irgendwann ein freigegebenes Update kommen.

Nehmt das jetzt bitte nicht als Gemeckere sondern als Ansporn auf, Shopware künftig noch besser zu machen.

2 Likes

[@Moritz Naczenski](http://forum.shopware.com/profile/14574/Moritz Naczenski „Moritz Naczenski“)‍ ist mir am WE etwas zu umständlich, werde ich am Montag machen, Ich werde wohl einfach mal die ganze Datei austauschen, und gucken, was passiert. Halo

Zu „Interne Links“ kann ich jetzt nichts sagen, was ich aber sagen kann ist, dass ich auch - hardcoded - im Footer auch das PDF zum gesetzlich vorgeschriebenen „Musterwiderrufsformular“ aus dem Mediamanager verlinkt habe, wäre ja auch intern… Ich habe ein echtes Problem - der Shop ist aktuell leider abmahngefährdet. Ich habe auch keinen Nerv, alle Links irgendwie umzubauen. Ich hoffe mal, das der Rückgriff auf die „alte“ Funktion nicht wieder an anderer Stelle etwas aushebelt.
 

Müll ist wohl etwas hart, aber eigentlich handelt es sich formal in den 5.2.xx Schritten um Bugfix-Versionen. Leider werden in denen derzeit aber auch massive Änderungen am Core vorgenommen, die immer häufiger Funktionen „stören.“

Da wären „undefined“, „ImageOptimizer“, „PHP 5.6 Kompatibiliät“ und es sind noch mehr.
Das im 5.2.xx-Zweig viele kleine Versionen auch mit BUG-Fixe kommen, freut mich - nur leider werden derzeit eben auch echt viele Hunde eingebaut. Für mich ist der aktuelle Hund ein ganz großes Problem - hatte beim „Optimizer“ dafür aber auch gerne geholfen. Wink

Wann kommt die 5.2.19 mit der Änderung? In der roadmap steht nix mehr drinnen… Ist blöd, wenn man im footer auf das Musterwiderrufsformular als pdf verlinkt und keiner kann es runterladen…

Ist jetzt auch auf Github: SW-17813 - Fix site page menu links · shopware/shopware@55ff182 · GitHub

3 Likes

Kurze frage:

Wenn bei einem update so wie in diesem fall hier ein fehler ist, wird der dann gleich in der aktuellen shopware version ausgebessert?

Soll heissen, wenn ich jetz z.b. das update 5.2.18 mache, ist das dann noch das gleiche wie das z.b. sonic vor 4 tagen machte?

Oder muss man da auf 5.2.19 warten?

Wenn sich jetzt z.b. jemand eine shopware version professionell  edition mit 5.2.18 kauft, hat der dann auch diese fehler drin?

Denn das wäre ja nicht so rosig wenn der gleich zu anfang mit ner fehlerbehafteten version durchstartet.

 

Die Pakete werden nicht mehr angepackt wenn die released werden. Sonst kannst du ja nicht mehr nachvollziehen wer nun welche Änderung hat. Die Änderungen kommen mit der 5.2.19. Im Rahmen der Professional unterstützen wir aber beim Einbau des Fixes.

1 Like

Ha, da hatte ich ja sogar die richtige Stelle lokalisiert und fast die gleiche Änderung im Kopf  Wearing-Sunglasses
Mit dem commit sehen die Links wieder richtig aus.  Thumb-Up

@malzfons‍ innerhalb einer Version Korrekturen? Wohl kaum, es werden ja keine offiziellen Revisionsummern geführt - im zip nur die Build von Git.
Da wirst Du entweder auf 5.2.19 warten müssen, oder tauschst vorab die Datei aus. Ist nur die SitePageMenu.php zu ersetzen, die anderen Änderungen betreffen Dateien für den „Test“.

1 Like

sehe ich das so richtig:

Die Zeile mit 83-

muss ich mit 83+ tauschen ?

 

das gleiche mit der Zeile 85? Oder wird das drunter eingefügt?

 

 

Ok ich glaub ich habs es. Cool läuft wieder :wink:

Vielen Dank.

 

Ich habe alles rückgängig gemacht. Die Galerie von Dreischild klappt so gar nicht mehr. Da röddelt er sich wund…

Muss mal ein Ticket aufmachen.

/engine/Shopware/Components/SitePageMenu.php öffnen

Suche nach:

public function getTree($shopId, $activeId)
    {
        $query = $this->getQuery($shopId);

        /**@var $statement \PDOStatement*/
        $statement = $query->execute();

        $data = $statement->fetchAll(\PDO::FETCH_ASSOC);

        $menu = [];
        $links = [];
        foreach ($data as $site) {
            $key = !empty($site['mapping']) ? $site['mapping'] : $site['group'];

            if ($this->overrideExisting($menu, $key, $site)) {
                $menu[$key] = [];
            }

            $id = (int) $site['id'];
            if (!empty($site['link'])) {
                $links[$id] = $site['link'];
            } else {
                $links[$id] = [
                    'controller' => 'custom',
                    'action' => 'index',
                    'sCustom' => $id
                ];
            }

            $menu[$key][] = $site;
        }

        /** @var Router $router */
        $seoUrls = $this->router->generateList($links);
        $menu = $this->assignSeoUrls($menu, $seoUrls);

        $result = [];
        foreach ($menu as $key => $group) {
            $sites = $this->buildSiteTree(0, $group, $activeId);
            $result[$key] = $sites;
        }

        return $result;
    }

Mit dem hier ersetzen:

public function getTree($shopId, $activeId)
    {
        $query = $this->getQuery($shopId);

        /**@var $statement \PDOStatement*/
        $statement = $query->execute();

        $data = $statement->fetchAll(\PDO::FETCH_ASSOC);

        $menu = [];
        foreach ($data as $site) {
            $key = !empty($site['mapping']) ? $site['mapping'] : $site['group'];

            if ($this->overrideExisting($menu, $key, $site)) {
                $menu[$key] = [];
            }

            $menu[$key][] = $site;
        }

        $result = [];
        foreach ($menu as $key => $group) {
            $sites = $this->buildSiteTree(0, $group, $activeId);
            $result[$key] = $sites;
        }

        return $result;
    }

Hat bei mir perfekt funktioniert. Code ist aus einer vorherigen Shopware Version. Wieso der verändert wurde weiß ich nicht somit keine Garantie auf irgendwas :slight_smile:

3 Likes

Hi zusammen,

wir haben hier im Rahmen der 5.2.18 eine Umstellung vorgenommen, da für die SEO Links der Shopseiten unnötig viel Last auf der Datenbank verursacht wurde. Daher wurden hier erst alle Links der Shopseiten gesammelt und anschließend die Seo URLs erzeugt. Leider hat sich dabei ein Fehler eingeschlichen wodurch externe Links überschrieben werden.

Wir sind aktuell an der Behebung des Problems dran. Erste Korrekturen könnt ihr hier bereits einsehen:

Die Änderungen sind noch nicht released da wir ganz sicher gehen wollen das hier kein weiterer Fehler existiert. 

Die aktuelle Lösung berücksichtigt (wie man an den Tests in dem Commit sehen kann):

Wenn Ihr noch weitere Einstellungen auf eurem System habt, wäre es sehr hilfreich wenn Ihr diese hier auflisten würdet, damit wir hier auch alle möglichen Verwendungen berücksichtigen können.

Mit freundlichen Grüßen 

Oliver Skroblin

1 Like