j_mueller
Elite Observer

UrlRegistry deaktivieren?

Jump to solution

Hallo eSpirit Community,

wir haben nun nach der Umstellung auf FS5 ein Problem, an das bisher keiner von uns so recht gedacht hat.

Wir verwenden unseren eigenen URL-Creator (bzw. neumodisch UrlFactory). Nun ist es aufgrund der UrlRegistry so, dass viele unserer Seiten den Suffix "-2" erhalten, was SEO-Technisch sehr schlecht ist, da uns hier die Rankings verloren gehen.

Ein Anwendungsbeispiel:

Wir haben eine Seite, die "Weihnachten" heißt (Anzeigename der Seitenreferenz). Viele Artikel kommen aus Datenquellen und verwenden häufig Content-Projektion. Nur Einträge aus der Datenbank können Galerien besitzen (Bilder und Videos). Nun gibt es einen Artikel, der auch Weihnachten heißt und ein Video besitzt (als URL wird das Name-Feld verwendet).

Da er sonst aber keine weiteren Inhalte hat, wird zwar korrekt die Galerie-Seite erzeugt, aber keine Detailseite (stopGenerate).

Anscheinend wird diese Seite im Auftrag zuerst generiert. Kommt der Auftrag nun zur eigentlichen Weihnachten-Seite aus der Inhalte-Verwaltung, ist der Name "weihnachten.html" schon belegt und das System generiert nun die Seite "weihnachten-2.html".

An sich ist das das korrekte verhalten für die neue FirstSpirit URL-Implementierung - leider sorgt das in unseren Fall für große Probleme.

Wie können wir hier vorgehen? Lässt sich die UrlRegistry deaktivieren oder gibt es eine andere Möglichkeit das Verhalten anzupassen?

Aktuell fällt mir nur ein im UrlCreator die angeforderte URL zu erzeugen und zwischenzuspeichern, dann die Registry zu leeren oder für das aktuelle Element zu löschen und anschließend auszugeben. Das wirkt auf mich jedoch nicht sehr professionell und sorgt auch sicher für längere Generierungszeiten.

Vielen Dank für eure Unterstützung und

schöne Grüße

Julius

Labels (1)
0 Kudos
1 Solution

Accepted Solutions
Peter_Jodeleit
Crownpeak employee
Crownpeak employee

Re: UrlRegistry deaktivieren?

Jump to solution

Hier mal ein Template, wie die Registrierung (module.xml) aussehen muss, wenn man keine Persistenz haben will:

<public>

     <name>...</name>

     <class>de.espirit.firstspirit.generate.UrlCreatorSpecificationImpl</class>

     <configuration>

          ...

          <UseRegistry>no</UseRegistry>

     </configuration>

</public>

Empfehlen würde ich das aber nicht, da man einige Vorteile damit verliert.

Peter

View solution in original post

0 Kudos
5 Replies
Peter_Jodeleit
Crownpeak employee
Crownpeak employee

Re: UrlRegistry deaktivieren?

Jump to solution

In der Doku sollte beschrieben sein, wie bei der Registrierung der UrlFactory die Persistenz abgeschaltet werden kann. Ich würde aber eher vorschlagen, dem Artikel "Weihnachten" manuell eine andere URL zuzuweisen (unter  "Globale Einstellungen/URL-Einstellungen").

Peter
j_mueller
Elite Observer

Re: UrlRegistry deaktivieren?

Jump to solution

Vielen Dank!

Das klingt ja schon mal gut. Wir werden es über diese Einstellung machen, da das Problem sehr, sehr häufig autritt.

Um welche Doku handelt es sich denn da genau? :smileyblush:

0 Kudos
MichaelaReydt
Community Manager
Community Manager

Re: UrlRegistry deaktivieren?

Jump to solution

Hallo Julius,

eine Beschreibung der URLFactory gibt es im Kapitel 3.19.1 des Handbuchs für Entwickler (Komponenten). Ich bin jedoch nicht sicher, ob in diesem Kapitel auch auf die Persistenz eingegangen wird.

Viele Grüße

Michaela

0 Kudos
Peter_Jodeleit
Crownpeak employee
Crownpeak employee

Re: UrlRegistry deaktivieren?

Jump to solution

Hier mal ein Template, wie die Registrierung (module.xml) aussehen muss, wenn man keine Persistenz haben will:

<public>

     <name>...</name>

     <class>de.espirit.firstspirit.generate.UrlCreatorSpecificationImpl</class>

     <configuration>

          ...

          <UseRegistry>no</UseRegistry>

     </configuration>

</public>

Empfehlen würde ich das aber nicht, da man einige Vorteile damit verliert.

Peter
0 Kudos
rkurz
Elite Observer

Re: UrlRegistry deaktivieren?

Jump to solution

Hallo Herr Jodeleit,

welche Vorteile genau gehen dabei verloren?

Was liefert dann bspw. ein getStoredUrl() zurück?

Danke und Gruß

Ralph Kurz

0 Kudos