Zum Inhalt

Tags verwalten

Imperia bietet eine Reihe von Kommandozeilenwerkzeugen, um Tags in Dokumenten und Realms zu verwalten.
Die Skripte greifen direkt auf das Archiv zu und arbeiten außerhalb des normalen Workflows.
Standardmäßig werden nur veröffentlichte Versionen berücksichtigt, mit -a/--all auch archivierte.


Überblick

Die wichtigsten Skripte liegen im Verzeichnis site/bin/.
Sie folgen einem einheitlichen Muster: Realm wählen (-r), optional Dokumente per IQL filtern (-i), Aktion ausführen.

Script Zweck Typische Nutzung
admin_listtag.pl Realms, Tags und Dokumente auflisten, Backup als JSON Überblick, Backup
admin_addtag.pl Tag in Realm oder Dokumente einfügen Migration, nachträgliches Tagging
admin_deltag.pl Tag aus Realm oder Dokumenten löschen Aufräumen
admin_mergetag.pl Mehrere Tags zu einem Ziel-Tag zusammenfassen Duplikate bereinigen
admin_renametag.pl Tag umbenennen Konsistenz
admin_recommendtag.pl Tag als „empfohlen“ markieren oder zurücknehmen Redaktionshilfe
admin_prunetags.pl Ungenutzte Tags entfernen Cleanup
admin_importtag.pl Tags aus Datei oder STDIN importieren Initiale Befüllung
admin_restore_tag.pl Tags/Realms aus JSON-Backup wiederherstellen Recovery

Gemeinsame Optionen

Alle Skripte unterstützen

  • -r, --realm=<Realm>: Realm wählen (Default: default)
  • -i, --iql=<Expr>: Nur auf Dokumente anwenden, die den IQL-Filter erfüllen
  • -a, --all: Alle Archivversionen einbeziehen, nicht nur die publizierte
  • -q, --quiet: Nur Fehler anzeigen, keine Rückfragen
  • -v, --verbose: Mehr Informationen ausgeben
  • -o, --output=<File>: Ausgabe in Datei schreiben

Skripte im Detail

admin_listtag.pl

Listet Realms, Tags und optional Dokumente. Kann Backups erzeugen.

Beispiele:

# Alle Realms auflisten
site/bin/admin_listtag.pl -l

# Alle Dokumente und Tags in Realm "news" anzeigen
site/bin/admin_listtag.pl -v -d -r=news

# Backup aller Tags nach JSON
site/bin/admin_listtag.pl -b=backup.json


admin_addtag.pl

Fügt einen oder mehrere Tags in ein Realm oder in Dokumente ein. Neue Tags werden automatisch als empfohlen markiert.

Beispiele:

# Tag "featured" im Realm "news" hinzufügen
site/bin/admin_addtag.pl -r=news featured

# Alle Dokumente mit Titel "Test" im Realm "news" taggen
site/bin/admin_addtag.pl -i="Title~Test" -r=news featured

admin_deltag.pl

Entfernt Tags aus Realms oder Dokumenten.

Beispiele:

# Tag "obsolete" aus Realm "default" löschen
site/bin/admin_deltag.pl obsolete

# Tag "draft" nur aus Dokumenten mit Titel "Alt" entfernen
site/bin/admin_deltag.pl -i="Title~Alt" draft

admin_mergetag.pl

Fasst mehrere Tags zu einem Ziel-Tag zusammen. Praktisch, wenn Schreibvarianten existieren.

Beispiel:

# "tagA" und "tagB" nach "tag_main" zusammenführen
site/bin/admin_mergetag.pl -r=news tagA tagB tag_main

admin_renametag.pl

Benennt ein Tag im Realm um. Optional auch in allen Dokumenten.

Beispiel:

# "oldTag" in "newTag" umbenennen
site/bin/admin_renametag.pl -r=news oldTag newTag

admin_recommendtag.pl

Setzt oder entfernt den empfohlen-Status eines Tags.

Beispiele:

# Tag "featured" als empfohlen markieren
site/bin/admin_recommendtag.pl -r=news -s=on featured

# Empfehlung zurücknehmen
site/bin/admin_recommendtag.pl -r=news -s=off featured

admin_prunetags.pl

Entfernt alle ungenutzten und nicht empfohlenen Tags aus einem Realm. Mit -n/--nochange nur anzeigen (Dry Run).

Beispiele:

# Nur anzeigen, was gelöscht würde
site/bin/admin_prunetags.pl -n -r=news

# Unbenutzte Tags wirklich löschen
site/bin/admin_prunetags.pl -r=news

admin_importtag.pl

Importiert Tags zeilenweise aus Datei oder von STDIN.

Beispiele:

# Tags aus Datei importieren
site/bin/admin_importtag.pl -f=tags.txt -r=news

# Tags per Tastatur eingeben, mit Ctrl+D beenden
site/bin/admin_importtag.pl -r=news -

admin_restore_tag.pl

Stellt Realms und Tags aus einer JSON-Backup-Datei wieder her.

Beispiel:

# Backup zurückspielen
site/bin/admin_restore_tag.pl -r=news backup.json

Best Practices

  • Migration: Tags aus Datei importieren (admin_importtag.pl), als empfohlen markieren (admin_recommendtag.pl), auf Dokumente anwenden (admin_addtag.pl).
  • Bereinigung: Realms auflisten (admin_listtag.pl), ungenutzte Tags prüfen (admin_prunetags.pl -n), danach löschen (admin_prunetags.pl).
  • Recovery: Vor großen Änderungen Backup erstellen (admin_listtag.pl -b=backup.json), bei Bedarf zurückspielen (admin_restore_tag.pl).