[gelöst]Bild im Header einbinden mit Garland
am 04.07.2009 - 20:31 Uhr in
Hi.
Ich habe eine Website mit Drupal erstellt und Garland als Theme gewählt.
Eine Kopie davon unter /sites/all/themes/meintheme abgelegt.
In /meintheme habe ich die page.tpl.php geändert.
So:
<?php
// $Id: page.tpl.php,v 1.18.2.1 2009/04/30 00:13:31 goba Exp $
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php print $language->language ?>" lang="<?php print $language->language ?>" dir="<?php print $language->dir ?>">
<head>
<?php print $head ?>
<title><?php print $head_title ?></title>
<?php print $styles ?>
<?php print $scripts ?>
<!--[if lt IE 7]>
<?php print phptemplate_get_ie_styles(); ?>
<![endif]-->
</head>
<body<?php print phptemplate_body_class($left, $right); ?>>
<!-- Layout -->
<div id="header-region" class="clear-block"><?php print $header; ?></div>
<div id="wrapper">
<div id="container" class="clear-block">
<div id="header">
/*(+++++++++ diese Zeile hier eingefügt +++++++++)*/
<img align="right" src="header.gif" width="478" height="71" >
<div id="logo-floater">
<?php
// Prepare header
$site_fields = array();
if ($site_name) {
$site_fields[] = check_plain($site_name);
}
if ($site_slogan) {
$site_fields[] = check_plain($site_slogan);
}
$site_title = implode(' ', $site_fields);
if ($site_fields) {
$site_fields[0] = '<span>'. $site_fields[0] .'</span>';
}
$site_html = implode(' ', $site_fields);
if ($logo || $site_title) {
print '<h1><a href="'. check_url($front_page) .'" title="'. $site_title .'">';
if ($logo) {
print '<img src="'. check_url($logo) .'" alt="'. $site_title .'" id="logo" />';
}
print $site_html .'</a></h1>';
}
?>
</div>sonst alles so belassen wie es Standard ist.
Das Problem ist nun, dass das genannte Logo zwar auf der Startseite und in der Bildergallerie angezeigt wird. Aber nun habe ich 3 neue Inhalte vom Typ Seite angelegt und das Bild erscheint nicht im Header.
Im IE 8 wird nur das rote "X" angezeigt, wo eigentlich das Bild sein müsste. Wenn ich mir den Link unter Eigenschaften des Bildes ansehe dann erhalte ich: http://meinedomain.de/node/header.gif
In Firefox sehe ich an der Stelle garnichts.
Hat jemand eine Idee was ich ändern könnte? Vll. war es keine gute Idee, den Link in die page.tpl.php einzutragen, aber ich musste irgendwie eine Lösung finden und das Theme möchte ich nicht wechseln.
Gruss
Ali
PS. noch eine Dummy-Frage - an welcher Stelle platziere ich meinen Eintrag für ein Hintergrundbild in dem Garland Theme, welches in allen Dokumenten erscheinen soll -
also im Hauptbereich (in der node.tpl.php?)
Das Garland Theme ist mir irgenwie nicht verständlich, aber ich möchte es wenns geht verwenden.
- Anmelden oder Registrieren um Kommentare zu schreiben

Lösche alles von Dir,
am 04.07.2009 - 22:40 Uhr
Lösche alles von Dir, kopiere nochmals das Garland und ändere dein Layout via CSS(Logo, Header-Bild etc) in style.css.
----------------------------------------
http://tobiasbaehr.de/
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen
Ein Forum ist kein Ersatz für das www (Google.de).
Bilder einfügen
am 05.07.2009 - 00:07 Uhr
Für den Fall, dass Du es doch mit dem HTML-Tag
<img />lösen willst, musst Du den Pfad zum Bild ein wenig anpassen.Momentan ist die Pfadangabe immer relativ zur aktuellen URL. Soll heissen, dass der Dateiname des Bilder an die gerade aufgerufene URL angehängt wird. Das funktioniert natürlich nur in den seltesten Fällen.
Falls das entsprechende Bild direkt in Deinem Theme-Verzeichnis liegt, kannst Du es folgendermassen einbinden:
<img src="<?php print base_path() . path_to_theme();?>/header.gif" />Somit bekommt das Bild immer den richtigen Pfad und es wird auf allen Seiten aufgerufen.
hth,
Stefan
--
sei nett zu Deinem Themer
Headerbild
am 05.07.2009 - 08:35 Uhr
Hallo zusammen,
vielleicht ist das nicht die sauberste Lösung, aber bewahrt vor vielen Problemen und Fehlern. Oft geht das nämlich gar nicht, dass man ein anderes Logo auswählt (ob das heute besser ist, weiss ich nicht).
Ich würde es so machen:
1. schauen welches die Logo Datei ist und diese umbenennnen.
2. Dein Logo mit dem Namen des ersten Logos benennen und in Theme und den richtigen Ordner stellen.
3. ev. CSS anpassen wegen der Logogrösse und Position.
4. ev. Cache leeren - fertig.
Gruss
minou
Danke euch allen für die
am 07.07.2009 - 10:41 Uhr
Danke euch allen für die Tipps!
Die Lösung von Stefan hat mir sehr geholfen.
Alles neu gestalten per .css ist mir zu aufwendig, weil im Garland Theme oben dieser verschachtelte Bereich ist...
Minou´s Lösung entfällt wohl, weil ich oben schon ein Logi eingebunden habe. Dieses Bild ist zusätzlich im header.
Hier meine Lösung:
<div id="header">
<img align="right" src="<?php print base_path().path_to_theme();?>/images/header.gif" width="478" height="71" /> </div>
falls mal wieder jemand danach sucht :D
Es funzt prima - Danke!!!