Modul: Multiple Article Teaser/Mehrfachartikelvorschau

absoluto
Beiträge: 71
Registriert: Mo 1. Mär 2004, 16:59
Wohnort: hanau
Kontaktdaten:

Beitrag von absoluto » Mo 8. Mai 2006, 10:37

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???

mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf » Mo 8. Mai 2006, 10:56

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/
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams

absoluto
Beiträge: 71
Registriert: Mo 1. Mär 2004, 16:59
Wohnort: hanau
Kontaktdaten:

Beitrag von absoluto » Mo 8. Mai 2006, 11:10

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...

absoluto
Beiträge: 71
Registriert: Mo 1. Mär 2004, 16:59
Wohnort: hanau
Kontaktdaten:

Beitrag von absoluto » Mo 8. Mai 2006, 12:13

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!

Mxn
Beiträge: 29
Registriert: Do 2. Jun 2005, 21:19
Kontaktdaten:

Beitrag von Mxn » Di 9. Mai 2006, 09:46

@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.
Zuletzt geändert von Mxn am Di 9. Mai 2006, 09:51, insgesamt 1-mal geändert.

absoluto
Beiträge: 71
Registriert: Mo 1. Mär 2004, 16:59
Wohnort: hanau
Kontaktdaten:

Beitrag von absoluto » Di 9. Mai 2006, 09:49

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;}

Mxn
Beiträge: 29
Registriert: Do 2. Jun 2005, 21:19
Kontaktdaten:

Beitrag von Mxn » Di 9. Mai 2006, 09:53

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?

absoluto
Beiträge: 71
Registriert: Mo 1. Mär 2004, 16:59
Wohnort: hanau
Kontaktdaten:

Beitrag von absoluto » Di 9. Mai 2006, 09:56

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...

:wink:

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Di 9. Mai 2006, 17:20

Man kann auch diese Zeile:

Code: Alles auswählen

echo '<div id="area'.($i + 1).'">', chr(10);
durch diese ersetzen:

Code: Alles auswählen

echo '<div class="area'.(($i % 3) + 1).'">', chr(10);
Nun verfügt der erste Teaser über die CSS-Klasse "area1", der zweite über "area2", der Dritte über "area3" und der vierte wieder über "area1" 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
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

i-fekt
Beiträge: 1520
Registriert: Mo 3. Jan 2005, 02:15
Wohnort: Chemnitz
Kontaktdaten:

Beitrag von i-fekt » Do 18. Mai 2006, 00:14

Das letzte Update ist ja nun rund ein halbes Jahr alt, gibt es neues wegen dem Problem mit der Templateänderung?

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Do 18. Mai 2006, 11:16

Nein, neue Version ist in Arbeit. Habe es im Hinterkopf.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

abrek
Beiträge: 103
Registriert: Mi 25. Jan 2006, 12:50
Kontaktdaten:

Beitrag von abrek » Do 10. Aug 2006, 18:52

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.
Beste Grüße
abrek

abrek
Beiträge: 103
Registriert: Mi 25. Jan 2006, 12:50
Kontaktdaten:

Beitrag von abrek » So 20. Aug 2006, 11:12

Hat das keiner im Laufen? Oder hat man keine Zeit zum erklären?
Beste Grüße
abrek

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » So 20. Aug 2006, 23:01

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
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

abrek
Beiträge: 103
Registriert: Mi 25. Jan 2006, 12:50
Kontaktdaten:

Beitrag von abrek » Mo 21. Aug 2006, 09:59

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?
Beste Grüße
abrek

Gesperrt