Ankündigung

Einklappen
Keine Ankündigung bisher.

Ebenen/Ordner aus SEO URL ausblenden

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Ebenen/Ordner aus SEO URL ausblenden

    Hallo,

    ich suche nach einer Lösung in der Ebenen in einer SEO URL nicht erscheinen.

    Beispiel
    Jetzt: www.example.de/home/start/kategorie/artikel
    Wunsch: www.example.de/kategorie/artikel

    Das Ganze findet in Joomla statt.
    Eine Joomla Komponente ist - weil nicht anders möglich - über die .htaccess als (Domain-)Startseite eingerichtet.
    Code:
    RewriteRule ^$ /home/start [R=301,L]
    Folglich erscheint bei der Eingabe von www.example.de und www.example.de/home die Startseite mit der SEO URL www.example.de/home/start.
    Die beiden Ebenen /home/start sollen aus der SEO URL ausgeblendet werden.

    Info: Es handelt sich nicht um Server-Ordner, sondern lediglich um die aus den Aliassen generierte SEO URL.

    Die SEO URL richtet sich nach dem Menü mit folgender Struktur (Beispiel):
    www.example.de
    -home
    --start
    ---kategorie1
    ----artikel1
    ----artikel2
    ----artikel3
    ----artikel4
    ---kategorie2
    ----artikel1
    ----artikel2
    ----artikel3
    ---kategorie3
    ----unterkategorie1
    -----artikel1
    -----artikel2
    ----unterkategorie2
    -----artikel1
    -----artikel2
    -----artikel3
    ---kategorie4
    ----unterkategorie1
    -----artikel1
    -----artikel2
    ----unterkategorie2
    -----artikel1
    ---kategorie5
    ...

    Aus der SEO URL ausgeblendet werden sollen "-home" und "--start".

    Das Internet ist voll mit ähnlichen, aber nicht zutreffenden Problemen oder ungelösten selben Problemen.
    Über die .htaccess lässt sich dies nicht lösen. Wohl eher über eine der router.php. Die router.php sind mir zu unverständlich.

    In Typo3 findet sich der Begriff "Exclude from speaking URL", der mir aber auch nicht weitergeholfen hat.

    Mir sind nun auch die Suchbegriffe ausgegangen.


  • #2
    Das es gibt soviele ungelöste Fälle dieser Frage gibt liegt daran, daß so viele Menschen das URL-rewriting falsch verstehen...
    Das Rewriting schreibt nur eine URL um, es macht weder eine Weiterleitung, noch erzeugt es eine neue URL für den Browser.

    Folglich: Wenn der User "www.example.de/home/start/kategorie/artikel" in seinen Browser eingibt, dann IST das so - nichts in der Welt kann ihn davon abhalten, das zu tun. Es wird auch genau so in seiner Adresszeile stehen bleiben, das Umschreiben ändert die Browser-URL nicht... alles, was das Rewriting machen kann, ist (serverseitig) die URL "www.example.de/home/start/kategorie/artikel" zu beispielsweise "www.example.de/kategorie/artikel" umzuschreiben (oder im klassischen Fall auf "www.example.com/index.php?kategorie=start"), allerdings völlig transparent für den Benutzer am Browser.

    Wenn etwas nicht im Browser erscheinen soll, entferne es aus dem HTML das du dem Browser sendest - es gibt keinen anderen Weg!
    Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

    Kommentar


    • #3
      Zitat von lstegelitz Beitrag anzeigen
      Wenn etwas nicht im Browser erscheinen soll, entferne es aus dem HTML das du dem Browser sendest - es gibt keinen anderen Weg!
      Gut erkannt! Und wie oder wo mache ich das in diesem Fall? Ich soll mich an Joomla wenden? Es ist mir schon klar, dass irgendein Code in irgendeiner *.php angepasst werden muss, aber wie, wo oder was?

      Kommentar


      • #4
        Das kann ich dir im Einzelfall und ohne Kenntnis des Systems nicht sagen, tut mir leid... ich kenne mich mit Joomla nicht aus.

        Letztendlich läuft es aber darauf hinaus - irgendwo wir dieser Link erzeugt und er besteht nicht aus physisch vorhandenen Komponenten, dh. dieses "/home/start" ist bloß eine logische Verwaltungstruktur.

        Im übrigen muss dafür bereits ein Rewriting existieren, welches die logische Struktur in eine physische Zurückübersetzt.

        Wohl eher über eine der router.php. Die router.php sind mir zu unverständlich.
        Vermutlich ist dem so. Es ist extrem umständlich, für jede URL eine separate Rewrite-Regel zu formulieren, daher gehen viele komplexe Systeme oder Frameworks diesen Weg und schreiben grundsätzlich alles auf ein zentrales Script um, das die URL dann auseinandernimmt und weiterdelegiert.
        Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

        Kommentar


        • #5
          Die Sache ist, dass dieses zutreffende PHP Script wohl nicht so geschrieben ist, dass die "Ebenen" erkennbar und ausgeblendet werden könnten. Es fängt einfach in der obersten Ebene an und arbeitet sich nach unten durch. Soweit mein Eindruck.

          In den Breadcrumbs (horizontal-menü) habe ich zB eine selbe Lösung im PHP Code realisieren können. Da musste nur anstatt einer "0" eine "1" geschrieben werden und schon war die oberste Ebene ausgeblendet. Nur leider habe ich sowas für die SEO URL nicht gefunden.

          Zudem gibt es gleich mehrere router.php / routing.php in dem System.

          Kommentar

          Lädt...
          X