Problem mit Jroute - falsche Links werden erzeugt

  • Hallo mal wieder!


    Ich bin beim Arbeiten an der Seite an der ich sitze (moveo.topskunden.de) mal wieder auf ein Problem gestoßen, diesmal mit den Links die von jroute erzeugt werden.


    Kurze Vorgeschichte, da es vielleicht was mit dem Problem zu tun hat - evtl. hat sich ja irgendwo eine Syntax geändert oder so:


    Die Seite vom Kunden ist im Original 2.5.13 und als allererstes habe ich sie auf 3.9.19 aktualisiert, soweit hat auch alles dabei funktioniert.


    Nun habe ich eine Sache geändert und seitdem funktionieren Links und die Breadcrumbs nicht mehr korrekt wie vorher.

    Auf der Originalseite moveo.de ist die 1. Navigationsebene (z.B. https://www.moveo.de/klassenfahrten-und-jugendreisen.html) eine Kategorieliste plus einem Stück Text darüber. Die Kategorie-Hirarchie "dahinter" ist reisen->kurs-und-klassenfahrten->land->stadt.

    Auf der überarbeiteten Seite moveo.topskunden.de/klassenfahrten-und-jugendreisen.html soll die Navigation an dieser Stelle in individuelle Gruppen aufgeteilt werden und nicht mehr einfach alphabetisch sein, daher ist dort diese Ebene nun keine Kategorieliste mehr, sondern ein Beitrag, die Liste ist "von Hand" erstellt. Bis hierher funktioniert noch alles.


    Das Problem beginnt eine Ebene darunter:


    Dort werden nun die einzelnen Städte zum Land gelistet, jedoch sind die Links "kaputt". Beispiel:

    Auf https://moveo.topskunden.de/kl…reisen/142-bulgarien.html und den anderen Länder-Seiten sind die "Städte"-Links alle nach dem gleichen Schema falsch:


    https://moveo.topskunden.de/142-klassenfahrten-und-jugendreisen/bulgarien/371-varna.html Ist die Url die ausgegeben wird

    https://moveo.topskunden.de/klassenfahrten-und-jugendreisen/142-bulgarien/371-varna.html wäre aber Korrekt.


    Die ID, die eigentlich zum Land mit dazugehört wird stattdessen vorne an die URI geklebt.


    Der Aufruf dazu im Template ist:

    Code
    JRoute::_(ContentHelperRoute::getArticleRoute($item->slug, $item->catid))

    Und wenn ich mir den Wert ausgeben lasse, mit dem JRoute an dieser Stelle gefüttert wird, so ist dieser:


    "index.php?option=com_content&view=article&id=371:varna&catid=142" - https://moveo.topskunden.de/in…le&id=371:varna&catid=142 führt aber auf eine Fehlermeldung "Call to a member function get() on null"


    Hat jemand eine Idee? Gerne steuere ich wieder mehr Infos bei, wenn das hilft. Jetzt falle ich aber erst einmal tot ins Bett. fie

  • So, nochmal ich: Ich habe das Problem jetzt erst einmal mit einem "Hack" gelöst:


    Da die URLs immer nach dem gleichen Schema falsch erzeugt werden schnibbel' ich die Strings jetzt einfach auseinander und klebe sie in der richtigen Reihenfolge wieder zusammen. Das ist sicher nicht die elegante, vornehme Art, aber es funktioniert. ^^


    Ich lasse den Thread aber trotzdem erst einmal offen, vielleicht hat ja doch noch jemand einen Tip für mich, warum das passiert. Admins: Wenn ihr aber meint, mit meinem Hack ist das Thema erledigt, dann macht es natürlich zu. :)