Interne Verlinkung wie bei Wikipedia

Ja ich glaub das wäre zu Aufwendig mit dem ständigen durchsuchen und keine gute Idee, aber ich dachte das da vielleicht ein Teil richtig gedacht war.

Naja, irgendwie fehlt mir die Verständnis wie es dann funktionieren soll.

Habe ich vielleicht schon zufällig eine Antwort bekommen hier und versteh es mal wieder nicht? Ich mein du hast mir ja am Anfang schon gesagt das man irgendwie definiert das ein bestimmtes Wort zu einer bestimmten Wortdefinition verweisen soll, aber puh, mir fällt nichts logisches jetzt ein wie sowas aussehen kann in Programmiersprache, ausser meine undezente Idee jetzt.
 
Was gefaellt dir an meiner Antwort nicht? Genau das ist die Loesung.

Ich hab doch nichts gesagt, ich versteh deine Lösung nur einfach nicht.
Du schreibst das man irgendwie mit regulären Ausdrücken Wörter markiert, aber ich kann mir nichts drunter vorstellen.

Woher will ich z.b. beim aktuellen Artikel wissen welche Wörter ich dort drin markieren muss, weil ich vielleicht in Zukunft dazu ein Artikel schreiben werde, und woher soll ich wissen wie der Dateiname des neuen Artikels heißen wird damit ich in im aktuellen Dokumnet verlinken kann...

Also ich bin noch bei 0 und weis nicht wie ich vorgehen muss, gut ich hab auch nicht so viel Ahnung von programmieren, aber trotzdem auch so versteh ich es nicht.
 
Jeder neu geschriebene Artikel hat ein Hauptthema.

Das Hauptwort des neuen Artikels könnte man nun mit einer Suchen/Ersetzen Funktion in allen bisher erstellten Artikeln suchen und ersetzen lassen.

Ich glaub so müsste das normal gemacht werden oder was meint ihr?

Problem wäre jetzt aber noch, wie kann ich in dem aktuell neuen Artikel nach allen anderen bisherigen Wörtern suchen und ersetzen lassen.

Mögliche Lösung, alle Wörter die bisher benutzt wurden, kommen in eine Tabelle und somit wird immer in jedem Artikel die komplette Palette an Wörtern durchsucht.

Bin ich auch dem richtigen Weg, habe ich das so richtig verstanden?

Wieso machst du es icht genau so ?

Du schreibst einen Artikel, weißt diesem einen Titel (Hauptwort) zu. Diese Titel werden in einer Tabelle gespeichert:
id | name
1 auto
2 mond

Nun lässt du die Artikel (die selbstverständlich auch in einer Tabelle liegen) durch sogenannten Reguläe Ausdrücke parsen. Das bedeutet, bevor der Text ausgegeben wird, wird er durchsucht und jedes Wort, dass in der Tabelle (siehe oben) vorkommt wird markiert/verändert zu einem Link (z.B. zu artikel.php?title=auto oder artikel.php?id=1).

Um diese Wörter zu finden brauchts du eben diese sog. Reguären Ausrücke (RegExp).

Unabdingbar für das Vorhaben ist natürlich eine Datenbank und eine serverseitige Sprache (der Großteil wird hier MySQL und PHP benutzen).

Weitere Details zu deinem Vorhaben findest du unter: http://www.php.net

Auf die Schnelle: http://tut.php-q.net/guestbook-smilie.html
Dort wird nach bestimmten Wörtern gesucht und ersetzt, im Grunde genau das, was du brauchst.

Desweiteren nehm ich an, dass bei Wikipedia die Seiten desöftern durchsucht werden und die Artikelnamen durch Link zu ersetzen, um dann eine statische Seite zu erstellen. Erspart Traffic und damit auch Zeit für den User (da die Funktion des Suchen und Ersetzens nicht mehr durchgeführt werden muss).
 
Schau doch bitte mal in die Tutorials Abteilung. Da gibt es mehrere Infos zu regulaeren Ausdruecken. Und markiert wird ein Wort mit irgendeinem eindeutigen Muster. Wie bereits beschrieben:
[[Auto]] wird zu deineSeite.tld/auto
Diese Markierung musst du aber schon von Hand setzen. Oder wie im Beitrag vor mir beschrieben eine Liste mit Stichwoertern fuehren.
 
Wieso machst du es icht genau so ?

Der Hinweis hier von Gumbo hat mich halt verunsichert, dass hört sich für mich so an als ob es zu Aufwendig wäre.

Die deutschsprachige Wikipedia besitzt derzeit über 525000 Artikel und täglich kommen etwa 500 neue dazu. Stell dir mal vor, Wikipedia würde nun bei jedem neuen Artikel sämtliche Artikel durchgehen und dort alle Stichwörter des neuen Artikeltitels zum neuen verlinken und auch umgekehrt, sodass der neue Artikel auch gleich Verweise zu den bereits existierenden Artikeln enthält. Ich hoffe, meine Mathematikkentnisse trügen jetzt nicht: das wäre ein Aufwand von „n-1“ Ersetzungen wobei n für die Anzahl der bereits existierenden Artikel steht.


Sonst würd ich ja auch alle Artikel mit dateiname und keywords in eine tabelle speichern und durchsuchen lassen.

Aber ich lass mir nochmal alles durch den Kopf gehen, vielleicht habe ich ja irgendein Punkt überflogen/nicht richtig verstanden.
 
Halten wir erst einmal ein paar Dinge fest: Wikipedia benutzt definitiv eine spezielle Auszeichnungssprache für die Links. Alles andere, besonders eine automatisierte Verlinkung, ist nicht nur sehr ineffizient, da der Aufwand proportional zur Anzahl der Artikel steigt, sondern kann auch zu Fehlern führen wenn etwa Begriffe falsch verlinkt werden.

Daher ist es nur sinnvoll, die Verlinkungen manuell vorzunehmen, auch wenn dies einen Mehraufwand bedeutet.
 
Ich glaub es ja auch, jetzt wo ich es lese das es ineffizient ist auf diese Weise und glaub auch langsam das ich es wohl manuell machen werde, es sei den jemand kann hier anderes überzeugen.
 
Du könntest deine Idee ja trotzdem implementieren.
Es hängt halt ganz davon ab in welcher Größenordnung sich dein Wiki bewegt.
Bei ~100 Einträgen lässt sich das vielleicht noch verkraften.

greetz
daddz
 
Ja das könnte man sich überlegen bei nur 100 Seiten ist das bestimmt nicht so tragisch, ich muss mal schauen, da ich ja jetzt ungefähr weis welche Möglichkeiten es gibt, kann ich mich einfacher für eine entscheiden.
 

Neue Beiträge

Zurück