Seite 8 von 12
Verfasst: Mo 8. Mai 2006, 10:37
von absoluto
zumal ich gerade die stelle soweit eingekreist habe, wo das geaednert werden muesste:
Code: Alles auswählen
for ($i = 0; $i < $aSettings["ArticleCount"]; $i++) {
if ($aData["Item".($i + 1)]["IDCatArt"] != "") {
$href = $sess->url("front_content.php?idcatart=".$aData["Item".($i + 1)]["IDCatArt"]);
echo '<div id="area'.($i + 1).'">', chr(10);
if ($aSettings["ImageWidth"] == 0 || $aSettings["ImageHeight"] == 0) {
$image = $aData["Item".($i + 1)]["Image"]["WebPath"];
} else {
if ($aData["Item".($i + 1)]["Image"]["ServerPath"] != "" && file_exists($aData["Item".($i + 1)]["Image"]["ServerPath"])) {
#Scale image
$image = capiImgScale($aData["Item".($i + 1)]["Image"]["ServerPath"], $aSettings["ImageWidth"], $aSettings["ImageHeight"], false, false, 10, false);
} else {
$image = $aData["Item".($i + 1)]["Image"]["WebPath"];
}
}
#Get dimensions of the image
list ($width, $height, $type, $attr) = getimagesize($image);
if ($image !== "") {
echo ' <div id="image"><img src="'.$image.'" width="'.$width.'" height="'.$height.'" /></div>', chr(10);
}
echo ' <div id="headline"><b>'.$aData["Item".($i + 1)]["Headline"].'</b></div>', chr(10);
echo ' <div id="text">'.$aData["Item".($i + 1)]["Text"].'<br /><a class="11pxblau" href="'.$href.'">'.mi18n("More...").'</a></div>', chr(10);
echo '</div>', chr(10);
}
ich bekomme nur nicht hin, wie ich da drei spalten draus machen kann? das geht nur mit css???
Verfasst: Mo 8. Mai 2006, 10:56
von mvf
leuteln leuteln immer des gleiche
spalten kann man in css ebenso erzeugen wie mit tabellen
stichwort ist float
und hier wird gezeigt wie (wurde auch schon mehrfach im board drauf hingeweisen)
http://css.maxdesign.com.au/floatutorial/
Verfasst: Mo 8. Mai 2006, 11:10
von absoluto
schon klar.

)
aber ich muss doch erst im script verstehen, wie php die einzelnen news zusammensetzt und aufbaut, damit ich die css-tags an die richtige stelle setzen kann - und daran haperts...
Verfasst: Mo 8. Mai 2006, 12:13
von absoluto
ok, ich hab´s. wenn man herausgefunden hat, dass das php-script divs erzeugt die area1, area2, are3 heissen, kann man´s per css steuern...
merci!
und grossen dank auch nochmal an HerrnB! das script ist klasse!
Verfasst: Di 9. Mai 2006, 09:46
von Mxn
@absoluto
Daran wollte ich mich auch gerade machen. Bei zwei Spalten nebeneinander geht das ja noch. Aber wann/wie machst Du den Umbruch?
Das Skript ist wirklich super. Jetzt fehlt mir nur noch die Flexibilität, die Artkelteaser in beliebigen Spalten anzeigen lassen zu können.
Der Top-Artikel ist bei mir width: 100%, die nächsten beiden darunter mit je width: 50%.
Da ich ja auch was lernen will, brauch ich natürlich keine fertige Lösung, sondern vielleicht nur einen kleinen Fingerzeig ...
Gruß mxn.
Verfasst: Di 9. Mai 2006, 09:49
von absoluto
Mxn hat geschrieben:@absoluto
Daran wollte ich mich auch gerade machen. Bei zwei Spalten nebeneinander geht das ja noch. Aber wann/wie machst Du den Umbruch?
Gruß mxn.
hallo mxn.
also ich habe einfach fuer jede meiner drei news einen eigenen div definiert:
Code: Alles auswählen
#area1 { position:absolute; top:0; left:15; z-index:20; width: 195px;}
#area2 { position:absolute; top:0; left:230; z-index:20; width: 195px;}
#area3 { position:absolute; top:0; left:445; z-index:20; width: 190px;}
Verfasst: Di 9. Mai 2006, 09:53
von Mxn
also ich habe einfach fuer jede meiner drei news einen eigenen div definiert
Ähm, klar. Aber wo im Code definierst Du die divs für den jeweiligen Artikel?
Verfasst: Di 9. Mai 2006, 09:56
von absoluto
Mxn hat geschrieben:also ich habe einfach fuer jede meiner drei news einen eigenen div definiert
Ähm, klar. Aber wo im Code definierst Du die divs für den jeweiligen Artikel?
*hehehe*
genau das war der knackpunkt: die werden automatisch generiert! einfach nur in der .css die divs 'area[FORTLAUFENDENUMMER]' definieren...

Verfasst: Di 9. Mai 2006, 17:20
von HerrB
Man kann auch diese Zeile:
durch diese ersetzen:
Nun verfügt der erste Teaser über die CSS-Klasse "area1", der zweite über "area2", der Dritte über "area3" und der vierte wieder über "area
1" usw. - damit sollte man super Spalten definieren können.
Kleiner Haken ist, dass die Teaser dann von links nach rechts ausgegeben werden (d.h. der in der Sortierung folgende Teaser liegt rechts vom Vorgänger bzw. in der Zeile darunter), e.g.:
A B C
D E F
G
Gruß
HerrB
Verfasst: Do 18. Mai 2006, 00:14
von i-fekt
Das letzte Update ist ja nun rund ein halbes Jahr alt, gibt es neues wegen dem
Problem mit der Templateänderung?
Verfasst: Do 18. Mai 2006, 11:16
von HerrB
Nein, neue Version ist in Arbeit. Habe es im Hinterkopf.
Gruß
HerrB
Verfasst: Do 10. Aug 2006, 18:52
von abrek
Hallo an alle,
vielen Dank erstmal an HerrB für Modul!
Habe kleine Frage: Ich brauche, dass die ganze Teaserliste immer gleich bleibt (überall, domainweit) und von einem Platz zu pflegen ist.
Hat vielleicht jemant eine Lösung parat? Oder hat jemand das schon umgesetzt?
Ich wäre dankbar.
Verfasst: So 20. Aug 2006, 11:12
von abrek
Hat das keiner im Laufen? Oder hat man keine Zeit zum erklären?
Verfasst: So 20. Aug 2006, 23:01
von HerrB
Du müsstest den Eingabebereich so überarbeiten, dass die Einstellungen nicht CMS_VAR/CMS_VALUE, sondern in Mandanteneinstellungen gespeichert werden.
Gleichzeitig müsste die Ausgabe sich die Konfigurationsdaten aus den Mandanteneinstellungen holen.
Beispiel siehe Newsletter-Form-Modul.
Gruß
HerrB
Verfasst: Mo 21. Aug 2006, 09:59
von abrek
Hallo Björn,
danke für Antwort. Ich habe es gefunden, wo ich in Eingabe-Bereich ändern soll, aber nicht ganz verstanden:
Code: Alles auswählen
fncBuildCategorySelect("CMS_VAR[$lCatIdentifier]", "CMS_VALUE[$lCatIdentifier]", 0, "if (document.forms[0].elements['CMS_VAR[$lCatIdentifier]'].value != 'CMS_VALUE[$lCatIdentifier]') { document.forms[0].elements['CMS_VAR[$lArtIdentifier]'].disabled = true; } else { document.forms[0].elements['CMS_VAR[$lArtIdentifier]'].disabled = false; }")
Was soll statt "CMS_VAR[$lCatIdentifier]" und was statt "CMS_VALUE[$lCatIdentifier]"?
Ich habe mit
Code: Alles auswählen
$properties->setValue("clientsetting", $client, "Teaser", "teaserID", $lCatIdentifier)
probiert, get nicht. Es wird nichts in Mandanteneinstellungen geschrieben. Wo ist mein Fehler?