Stylemotion.de Forum » Allgemeines » HTML, PHP, Webdesign und Co.
Keywords automatisch verlinken.
Seiten (1): 1  
Autor Beitrag
 
bigfraggle
Kunde
Keywords automatisch verlinken.
Hallo zusammen.

Ich möchte gerne bestimmte Wörter z.B. in meinen News automatisch mit einem Link versehen. Sprich: Wenn z.B. in einem Beitrag das Wort xyz vorkommt, soll dieses in ein <a href="url">xyz</a> verwandelt werden.

Beispiel: http://keyword-links.staticfloat.com/

Nun stellt sich die Frage, wie man sowas am besten realisieren könnte. Mit Javascript wär es wohl meiner bisherigen Lektüre nach am einfachsten (auch wenn ich das auf Anhieb nicht basteln könnte), gibt aber wohl Probleme mit Suchmaschinen, die die Links dann nicht zu Gesicht bekommen.

Bin für jede Hilfe, jedes fertige Script dankbar!

Gruß
bigfraggle
bigfraggle ist offline  
 
Ecstasy
Kunde (Support beendet)
Ich behaupte das es am besten direkt im Code geht. Da gibt es die Replace Funktion von PHP direkt.
Ecstasy ist offline  
 
bigfraggle
Kunde
Guter Hinweis, bin damit einen Schritt weitergekommen.

Hiermit bekomme ich die Links z.B. in der detail.html für die News hin:

Code:
1
2
3
4
5
6
7
8
9
{php}
$words = array( 'Wort1' => 'http://www.wort1.de',
                'Wort2' => 'http://www.wort2.de' );
$text = $this->parsevars['TEXT'];
foreach ($words as $word => $url){
     $text = str_replace($word, '<a href="'.$url.'">'.$word.'</a>', $text);
}
echo $text;
{/php}


Mein Problem: Durch das "echo $text;" benötige ich im Template ja das {TEXT} nicht mehr, da ich die Ausgabe sonst ja doppelt habe.
Aber: Wenn ich {TEXT} rausnehme, steht garkein Text mehr dort?!? Ist das irgendwie so eine Art Pflichtvariable ohne die nichts geht?
bigfraggle ist offline  
 
Ecstasy
Kunde (Support beendet)
Ob man es benötigt oder nicht weiß ich nicht. Da weiß der Herr Scheb besser drüber bescheid.

Aber wie gesagt, ich würde es eh eher direkt in den Code schreiben.
Ecstasy ist offline  
 
bigfraggle
Kunde
Zitat von Ecstasy:
Aber wie gesagt, ich würde es eh eher direkt in den Code schreiben.


Was hätte das für Vorteile?

Zitat von Marc:
Aber: Wenn ich {TEXT} rausnehme, steht garkein Text mehr dort?!? Ist das irgendwie so eine Art Pflichtvariable ohne die nichts geht?


Christian, kannst du dazu etwas sagen?
bigfraggle ist offline  
 
rpgwelten
Kunde
Hi bigfraggle.

Soweit ich weiss, musst du die Variable verfügbar machen...

also einfach {if TEXT}{/if} vor deinen php block setzen. Das sollte helfen.
rpgwelten ist offline  
 
Christian Scheb
Stylemotion.de (Entwickler)
Es gibt gewisse Variablen, die im Template-Code vorhanden sein müssen, damit sie erzeugt werden (Sinn: unnützige, rechenintensive Operationen sparen). Die Variable TEXT gehört dazu. Der besagte IF-Trick zwingt das System dazu, die Variable zu erzeugen, ohne eine Ausgabe zu haben.
Christian Scheb ist offline  
 
bigfraggle
Kunde
Danke! :)
bigfraggle ist offline  
Seiten (1): 1  
 
Suche Optionen
» Erweiterte Suche
Druckansicht Druckansicht