RexSEO Extension Point

Alles über die Anwendung und Entwicklung von AddOns.

RexSEO Extension Point

Beitragvon site-concept » 5. Jan 2012, 12:39

Hallo zusammen,

ich würde gerne meine URLs manipulieren, d.h. ich würde gerne einige URLs um ein Verzeichnis kürzen.
Bsp.: pfad1/pfad2/ in -> pfad2/

Kann mir vielleicht jemand ein kurzes Beispiel zeigen, wie man das mit einem Extension Point lösen kann? Momentan komme ich mit den auto redirects nicht hin, es wird immer einer angelegt.

Würde mich freuen.

LG

Pascal
site-concept
 
Beiträge: 10
Registriert: 15. Nov 2011, 16:02

Re: RexSEO Extension Point

Beitragvon Markus.Lorch » 5. Jan 2012, 12:47

Wenn das nur eine Handvoll Urls betrifft bist Du mit den URL Aliasen (in den Artikelmetadaten) vermutlich besser aufgehoben ;)
Grüße,
Markus Lorch

Tschüssle sagt Herr Nüssle
Benutzeravatar
Markus.Lorch
 
Beiträge: 634
Registriert: 21. Okt 2007, 16:22
Wohnort: Walheim

Re: RexSEO Extension Point

Beitragvon jeandeluxe » 5. Jan 2012, 15:57

site-concept hat geschrieben:Momentan komme ich mit den auto redirects nicht hin, es wird immer einer angelegt.


Abgesehn davon das Markus Tip für ein paar urls der richtige ist, ist das mit dem redirect der automatisch erzeugt wird natürlich ein Thema.. hm.

Probiermal den ungewollten redirect auf inaktiv zu stellen, und mach dann nochmal etwas, daß zu nem rebuild der pathlist führt.. bin grad nicht sicher ob der redirect der schon vorhanden aber inaktiv ist dann überschrieben und aktiv gesetzt wird, oder nicht..

lg,
Jan
mark your solved threads [SOLVED]™ promotion tour.. | Redaxo API Docu | rexdev.de | "You start with some money.."
IT'S A MARATHON. NOT A SPRINT. UNLESS IT IS A SPRINT, THEN SPRINT!
Benutzeravatar
jeandeluxe
 
Beiträge: 1933
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Re: RexSEO Extension Point

Beitragvon site-concept » 5. Jan 2012, 16:07

Danke für Eure Hilfe!

Ich habe das jetzt so gelöst, indem ich die Strings im Pfad entferne.
In Zeile 518 (class.rexseo_rewrite.inc.php) habe ich folgendes ergänzt:

Code: Alles auswählen
$pathname = str_replace(array("pfad1/", "pfad2/"), array(), $pathname);


Das funktioniert soweit und die auto redirects funktionieren für die anderen Fälle ebenfalls.

Vielleicht kann man in einer der nächsten Versionen berücksichtigen, dass man in den Einstellungen Strings hinterlegen kann, die ignoriert werden sollen.
site-concept
 
Beiträge: 10
Registriert: 15. Nov 2011, 16:02

Re: RexSEO Extension Point

Beitragvon jeandeluxe » 5. Jan 2012, 16:33

site-concept hat geschrieben:Vielleicht kann man in einer der nächsten Versionen berücksichtigen, dass man in den Einstellungen Strings hinterlegen kann, die ignoriert werden sollen.


Nein, das ist kein Weg.. dafür gibts die EPs. Schön hätte ich gefunden, wenn du die Frage beantwortet hättest die ich dazu gestellt hatte..

lg,
jan
mark your solved threads [SOLVED]™ promotion tour.. | Redaxo API Docu | rexdev.de | "You start with some money.."
IT'S A MARATHON. NOT A SPRINT. UNLESS IT IS A SPRINT, THEN SPRINT!
Benutzeravatar
jeandeluxe
 
Beiträge: 1933
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Re: RexSEO Extension Point

Beitragvon site-concept » 5. Jan 2012, 16:41

Kann es gerade nicht testen, da ich mein EP-Konstrukt schon entfernt und gegen die oben genannte Lösung ersetzt habe.

Ein inaktiv Schalten der redirects wäre für mich an der Stelle keine Lösung, da eine Kategorie auf Ebene 1 immer ausgeblendet werden soll, d. h. wenn der Redakteur in der Kategorie einen Artikel anlegt, müssten jedes mal die redirects angepasst werden.

Lg
site-concept
 
Beiträge: 10
Registriert: 15. Nov 2011, 16:02

Re: RexSEO Extension Point

Beitragvon Markus.Lorch » 5. Jan 2012, 17:31

Wenn Du nächstes mal etwas präzisere Angaben zu deinem Vorhaben machst - ob du das einmalig bei wenigen Artikeln oder automatisch bei vielen Artikeln machen möchtest war hier überhaupt nicht heraus zu erkennen - und dann müssen wir uns immer alles aus der Nase ziehen und raten ;)

Über einen EP wäre das einfach und schön gemacht gewesen :)
Grüße,
Markus Lorch

Tschüssle sagt Herr Nüssle
Benutzeravatar
Markus.Lorch
 
Beiträge: 634
Registriert: 21. Okt 2007, 16:22
Wohnort: Walheim

Re: RexSEO Extension Point

Beitragvon site-concept » 5. Jan 2012, 17:41

Ok, dann tut es mir leid, wenn ich mich unklar ausgedrückt habe.

Ich habe es ja über einen EP versucht, das hat prinzipiell auch funktioniert.
Das Problem dabei waren die auto redirects, es wurde praktisch für jede seite einen redirect angelegt, was ich natürlich nicht wollte.

Stell dir vor du hast eine Kategorie, in der beliebig viele Seiten sein können, ungefähr so:

verz1/verz2/seite1.html
verz1/verz2/seite2.html
verz1/verz2/seite3.html
etc.

im Frontend möchte ich nachher folgendes haben:
verz1/seite1.html
verz1/seite2.html
verz1/seite3.html
...

Momentan mache ich das über ein Stringreplace, wie oben beschrieben.
Wie würdest du das über einen EP lösen?

Besten Gruß
site-concept
 
Beiträge: 10
Registriert: 15. Nov 2011, 16:02

Re: RexSEO Extension Point

Beitragvon jeandeluxe » 5. Jan 2012, 18:20

site-concept hat geschrieben:Das Problem dabei waren die auto redirects, es wurde praktisch für jede seite einen redirect angelegt, was ich natürlich nicht wollte.


Yup, das ist eine Implikation die ich nicht bedacht habe.. meine spontane Idee: Zum einen bau ich nen generellen switch für die aut-redirects ein, und dann überleg ich grad wie man gezielt einzelne URLs davon ausschließt.. momentan tendiere ich dazu den REXSEO_URLS status Wert als flag zu nehmen.. wanke gerade noch zwischen irgendeinem INT Wert (0 od.-1) oder doch eher nem selbsterklärenden string wie 'autoredirect_ignore'.. not sure.

lg,
Jan
mark your solved threads [SOLVED]™ promotion tour.. | Redaxo API Docu | rexdev.de | "You start with some money.."
IT'S A MARATHON. NOT A SPRINT. UNLESS IT IS A SPRINT, THEN SPRINT!
Benutzeravatar
jeandeluxe
 
Beiträge: 1933
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Re: RexSEO Extension Point

Beitragvon jeandeluxe » 5. Jan 2012, 19:22

jeandeluxe hat geschrieben:..und dann überleg ich grad wie man gezielt einzelne URLs davon ausschließt.. momentan tendiere ich dazu den REXSEO_URLS ..


Ja schad, nicht so einfach.. da muß ich noch n bischen grübeln. Aber ich hab auf die Schnelle ne Version gemacht wo man die auto-redirects abschalten kann: (siehe unten) Dann kannst du wenigstens den EP benutzen, und mußt nicht in Rexseo herumpatchen..

hth,
Jan
mark your solved threads [SOLVED]™ promotion tour.. | Redaxo API Docu | rexdev.de | "You start with some money.."
IT'S A MARATHON. NOT A SPRINT. UNLESS IT IS A SPRINT, THEN SPRINT!
Benutzeravatar
jeandeluxe
 
Beiträge: 1933
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Re: RexSEO Extension Point

Beitragvon site-concept » 5. Jan 2012, 19:39

Super, Danke!
Werd ich nachher mal einspielen.

Ich hab da noch eine Frage bzgl. den URLs.

Momentan kann man ja wählen zwischen "/" und ".html" als Dateiendung bzw. ohne.

Meine Vorstellung wäre folgende:
1. Startartikel mit weiteren Unterkategorien -> / am Ende -> Bsp. http://www.domain.de/blumen/
2. Startartikel ohne weitere Unterkategorien -> .html am Ende -> Bsp. http://www.domain.de/blumen.html
3. "Normaler" Artikel innerhalb einer Kategorie -> .html am Ende -> Bsp. http://www.domain.de/blumen.html

In der Standardausführung bekomme ich das nicht umgesetzt, dafür müsste ich wieder was anpassen oder?
site-concept
 
Beiträge: 10
Registriert: 15. Nov 2011, 16:02

Re: RexSEO Extension Point

Beitragvon jeandeluxe » 5. Jan 2012, 22:56

site-concept hat geschrieben:Meine Vorstellung wäre folgende: (..) In der Standardausführung bekomme ich das nicht umgesetzt, dafür müsste ich wieder was anpassen oder?


Richtig.. du müßtest dafür class.rexseo_rewrite patchen.. konkret die Funktion rexseo_generate_pathlist().

lg,
Jan
mark your solved threads [SOLVED]™ promotion tour.. | Redaxo API Docu | rexdev.de | "You start with some money.."
IT'S A MARATHON. NOT A SPRINT. UNLESS IT IS A SPRINT, THEN SPRINT!
Benutzeravatar
jeandeluxe
 
Beiträge: 1933
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Re: RexSEO Extension Point

Beitragvon jeandeluxe » 5. Jan 2012, 23:31

FYI:

Ich hab den "Schalter" für die auto-redirects noch dahingehend erweitert, daß man nun wählen kann zwischen:
* Aus
* Halbautomatisch: Redirects werden registriert, aber inaktiv gesetzt
* Vollautomatisch: Redirects werden registriert & aktiviert

DL (1.4.247) as usual @ http://gn2-code.de/projects/rexseo/files

Falls mir noch ein geschmeidiger Weg einfällt Änderungen via EP so auszuwerten, daß keine ungewollten redirects entstehen bau ich das ein, aber momentan ist alles was mir dazu einfällt zu viel Aufwand und steht nicht dafür..

lg,
Jan
mark your solved threads [SOLVED]™ promotion tour.. | Redaxo API Docu | rexdev.de | "You start with some money.."
IT'S A MARATHON. NOT A SPRINT. UNLESS IT IS A SPRINT, THEN SPRINT!
Benutzeravatar
jeandeluxe
 
Beiträge: 1933
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Re: RexSEO Extension Point

Beitragvon site-concept » 6. Jan 2012, 09:19

merci, läuft jetzt alles, wie es soll!

Lg

pascal
site-concept
 
Beiträge: 10
Registriert: 15. Nov 2011, 16:02

Re: RexSEO Extension Point

Beitragvon jeandeluxe » 6. Jan 2012, 10:37

site-concept hat geschrieben:merci, läuft jetzt alles, wie es soll!


Btw.: Die redirects, die durch deine Manipulation der Pfade entstanden sind, sollten so oder so nur einmal registriert werden.. und dann nicht mehr, denn ab dann sind sie ja in jeder "alten" pathlist bereits drinn. Sprich: letztlich eigentlich gewolltes Verhalten, außer halt in einer dev Phase..

lg, Jan
mark your solved threads [SOLVED]™ promotion tour.. | Redaxo API Docu | rexdev.de | "You start with some money.."
IT'S A MARATHON. NOT A SPRINT. UNLESS IT IS A SPRINT, THEN SPRINT!
Benutzeravatar
jeandeluxe
 
Beiträge: 1933
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg


Zurück zu AddOns [R4]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste