---
title: "Wie zeige ich <link>s an?"
url: "https://www.typo3.net/d/45367-wie-zeige-ich-links-an"
source: "typo3.net"
tags: ["Extensions","Entwicklung","Frage","Links"]
created: "2006-06-26"
last_reply: "2006-09-25"
replies: 5
solved: false
page: 1
pages: 1
lang: "de"
---

# Wie zeige ich <link>s an?

Extensions › Entwicklung · 5 Antworten · gestartet 2006-06-26

## Eröffnungsbeitrag

**helge** · 2006-06-26 · [Beitrag #1](https://www.typo3.net/d/45367-wie-zeige-ich-links-an/1)

typo3 speichert Hyperlinks ja als <link>-Tags, nicht als <a>. Nun habe ich ein Problem mit der Darstellung meines Plugins - ich muss die <link>-Tags, die in der DB gespeichert werden, umwandeln.

Gibt es da eine Funktion, auf die ich als Extension-Programmierer zurück greifen kann? Oder muss ich das von Hand tun?

Helge

## Antworten

### [#2](https://www.typo3.net/d/45367-wie-zeige-ich-links-an/2) · helge · 2006-06-27

OK, also von Hand...

Weil mich die Lösung mit Regular Expressions einiges an Zeit und grauen Haaren gekostet hat, poste ich sie mal hier, um eventuell anderen dies zu ersparen. Sorry wegen mangelnder Formatierung, aber der PHP-Container verkorkst meinen Code:

function processLinks($text) {
    $internal_regexp = '/\<link (\d+) .*?\/>(.*)\<\/link\>/i';
    $external_regexp = '/\<link (http:\/\/.*?) .*\/>(.*)\<\/link\>/i';
    $textnew = preg_replace($internal_regexp,
                            '<a href="'.$this-">makeLinkTarget('&id=$1').'">$2</a>',
                            $text);
    $textnew = preg_replace($external_regexp,
                            '<a href="$1">$2</a>',
                            $textnew);
    return $textnew;
}

### [#3](https://www.typo3.net/d/45367-wie-zeige-ich-links-an/3) · diso · 2006-09-25

wo bindest du das ein?

habe das selbe problem.

### [#4](https://www.typo3.net/d/45367-wie-zeige-ich-links-an/4) · helge · 2006-09-25

Schnell aus dem Kopf geantwortet, sieht die Struktur so aus:

```php
class tx_mein_plugin extends tslib_pibase {
  // ...
  function main($content,$conf)   {
     // erst mal den text aus der DB lesen
     $text = $this->liesTextAusDB();
     //  dann die <link />s bearbeiten und ergebnis zurueckgeben
     return $this->processLinks($text);
  }
}
```

### [#5](https://www.typo3.net/d/45367-wie-zeige-ich-links-an/5) · helge · 2006-09-25

Ich sehe gerade, dass der Code nicht korrekt gepostet worden ist. Die ganzen /,\,> usw. sind wohl unmoeglich richtig darzustellen.

> **helge schrieb:**
>
> '<a href="'.$this-">makeLinkTarget('&id=$1').'">$2</a>'

muss natuerlich heissen

```php
'<a href="'.$this-">makeLinkTarget('&id=$1').'">$2</a>'
```

$this->makeLinkTarget() ist ein Wrapper fuer, IIRC, t3lib_div::typolink() - also das HREF fuer den Link.

### [#6](https://www.typo3.net/d/45367-wie-zeige-ich-links-an/6) · steffenk · 2006-09-25

sowas muss man doch nicht selber machen.
Entweder nutzt man die function pi_RTEcssText oder man weist der Extension per TS eine parsefunc zu.

---

Quelle: „Wie zeige ich <link>s an?“, typo3.net, https://www.typo3.net/d/45367-wie-zeige-ich-links-an
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
