[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Variables Mehrspalten Template - Idee gesucht - 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/
TiCar
Beiträge: 250
Registriert: 15. Jan 2006, 10:37

Variables Mehrspalten Template - Idee gesucht

21. Sep 2008, 14:59

Hi,

ich versuche gerade eine kleine Nuss zu knacken und brauch etwas unterstützung weil mir vermutlich die richtige Idee fehlt, oder der korrekte Ansatzpunkt.

Folgendes soll erreicht werden:

|---------------------------------------------------------|
| Header Bereich mit Menü & Untermenü ------|
|--------------------------------------------------------|
| Content 1.Bereich | Content 2. | Content 3. |
| -----------------------|---------------|---------------|

Ich möchte nun in den Artikel selber sagen, in welchem Bereich des Content erscheinen sollen. Der Einfachheit halber, würde es ausreichen, wenn z.b. im Startartikel eine Artikelliste oder Kategorieliste im rechten Contentteil erscheint und ich im für den 'normalen' Conten sagen kann, ob diese über Bereich 1 & 2 oder nur Bereich 1 gehen soll.

Ich kanne das von Typo3 meines wissens, dass man es dort derart definieren kann und man dann auch sagen kann in welchem Bereich der Inhalt steht. Ich hab schon versucht das irgendwie per Template nachzubauen (kein Problem über DIVs), nur weiß ich noch nicht, wie ich dem Inhalt beibringen kann, in welchem Bereich er nun stehen soll.

Hat da jemand eine Idee - evtl. über Meta Infos? Wobei ich damit noch keinerlei praktische Erfahrung habe, aber hört sich so bisle danach an, dass es mich in die richtige Richtgun bringt, bin aber für alle Ideen offen und hoffe meine Erklärung waren verständlich.
Gruß,
Lars

TNiegel
Beiträge: 2
Registriert: 1. Aug 2008, 14:39

21. Sep 2008, 16:31

Hi,

ich hatte da mal was ähnliches gemacht...

Eine Webseite mit "normalem" Content. Manche Seit sollten rechts einen 2. Content-Bereich haben. Manche eben nicht.

Ich hab' das so gelöst, daß ich eine neue Meta-Info aufgenommen habe, in die ich bei Bedarf einen 2. Artikel angeben konnte.

Im Template hab' ich dann abgefragt, ob ein Artikel eingetragen ist. Wenn ja, dann wurde eben weiterer Content-Bereich ausgegeben, wenn nicht, dann halt nicht.

Code-Beispiel (der Einfachheit als Tabellen-Layout):

<?php
if ($this->getValue('art_rightcontent')>0) {
echo "<td>";
$artikel = new article;
$artikel->setArticleID($this->getValue('art_rightcontent'));
echo $artikel->getArticle();
echo "</td>";
}
?>

TiCar
Beiträge: 250
Registriert: 15. Jan 2006, 10:37

22. Sep 2008, 10:28

Na das ist doch mal ne gute Idee *freu* Werd mal schauen ob ich das so in der Art verwenden kann, bzw. auf meine Bedürfnisse drauf anpassen kann.

Danke dir schonmal
Gruß,
Lars

Benutzeravatar
ciss
Beiträge: 359
Registriert: 8. Feb 2008, 05:24
Wohnort: Berlin

22. Sep 2008, 13:42

Du könntest auch mit CTypes arbeiten, im Ausgabemodul prüfen, ob für die zweite Spalte Inhalte hinterlegt sind und die Formatierung jeweils automatisch anpassen lassen.

Oder ein Modul mit einem REX_LINK_BUTTON. Wenn im Artikel ein Slice vorhanden ist das das Modul nutzt, dann wird der im Slice festgelegte Artikel rechts dargestellt, ansonsten geht der eigentliche Artikel halt über beide Spalten.

TiCar
Beiträge: 250
Registriert: 15. Jan 2006, 10:37

22. Sep 2008, 14:18

Find ich gut, dass hier noch mehr Ideen kommen *freu* Werd mir auch das auf jeden Fall anschauen.
Gruß,
Lars

TiCar
Beiträge: 250
Registriert: 15. Jan 2006, 10:37

9. Okt 2008, 16:56

ciss hat geschrieben:Du könntest auch mit CTypes arbeiten, im Ausgabemodul prüfen, ob für die zweite Spalte Inhalte hinterlegt sind und die Formatierung jeweils automatisch anpassen lassen.

Oder ein Modul mit einem REX_LINK_BUTTON. Wenn im Artikel ein Slice vorhanden ist das das Modul nutzt, dann wird der im Slice festgelegte Artikel rechts dargestellt, ansonsten geht der eigentliche Artikel halt über beide Spalten.
Hi,

so, da bin ich wieder (war wegen Krankenhausaufenthalt etwas verhindert) und habe heute angefangen das umzusezten und gesehen, dass es mit dem CTYPE ja problemlos möglich sein soll. Nun habe ich gesucht, gelesen usw. und suche seit 30min verzweifelt wo ich die CTYPES denn im Artikel hinterlegen kann verflixt :roll: irgendwie bin ich zu doof, das zu finden und hoffe mir kann jemand mal eben auf die Sprünge helfen.

Das Template habe ich soweit schon vorbereitet :)
Gruß,
Lars

Benutzeravatar
raybeam
Beiträge: 442
Registriert: 5. Feb 2006, 21:30
Kontaktdaten: Website

9. Okt 2008, 17:42

Hallo Lars,

die CTypes sind die Spalten im Template. Du gibst die Spalten also im Template vor und nicht im Artikel

Unter: http://www.raybeam.de/22-0-YAML-Spaltenanordnung.html findest Du eine kurze Erläuterung.

Gruß

Peter

TiCar
Beiträge: 250
Registriert: 15. Jan 2006, 10:37

10. Okt 2008, 12:48

Hi Peter,

danke dir. Ich wußte CTYPES schonmal gesehen zu haben und war auch bei Templates, aber irgendwie voll übersehen. In deinem Beispiel sind mehrere Bereiche definiert, bei mir im Template habe ich allerdings lediglich ID 1, also nur eine Spalte. Hab mich also auf dem Link mal umgesehen und versucht rauszubekomen wo man die definieren kann, bin aber bisher leider nicht fündig geworden :(

Weder im Administrationsbereich, noch im Filesystem in einer entsprechenden Konfigurationsdatei und steh schon wieder wie doof da *grumel* Verflixt und zugenäht.

Ich nutze die aktuellste Redaxoversion 4.1.0 vielleicht kannst ja nochmal kurz ein Hinweis geben.
Gruß,
Lars

Benutzeravatar
raybeam
Beiträge: 442
Registriert: 5. Feb 2006, 21:30
Kontaktdaten: Website

10. Okt 2008, 13:04

Zugegeben der Weg ist ein wenig "gewöhnungsbedürftig" und hat durchaus optimierungspotential :wink: :

Gib eine Bezeichnung für deine Spalte 1 ein und klicke auf Template übernehmen. Um eine weitere Spalte eingeben zu können musst Du nun erneut auf das kleine + klicken. Bezeichnung für Spalte 2 eingeben - auf Template übernehmen klicken ...
usw.

Gruß

Peter

TiCar
Beiträge: 250
Registriert: 15. Jan 2006, 10:37

10. Okt 2008, 16:46

Uaaaaaah danke - hast mir sehr geholfen.

Da muss man jetzt auch erstmal drauf kommen auf diese Art *hehe*
Gruß,
Lars

TiCar
Beiträge: 250
Registriert: 15. Jan 2006, 10:37

17. Okt 2008, 18:26

Hi,

ich nochmal. Ich bräuchte da nochmal eine passende Idee, wo ich etwas auf dem trockenen sitze.

Es geht immer noch um die 3 Spalten von oben, nur das ich jetzt z.b. in Conten 3 einen Artikelliste aus einem osCommerce Shop habe und im Content 2 möchte ich dazu passend die Shopbilder darstellen.

Dazu war mein bisheriger Plan so, dass ich praktisch im Content 3 ein Block hinzufüge in dem ich folgendes Auswählen kann:
  • Neue Artikel oder Sonderangebote (Select REX_VALUE[1])
  • Artikelbilder anzeigen (Checkbox REX_VALUE[2])
  • Anzahl der Artikel (Textfeld REX_VALUE[3])
Rein theoretisch müsste ich ja jetzt im Content 2 ebenso per Hand ein Block hinzufügen, wo ich praktisch das gleiche mache, nur das hier nur die Bilder angezeigt werden. In dem Fall könnte ich mir oben auch REX_VALUE[2] (Checkbox) sparen.

Problem dabei wäre, dass ich
  • Zweifel habe, dass ich immer zueinander passende Elemente bekomme
  • mehr Arbeit habe als nötig
  • nicht mit Tabellen arbeiten möchte, sondern mit DIVs, aber trotzdem gewährleisten möchte das die beiden nebeneinander liegen.
  • Ich möcht das ganze nicht pfriemeln, sondern möglichst allgemein lösen
Wie gesagt, klar könnte ich das ganze zu Fuß machen nur vielleicht gibt es eine inteligente Lösung die mir noch nicht in den Sinn gekommen ist. Im Grunde würde ich gerne vom Content 3 aus, in den Content 2 (links daneben) die Bilder platzieren, dieser hat aber im Template ein anderes Div natürlich :-/

Im Template selber sind die Contents wiefolgt integriert:
CONTENT 1 = $main
CONTENT 2 = $middle
CONTENT 3 = $right

Code: Alles auswählen

			<div id="main">

					<?php
					$middle = $this->getArticle(2);
					$right = $this->getArticle(3);
					if( $right != "" ) {
						$main = "\r\n<div id='main-left-middle'>";

						$right = "\r\n<div id='main-right'>";
						$right .= $this->getArticle(3);
						$right .= "</div>\r\n";

					}
					if( $middle != "" ) {
						$main = "\r\n<div id='main-left'>";

						$middle = "\r\n<div id='main-middle'>";
						$middle .= $this->getArticle(2);
						$middle .= "</div>\r\n";

					}

					$main .= $this->getArticle(1);
					if( $right != "" OR $middle != "") $main .= "</div>\r\n";

					print $main;
					print $right;
					print $middle;
					?>
			</div>
Wie man sieht lädt er je nachdem ob in $middle oder $right was enthalten ist die DIVs unterschiedlich um $main auch über die komplette Breite nutzen zu können.

Ich hoffe ihr könnt mir wieder ein kleinen Tipp geben, der bei mir den Knoten platzen lässt. Wenn es unverständlich war bitte ich daszu verzeihen - ich erklär es gerne noch malsgenauer.
Gruß,
Lars

Benutzeravatar
ciss
Beiträge: 359
Registriert: 8. Feb 2008, 05:24
Wohnort: Berlin

17. Okt 2008, 20:52

gibt es pro artikel ein bild, das genau neben dem artikelnamen erscheinen soll? oder wählt man rechts einen artikel, zu dem dann in der mitte mehrere bilder/ansichten gezeigt werden?

TiCar
Beiträge: 250
Registriert: 15. Jan 2006, 10:37

18. Okt 2008, 10:02

Ich geb nur an wieviele Artikel rechts stehen sollen und es gibt pro Artikel nur ein Bild, bzw. wenn es mehrer geben sollte, was osCommerce im Standard nicht unterstützt meines wissens, dann würde ich den ersten Eintrag nehmen, da soviel Platz links daneben auch gar nicht ist.

Wie gesagt die Schwierigkeit ist, wie 'Überschreibe' ich den linken (mittleren) Bereich?
Gruß,
Lars

TiCar
Beiträge: 250
Registriert: 15. Jan 2006, 10:37

18. Okt 2008, 13:44

Mir ist da gerade was eingefallen ...

Kann ich im Template bei der Abfrage $middle = $this->getArticle(2); evtl. sowas wie $middle= $this->getArticle(2,$picture); machen, so dass ich praktisch noch ein Parameter mitgeben und das aus Content 3 nur mit anderem Parameter aufrufe?
Gruß,
Lars

Benutzeravatar
ciss
Beiträge: 359
Registriert: 8. Feb 2008, 05:24
Wohnort: Berlin

18. Okt 2008, 15:18

Steht das Layout schon? Kann man mal nen Blick drauf werfen? Möglicherweise wirst du nämlich glücklicher, wenn du die Bilder gemeinsam mit den Artikeln ausgibst und dann entweder durch einen negativen linken Margin in der mittleren Spalte platzierst oder durch einen rechten Margin (oder ein entsprechend grosses Padding des umschliessenden DIV) die Artikeltitel in die rechte Spalte schiebst.

TiCar
Beiträge: 250
Registriert: 15. Jan 2006, 10:37

18. Okt 2008, 15:45

Jep genau das meine ich, dass man sie zusammen ausgibt, aber genau da war ja mein Problem. Wie bekomme ich die Bilder ausserhalb des DIVs, aber ich glaub du hast den richtigen Hinweis gegeben ;) Mit nem negativen Margin, sollte ich ja den mittleren Content überblenden können

Danke
Gruß,
Lars

Zurück zu „Allgemeines [R4]“