Joomla! 2.5 (Teil 39): Eigene Templates entwickeln (10)

Tutorials 28. Mai 2013 – 0 Kommentare

Damit das erstellte Joomla!-Template wirklich für alle Eventualitäten gerüstet ist, sollten weitere Vorbereitungen getroffen werden. Das betrifft zunächst einmal den Fall, dass im Frontend ein fehlerhafter Aufruf erfolgt. Tatsächlich könnt ihr nämlich eine eigene/personalisierte Fehlerdatei erstellen. Und dann gibt es mit der component.php noch eine Datei, die ebenfalls in keinem Template fehlen sollte. Denn diese Datei wird von Joomla! beispielsweise für die Druckvorschau verwendet.

Wir empfehlen:
Joomla!-Training

Kommt es im Frontend der Seite zu einem fehlerhaften Aufruf, meldet sich Joomla! mit seiner bekannten Standardfehlerseite.

 

Diese Seite kann man für sein Template verwenden, es gibt aber durchaus eine bessere Lösung. Denn die angezeigte Seite ist weder sonderlich hilfreich, noch sieht sie besonders hübsch aus. Wer möchte, kann für sein Template eine individuelle Fehlerseite anlegen. Auf diese wird dann automatisch zugegriffen, wenn es im Frontend der Seite zu einem falschen Aufruf kommt. Um eine solche Fehlerseite zu bekommen, müsst ihr in eurem Template-Verzeichnis die Datei error.php anlegen.

 

Kommt es nun im Frontend zu einem fehlerhaften Aufruf, überprüft Joomla! zunächst, ob es im Template-Verzeichnis des aktuell verwendeten Templates eine error.php gibt. Ist das der Fall, wird automatisch auf diese Datei zugegriffen. Wie ihr diese Datei gestaltet, bleibt letztendlich dann natürlich euch überlassen. Im einfachsten Fall verwendet man eine einfache HTML-Syntax und gibt einen statischen Hinweistext aus:

 

Für diese Ausgabe ist die folgende Syntax verantwortlich:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="language" content="<?php echo $this->language; ?>" />
<title><?php echo $this->error->getCode(); ?>-<?php echo $this->title; ?></title>
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/system.css" type="text/css" />
<style type="text/css">
<!--
#error {
   margin:30px
}
#errorboxheader {
   font-weight:normal;
   font-size:1.5em
}
#errorboxbody {
   background:#eee;
   padding:10px;
   margin-top:20px;
   border:solid 1px #ddd
}
-->
</style>
</head>
<body>
<div class="error">
  <div id="outline">
    <div id="errorboxoutline">
      <div id="errorboxheader">Uuups! Ein Fehler ist aufgetreten.</div>
      <div id="errorboxbody">
        <p>Huch, da ist was schiefgegangen. Sie haben nach etwas gesucht, was nicht hier ist. Vielleicht ist die Seite einfach verschwunden, vielleicht haben wir sie gel&ouml;scht oder vielleicht haben Sie sich vertippt und die Seite war nie da. Fest steht: Hier ist nichts.</p
      </div>
    </div>
  </div>
</div>
</div>
</body>
</html>

Interessant sind diese Strings natürlich vor allem, wenn es sich um eine mehrsprachige Webseite handelt. So bekommen die Besucher die Fehlermeldungen dann sogar in ihrer jeweiligen Landessprache zu sehen.

Die component.php in Aktion

Joomla! bietet die Möglichkeit, Inhalte ohne "umgebende" Elemente wie Navigation oder Kopfzeile auszugeben. Genutzt wird das beispielsweise für die Druck- und die Seite-weiterempfehlen-Funktion. Joomla! überprüft bei jedem Aufruf der Drucken-Funktion, ob es eine component.php im Verzeichnis des aktuell verwendeten Templates gibt. Ist das der Fall, wird diese Datei für die Anzeige der Druckvorschau verwendet, anderenfalls greift Joomla! auf die Standard-Druckvorschau zurück.

 

Die component.php ist sozusagen eine abgespeckte index.php. Um die Funktion zu testen, blendet ihr am besten das Drucken-Symbol für einen (oder eben alle) Beitrag ein. Ruft dazu über Inhalt/Beiträge den betreffenden Beitrag auf. Interessant ist dort der Bereich Beitragsoptionen.

 

Stellt hier das Feld Drucksymbol auf Anzeigen. (Wenn es in den globalen Optionen bereits auf Anzeigen steht, könnt ihr den Eintrag Globale Einstellungen stehen lassen). Nachdem die Änderungen gespeichert wurden, wird im Frontend zu diesem Beitrag ein Drucken-Symbol angezeigt. Klickt man dieses an, ist eine Druckvariante der Seite zu sehen.

 

Genau dafür ist die component.php da. Ihr könnt diese Datei ganz einfach erstellen, indem ihr die index.php eures Templates unter dem Namen component.php abspeichert und daraus alle unwichtigen Elemente entfernt. Das gilt natürlich in erster Linie für Elemente, die im Druck stören. Dazu gehören beispielsweise Grafiken. (Die normale index.php muss aber natürlich nach wie vor im Template-Verzeichnis enthalten sind).

Im einfachsten Fall könnte die component.php folgendermaßen aussehen:

<body class="contentpane">
  <div id="all">
   <div id="main">
    <jdoc:include type="message" />
    <jdoc:include type="component" />
   </div>
  </div>
</body>

Entscheidend sind in jedem Fall die beiden Aufrufe <jdoc:include type="message" /> und <jdoc:include type="component" />. Fehlen diese nämlich, werden in der Druckvorschau weder Systemmeldungen noch die eigentlichen Inhalte angezeigt.

Fazit

Dank den beiden Dateien error.php und component.php kann man seine Templates also noch ein wenig mehr individualisieren. So lassen sich eigene Fehlerseiten und die personalisierte Ansicht der Druckvorschau im Handumdrehen umsetzen.

Wir empfehlen:
Dreamweaver-Video-Training

Unsere Empfehlung für dich

Joomla! für Einsteiger und Aufsteiger

Joomla! für Einsteiger und Aufsteiger

Was liegt wo und ist wie, mit welchem Inhalt verknüpft?! Nach diesem Kurs ist das keine Frage mehr! Mit Joomla! erstellst du Webseiten und behältst deren Inhalte jederzeit im kontrollierenden und koordinierenden Blick.

  • 28 Lektionen in über fünf Stunden Video-Training zum praktischen Umgang mit Joomla!
  • Lerne das CMS von Grund auf kennen und verwalte damit deine redaktionellen Webseiten-Inhalte
  • Praxisnah lernen: inklusive Arbeitsmaterialien zum Mitmachen und Nachvollziehen
  • Auf dem neuesten Stand: Optimiert für die aktuelle Joomla!-Version 3.6

Zum Training

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Folgende HTML-Elemente sind erlaubt:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>