KeyText-Replace

Vapire

Grünschnabel
Hallo!

Ich habe gerade ein Web-Applikations-Projekt beendet und an mich wurde eine Anfrage gestellt bezüglich künstlerischer Lebensläufe die gespeichert werden sollen. In diesen Lebensläufen gibt es viele Schlagwörter (wie z.B. Ausbildungsstätten, bekannte Personen bei denen man gelernt hat, Projekte bei denen man mitgewirkt hat etc.)
Das ganze soll aufgebaut werden wie eine kleine Bibliothek, so dass jeder Begriff der relevant ist (in diesen Lebensläufen) auf eine bestimmte Seite verlinkt wird.

Beispiel:
Max Muster studierte an der Akademie der Künste in den Niederlanden unter der Leitung von Hugo Leitung.


Die grün eingefärbten Schlüsselbegriffe würden hier nun zum einen auf die Seite der Akademie der Künste verweisen und zum anderen auf eine Biografie von Hugo Leitung.
Da es ziemlich schnell vorkommt, dass mehrere Lebensläufe die gleichen Schlüsselwörter enthalten, habe ich mir nun folgendes System ausgedacht:

In einer DB werden die Schlüsselbegriffe gespeichert mit deren Auflösung (also wodurch sie ersetzt werden sollen, z.B. Link). Die Lebensläufe die durch Templates erzeugt werden, werden über ein PHP-Skript geschleust, dass sich das ganze Dokument als DOM einverleibt, alle Textnodes durchgeht und die jeweiligen Schlüsselwörter einfach ersetzt. Das Endergebnis wird dann an den Browser geschickt.

Meine Fragen wären nun:
  1. Gibt es so ein System schon als Open-Source-Projekt oder ähnliches?
  2. Performance - Ich rede hier schon von ein paar hundert Lebensläufen und paar tausend Schlüsselwörtern.
  3. Optimierungsvorschläge?

Ich möchte noch anmerken, dass mir diverse Optionen wie z.B. case sensitivity, Wortgrenzen, etc. auch eingefallen sind. Mir geht es aber im Moment rein um den Design-Aspekt so eines Systems.

Lg
Vapire
 
1.
Ein solches System würde ich als Wiki-Software bezeichnen.

2+3.
Ich würde das Verlinken der Schlüsselworte schon beim Speichern erledigen, spart beim Ausgeben Rechenleistung und damit Zeit.
 
1.
Ein solches System würde ich als Wiki-Software bezeichnen.

Ja, das dachte ich mir auch. Allerdings sind mir Wiki-Systeme zu viel drum herum (ich habe mich mal bei metaWiki schlau gemacht und das is too much für meine Bedürfnisse)

2+3.
Ich würde das Verlinken der Schlüsselworte schon beim Speichern erledigen, spart beim Ausgeben Rechenleistung und damit Zeit.
Und bei der Änderung eines Lebenslaufs den HTML-Code zurück in Plain-Text transformieren?
Oder den HTML-Text und den Plain-Text jeweils in einer seperaten Spalte speichern?


Lg
Vapire
 
- Es gibt da noch kleinere light-weight Wikisysteme wie z.B. Minki, welches wirklich sehr nett aufgebaut ist, nicht viel Schnick-Schnack und trotzdem stark erweiterbar: http://minki.theprawn.com/

- Wenn du mit regulären Links arbeitest, is das doch kein Problem -> strip_tags() hilft da weiter.
 
Zurück