Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Benutzerhandbuch › Fortgeschrittene › Tutorials & How To's - Tipps & Tricks ›

Portierung eine Themes von openwebdesign.org

Eingetragen von sanduhrs (1285) am 14.03.2006 - 18:46 Uhr in
  • Drupal 4.7.x

Übersicht

  • Systemanforderungen
  • Die Lizenzen
  • Auswahl des Designs
  • Aufbereitung des Templates
  • Einbinden des PHP-Codes
  • Anpassen des CSS-Styles
  • Fertigstellung und Veröffentlichung
  • Anhang

Systemanforderungen

  • XAMP
  • Drupal 4.7 (oder 4.6 mit PHPTemplate)

Die Lizenzen

Alle Designs die auf openwebdesign.org zu finden sind unterstehen derzeit zwei verschiedenen Lizenzen, entweder der Creative Commons Attribution v2.5 oder der Public Domain. Das macht Sie für nahezu alle Zwecke frei verwendbar, jedoch sollte trotzdem jeder, der daran denkt eines der Templates zu benutzen, vorher die Lizenzen gelesen und verstanden haben, um anschliessend zu entscheiden, ob die Lizenz die Verwendung für das eigene Projekt erlaubt.

Links:
OpenWebDesign.org http://openwebdesign.org
http://openwebdesign.org/licenses.php
CreativeCommons http://creativecommons.org/
CreativeCommons Attribution v2.5 http://creativecommons.org/licenses/by/2.5/
CreativeCommons Public Domain http://creativecommons.org/licenses/publicdomain/

Auswahl des Designs

Es gibt derzeit etwa 1500 qualitativ mehr oder minder gute Designs. Sie sind alle Kategorisiert nach Validierung, Kontrast und Farben. Zu empfehlen ist aus meiner Sicht ein Template, daß als XHMTL 1.0 Strict validiert, oder zumindest XHMTL 1.0 Transitional.
Angegeben ist auch, ob ein Template CSS verwendet. Das ist empfehlenswert, jedoch sollte man dennoch im Quelltext der Seite prüfen ob Tabellen für das Layout verwendet wurden. Ist dies der Fall muss man sich auf weitere Programmierarbeit einstellen, um das Template an die aktuellen Standards anzupassen.

Nachdem man also ein passendes Template gefunden hat, muss man es nur noch runterladen und entpacken.
Anschliessend erstellen wir einen Ordner im Ordner /themes in unserer Drupal Installation und benennen ihn nach dem namen des Templates.
In diesem Fall
/themes/treshold
Nachdem wir alle im Template enthaltene Dateien dorthin kopiert haben, ist das jetzt unser Arbeitsordner.

Links:
Auflistung, sortiert nach Datum/Rating/Downloads http://openwebdesign.org/browse.php
Suche per Kategorisierung http://openwebdesign.org/search.php
Ein Zufallsdesign http://openwebdesign.org/designornot/
Gewähltes Template http://openwebdesign.org/viewdesign.phtml?id=2387

Aufbereitung des Templates

Für dieses Tutorial wurde das Template http://openwebdesign.org/viewdesign.phtml?id=2387 gewählt.
Unser ausgewähltes Template beinhaltet eine Datei namens index.html und eine Datei namens style.css, sowie eine print.css und einige Bilder.

Die Dateien index.html und style.css werden wir im folgenden bearbeiten.

index.html

Um eine bessere Übersichtlichkeit zu erhalten, entfernen wir erst einmal mit einem beliebigen Texteditor (kein Office Programm), alle überflüssigen Texte, reformatieren den Code anhand von Drupals coding standards und erhalten folgende Datei:

<!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" lang="" xml:lang="">

  <head>
    <title></title>
  </head>
 
  <body>
    <div id="container">
      <div id="header">
        <div id="toplinks">
        </div>
      </div>
 
      <div id="leftcolumn">
      </div>
 
      <div id="sidebar">
      </div>
 
      <p id="footer"></p>
    </div>

  </body>
</html>

Jetzt können wir die Datei unter dem Namen page.tpl.php in unserem Theme Ordner speichern. Das ist die Datei, die von Drupal verwendet wird, um die Seite zu erzeugen. Die CSS Datei bleibt vorerst unangetastet.

Links:
Coding Standards http://drupal.org/node/318
Theme Coding Convenions http://drupal.org/node/1965

Einbinden des PHP-Codes

Wenn wir das Theme so wie es jetzt ist benutzen, so erhalten wir aber noch keine Ausgaben. Wir müssen also noch den PHP-Code einfügen der es Drupal ermöglicht den Content, die Sidebar und die Navigationsleiste aufzufüllen.

Wir arbeiten an der Datei page.tpl.php.
Als erstes geben wir bekannt in welcher Sprache unsere Seite betrieben wird:

<!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" lang="<?php print $language ?>" xml:lang="<?php print $language ?>">

Dann geben wir unserer Webseite einen Titel und fügen die Metainformationen, Javascript und Stylesheets hinzu:

  <head>
    <title><?php print $head_title ?></title>
    <?php print $head ?>
    <?php print $styles ?>
    <script type="text/javascript"><?php /* Needed to avoid Flash of Unstyle Content in IE */ ?> </script>
  </head>

Nun kommen wir zum endlich zum sichtbaren Bereich unserer Webseite. Als erstes der Kopfbereich:

      <div id="header">
        <?php if ($site_name) { ?><h1 class='site-name'><img src="/<?php print $logo ?>" alt="<?php print t('Home') ?>" class="logo" /><a href="/<?php print $base_path ?>" title="<?php print t('Home') ?>"><?php print $site_name ?></a></h1><?php } ?>
        <div id="toplinks">
          <?php if (isset($primary_links)) { ?><div id="primary"><?php print theme('links', $primary_links) ?></div><?php } ?>
          <?php print $search_box ?>
        </div>
        <img class="header" src="/<?php print $base_path."/".$directory ?>/header.jpg" alt="header" />
      </div>

Danach der Contentbereich, in dem alle unsere Artikel dargestellt werden:

      <div id="leftcolumn">
        <div id="main">
          <?php print $breadcrumb ?>
          <?php if ($site_slogan) { ?><h2 class="slogan"><?php print $site_slogan ?></h2><?php } ?>
          <?php if ($title) { ?><h1 class="title"><?php print $title ?></h1><?php } ?>
          <?php if ($tabs) { ?><div class="tabs"><?php print $tabs ?></div><?php } ?>
          <?php print $help ?>
          <?php print $messages ?>
          <?php print $content; ?>
        </div>
      </div>

Anschliessend der Bereich für die Blöcke, wobei bei diesem Template nur auf einer Seite Blöcke vorgesehen sind:

      <div id="sidebar">
        <?php if ($sidebar_left) { ?><?php print $sidebar_left ?><?php } ?>
        <?php if ($sidebar_right) { ?><?php print $sidebar_right ?><?php } ?>
      </div>

Als letztes kommt der Footer Bereich:

      <p id="footer"><?php print $footer_message ?></p>

...und der zwingende closure Tag.

    <?php print $closure ?>

Damit das Stylesheet auch funktioniert, müssen wir die verwendeten Styles auch noch in die Ausgabe von Drupal schmuggeln.
In diesem Falle sind die Ausgabe der Nodes und die Ausgabe der Blöcke anzupassen.
Die Standard Templates finden wir auf drupal.org, in diesem Fall habe ich die entsprechenden Dateien aus dem bluemarine Theme genommen.

Diese kopieren wir und speichern sie unter passendem Namen in unserem Theme Ordner.
Anschliessend müssen nur noch Kleinigkeiten angepasst werden:

node.tpl.php

  <div class="node<?php if ($sticky) { print " sticky"; } ?>">
    <?php if ($picture) { print $picture; }?>
    <?php if ($page == 0) { ?><h1 class="title"><a href="/<?php print $node_url?>"><?php print $title?></a></h2><?php }; ?>
    <h2 class="submitted"><?php print $submitted?></h2>
    <div class="taxonomy"><?php print $terms?></div>
    <div class="content"><?php print $content?></div>
    <?php if ($links) { ?><span class="links">&raquo; <?php print $links?></span><?php }; ?>
  </div>

block.tpl.php

  <div class="sidebox">
    <div class="block block-<?php print $block->module; ?>" id="block-<?php print $block->module; ?>-<?php print $block->delta; ?>">
        <h1 class="title"><?php print $block->subject; ?></h1>
        <div class="content"><?php print $block->content; ?></div>
    </div>
    <p>&nbsp;</p>
  </div>

Links:
Theme developer's guide http://drupal.org/node/509
Verfügbare Variablen http://drupal.org/phptemplate
Node.tpl.php http://drupal.org/node/11816
Block.tpl.php http://drupal.org/node/11813

Anpassen des CSS-Styles

Jetzt dürfte das Theme schon recht ansehnlich sein und halbwegs funktionieren. Um jedoch ein konsistentes Design zu ehalten müssen wird in diesem Fall noch das Stylesheet ergänzen, bzw. anpassen.
Wir arbeiten an der Datei style.css.
Wichtig ist, daß diese Datei tatsächlich auch diesen Namen trägt, sonst wird sie von Drupal nicht gefunden.
Die Zeile 76 musste ich leider auskommentieren, denn sie führte zu Problemen mit der Darstellung:

/* #margin-top:-18px; */

Die folgenden Ergänzungen habe ich im Stylesheet vorgenommen:

/* Drupal specific */
.site-name .logo {
  border: 0 !important;
}
.block .content {
  padding: 0px 10px 0px 18px;
}
.taxonomy {
  padding-left:10px;
}
.tabs {
  margin-bottom: 25px;
}
.breadcrumb {
  margin-left: 10px;
}
.submitted {
  margin-top: -18px;
}
table {
  overflow: auto;
  font-size: 1em;
}

Links:
SelfHTML CSS http://de.selfhtml.org/css/index.htm

Fertigstellung und Veröffentlichung

Um ausführliche Tests kommt man nicht herum. Zumindest alle Core-Module sollten einmal aktiviert und die erzeugte Ausgabe kontrolliert werden, um sie eventuell in unserer CSS Datei anzupassen.

Zuletzt erstellen wir noch nach den Angaben auf Drupal.org zwei Screenshots, einen für die Anzeige unter /admin/themes und einen großen für die Präsentation im Themegarden.
Wenn das erledigt ist fehlt nur noch der Hinweis auf die Herkunft und den Designer des Templates, sowie auf die Lizenz und den Ersteller des Ports. Diese Informationen schreiben wir in eine Datei namens README.txt und legen sie dem Theme bei.

Um das fertige Theme zu veröffentlichen benötigt man einen CVS Account, den man online beantragen kann, oder man sucht sich einen Entwickler, der bereit ist, das Theme ins CVS zu laden.

Links:
Theme how-to's http://drupal.org/node/22803
Theme screenshot guidelines http://drupal.org/node/11637
Drupal Theme Garden http://themes.drupal.org/
Adding your theme to Drupal.org http://drupal.org/node/14208
CVS application form http://drupal.org/cvs-account

Anhang

README.txt

/*
* Treshold for Drupal 4.7
* -----------------------
* Design and code by Kevin Cannon http://openwebdesign.org/userinfo.phtml?user=Frozen
* Original found at http://openwebdesign.org/viewdesign.phtml?id=2387
* Download from http://openwebdesign.org/download.phtml/threshold.zip?id=2387
*
* Ported for Drupal by Stefan Auditor stefan.auditor@audiens.de
* Originally licensed under Public Domain/Creative Commons Attribution v2.5 http://openwebdesign.org/licenses.php
*
* This port has been done as a tutorial project on drupalcenter.de
* the german drupal community. It is inadequatly tested and not (yet) ready for pruduction use!
*
* Request http://www.drupalcenter.de/node/781
* Tutorial http://www.drupalcenter.de/node/852
*
*/

page.tpl.php

<!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" lang="<?php print $language ?>" xml:lang="<?php print $language ?>">

  <head>
    <title><?php print $head_title ?></title>
    <?php print $head ?>
    <?php print $styles ?>
    <script type="text/javascript"><?php /* Needed to avoid Flash of Unstyle Content in IE */ ?> </script>
  </head>
 
  <body>
    <div id="container">
      <div id="header">
        <?php if ($site_name) { ?><h1 class='site-name'><img src="/<?php print $logo ?>" alt="<?php print t('Home') ?>" class="logo" /><a href="/<?php print $base_path ?>" title="<?php print t('Home') ?>"><?php print $site_name ?></a></h1><?php } ?>
        <div id="toplinks">
          <?php if (isset($primary_links)) { ?><div id="primary"><?php print theme('links', $primary_links) ?></div><?php } ?>
          <?php print $search_box ?>
        </div>
        <img class="header" src="/<?php print $base_path."/".$directory ?>/header.jpg" alt="header" />
      </div>
 
      <div id="leftcolumn">
        <div id="main">
          <?php print $breadcrumb ?>
          <?php if ($site_slogan) { ?><h2 class="slogan"><?php print $site_slogan ?></h2><?php } ?>
          <?php if ($title) { ?><h1 class="title"><?php print $title ?></h1><?php } ?>
          <?php if ($tabs) { ?><div class="tabs"><?php print $tabs ?></div><?php } ?>
          <?php print $help ?>
          <?php print $messages ?>
          <?php print $content; ?>
        </div>
      </div>
 
      <div id="sidebar">
        <?php if ($sidebar_left) { ?><?php print $sidebar_left ?><?php } ?>
        <?php if ($sidebar_right) { ?><?php print $sidebar_right ?><?php } ?>
      </div>
 
      <p id="footer"><?php print $footer_message ?></p>
    </div>
    <?php print $closure ?>
  </body>
</html>

node.tpl.php

  <div class="node<?php if ($sticky) { print " sticky"; } ?>">
    <?php if ($picture) { print $picture; }?>
    <?php if ($page == 0) { ?><h1 class="title"><a href="/<?php print $node_url?>"><?php print $title?></a></h2><?php }; ?>
    <h2 class="submitted"><?php print $submitted?></h2>
    <div class="taxonomy"><?php print $terms?></div>
    <div class="content"><?php print $content?></div>
    <?php if ($links) { ?><span class="links">&raquo; <?php print $links?></span><?php }; ?>
  </div>

block.tpl.php

  <div class="sidebox">
    <div class="block block-<?php print $block->module; ?>" id="block-<?php print $block->module; ?>-<?php print $block->delta; ?>">
        <h1 class="title"><?php print $block->subject; ?></h1>
        <div class="content"><?php print $block->content; ?></div>
    </div>
    <p>&nbsp;</p>
  </div>

style.css

body {
  background:#fff url(back.gif) repeat-y top center;
  padding:0;
  margin:0;
  font-family:Verdana, Sans-serif;
  font-size:74%;
  text-align:center;
}

abbr {
  cursor:help;
}
/********************   LINK STYLES  *********/
a {
  color:#FC6289;
  font-size:1em;
  text-decoration:none;
}

#image {
  position:absolute;
  top:50px;
  left:0;
  width:160px;
  height:300px;
  background:url(about.gif) no-repeat;
}

a:hover {
  color:#41B4F2;
  text-decoration:underline;
}

#toplinks a {
  margin-right:6px;
}

span a {
  color:#429EDB;
  margin-left:6px;
}

span a:hover {
  color:#FC6289;
}
/****************   HEADER STYLES  ************/
h1 {
  color:#FF3366;
  font-family:tahoma, verdana, sans-serif;
  font-weight:normal;
  padding-left:10px;
  font-size:2.1em;
}

#header h1 {
  color:#333;
}

#sidebar h1 {
  font-size:1.4em;
  margin:0 0 0 5px;
  padding-top:5px;
  width:160px;
  color:#333;
}

#leftcolumn h1 {
  padding-top:20px;
}

h2 {
  color:#999;
  padding-left:10px;
  font-size:0.9em;
  font-weight:normal;
  /* #margin-top:-18px; */
  text-transform:uppercase;
}

h2 a {
  text-transform:none;
}
/********************    PARAGRAPH STYLES    **********/
p {
  font-size:1em;
  color:#222;
  margin-left:10px;
  margin-top:-1px;
  line-height:1.3em;
  text-indent:2em;
}

#sidebar p {
  background:#E9F1F5 url(sidebottom.gif) no-repeat bottom right;
  padding:4px;
  text-indent:1em;
}
/*********************     LIST STYLES    *************/
#sidebar ul {
  list-style:none;
  margin-bottom:0;
  padding-top:0;
}

#sidebar li {
  list-style-image:url(bullet.gif);
}
/**********************      IMAGE STYLES     ************/
#header img {
  margin-left:10px;
  margin-top:-10px;
  padding:3px;
  margin-bottom:0;
  border:1px solid #ccc;
}
/********************    INDEPENDANT DIV IDS AND CLASSES   *******/
/***********************     MAIN CONTAINER  *******************/
#container {
  width:690px;
  margin:0 auto;
  padding-top:0 !important;
  padding-top:20px;
  text-align:left;
  position:relative;
}
/*************************     TOP RIGHT HAND LINKS   *********/
#toplinks {
  position:absolute;
  top:12px;
  right:30px;
}
/*************************    LEFT COLUMN  ************/
#leftcolumn {
  float:left;
  width:470px;
}
/*********************      RIGHT SIDEBAR COLUMN   ********/
#sidebar {
  float:right;
  width:200px;
  margin:10px 10px 0 0;
}
/************************   FOOTER     ***********/
#footer {
  clear:both;
  margin-left:0;
  width:677px;
  text-align:center;
  border-top:1px solid #ccc;
  color:#888;
}
/**********************      LINKS BELOW EACH POST    ***********/
span {
  float:right;
  margin-right:30px;
}
/***********************      RIGHT HAND SIDE CONTENT BOXES    *******/
.sidebox {
  width:185px;
  background:#E9F1F5 url(sidetop.gif) no-repeat top left;
  margin-bottom:15px;
}

/* Drupal specific */
.site-name .logo {
  border: 0 !important;
}
.block .content {
  padding: 0px 10px 0px 18px;
}
.taxonomy {
  padding-left:10px;
}
.tabs {
  margin-bottom: 25px;
}
.breadcrumb {
  margin-left: 10px;
  margin-bottom: -21px;
}
.submitted {
  margin-top: -20px;
}
.slogan {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 50px;
  left: 30px;
  font-size: 1.8em;
  color: white;
}
#search {
  padding-top:20px;
}
.links a {
  background: url(bubble.gif) no-repeat;
  padding-left: 20px;
}
.read-more {
  background: url(post.gif) no-repeat !important;
  padding-left: 20px;
}

‹ Perl-Script zum Erzeugen einer statischen Kopie einer Drupal-Website nach oben Prozentbalken bei Views (Balkendiagramm) ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke – dieses Kapitel war hilfreich

Eingetragen von beno (nicht überprüft) (0)
am 19.03.2006 - 21:33 Uhr

Dieses Kapitel hat mir beim Einstieg in das Thema Theme-Entwicklung sehr geholfen. Deshalb Dank für die hervorragende Arbeit.

Ein Hinweis auf die Voraussetzungen wäre schön!

Voraussetzungen
In Versionen vor 4.7 muß PHPTemplate installiert sein.
  • Anmelden oder Registrieren um Kommentare zu schreiben

Freut mich, daß das

Eingetragen von sanduhrs (1285)
am 23.03.2006 - 11:24 Uhr

Freut mich, daß das Tutorial geholfen hat und danke für den Hinweis auf die Voraussetzungen, werde das demnächst ergänzen.
vg

  • Anmelden oder Registrieren um Kommentare zu schreiben

Schaut DrupalDojo ;)

Eingetragen von niebegeg.net (111)
am 05.01.2008 - 23:09 Uhr

Von großer Hilfe zu dem Thema ist auch eine DrupalDojo-Session mit Matt Westgate: http://www.drupaldojo.com/lesson/theming-like-a-pro
Wie er da in 20min ein Drupal Theme hinzaubert, ist schon beeindruckend. Ich habe es ihm dann nachgetan und in 3h ~80% unseres vorhandene Website-Designs nach Drupal konvertiert.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Schwer ist es nicht, aber

Eingetragen von Tobias Bähr (4019)
am 06.01.2008 - 06:02 Uhr

Schwer ist es nicht, aber wenn du die alten Browser berücksichtigen willst schon!Aber ich lass mir trotzdem mehr zeit :D !

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 23 Stunden 4 Minuten
  • Hey danke
    vor 1 Tag 17 Stunden
  • Update: jetzt gibt's ein
    vor 2 Tagen 11 Stunden
  • Hallo, im Prinzip habe ich
    vor 6 Tagen 21 Stunden
  • Da scheint die Terminologie
    vor 1 Woche 39 Minuten
  • Kannst doch auch alles direkt
    vor 1 Woche 4 Tagen
  • In der entsprechenden View
    vor 1 Woche 4 Tagen
  • Dazu müsstest Du vermutlich
    vor 1 Woche 4 Tagen
  • gelöst
    vor 4 Wochen 20 Stunden
  • Ja natürlich. Dass ist etwas,
    vor 4 Wochen 1 Tag

Statistik

Beiträge im Forum: 250233
Registrierte User: 20449

Neue User:

  • Mroppoofpaync
  • 4aficiona2
  • AppBuilder

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 28 Gäste online.

DrupalCenter durchsuchen:

Benutzerhandbuch

  • FAQ - Häufig gestellte Fragen.
  • Links & Downloads
  • Über Drupalcenter.de und das deutschsprachige Benutzerhandbuch
  • Über Drupal
  • Einsteiger
  • Fortgeschrittene
    • Best Practice - Drupal Sites - Guidelines
    • Die beliebtesten Themes und Module
    • Tutorials & How To's - Tipps & Tricks
      • Kurztipps - Dinge die Stunden sparen können.
      • Notfallpläne - Tipps die Deine Drupalinstallation retten können
      • Anleitung zur Erstellung eines einfachen Kontaktformulars
      • Arbeiten mit dem Drupal Taxonomie-System [beinhaltet veraltete Inhalte]
      • Bearbeiten-Tab zu jeden Block hinzufügen
      • Block View mit Argument
      • Das Tagebuch einer Site
      • Drupal 6 - Automatisch unterschiedliche Bildgröße bei Teaser und Artikel
      • Drupal 6 - Eigene CSS Datei in ein Theme integrieren
      • Drupal 6 - Einfache Bildergalerie mit Image und Lightbox2
      • Drupal 6 - Einrichten eines Kalenders
      • Drupal 6 - Google Adsense ohne Zusatzmodul einbinden
      • Drupal 6 - Hauptnavigation mit DropDown Effekt ab Ebene Zwei
      • Drupal 6 - ImageMagick mit XAMPP Lite nutzen
      • Drupal 6 - Imagefield mit Imagecache und Colorbox
      • Drupal 6 - Installation FCK Editor
      • Drupal 6 - Installieren der WYSIWYG API inkl. Editoren
      • Drupal 7: mehrere Bilder in Node: 1 Bild in Anrisstext
      • Drupal Code Highlighting in Redmine Projektarchiv (CodeRay)
      • Drupal Theming: JavaScript einhängen in Abhängigkeit von Page-Variablen
      • Drush - Das Schweizermesser für Drupal auf Kommandozeile
      • Einfaches und erfolgreiches Patchen unter Windows
      • Eingabeformat & Inputfilter
      • Einrichten eines einfachen, statischen Menüsystems
      • Erstellen von Patches
      • Gallery mit CCK und Views erstellen (Drupal 5)
      • Header image Modul einrichten
      • Inhaltsübersicht für einen User mit einem View erstellen
      • Javascript und CSS-Dateien einbinden
      • Kontaktformular mit Jquery aufwerten
      • Leitfaden zur Erstellung von Suchmaschinenoptimierten Drupal-Sites
      • Mac OSX - Backupskript für Websites auf MAMP
      • Module updaten via Shell auf Windows
      • Module übersetzen
      • Perl-Script zum Erzeugen einer statischen Kopie einer Drupal-Website
      • Portierung eine Themes von openwebdesign.org
      • Prozentbalken bei Views (Balkendiagramm)
      • Themen eines Node-Formulars
      • Titel mit Stil
      • Umkreissuche mit Location- und Views-Modul
      • Usergalerie mit ImageCache, CCK, Views + Thickbox
      • Userprofil mit Usernodes erstellen
      • Validierung von Usereingaben bei Nodes
      • Variation vom Showroom auf drupalcenter.de
      • View mit Eingabeformular für neue Beiträge
      • WebSVN mit Drupal Code Highlighting
      • Zusätzliche Submit-Schaltfläche in Node-Formularen
      • i18n Language Switcher Block, die Links mit den Flaggen themen
      • ui.slider als Ersatz für den Ajax-Pager von Views
      • Zugriffsbeschränkungen für Nodes - eine Übersicht der Möglichkeiten
  • Entwicklung von Modulen und Themes
  • Drupalcenters Community
  • Drupal 7 Video-Trainings (Deutsch)
  • Drupal-Testumgebung erstellen
  • Drupal 6 Module
  • Drupal 7 Module
  • Drupal Screencasts auf deutsch
  • Archiv

Das Copyright des deutschsprachigen Drupal-Benutzerhandbuches unterliegt den jeweiligen Autoren. Übersetzungen des englischsprachigen Drupal-Benutzerhandbuches unterliegen der Creative Commons License, Attribution-ShareAlike 2.0.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association