[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • interner Link wird nicht korrekt geparsed
Seite 1 von 1

interner Link wird nicht korrekt geparsed

Verfasst: 8. Jul 2013, 05:54
von supagrobi
ich habe gerade die aktuelle redaxo version 4.5 auf einem Server neu installiert und die templates und module aus einer älteren installation 4.3 übertragen.

Füge ich im Text/Bild Modul einen internen Link ein wird dieser leider nur teilweise im Frontend umgewandelt:

Eingabe im Text/Bild-Modul:
"Hier gehts zum Impressum":redaxo://1

Anzeige im Frontend mit Mod-Rewrite:
“Hier gehts zum Impressum”:/startseite/startseite.html

Anzeige im Frontend ohne Mod-Rewrite:
“Hier gehts zum Impressum”:index.php?article_id=1

Trage ich einen externen Link wird dieser korrekt dargestellt.

Woran könnte das? Vielen Dank für einen Hinweis.

Re: interner Link wird nicht korrekt geparsed

Verfasst: 8. Jul 2013, 09:51
von Gregor.Harlan
Ich kann das bei mir nicht nachvollziehen, da funktioniert es richtig.

Ist das das Standardmodul aus der 4.5-Demo? Kannst du ansonsten mal die Modulausgabe hier posten?

Re: interner Link wird nicht korrekt geparsed

Verfasst: 8. Jul 2013, 15:47
von supagrobi
Nein es ist nicht das Standardmodul aus 4.5 es basiert auf Bild und Text aus redaxo 3.X hat aber bisher egal in welcher redaxo Version seinen Dienst geleistet.

Das der externe Link funtioniert wundert mich nicht so sehr er wird überein ein Template
04 - externe links in neuem Fenster öffnen von RedFox nocheinmal angepasst so das der Link in einem neuen Fenster geöffnet wird.

Moduleingabe:

Code: Alles auswählen

<strong>Modul oben mit Linie begrenzen</strong>:<br />
<select name="VALUE[9]" class="inp100">
	<option value='0' <? if ("REX_VALUE[9]" == '0') echo 'selected'; ?>>oben keine Linie</option>
	<option value='1' <? if ("REX_VALUE[9]" == '1') echo 'selected'; ?>>oben 1 Pixel Linie</option>
</select><br />
<br />

<strong>Überschrift und Einleitung</strong>:<br />
<textarea name="VALUE[1]" class="heim" cols="80" rows="5" class="inp100">REX_HTML_VALUE[1]</textarea>
<br /><br />

<strong>Fließtext</strong>:<br />
<textarea name="VALUE[2]" class="heim" cols="80" rows="20" class="inp100">REX_HTML_VALUE[2]</textarea>
<br /><br />

<strong>Artikelfoto 1</strong>:<br />
REX_MEDIA_BUTTON[1] 

<?
if ("REX_FILE[1]" != "") {
	echo "<nobr><img src=".$REX[HTDOCS_PATH]."/files/REX_FILE[1] width='150'>&nbsp;";
}
?>

<br /><br /><strong>Bildunterschrift des Artikelfotos</strong>:<br />
<nobr><textarea name="VALUE[3]" class="heim" cols="40" rows="10" class="inp100">REX_HTML_VALUE[3]</textarea>
<br /><br />


<br />
<h3 style="color:#ff0000;">Anleitung / Hinweise:<br></h3>
<table class="warning">
<tr>
	<td style="width:200px;"><strong>Beschreibung<br><br></strong></td>
	<td><strong>Eingabe<br><br></strong></td>
</tr>
<tr>
	<td><h1>Überschrift</h1></td>
	<td>h1. Überschrift (Leerzeile vor und nach der Eingabe)</td>
</tr>
<tr>
	<td><h2>Unter-Überschrift</h2></td>
	<td>h2. Überschrift (Leerzeile vor und nach der Eingabe)</td>
</tr>
<tr>
	<td><strong>fetter Text</strong></td>
	<td>*fetter Text*</td>
</tr>
<tr>
	<td><i>kursiver Text</i></td>
	<td>__kursiver Text__</td>
</tr>
<tr>
	<td><del>gestrichener Text</del></td>
	<td>-gestrichener Text-</td>
</tr>
<tr>
	<td>geordnete Liste mit Zahlen</td>
	<td># Listenpunkt</td>
</tr>
<tr>
	<td>ungeordnete Liste mit Zeichen</td>
	<td>* Listenpunkt</td>
</tr>
<tr>
	<td>Link (intern)</td>
	<td>"Hier gehts zum Impressum":redaxo://5</td>
</tr>
<tr>
	<td>Link (extern)</td>
	<td>"Hier geht es zu unserem Partner":http://pergopa.de</td>
</tr>
</table>


Modulausgabe:

Code: Alles auswählen

<?php
// Layoutoptionen

$spaltenabstand = "0";
$spaltenbreite = "750";

//	Fliesstext 
$input1 = "";
$input2 = "";
$input3 = "";

$input1 =<<< EOT
REX_HTML_VALUE[1]
EOT;

$input2 =<<< EOT
REX_HTML_VALUE[2]
EOT;

$input3 =<<< EOT
REX_HTML_VALUE[3]
EOT;

$textile = new Textile; 

$text1 = "";
if ("REX_VALUE[1]" != "") $text1 = $textile->TextileThis($input1);
$text1 = str_replace("###","&#x20;",$text1);

$text2 = "";
if ("REX_VALUE[2]" != "") $text2 = $textile->TextileThis($input2);
$text2 = str_replace("###","&#x20;",$text2);

$imgtext1 = "";
if ("REX_VALUE[3]" != "") $imgtext1 = $textile->TextileThis($input3);
$imgtext1 = str_replace("###","&#x20;",$imgtext1);


// Bilder

$widthhelpl = "750";

$file1 = "";
if ("REX_FILE[1]" != "") {
$filehelp1 = $REX['HTDOCS_PATH'] .'files/REX_FILE[1]';
$info1 = getimagesize($filehelp1);

$file1 =  '<div class="image-innen" style="float:left; padding:4px 0px 0px 0px; width:'.$widthhelpl.'px;"><div class="image-innen" style="float:left; padding:0px 0px 0px 0px; width:'.$widthhelpl.'px; margin:0px 0px 0px 0px;"><a href="mailto:info@lustfull-foods.com"  title="E-Mail"><img src="'.$REX['HTDOCS_PATH'].'files/'."REX_FILE[1]".'" alt="'.$imgtext1.'" title="'.$imgtext1.'"  width="'.$widthhelpl.'px" border="0" /></a></div><div align="left"><p>'.$imgtext1.'</p></div></div>';
}




if ($input1 == "") {
print '<div id="beitrag" style="border-top:'."REX_VALUE[9]".'px solid #622164;" ><div class="textbeitrag" style="padding:0px 0px 10px 0px '.$spaltenabstand.'px; width:'.$spaltenbreite.'px;"><p>'.$file1.''.$text1.''.$text2.'</p></div></div>';
}

//$left2

else {
print '<div id="beitrag" style="border-top:'."REX_VALUE[9]".'px solid #622164;" ><div class="textbeitrag" style="padding:0px 0px 10px 0px '.$spaltenabstand.'px; width:'.$spaltenbreite.'px;">'.$text1.'<br></p>'.$file1.''.$text2.'</div></div>';
}

?>

Re: interner Link wird nicht korrekt geparsed

Verfasst: 8. Jul 2013, 16:33
von Gregor.Harlan
Das Problem ist folgendes: Zunächst arbeitet ja Textile, und erst ganz am Ende werden die Links ersetzt. Und in R4.5 ist eine neuere Textile-Klasse enthalten, die per default nur noch Links mit bekanntem Protokoll (http(s) etc.) akzeptiert.
Du arbeitest direkt mit der Klasse, verwende besser die Funktion rex_a79_textile(). Bei dieser Funktion ist sichergestellt, dass auch Links mit dem redaxo://-Protokoll akzeptiert werden.

Re: interner Link wird nicht korrekt geparsed

Verfasst: 11. Jul 2013, 05:53
von supagrobi
Vielen Dank für die Mühe!

Wenn ich das Modul aus der Demo von redaxo 4.5 benutze werden die Links richtig dargestellt.
Schließlich war es dann nur meine Faulheit einmal angepasste module immer wieder verwenden zu wollen, statt die neuen anzupassen.

Re: interner Link wird nicht korrekt geparsed

Verfasst: 13. Jan 2015, 12:27
von waleed1
Das der externe Link funtioniert wundert mich nicht so sehr er wird überein ein Template
04 - externe links in neuem Fenster öffnen von RedFox nocheinmal angepasst so das der Link in einem neuen Fenster geöffnet wird.