[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
[gelöst] Modul Text und Bild : Wie verlinke ich ein Bild? - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
php-berlin
Beiträge: 12
Registriert: 24. Aug 2010, 11:44

[gelöst] Modul Text und Bild : Wie verlinke ich ein Bild?

30. Sep 2010, 15:17

Hallo und guten Tag
wehrtes Redaxo Forum!

Ich bin auf der Suche nach einer Möglichkeit Bilder in dem
Modul 'Text und Bild' mit einem Link zu versehen.
Das einzige was man bei den Bildern angeben kann ist der Titel..

Wie mache ich das am besten / schnellsten?

Muss ich das Modul erweiteren? Oder gibt es dazu schon ein Modul
(ich konnte nichts finden bisher...)


Vielen Dank für eure Hilfe
Stefan

PS: Redaxo ist echt ne feine Sache :)
Zuletzt geändert von php-berlin am 4. Okt 2010, 15:21, insgesamt 1-mal geändert.

Benutzeravatar
Cheffchen
Beiträge: 1809
Registriert: 3. Mär 2009, 13:51
Wohnort: Berlin
Kontaktdaten: Website

30. Sep 2010, 15:27

Hallo php-berlin,

die Frage ist Interner Link oder Externer Link?
Was für ein Modul, das aus der Installation "01 - Text und/oder Bild [textile]" ?

"Muss ich das Modul erweiteren?" ja, ist aber keine große Sache.

01 - Text und/oder Bild [textile]
Für Externen Link
Eingabe:

Code: Alles auswählen

<?php
if(OOAddon::isAvailable('textile'))
{
?>

<strong>Fliesstext</strong>:<br />
<textarea name="VALUE[1]" cols="80" rows="10" class="inp100">REX_HTML_VALUE[1]</textarea>
<br /><br />

<strong>Artikelfoto</strong>:<br />
REX_MEDIA_BUTTON[1]
<?
if ("REX_FILE[1]" != "") {
        echo "<br /><strong>Vorschau</strong>:<br />";
	echo "<img src=".$REX['HTDOCS_PATH']."/files/REX_FILE[1]><br />";
}
?>

<br />
<strong>Title des Fotos</strong>:<br />
<input type="text" name="VALUE[2]" value="REX_VALUE[2]" size="80" class="inp100" />
<br /><br />

<strong>ext. Link:</strong>:<br />
http://<input type="text" name="VALUE[3]" value="REX_VALUE[3]" size="80" class="inp100" />
<br /><br />

<strong>Ausrichtung des Artikelfotos</strong>:<br />
<select name="VALUE[9]" class="inp100">
	<option value='l' <?php if ("REX_VALUE[9]" == 'l') echo 'selected'; ?>>links vom Text</option>
</select><br />
<br />
<br />

<?php
rex_a79_help_overview(); 

}
else
{
  echo rex_warning('Dieses Modul benötigt das "textile" Addon!');
}

?>
Ausgabe

Code: Alles auswählen

<?php

if(OOAddon::isAvailable('textile'))
{
  echo '<div class="team">';

  //  Ausrichtung des Bildes 
  if ("REX_VALUE[9]" == "l") $float = "floatLeft";
  if ("REX_VALUE[9]" == "r") $float = "floatRight";


  //  Wenn Bild eingefuegt wurde, Code schreiben 
  $linkstart="";
  $linkende="";
  $file = "";

  if ("REX_VALUE[3]" != "") {
  $linkstart='<a href="http://'."REX_VALUE[3]".'">';
  $linkende='</a>';
  }

  if ("REX_FILE[1]" != "") $file = '<div class="'.$float.'">'.$linkstart.'<img src="'.$REX['HTDOCS_PATH'].'files/REX_FILE[1]" title="'."REX_VALUE[2]".'" alt="'."REX_VALUE[2]".'" />'.$linkende.'</div>';





  $textile = '';
  if(REX_IS_VALUE[1])
  {
    $textile = htmlspecialchars_decode("REX_VALUE[1]");
    $textile = str_replace("<br />","",$textile);
    $textile = rex_a79_textile($textile);
    $textile = str_replace("###","&#x20;",$textile);
  } 
  print $file.$textile;

  echo '</div>';
}
else
{
  echo rex_warning('Dieses Modul benötigt das "textile" Addon!');
}

?>
Cheffchen

php-berlin
Beiträge: 12
Registriert: 24. Aug 2010, 11:44

4. Okt 2010, 15:20

hi cheffchen

vielen dank für die Antwort... funktioniert auch bestens..

besten gruss
stefan

stuttgarter
Beiträge: 224
Registriert: 18. Feb 2005, 14:00
Wohnort: stuttgart

8. Okt 2010, 13:57

Textausrichtung funktioniert leider nicht in dem Modul evtl. könnte dies ja noch ergänzt werden?

Ps. image resize wäre naklar auch toll fürs Bild dann hätten wir schon ein nettes Modul beisammen

Grüßle

php-berlin
Beiträge: 12
Registriert: 24. Aug 2010, 11:44

8. Okt 2010, 15:06

stuttgarter hat geschrieben:Textausrichtung funktioniert leider nicht in dem Modul evtl. könnte dies ja noch ergänzt werden?

Ps. image resize wäre naklar auch toll fürs Bild dann hätten wir schon ein nettes Modul beisammen

Grüßle
ahoi stuttgarter
stuttgarter hat geschrieben:Textausrichtung funktioniert leider nicht in dem Modul evtl. könnte dies ja noch ergänzt werden?
bei mir funktioniert die textausrichtung.. allerdings muss das ja noch entsprechend in der ausgabe angepasst werden..

vielleicht geht das deswegen nicht bei dir...

und textresize kann man da auch ganz schnell einbauen, das bedarf also keines eigenen moduls...

oder verstehe ich dich falsch...?!

Benutzeravatar
Cheffchen
Beiträge: 1809
Registriert: 3. Mär 2009, 13:51
Wohnort: Berlin
Kontaktdaten: Website

8. Okt 2010, 15:42

Hallö beide,

das mit der Ausrichtung ist ja Lustig, da fehlt wohl was in dem Demo Modul :O).

Hier jetzt Leicht geändert, aber Vorsicht wenn Ihr das alte damit Überschreibt, musste die unsinnige classe team rausnehmen. Also altes Modul mal in txt Datei sichern oder gleich als neues Modul machen und das alte auslaufen lassen.
+Eingabe Korrigiert: Bild Link/Rechts
+Bildgröße resize in festen Breiten, könnt ja in der Eingabe die Werte an euch anpassen (jetzt "80", "140", "180", "200", "300").

01 - Text und/oder Bild [textile] V1.2
Eingabe:

Code: Alles auswählen

<?php
if(OOAddon::isAvailable('textile'))
{
?>

<strong>Fliesstext</strong>:<br />
<textarea name="VALUE[1]" cols="80" rows="10" class="inp100">REX_HTML_VALUE[1]</textarea>
<br /><br />

<strong>Artikelfoto</strong>:<br />
REX_MEDIA_BUTTON[1]
<?
if ("REX_FILE[1]" != "") {
        echo "<br /><strong>Vorschau</strong>:<br />";
   echo "<img src=".$REX['HTDOCS_PATH']."/files/REX_FILE[1]><br />";
}
?>
<br />

<strong>Title des Fotos</strong>:<br />
<input type="text" name="VALUE[2]" value="REX_VALUE[2]" size="80" class="inp100" />
<br /><br />

<strong>ext. Link:</strong>:<br />
http://<input type="text" name="VALUE[3]" value="REX_VALUE[3]" size="80" class="inp100" />
<br /><br />

<strong>Ausrichtung des Artikelfotos</strong>:<br />
<select name="VALUE[9]" class="inp100">
<?php
foreach (array("l"=>"links vom Text", "r"=>"rechts vom Text") as $value => $sichtbar) {
echo '<option value="'.$value.'" ';
 if ("REX_VALUE[9]" == "$value") {echo 'selected="selected" ';}
echo '>'.$sichtbar.'</option>';}?>
</select>
<br /><br /><br />

<strong>Breite des Artikelfotos</strong>:<br />
<select name="VALUE[8]" class="inp100">
<?php
foreach (array("80", "140", "180", "200", "300") as $value) {
echo '<option value="'.$value.'" ';
 if ("REX_VALUE[8]" == "$value") {echo 'selected="selected" ';}
echo '>'.$value.'</option>';}?>
</select>px
<br /><br /><br />

<?php
rex_a79_help_overview();

}
else
{
  echo rex_warning('Dieses Modul benötigt das "textile" Addon!');
}

?>
Ausgabe

Code: Alles auswählen

<?php

if(OOAddon::isAvailable('textile'))
{
  echo '<div >';

  //  Ausrichtung des Bildes
  if ("REX_VALUE[9]" == "l") $float = "style='float:left; margin:3px'";
  if ("REX_VALUE[9]" == "r") $float = "style='float:right; margin:3px'";


  //  Wenn Bild eingefuegt wurde, Code schreiben
  $linkstart="";
  $linkende="";
  $file = "";

  if ("REX_VALUE[3]" != "") {
  $linkstart='<a href="http://'."REX_VALUE[3]".'">';
  $linkende='</a>';
  }

  if ("REX_FILE[1]" != "") $file = '<div '.$float.'>'.$linkstart.'<img src="index.php?rex_resize=REX_VALUE[8]w__REX_FILE[1]" title="'."REX_VALUE[2]".'" alt="'."REX_VALUE[2]".'" />'.$linkende.'</div>';


  $textile = '';
  if(REX_IS_VALUE[1])
  {
    $textile = htmlspecialchars_decode("REX_VALUE[1]");
    $textile = str_replace("<br />","",$textile);
    $textile = rex_a79_textile($textile);
    $textile = str_replace("###","&#x20;",$textile);
  }
  print $file.$textile;

  echo '</div>';
}
else
{
  echo rex_warning('Dieses Modul benötigt das "textile" Addon!');
}

?>
Cheffchen

stuttgarter
Beiträge: 224
Registriert: 18. Feb 2005, 14:00
Wohnort: stuttgart

8. Okt 2010, 21:16

Einfach genial wie das funktioniert...

Ratz Fatz gibts hier Antworten das ist einfach genial !!!

ps.: im Backend erscheint in der Bildvorschau das Orginalbild nicht die Resized Version, bei breiten Bilder zerschiesst dies das Backend von Redaxo.

Grüßle

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

9. Okt 2010, 12:20

holla ;)

dan ersetze doch einfach mal die eingabe mit der nun folgenden:

Code: Alles auswählen

<?php
if(OOAddon::isAvailable('textile'))
{
?>

<strong>Fliesstext</strong>:<br />
<textarea name="VALUE[1]" cols="80" rows="10" class="inp100">REX_HTML_VALUE[1]</textarea>
<br /><br />

<strong>Artikelfoto</strong>:<br />
REX_MEDIA_BUTTON[1]
<?
if ("REX_FILE[1]" != "") {
        echo "<br /><strong>Vorschau</strong>:<br />";
   echo '<img src="index.php?rex_resize=200w__REX_FILE[1]><br />';
}
?>
<br />

<strong>Title des Fotos</strong>:<br />
<input type="text" name="VALUE[2]" value="REX_VALUE[2]" size="80" class="inp100" />
<br /><br />

<strong>ext. Link:</strong>:<br />
http://<input type="text" name="VALUE[3]" value="REX_VALUE[3]" size="80" class="inp100" />
<br /><br />

<strong>Ausrichtung des Artikelfotos</strong>:<br />
<select name="VALUE[9]" class="inp100">
<?php
foreach (array("l"=>"links vom Text", "r"=>"rechts vom Text") as $value => $sichtbar) {
echo '<option value="'.$value.'" ';
 if ("REX_VALUE[9]" == "$value") {echo 'selected="selected" ';}
echo '>'.$sichtbar.'</option>';}?>
</select>
<br /><br /><br />

<strong>Breite des Artikelfotos</strong>:<br />
<select name="VALUE[8]" class="inp100">
<?php
foreach (array("80", "140", "180", "200", "300") as $value) {
echo '<option value="'.$value.'" ';
 if ("REX_VALUE[8]" == "$value") {echo 'selected="selected" ';}
echo '>'.$value.'</option>';}?>
</select>px
<br /><br /><br />

<?php
rex_a79_help_overview();

}
else
{
  echo rex_warning('Dieses Modul benötigt das "textile" Addon!');
}

?>
thats the magic:

Code: Alles auswählen

   echo '<img src="index.php?rex_resize=200w__REX_FILE[1]><br />';
gruß richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

stuttgarter
Beiträge: 224
Registriert: 18. Feb 2005, 14:00
Wohnort: stuttgart

9. Okt 2010, 14:23

Hallo

Frage wenn ich auf das Modul Editieren klicke, erscheint das Vorschaubild nicht,

wenn der Block geschlossen ist, erscheint das Bild resized wie gewünscht als vorschaubild auf 200 pixel breite...

Weshalb kein Vorschaubild beim editieren des blocks ?

Grüßle und danke für Die Antwort !!!

Benutzeravatar
Cheffchen
Beiträge: 1809
Registriert: 3. Mär 2009, 13:51
Wohnort: Berlin
Kontaktdaten: Website

9. Okt 2010, 19:01

Hallö stuttgarter,

Schau mal in der Zeile, da fehlt einfach bloss " hinter 200w__REX_FILE[1]

Code: Alles auswählen

   echo '<img src="index.php?rex_resize=200w__REX_FILE[1]><br />'; 
so:

Code: Alles auswählen

   echo '<img src="index.php?rex_resize=200w__REX_FILE[1]"><br />'; 
Cheffchen

stuttgarter
Beiträge: 224
Registriert: 18. Feb 2005, 14:00
Wohnort: stuttgart

9. Okt 2010, 22:59

D A N K E nun passts !

Zurück zu „Allgemeines [R4]“