[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • [solved] externe links und pdf-links in neuem fenster öffnen
Seite 1 von 1

[solved] externe links und pdf-links in neuem fenster öffnen

Verfasst: 17. Apr 2014, 16:35
von Tizian
hallo,

ich verwende dieses template um externe links und pdf-dateien im neuen fenster zu öffnen.
wenn es jemandem hilft…

Code: Alles auswählen

 <?php

if (!$REX['REDAXO'])
    rex_register_extension('OUTPUT_FILTER', 'rex_external_links');
       
    function rex_external_links($params) {
      $content = $params['subject'];
          
      // hier via regEx alle absoluten, externen Linkadressen heraussuchen
preg_match_all("/<a[^>]*(href\s*=\s*(\"|')(files)(\/).*?(\"|'))[^>]*>(.*?)<\/a>/ims",$content,$matches1);
preg_match_all("/<a[^>]*(href\s*=\s*(\"|')(http(s)?|ftp(s)?|telnet|irc)(?=:\/\/).*?(\"|'))[^>]*>(.*?)<\/a>/ims",$content,$matches2);

      // doppelte links rausschmeissen
      $matches1[1] = array_unique($matches1[1]);
      $matches2[1] = array_unique($matches2[1]);

 $matches = array_merge($matches1[1], $matches2[1]);

//print_r($matches);

      // hier jetzt alle gefundenen durchgehen und erweitern
      if ( isset ($matches[0]) and $matches[0] != '') {
       for ($m = 0; $m < count ($matches); $m++) {
        $external_link = "";

        // hier jetzt anhängen: javascript für neues Fenster, class für Kennzeichnung
        $external_link .= $matches[$m].' onclick="window.open(this.href); return false;" class="extern" rel="external"';

        // alte Links mit den modifizierten ersetzen:
        if(strpos($matches[$m],'onclick="window.open(this.href); return false;"') === false) {
         $content = str_replace($matches[$m],$external_link,$content);
        }
       }
      }
      return $content;
    }
    
?>
 

Re: [solved] externe links und pdf-links in neuem fenster öf

Verfasst: 17. Apr 2014, 16:47
von RexDude
Ich verwende das hier. Ist simpler und sollte performanter sein als serverseitig ;)

Code: Alles auswählen

// open external links in new window
$('a[href^="http://"]:not([href*="' + window.location.host + '"])').attr('target', '_blank');

// open pdf links in new window
$('a[href$=".pdf"].attr('target', '_blank');

Re: [solved] externe links und pdf-links in neuem fenster öf

Verfasst: 18. Mär 2016, 15:30
von Tizian
hi dude,

sieht gut aus. wie setzt du das ein?

und hast du das auch für r5?

Re: [solved] externe links und pdf-links in neuem fenster öf

Verfasst: 18. Mär 2016, 17:29
von RexDude
Ähm, das ist Javascript ;)

Re: [solved] externe links und pdf-links in neuem fenster öf

Verfasst: 30. Mär 2016, 12:59
von Tizian
:oops:

jetzt seh' ich es auch…

danke für den wink.