Einbinden der Module

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

Einbinden der Module

Beitragvon Gast » 22. Sep 2005, 16:17

Hallo,

ich arbeite mich gerade in Redaxo ein und bin bislang erfreut. Nur zum Template-System habe ich schon jetzt eine Frage. Bislang war ich es gewohnt, dass im CMS die Module über Platzhalte rim HTML-Layout eingebunden werden (etwa Contenido, Der Dirigent). Hier sieht es ja etwas anders aus, und deswegen eine kleine Frage. Mal angenommen, ich möchte gerne auf meiner Seite zunächst einen Willkommens-Text haben und darunter eine Artikelliste der letzten fünf News. Soweit ich das System verstehe, würde ich diese Elemente einfach im Rahmen des Anlegens des Startartikels hintereinander einbinden (also einen Block nach dem anderen). Aber: Wie schaffe ich es, das Layout dieser Module so zu ändern, dass ich etwa eine nette Grafik à la "Latest News" oder so über meinem Modul zu stehen habe? Mache ich das im Code des jeweiligen Moduls direkt, in dem ich - als ganz einfaches Beispiel etwas HTML bastele und dann den Modul-Code einbaue? Also etwa so:

Code: Alles auswählen
<table width="400" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><img src="gfx/head_menue.jpg" width="400" height="134" /></td>
  </tr>
  <tr>
    <td><div class="artikel-index">
<?php
// Start-Kategorie
$root = oocategory::getCategoryById( REX_CATEGORY_ID);
$index = array();

recurse( $root, $index);

// sortieren
ksort( $index);

// ausgabe
$firstChar = '';
$first = true;
foreach ( $index as $name => $article) {
   $nextChar = $firstChar != $name{0};
   if ( $nextChar) {
      if ( $first) {
         $first = false;
      } else {
        echo '
              </fieldset>'. "\n";
      }
      $firstChar = $name{0};
      echo '<fieldset>
               <legend>&nbsp;'. $firstChar .'&nbsp;</legend>'. "\n";
   }

   echo '   <a href="'. $article->getUrl() .'" style="margin-left: 5px">'.$article->getName().'</a><br/>'. "\n";
}
echo '
   </fieldset>';

function recurse( $cat, &$index)
{
   // aktuelle Cat zum Index
   if ( $cat->getId() != REX_CATEGORY_ID) {
      article2Index( $cat, $index);
   }
   
   // alle Artikel zum Index
   $articles = $cat->getArticles(true);
   if ( is_array( $articles)) {
      foreach( $articles as $article) {
         if ( $article->getId() != REX_ARTICLE_ID) {
            article2Index( $article, $index);
         }
      }
   }
   
   // Alle Childs zum Index
   $childs = $cat->getChildren(true);
   if ( is_array( $childs)) {
      foreach( $childs as $child) {
         recurse( $child, $index);
      }
   }
}

function article2Index( $article, &$index) {
   if ( $article == null)
   {
      return;
   }
   $name = $article->getName();
   $name = strtolower( $name);
   // Ä,Ö,Ü ersetzen, damit im Index nicht zuletzt steht!
   // Das 2. a damit Wörter mit Umlaut immer ganz vorne stehen
   $name = str_replace( array( 'ä', 'ö', 'ü', 'Ä', 'Ö', 'Ü'), array( 'aa', 'ua', 'ua', 'Aa', 'Oa', 'Ua'), $name);
   $name = ucwords( $name);
   $index[$name] = $article;
}

?>

</div></td>
  </tr>
</table>


Ginge das so, oder habe ich was grundsätzlich nicht verstanden?

Liebe Grüße,
Reinhard
Gast
 

Beitragvon magnett » 22. Sep 2005, 16:18

Verzeihung, ich war wohl noch nicht eingeloggt - der Text oben ist von mir...
magnett
 
Beiträge: 13
Registriert: 22. Sep 2005, 16:09

Beitragvon Thomas.Blum » 22. Sep 2005, 16:38

Hej und herzlich willkommen bei Redaxo,

Ein Artikel setzt sich aus einem oder mehere Blöcke zusammen. Um deine news auszugeben, würde ich ein Modul "News schreiben" und eins "Newsliste" machen.

Für einen Newsartikel legst du einen separaten Artikel an. Dort füllst du diesen Artikel mit dem Modul "News schreiben".

Im Startartikel der Kategorie fügst du dann das Newsliste Modul ein. In dem Modul Newsliste machst du dann dein HTML Code rein. Des weiteren liest dieses Modul alle Artikel aus, die sich in dieser Kategorie befinden.

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 magnett » 22. Sep 2005, 16:49

Herzlichen Dank für die prompte Antwort. SO werde ich das mal versuchen, hört sich stimmig an ;-) Gibt es in Redaxo eigentlich auch den Content-Typ "Subheadline", der bei einer Meldung immer eine erste Zusammenfassung darstellt (wie beim Spiegel: Artikelelemente sind Headline, Subheadline, Volltext). Grüße!

PS: War neulich in Dresden-Neustadt zu Besuch - schön da.
magnett
 
Beiträge: 13
Registriert: 22. Sep 2005, 16:09

Beitragvon Thomas.Blum » 22. Sep 2005, 17:05

magnett hat geschrieben:Herzlichen Dank für die prompte Antwort. SO werde ich das mal versuchen, hört sich stimmig an ;-)

DaFürNicht

magnett hat geschrieben:Gibt es in Redaxo eigentlich auch den Content-Typ "Subheadline", der bei einer Meldung immer eine erste Zusammenfassung darstellt (wie beim Spiegel: Artikelelemente sind Headline, Subheadline, Volltext). Grüße!

so in etwa
http://www.karate-portal.com/index.php? ... chten.html

magnett hat geschrieben:PS: War neulich in Dresden-Neustadt zu Besuch - schön da.

Freut mich. :-)

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 magnett » 22. Sep 2005, 17:19

Genau wie beim Karate-Portal, gibt es einen solchen Content-Typ schon? Oder kopiere ich einfach ein Textmodul und benenne es etwas um und bohre die Listenmodule entsprechend auf??
magnett
 
Beiträge: 13
Registriert: 22. Sep 2005, 16:09

Beitragvon Thomas.Blum » 22. Sep 2005, 17:51

Hej,

also in diesem Artikel wurde ein Modul "News schreiben" oder so eingefügt

in dem oben genannten Artikel (Post vorher), welcher der Startartikel ist, wurde ein Teasermodul eingefügt. Dies liest aus allen Artikeln die sich im gleichen Ordner/Kategorie befinden, die jeweiligen Daten heraus.

KAT News
Startartikel <- Teasermodul (liest die Daten aus Artikel 1 und 2)
Artikel 1 <- Modul News schreiben
Artikel 2 <- Modul News schreiben

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 magnett » 22. Sep 2005, 19:03

Besten Dank!!
magnett
 
Beiträge: 13
Registriert: 22. Sep 2005, 16:09


Zurück zu Templates/Navigationen [R3]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron