[repost] Modulausgabe außerhalb des Haupt- Contentbereiches?

Wie verwendet man Templates oder erstellt Navigationen und passt diese an.

[repost] Modulausgabe außerhalb des Haupt- Contentbereiches?

Beitragvon jeandeluxe » 1. Okt 2005, 11:07

Hallo,


nochmals zu meiner Frage in http://forum.redaxo.de/viewtopic.php?t=893, da ich sie evtl. einfach zu unklar/umständlich gestellt hab:

Kann ich die Ausgabe eines Moduls außerhalb der eigentlichen content-box platzieren, und wenn ja wie?

Es geht mir darum den Haupttitel einer Seite zwecks fixer positionierung separat außerhalb des content divs auszugeben, grob gesagt so:
Code: Alles auswählen
<div class="titel">
[Ausgabe des Titel Moduls]
</div>
<div class="content">
[Ausgabe aller anderen Module]
</div>

Wie kann ich das machen außer mit dem Hack daß ich das Modul für den Titel mit der Ausgabe von..
Code: Alles auswählen
<div class="titel">
...
</div>
<div class="content">

..betraue anstatt diese diese div Boxen im Template anzulegen?

besten Dank,
Jan
Benutzeravatar
jeandeluxe
 
Beiträge: 1941
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Beitragvon Thomas.Blum » 1. Okt 2005, 11:20

Hej,

gestern wurde in diesem Threadfolgendes geschrieben
vscope hat geschrieben:die 2 spalten sache ist derzeit noch im beta stadium.
nennt sich ctypes und wird in zukunft ermöglichen dass man soviele content bereiche wie mann will auf einer seite realisieren kann.


Thomas
blumbeet - web.studio - Dresden - 0351 217 6225
webbude - Blog über CSS.XHTML.REX
Ein Wunschzettel
Benutzeravatar
Thomas.Blum
Entwickler
 
Beiträge: 4670
Registriert: 24. Aug 2004, 21:11
Wohnort: Dresden

Beitragvon jeandeluxe » 1. Okt 2005, 11:39

tbaddade hat geschrieben:...gestern wurde in diesem Threadfolgendes geschrieben
vscope hat geschrieben:die 2 spalten sache ist derzeit noch im beta stadium.
nennt sich ctypes und wird in zukunft ermöglichen dass man soviele content bereiche wie mann will auf einer seite realisieren kann.


Ah ok, dann bleib ich erstmal bei meinem hack und freu mich auf die nächsten releases. ;-)

Danke,
Jan
Benutzeravatar
jeandeluxe
 
Beiträge: 1941
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Beitragvon vscope » 2. Okt 2005, 20:13

also ein einfacher hack:

du machst ein modul für Spalte 2 und schreibst in die ausgabe folgendes:

Code: Alles auswählen
<?php
ob_start();
?>
REX_VALUE[1]
REX_VALUE[2]
<?php
$REX['SPALTE_RECHTS'] = ob_get_contents();
ob_end_clean();
?>


dann im head des templates:

Code: Alles auswählen
<?php
// GET CURRENT ARTICLE
ob_start();
$this->getArticle();
$REX['SPALTE_LINKS']  = ob_get_contents();
ob_end_clean();
?>


dann hast du 2 Content Variablen: $REX['SPALTE_LINKS'] und $REX['SPALTE_RECHTS'] die man einfach im template an der dazugehörigen Stelle ausgeben kann.

lg

vscope

edited by kills
Bild
Benutzeravatar
vscope
 
Beiträge: 480
Registriert: 24. Aug 2004, 21:11
Wohnort: Austria/Vienna

Beitragvon jeandeluxe » 4. Okt 2005, 09:14

vscope hat geschrieben:also ein einfacher hack:
(...) dann hast du 2 Content Variablen: $REX['SPALTE_LINKS] und $REX['SPALTE_RECHTS] die man einfach im template an der dazugehörigen Stelle ausgeben kann.

Ah vielen Dank.. das kuck ich mir die Tage mal an!

Jan
Benutzeravatar
jeandeluxe
 
Beiträge: 1941
Registriert: 29. Sep 2005, 09:50
Wohnort: Hamburg

Beitragvon Havard » 25. Okt 2005, 23:56

Habe das bei mir versucht, da ich auch gerne ein oder zwei Module außerhalb des Hauptinhaltes auslesen lassen will - klappt leider nicht.

Also Modul erstellt, Code im Template eingefügt. Dann bin ich nach mehreren Versuchen mein Modul ausgeben zu lassen nicht weitergekommen..
Havard
 
Beiträge: 156
Registriert: 20. Jan 2005, 18:59

Beitragvon Thomas.Blum » 26. Okt 2005, 06:52

Hej,

der Code von vscope enthält kleine Schreibfehler. Diese eventuell schon angepasst?

Thomas
blumbeet - web.studio - Dresden - 0351 217 6225
webbude - Blog über CSS.XHTML.REX
Ein Wunschzettel
Benutzeravatar
Thomas.Blum
Entwickler
 
Beiträge: 4670
Registriert: 24. Aug 2004, 21:11
Wohnort: Dresden

Beitragvon Havard » 26. Okt 2005, 11:44

Schreibfehler? Welche wären das? Aber ohne diesen sollte es dann funktionieren? Na ja, teste gerne mit dem richtigen Code :P
Havard
 
Beiträge: 156
Registriert: 20. Jan 2005, 18:59

Beitragvon Thomas.Blum » 26. Okt 2005, 11:58

Ob es funktioniert kann ich nicht sagen, da ich diese Variante nicht verwende.

<?Php -> <?php
$REX['SPALTE_LINKS] -> $REX['SPALTE_LINKS']
$REX['SPALTE_RECHTS] -> $REX['SPALTE_RECHTS']

Thomas
blumbeet - web.studio - Dresden - 0351 217 6225
webbude - Blog über CSS.XHTML.REX
Ein Wunschzettel
Benutzeravatar
Thomas.Blum
Entwickler
 
Beiträge: 4670
Registriert: 24. Aug 2004, 21:11
Wohnort: Dresden

Beitragvon vscope » 27. Okt 2005, 08:07

kleine vorabinfo.
im der aktuellen cvs version findest du schon die ctypes.
damit kannst du soviele verschiedene contentselemente
bearbeiten wie du willst.

einfach das file ctype.inc.php an deine bedürfnisse anpassen.
und den content dann so aufrufen print $this->getArticle($ctypeID);

sollte bald auch als doku vorhanden sein.

lg

vscope
Bild
Benutzeravatar
vscope
 
Beiträge: 480
Registriert: 24. Aug 2004, 21:11
Wohnort: Austria/Vienna

Beitragvon Havard » 27. Okt 2005, 11:45

wunderbar klappt. ein fehler hat das ganze aber noch, wenn ich
Code: Alles auswählen
         <?php
            print '<h1>'.$this->getValue(name).'</h1>';
            print htmlentities($this->getArticle());
         ?>

zum ausgeben aller artikel benutze, wird auch hier meine zweite spalte ausgegeben.

andersherum bei
Code: Alles auswählen
         <? print $this->getArticle($ctype2); ?>

erscheint ebenso der hauptcontent.

wie schaffe ich dem abhilfe??
Havard
 
Beiträge: 156
Registriert: 20. Jan 2005, 18:59

Beitragvon Markus.Staab » 27. Okt 2005, 14:08

Hi,

Havard hat geschrieben:
Code: Alles auswählen
         <? print $this->getArticle($ctype2); ?>

erscheint ebenso der hauptcontent.

wie schaffe ich dem abhilfe??


du musst hier den namen des eingerichteten ctypes angeben.

Wenn deine ctype.inc.php z.b. so aussieht:

Code: Alles auswählen
$REX['CTYPE'][] = "main";
$REX['CTYPE'][] = "column2";



z.b.
Code: Alles auswählen
         <? print $this->getArticle('column2'); ?>


Gruß,
Markus
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany

Beitragvon Havard » 27. Okt 2005, 14:34

Auch mit dieser Lösung werden immer beide Spalten ausgegeben.

Könnte es daran liegen, dass ich beispielsweise mal wieder eine Datei im Ordner classes etc aktualisieren muss??
Havard
 
Beiträge: 156
Registriert: 20. Jan 2005, 18:59

Beitragvon Markus.Staab » 27. Okt 2005, 15:31

Hi Havard,

Havard hat geschrieben:Auch mit dieser Lösung werden immer beide Spalten ausgegeben.

Könnte es daran liegen, dass ich beispielsweise mal wieder eine Datei im Ordner classes etc aktualisieren muss??


Für die CTypes brauchst du die R3 komplett aus dem CVS...

PS:
Es ist gut möglich, das in der CVS Version noch ein paar Bugs drinne sind...

Gruß,
Markus
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany

Beitragvon Havard » 27. Okt 2005, 16:34

so rundumerneuert.. jetzt habe ich null content mehr ! :cry: im backend alles soweit noch vorhanden, im frontend nichts zu sehen
Havard
 
Beiträge: 156
Registriert: 20. Jan 2005, 18:59

Nächste

Zurück zu Templates/Navigationen [R3]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast