Mit Templates kann ich die Seiten unterschiedlich gestalten, aber wie sieht es mit dem Header aus. Kann man mehrere Header erstellen und diese durch getheader1, getheader2 tec. aufrufen?
Mehrere Header möglich?
-
-
- Gerade eben
- Anzeige
Hallo!
Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.
- ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
- ✔️ Deutsche Server & DSGVO-konform
- ✔️ Persönlicher Support (kein 0815-Ticket-System)
-
Also wenn du darauf anspielst die Grafik im Header zu ändern, dafür gibts ein Random Plugin ;)
-
Gerade das möchte ich nicht. Ich möchte unterschiedliche Bilder, aber genau zugewiesen zu einem Thema. Dies möchte ich durch Templates steuern. Im TEmplate steht "get_header();".
Beispiel: Thema "Musik" - da soll eine Gitarre im HEader erscheinen.
Aber diesesy Random-Plugin hätte ich auch gerne. Wo gibt es dies?
-
Ja sowas kannst du machen. Pack z.B. deine header_special.php einfach in den Template Ordner wo du nen anderen Header haben willst.
Ändere nun in dein Template - wo du nen anderen Header haben willst - einfach folgende Sache ...
z.B. in
Damit das ganze aber dann noch aufgerufen werden kann musst du noch die datei template-functions-general.php im WP_INCLUDES Ordner anpassen.
Folgende Funktion kopierst du einmal und bastelst du auf deine Wünsche hin.
Codefunction get_header() { if ( file_exists( TEMPLATEPATH . '/header.php') ) load_template( TEMPLATEPATH . '/header.php'); else load_template( ABSPATH . 'wp-content/themes/default/header.php'); }Um konträr mit der header_special von oben zu gehen schaut sie dann in etwa so aus.
Codefunction get_header_special() { if ( file_exists( TEMPLATEPATH . '/header_special.php') ) load_template( TEMPLATEPATH . '/header_special.php; else load_template( ABSPATH . 'wp-content/themes/default/header.php'); }That´s it viel Spass Steve damit :)
-
Es gibt auch noch die Möglichkeit, über die Funktion is_page einen header für eine bestimmte Seite einzubauen.
(das ganze wäre dann mit der Methode von hijacker666 kombinierbarIch hoffe jmd kann damit was anfangen, die Beschreibung der is_ funktionen lässt sihc im offizellen wiki nachlesen.
-
danke pichfl!
super, das versteh sogar ich :) als php-newbie...
wenn ich da nur an roger johansons css-methode denke (die zwar im link zum aktiven navi-punkt stylen verwendet wird aber auch für hintergrundbilder funzelt) wird klar das php platz spart! -
stimmt :D
ich verwende die technik für einserver.de/luminated und bin froh wenn ich jmd. damit geholfen habe ^^
-
Funktion get_header_special mit Parameterübergabe
Servus zusammen,
man kann das auch mit ner Parameterübergabe lösen, sodass für die entsprechenden Seiten nur die jeweilige header-Datei anzugeben ist.Also folgende Funktion in die Datei template-functions-general.php schreiben:
function get_header_special($site) {
if ( file_exists( TEMPLATEPATH ."/". $site) )
load_template( TEMPLATEPATH ."/". $site);
else
load_template( ABSPATH . 'wp-content/themes/default/header.php');
}Aufruf aus dem entsprechenden Template für eine seite dann so:
get_header_special("header_special.php");
Achtung: die Datei header_special.php muss dann im jeweiligen template ordner liegen!
Gruß,
Matthias -
das ist evtl. auch was:
-
Ich weiß es ist ein alter Thread.
Aber ich hab genau das Problem gerade.Beim Öffnen einer neuen Seite soll ein anderer HEader erscheinen
bzw. neue Buttons. Irgendwie funktionieren die Tipps nicht mehr,
da alte WP Versionen (2006...).Wie geht man da aktuell vor ?
Danke ! -
Weiß da echt niemand rat ? Ich mein ich will doch nur bei bestimmten Pages nen neuen Header angezeigt bekommen. Die alten Lösungen hier würd ich sicher irgendwie hinkriegen. Wie geht das aktuell ?
-
ich komme aus der Java, JSP und Struts Ecke und frage mich, on man nicht in der header.php einfach eine Abfrage einbauen kann? sowas wie:
Leider kenne ich mich mit PHP überhaupt nicht aus (wie man an der obigen Syntax sicherlich unschwer erkennen kann ;)) - hat jemand einen Tip wie das in richtigem PHP aussehen könnte und ob mein Gedanke überhaupt richtig ist? -
So z.B.:
PHP
Alles anzeigen<div id="headerbild"> <?php if (is_home()) { ?> <img src="<?php bloginfo('template_url'); ?>/bilder/bild1.jpg" alt="" /> <?php } elseif (is_page('about')) { ?> <img src="<?php bloginfo('template_url'); ?>/bilder/bild2.jpg" alt="" /> <?php } elseif (is_archive) { ?> <img src="<?php bloginfo('template_url'); ?>/bilder/bild2.jpg" alt="" /> <?php } else { ?> <img src="<?php bloginfo('template_url'); ?>/bilder/bild4.jpg" alt="" /> <?php } ?> </div> -
Ok vllt. hab ich mich ungünstig ausgedrückt.
Aber die Sache mit dem Headerbild ist auch gut.Lieg ich falsch wenn ich denke das header.php alles obere steuert bzw.
das was ich brauche: Bild, Buttons ?Weil ich brauch vorallem neue & andere Buttons im "Header" für die speziellen Pages. Das Header-Bild kann aktuell gleichbleiben. In Zukunft sicher auch geändert, deshalb auf jedenfall danke.
Hoffe ihr könnt mir bei dem Problem auch noch helfen.
Wäre super ! -
hallo,
leider funktioniert der code von Woodstock bei meinem Theme nicht.
Benutze von Web-Funk das theme YUMA.Hier wird das Headerbild über die functions.php aufgerufen.
PHP
Alles anzeigen/* Function Change Header */ define('HEADER_TEXTCOLOR', 'f0ecdf'); define('HEADER_IMAGE', '%s/images/header.jpg'); // %s is theme dir url define('HEADER_IMAGE_WIDTH', 860); define('HEADER_IMAGE_HEIGHT', 200); function theme_admin_header_style() { ?> <style type="text/css"> #headimg {Wie muss ich hier den Code eingeben, dass ich für die verschiedenen Kategorien ein anderes Headerbild habe...?
Die Seite Rund ums Rad - Die Infoseite rund um das Thema Fahrrad
Merci
Lefdi
-
ich würde mal sagen so ähnlich:
prinzipiell finde ich aber die if is_bla variante um einiges einfacher und besser. von unterschiedlichen header_bla.php würde ich absehen. wenn dann eine header.php mit <head>meta-infos, etc.</head><body> und keinem inhalt. wenn du die mit get_header() rufst, dann erhältst du nur alle suchmaschinen, etc. relevanten daten, aber keinen visuellen inhalt. dann ist halt alles grafische in der index.php ; vielleicht könntest du das menü dann ja auslagern, wenn dir die index sonst du dick wirst (s. php include)-.
bg.
-
hallo
das mit der if-variante müsste ja eigentlich auch gehen.
nur wird bei mir in der functions.php nicht die [COLOR=#000000]<div id="headerbild"> aufgerufen, sondern der aufruf erfolgt wohl über[/COLOR]
Theoretisch könnte ich ja mal versuchen den Header auf über <div id="headerbild"> aufzurufen und in der style.css entsprechende Anweisungen hinterlegen.
Müsste ich mal testen ob das geht.
Lefdi
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!