Frage zu AMR bzw. zum URL-Building

Alles rund um Module und Plugins in CONTENIDO 4.9.
Antworten
procon
Beiträge: 80
Registriert: So 27. Jan 2013, 13:24
Wohnort: Lennestadt
Kontaktdaten:

Frage zu AMR bzw. zum URL-Building

Beitrag von procon » Di 21. Apr 2015, 11:01

Hallo zusammen,

ich habe mich schon ein bisschen mit dem Thema URL-Builder beschäftigt, aber vielleicht kann mir ja jemand noch einen Schubs in die richtige Richtung geben:

Es geht um ein aktuelles CONTENIDO-System mit aktiviertem AMR-Plugin und einer überschaubaren Anzahl von Kategorien und Artikeln. Zusätzlich existieren einige von CON komplett unabhängige Datenbanktabellen, in denen Inhalte registrierter User (keine CON-Frontend-Benutzer) abgelegt sind. Man könnte sagen, dass CONTENIDO hier eher als Framework eingesetzt wird, obwohl es auch Bereiche der Website gibt, die rein über das CMS gepflegt werden, z.B. redaktionelle Inhalte. Alle "Kundendaten" kommen jedoch aus separaten DB-Tabellen und werden über eigens programmierte Module gepflegt bzw. ausgegeben. Ein Beispiel wäre z.B. ein Artikel mit der Adresse detailansicht.html, an den dann weitere Parameter angehängt werden, um die Ausgabe zu steuern - d.h. um festzulegen, welche "Detailansicht" ausgegeben werden soll:

Code: Alles auswählen

kategorie/unterkategorie/detailansicht.html?id=123&kunde=456
Mein Problem ist nun, dass die "externen" DB-Inhalte für CONTENIDO erst einmal unsichtbar sind, da es sich dabei natürlich weder um hauseigene Kategorien noch um CMS-Artikel handelt.
Besteht die Möglichkeit, aus diesen externen Inhalten ebenfalls suchmaschinenfreundliche URLs zu generieren bzw. diese mit den Artikel-URLs zu kombinieren?
Meine Wunschvorstellung wäre so etwas wie:

Code: Alles auswählen

kategorie/unterkategorie/detailansicht-name-des-kundenprodukts-name-des-kunden.html
Man müsste also dem URL-Builder (bzw. dem AMR-Plugin) irgendwie mitteilen, wie CONTENIDO-bezogene und externe URL-Bestandteile auseinanderzuhalten sind - geht das?

Schöne Grüße
Dominik

Ronin570
Beiträge: 32
Registriert: Mi 5. Jan 2011, 14:50
Kontaktdaten:

Re: Frage zu AMR bzw. zum URL-Building

Beitrag von Ronin570 » Mi 22. Apr 2015, 01:03

seems legit, you can dot it!

procon
Beiträge: 80
Registriert: So 27. Jan 2013, 13:24
Wohnort: Lennestadt
Kontaktdaten:

Re: Frage zu AMR bzw. zum URL-Building

Beitrag von procon » Mi 22. Apr 2015, 08:53

Jetzt gibt's hier schon die ersten SPAM-Kommentare, na so was :-D

procon
Beiträge: 80
Registriert: So 27. Jan 2013, 13:24
Wohnort: Lennestadt
Kontaktdaten:

Re: Frage zu AMR bzw. zum URL-Building

Beitrag von procon » Sa 9. Mai 2015, 12:15

Hat denn niemand einen Tipp für mich? :-(

Zuschauer
Beiträge: 141
Registriert: Do 5. Dez 2013, 08:57
Kontaktdaten:

Re: Frage zu AMR bzw. zum URL-Building

Beitrag von Zuschauer » Sa 9. Mai 2015, 12:32

Moin procon,

mit Contenido 4.9 kenne ich mich nicht aus, aber da hier sonst keine antwortet...
procon hat geschrieben:Meine Wunschvorstellung wäre so etwas wie:

Code: Alles auswählen

kategorie/unterkategorie/detailansicht-name-des-kundenprodukts-name-des-kunden.html
Man müsste also dem URL-Builder (bzw. dem AMR-Plugin) irgendwie mitteilen, wie CONTENIDO-bezogene und externe URL-Bestandteile auseinanderzuhalten sind - geht das?
Die Wiedererkennung würde ich in der .htaccess packen, da kannst du z. B. nach '/detailansicht-(.*).html' suchen.
Und dann würde ich zwischen 'name-des-kundenprodukts' und 'name es kunden' ein anderes Trennzeichen nehmen (z. B. _), so kannst du auch das ausfiltern: /detailansicht-(.*)_(.*).html.
Und bei der Weiterleitung übergibst du die gefundenen Werte als Parameter: /detailansicht.html?produkt=$1&kunde=$2.
Im Modul kannst du dann diese Parameter abfragen (aus $_GET) und für die DB-Suche nutzen.
Allerdings kriegst du aus Namen nicht die IDs zurück, also nimm etwas definitiv eindeutiges.

Das Aufbauen der URLs musst du selbst übernehmen.
In Contenido 4.8 kann man per ContenidoURL::getInstance->build(array('idart' => $idart, 'client' => $client, 'lang' => $lang)); die Clean-URL generieren lassen.
Und darin könntest du '.html' ersetzen mit den Werten aus der DB und wieder '.html': $sUrl = str_replace('.html', $sKundenprodukt . '_' . $sKunde . '.html', $sUrl);

Gruß
Zuschauer

procon
Beiträge: 80
Registriert: So 27. Jan 2013, 13:24
Wohnort: Lennestadt
Kontaktdaten:

Re: Frage zu AMR bzw. zum URL-Building

Beitrag von procon » Di 12. Mai 2015, 14:26

Danke dir für deine Hilfe, Zuschauer! 8)
Ich probiere mal ein bisschen damit rum und melde mich dann wieder, ob's geklappt hat...

Gruß
Dominik

Antworten