Automatischer Zeilenumbruch (clear) nach Artikelanzahl

Fragen und Diskussionen zu laufenden ConPresso 4.x Projekten werden in diesem Forum diskutiert.
Antworten
AleXa
ConPresso-Newbie
Beiträge: 10
Registriert: 11.02.2009 13:38
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Automatischer Zeilenumbruch (clear) nach Artikelanzahl

Beitrag von AleXa »

Hallo, ich bin das erste Mal selbst aktiv hier im Forum, nachdem ich hier schon oft als Leser Antworten auf Fragen und Probleme gefunden habe - vielen Dank dafür!

Jetzt habe ich folgende Frage: Ist es möglich, Conpresso so anzupassen, dass in einer bestimmten Rubrik die Artikel (die als floatende Div-Container formatiert sind) nach einer gegebenen Anzahl durch einen clear-Befehl geordnet werden können? Also zum Beispiel: Nach drei links floatenden Artikeln folgt ein <br style="clear:left;" />, so dass eine neue Zeile mit drei Spalten erzeugt wird...

Wäre das zu machen? Hat jemand einen Tipp oder Hinweis?
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7369
Registriert: 01.01.1970 01:00
Hat sich bedankt: 112 Mal
Danksagung erhalten: 936 Mal
Kontaktdaten:

Beitrag von MarkusR »

Wenn ich sowas mache (und das habe ich gerade mal wieder), dann lege ich einfach ein DIV in der gewünschten Größe drumherum, so daß die DIVs nach der gewünschten Anzahl zwangsläufig umbrechen müssen.
Das geht aber nur, wenn auch die Höhe der floatenden DIVs exakt festgelegt wurde...

Um genau das gewünschte zu erhalten müsstest Du einfach in i_index.php den gewünschten Code nach x Durchläufen einschleusen.
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
AleXa
ConPresso-Newbie
Beiträge: 10
Registriert: 11.02.2009 13:38
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Beitrag von AleXa »

MarkusR hat geschrieben:Wenn ich sowas mache (und das habe ich gerade mal wieder), dann lege ich einfach ein DIV in der gewünschten Größe drumherum, so daß die DIVs nach der gewünschten Anzahl zwangsläufig umbrechen müssen.
Das geht aber nur, wenn auch die Höhe der floatenden DIVs exakt festgelegt wurde...

Um genau das gewünschte zu erhalten müsstest Du einfach in i_index.php den gewünschten Code nach x Durchläufen einschleusen.
Hallo Markus, vielen Dank für den schnellen Hinweis! Die Höhe der floatenden DIVs sind in der Tat das Problem...
An die i-index.php dachte ich auch schon, allerdings ist die ja für alle Rubriken, aber man könnte ja eine Kopie erstellen, anpassen, und in die betreffende Rubrik einbinden... Bloß weiß ich leider nicht, wie ich dort den Code einschleusen kann. Wäre für weitere Hilfestellung sehr dankbar!
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7369
Registriert: 01.01.1970 01:00
Hat sich bedankt: 112 Mal
Danksagung erhalten: 936 Mal
Kontaktdaten:

Beitrag von MarkusR »

Zur Rubrik:

Da jede Rubrik ja ihr eigenes Rubrikverzeichnis haben kann, kann man dann ja einfach in einem neuen Verzeichnis die index.php so ändern, daß die manipulierte i_index.php benutzt wird.

Zur i_index.php:

da würde ich diesen Block

Code: Alles auswählen

$articleSeparator = '';
while($db->next_record()) {
    echo $articleSeparator;
so ändern, daß da eine Zählung stattfindet, also z.B.

Code: Alles auswählen

$articleSeparator = '';
$alexa_start = 0; // aktueller Wert
$alexa_count = 3; // gewünschte Anzahl
while($db->next_record()) {
    echo $articleSeparator;
	if ($alexa_start == $alexa_count) { // ist aktueller Wert gleich gewünschter Anzahl
		echo '<br style="clear:left;" />'; // der Code
		$alexa_start = 0; // aktuellen Wert zurücksetzen
	}
	$alexa_start++; // aktuellen Wert hochzählen
Das geht sicher noch eleganter mit modulo aber so ist es sicher verständlicher...

Ungetestet!
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
AleXa
ConPresso-Newbie
Beiträge: 10
Registriert: 11.02.2009 13:38
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Beitrag von AleXa »

MarkusR hat geschrieben: Zur i_index.php:

da würde ich diesen Block

Code: Alles auswählen

$articleSeparator = '';
while($db->next_record()) {
    echo $articleSeparator;
so ändern, daß da eine Zählung stattfindet, also z.B.

Code: Alles auswählen

$articleSeparator = '';
$alexa_start = 0; // aktueller Wert
$alexa_count = 3; // gewünschte Anzahl
while($db->next_record()) {
    echo $articleSeparator;
	if ($alexa_start == $alexa_count) { // ist aktueller Wert gleich gewünschter Anzahl
		echo '<br style="clear:left;" />'; // der Code
		$alexa_start = 0; // aktuellen Wert zurücksetzen
	}
	$alexa_start++; // aktuellen Wert hochzählen
Das geht sicher noch eleganter mit modulo aber so ist es sicher verständlicher...

Ungetestet!

Hallo Markus, habs getestet, das klappt wunderbar! Meinen herzlichsten Dank!
Antworten