- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Manipulieren der UrlRegistry
Hallo Community,
Im Zuge der Generierung von URLs in FirstSpirit 5.0 mittels URL UrlFactory sind bei uns einige Fragen aufgekommen:
- Gibt es eine Möglichkeit die Inhalte der UrlRegistry auszulesen? Wo liegt diese "Datei"?
- Ist es möglich die UrlRegistry bei der Generierung "bewusst" zu beeinflussen, um z.B. alle Seiten auf die oberste Ebene im Dateisystem des Webservers zu deployen.
- Kann man einzelne Einträge in der UrlRegistry zurückzusetzten, beispielsweise für genau eine Strukturseite, ohne aber die sonstigen gespeicherten Inhalte zu löschen. Mir ist bisher nur die Funktion "Gespeicherte URLs zurücksetzten" bekannt.
Vielen Dank und viele Grüße
Moritz Hartges
- Labels:
-
Developers
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Auslesen geht über ContentProducer.getStoredUrl(..) bzw. über die Methoden von URLProperties. Über letztere kann man auch URLs setzen bzw. löschen.
[EDIT]
Fall zwei kann man durch die Implementierung einer UrlFactory bewerkstelligen.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ich habe eine Strukturseite angelegt. Bei der Generierung werden entsprechende Dateien in der korrekten Verzeichnisstruktur angelegt.
Nachdem ich die Seite in der Struktur verschoben habe, wird die Datei weiterhin an der gleichen Stelle generiert.
Wenn ich nun die URLs für diese Seite zurücksetze, wird nur 1 URL gelöscht. Das trotz mehrerer Sprachen und Ausgabekanäle.
urlProperties.setLock( true );
urlProperties.resetStoredUrls( node );
urlProperties.setLock( false );
Außerdem wird die Seite bei der Generierung immernoch an der alten Stelle abgelegt. Gleichen geschiet, wenn ich die URLs über "Extras" -> "Gespeicherte URLs zurücksetzen" lösche.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Das hört sich nach einem Bug an. Bitte wende dich damit an unseren Helpdesk.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Mit folgendem Skript kann man auch direkt die UrlRegistry bearbeiten. Habe es genutzt um einen blockierten Pfad zu befreien, es benötigt ein Formular mit dem Input Feld sc_url, indem dann der Pfad angegeben wird.
import de.espirit.firstspirit.agency.OperationAgent;
import de.espirit.firstspirit.ui.operations.RequestOperation;
import de.espirit.firstspirit.agency.UrlRegistryAgent;
formData = context.showForm();
url = formData.get(null, "sc_url").get();
ra = context.requireSpecialist(UrlRegistryAgent.TYPE);
urlRegistry = ra.getUrlRegistry();
usages = urlRegistry.getEntries(url);
for (usage: usages){
urlRegistry.deletPath(usage);
}
requestOperation = context.requireSpecialist(OperationAgent.TYPE).getOperation(RequestOperation.TYPE);
if (usages.size() == 0){
requestOperation.perform("Nothing found with this URL!");
}
else {
requestOperation.perform("Done! Removed "+usages.size()+" entries.");
}

