ich habe auf dieser Seite: http://www.michaelloy.de/contenido-bild ... nails.html von Michael Loy ein Bildergalerie-Modul gefunden, welches man im Editor verwendet und nicht in der Templatekonfiguration und habe es angepasst. Es besteht nur aus einem Output!
Folgendes kann das Modul:
- Auswahl eines Bildes aus einem Ordner im Editor und es werden automatisch alle Bilder aus dem Ordner aufgelistet
- Vorschaubilder werden skaliert
- Vorschaubilder werden zugeschnitten
- PopUp-Bilder werden skaliert
- Medienname und Beschreibung aus der Dateiverwaltung werden ausgelesen
- Ist keine Beschreibung in der Dateiverwaltung hinterlegt, wird automatisch die Headline des Artikel genommen
- Es gibt ein Textfeld für eine allgemeine Beschreibung, die auf alle Bilder angewandt werden kann. Wird hier was hereingeschrieben ist das die Beschreibung und nicht mehr die Überschrift des Artikel. Eine Beschreibung aus der Dateiverwaltung überschreibt jedoch diese Beschreibung aus dem Textfeld für das jeweilige Bild.
- Es gibt ein Textfeld für einen allgemeinen Medienname, der auf alle Bilder angewandt werden kann. Wird hier was hereingeschrieben ist das der Medienname. Ein Medienname aus der Dateiverwaltung überschreibt jedoch diesen Medienname aus dem Textfeld für das jeweilige Bild.
- Gibt es für ein Bild einen Medinnamen und eine Beschreibung wird ein Seperator dazwischen eingefügt
- Die Erklärung zur Handhabung des Modul wird im Editor angezeigt
- Die Ausgabe/Darstellung kann für die Ansicht im Editor und in der Vorschau / der eigentlichen Webseite verschieden angepasst werden
Output
Code: Alles auswählen
<?php
if($edit){
echo "<div class=\"beinfo\"><strong>Bildergalerie: </strong><br />Wählen Sie ein Bild aus dem Ordner aus und alle Bilder werden angezeigt.<br />";
echo "CMS_IMGEDIT[137]";
echo "<br /><br />";
echo "<strong>Bildbeschreibung:</strong><br />Sie können im folgenden Textfeld eine individuelle Beschreibung/Medienname für stellvertretend alle Bilder angeben. Wird das Feld frei gelassen, wird automatisch die Überschrift des Artikels verwendet. Geben Sie eine individuelle Beschreibung/Medienname in der Dateiverwaltung für ein Bild an, werden diese für das jeweilige Bild verwendet.";
echo "<br /><br />Beschreibung:<br />";
echo "CMS_HTML[138]";
echo "<br />Medienname:<br />";
echo "CMS_HTML[139]";
echo "<br /></div>";
}
$bild[137] = "CMS_IMG[137]";
$oArticle = new Article($idart, $client, $lang);
if($bild[137] != ""){
if($edit) {
// Manipulation/Ausgabe für den Editorbereich
echo "<div class=\"bildergalerie\">";
} else {
// Manipulation/Ausgabe für die Webseite
echo "<div class=\"bildergalerie\">";
}
$sql = mysql_fetch_array(mysql_query("SELECT u.dirname FROM con_content AS c
LEFT JOIN con_upl AS u
ON u.idupl = c.value
WHERE c.idartlang = '". $idartlang ."'
AND c.idtype = 4 AND c.typeid = 137
"));
$alle = mysql_query("SELECT * FROM con_upl WHERE dirname = '". $sql["dirname"] ."' ORDER BY filename");
$z = 1;
while($row = mysql_fetch_array($alle)){
// File-Description
$fd = mysql_fetch_array(mysql_query("SELECT description FROM con_upl_meta WHERE idupl = '". $row["idupl"] ."' LIMIT 0,1"));
// Medianame
$fm = mysql_fetch_array(mysql_query("SELECT medianame FROM con_upl_meta WHERE idupl = '". $row["idupl"] ."' LIMIT 0,1"));
$img = str_replace($cfgClient[$client]["path"]["htmlpath"],"",'upload/'.$row["dirname"] . $row["filename"]);
// Vorschaubild wird skaliert
$img = cApiImgScale($img , 180, 180, false, false);
$img = str_replace($cfgClient[$client]["path"]["htmlpath"],"",$img);
// Vorschaubild wird nach dem skalieren zugeschnitten
$imgb = cApiImgScale($img, 134, 100, true, true);
$imgb = str_replace($cfgClient[$client]["path"]["htmlpath"],"", $imgb);
// Skalierung des PopUp-Bildes
$img2 = str_replace($cfgClient[$client]["path"]["htmlpath"],"",'upload/'.$row["dirname"] . $row["filename"]);
$img2 = cApiImgScale($img2 , 750, 750);
// Entscheidung welche Description
if ($fd != "") {
$desc = urldecode($fd["description"]);
} else if (("CMS_HTML[138]" != "") && ($fd == "")) {
$desc = strip_tags("CMS_HTML[138]");
} else {
// ACHTUNG ist CMS_HTMLHEAD wirklich 1 ?!
$desc = strip_tags($oArticle->getContent('CMS_HTMLHEAD', 1));
}
// Entscheidung welcher Medianame
if ($fm != "") {
$media = urldecode($fm["medianame"]);
} else if (("CMS_HTML[139]" != "") && ($md == "")) {
$media = strip_tags("CMS_HTML[139]");
}
// Seperator
if ($fm != "") {
$seperator = " - ";
} else if (strip_tags("CMS_HTML[139]") != "") {
$seperator = " - ";
} else {
$seperator = "";
}
if($edit){
// Manipulation/Ausgabe für den Editorbereich
echo '<a href="'.$img2 .'" title="Die Beschreibung funktionieren in der Editoransicht nicht. Bitte wechseln Sie in die Vorschau oder rufen den Artikel in der Webseite auf." rel="relattribut" class="klassenname"><img src="'. $imgb .'" title="Die Beschreibung funktionieren in der Editoransicht nicht. Bitte wechseln Sie in die Vorschau oder rufen den Artikel in der Webseite auf." alt="Bild" class="klassenname" width="134" height="100" /></a>';
$z++;
} else {
// Manipulation/Ausgabe für die Webseite
echo '<a href="'.$img2 .'" title="'. $desc .''. $seperator .''. $media .'" rel="relattribut" class="klassenname"><img src="'. $imgb .'" title="'. $desc .''. $seperator .''. $media .'" alt="'. $desc .'" class="klassenname" width="134" height="100" /></a>';
$z++;
}
}
if($edit){
// Manipulation/Ausgabe für den Editorbereich
echo "</div>";
} else {
// Manipulation/Ausgabe für die Webseite
echo "</div>";
}
}
?>