Seite 1 von 1

Stylesheet/Layout wählen

Verfasst: Fr 23. Sep 2005, 10:11
von baumpaul
Hallo,

ich habe mit kleiner Hilfe von emergence gestern mir ein Modul geschreiben, mit dem es möglich ist ein bistimmtes oder eine zusätzliche CSS Datei in das in das Dokument einzubinden.

Unter Templates könnt Ihr dann in einem List Menü die CSS Dateien die im Ordner css hinterlegt sind auswählen. Dabei werden nur Dateien angezeigt, die mit layout_ anfangen.

Im Layout muss dafür natürlich zwischen <head> und </head> ein Container hinterlegt werden.

Getestet unter Contenido 4.5.3

Input:

Code: Alles auswählen

/***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname   :     Layout wählen
* Author      :     Phillip Baumgärtner
* Copyright   :     Phillip Baumgärtner
* Created     :     05-09-2005
* Modified    :     -
************************************************/

echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">
        <tr>
          <td>Layout ausw&auml;hlen</td>
          <td><select name=\"CMS_VAR[50]\">
              <option value=\"0\" selected=\"selected\">keines</option>";

$pfad = "../cms/css/";
$verz = opendir($pfad);
while ($file=readdir($verz)) {
    if (preg_match('/^layout_/', $file)) {
        if ("CMS_VALUE[50]" == $file) {
            echo "<option value=\"$file\" selected=\"selected\">$file</option>";
        } else {
            echo "<option value=\"$file\">$file</option>";
        }
    }
}
closedir($verz);

echo "</select>
      </td>
        </tr>
      </table>";
Output:

Code: Alles auswählen

<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname   :     Layout wählen
* Author      :     Phillip Baumgärtner
* Copyright   :     Phillip Baumgärtner
* Created     :     05-09-2005
* Modified    :     -
************************************************/

if (CMS_VALUE[50] != "0")
  { echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"css/CMS_VALUE[50]\" />"; }

?>
Verbesserungen erwünscht :)

Gruß - baumpaul

Verfasst: Di 27. Sep 2005, 08:22
von MrKanister
Nur etwas Kosmetik ;)

Output:

Code: Alles auswählen

<?php 
/*********************************************** 
* CONTENIDO MODUL - OUTPUT 
* 
* Modulname   :     Layout wählen 
* Author      :     Phillip Baumgärtner 
* Copyright   :     Phillip Baumgärtner 
* Created     :     05-09.2005 
* Modified    :     27-09.2005
************************************************/ 

if (CMS_VALUE[50] != "0") 
  { echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"css/CMS_VALUE[50]\" />"; } 
?>
Ansonsten besten Dank, für das Modul!

Verfasst: Mi 19. Jul 2006, 14:52
von stefkey
Genau das habe ich gesucht.

Besten Dank!
stefkey

Verfasst: Di 19. Dez 2006, 00:24
von gummibaerle
Ich habe das Modul marginal umgebastelt und kann es jetzt dazu nutzen um auf einer kleineren Site jeder Kategorie bzw. jedem Artikel eine eigene Headergrafik zuzuordnen. Ich nutze das unter der Version 4.6.15MR. An der Stelle wo das Logo im Layout eingebunden ist einfach folgenden Code einbauen:

Code: Alles auswählen

<container id="2" name="Layout" types="Content" default="Kategoriebild">Kategoriebild</container>
Input:

Code: Alles auswählen

/***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname   :     Kategoriebild
* Author      :     Phillip Baumgärtner
* Copyright   :     Phillip Baumgärtner
* Created     :     05-09.2005
* Modified    :     18.12.2006
************************************************/ 

echo "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\">
        <tr>
          <td>Logo ausw&auml;hlen</td>
          <td><select name=\"CMS_VAR[2]\">
              <option value=\"0\" selected=\"selected\">keines</option>";

$pfad = "../cms/images/";
$verz = opendir($pfad);
while ($file=readdir($verz)) {
    if (preg_match('/^kategorie_/', $file)) {
        if ("CMS_VALUE[2]" == $file) {
            echo "<option value=\"$file\" selected=\"selected\">$file</option>";
        } else {
            echo "<option value=\"$file\">$file</option>";
        }
    }
}
closedir($verz);

echo "</select>
      </td>
        </tr>
      </table>";
Output:

Code: Alles auswählen

<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname   :     Kategoriebild
* Author      :     Phillip Baumgärtner
* Copyright   :     Phillip Baumgärtner
* Created     :     05-09.2005
* Modified    :     18.12.2006
************************************************/ 

if (CMS_VALUE[2] != "0")
  { echo "<img src=\"../cms/images/CMS_VALUE[2]\" alt=\"Logo\" title=\"Zur Startseite der Homepage\" width=\"990\" height=\"131\" border=\"0\" />"; }

?>
Tolles und einfaches Modul baumpaul. Danke!

Gruss aus Bayern