Hallo!
Ist es möglich einen PHP Code vor dem eigentlichen Theme zu laden?
Beispielsweise erstelle ich eine PHP Seite die in der Mitte ein Bild anzeigt. Nun möchte ich gerne das dieses vor dem Thema am Kopf der Seite geladen wird und wenn man runterscrollt erscheint das eigentliche Blog. Unter dem Bild käme natürlich ein "weiter" Button der ebenso durch einen HTML Anker direkt runter zum Blog springt.
Es handelt sich also nicht um eine Vorschaltseite, sondern einfach um ein Bild das über dem Blog angezeigt wird. Dort will ich aktuelle Projekte wenn vorhanden zeigen.
Wenn ich nun selbst probiere einfach eine PHP Seite zu erstellen, wird diese zwar wenn separat aufgerufen auch angezeigt, aber wenn ich die bei jedem beliebigem Theme einfach in der index.php laden lasse, dann erscheinen Fehlermedlungen oder das Theme wird zerrissen.
Die Idee war:
> bild.php
header.php
body.php
footer.php
... usw.
Danke für eure Tipps im Voraus,
Gruß!
PHP Code oben vor Theme laden?
-
-
- 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)
-
Die bild.php muss in die header.php, da in der header.php (in der Regel) der HTML-<head>-Bereich definiert ist. Dort kannst du nach <body> deine bild.php includen.
-
Danke das werde ich gleich ausprobieren.
Ich habe aber noch eine Frage. Hoffe es ist ok das ich dafür keinen neuen Beitrag öffne!?
Kann man je nach Kategorie ein eigenes stylesheet laden. Also so etwa "wenn Kategorie X dann Stylsheet A oder wenn Kategorie Y dann B, andernfalls Stylsheet C"?
Gruß! -
Wenns nur um das Stylesheet geht, dann benötigst du is_category() (für die Kategoriearchive) bzw. in_category() für Artikel in diesen Kategorien.
Conditional Tags « WordPress Codex
Template Tags/in category « WordPress Codex(Achtung: is_category() und in_category() sind 2 verschiedene Dinge, auch wenn sie auf den 1. Blick fast gleich aussehen! ;-))
-
Es geht im Grunde darum das ich bei zwei Kategorien unterschiedliche Hintergrundfarben und Headerlogos verwenden möchte.
Achso übrigens zu meiner Ausgangsfrage: kann man das auf einmal aufrufen begrenzen oder wird die bild.php dann immer angezeigt? -
Es geht im Grunde darum das ich bei zwei Kategorien unterschiedliche Hintergrundfarben und Headerlogos verwenden möchte.
Gut. bei größeren Änderungen hätte ich dich sonst an die Templates verwiesen. ;-)
ZitatAchso übrigens zu meiner Ausgangsfrage: kann man das auf einmal aufrufen begrenzen oder wird die bild.php dann immer angezeigt?
Inwiefern 1x aufrufen? 1x pro Request? 1x pro Besucher? 1x am Tag? -
Verschiedene Templates wären vermutlich auch nicht schlecht, nur denke ich wird das dadurch viel zu komplex oder? Ich verzweifle momentan ja schon daran ne simple if else Sache einzubinden...
Gute Frage!
Ich denke so einfach wie möglich hieße ja pro Aufruf. Weiß zwar nicht wie man so etwas einbinden kann, aber pro Besucher oder pro Tag stelle ich mir schwerer vor!? -
Verschiedene Templates wären vermutlich auch nicht schlecht, nur denke ich wird das dadurch viel zu komplex oder?
Je nachdem was du vor hast ist das eine oder das andere besser geeignet.
ZitatIch verzweifle momentan ja schon daran ne simple if else Sache einzubinden...
Dann bleibt erstmal dabei. ;-)
ZitatIch denke so einfach wie möglich hieße ja pro Aufruf. Weiß zwar nicht wie man so etwas einbinden kann, aber pro Besucher oder pro Tag stelle ich mir schwerer vor!?
1x pro Aufruf, dann wird halt einfach nur die bild.php genau 1x eingebunden. 1x pro Besucher/Tag lässt sich relativ einfach per Cookie lösen. -
Und wie löst man so etwas mittels Cookie?
-
Cookie setzen:
PHP: setcookie - Manual
(Beachte: Cookies müssen gesetzt werden, bevor ne Ausgabe an den Browser gemacht wird, d.h. vor der 1. Zeile HTML-Code in der header.php!)In Cookies abgelegte Informationen findest du in $_COOKIE.
-
Also wenn ich das richtig verstanden habe, könnte ich in der header.php vor dem <head> mittels php einen Cookie erstellen lassen.
Das müsste ja so gehen:
[COLOR=#000000][COLOR=red][COLOR=#0000bb]<?php $value [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#dd0000]'meincookie'[/COLOR][/COLOR][COLOR=#007700][COLOR=red];[/COLOR]
[/COLOR][COLOR=red][COLOR=#0000bb]setcookie[/COLOR][COLOR=#007700]([/COLOR][COLOR=#dd0000]"meincookie"[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000bb]$value[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000bb]time[/COLOR][COLOR=#007700]()+[/COLOR][COLOR=#0000bb]3600[/COLOR][COLOR=#007700], [/COLOR][COLOR=#dd0000]"/"[/COLOR][COLOR=#007700], [/COLOR][COLOR=#dd0000]".meinedomain.de"[/COLOR][/COLOR][COLOR=red][COLOR=#007700]);[/COLOR]
[COLOR=#0000bb]?>[/COLOR][/COLOR] [/COLOR]
[COLOR=#000000]Damit sollte dieser ja für alle Seiten der Domain gültig sein und eine Stunde gelten.[/COLOR]
[COLOR=#000000]Auch die Überprüfung sollte ja so gehen:[/COLOR]
[COLOR=#000000][COLOR=#007700]if (isset([/COLOR][COLOR=#0000bb]$_COOKIE[/COLOR][COLOR=#007700][[/COLOR][COLOR=#dd0000]'meincookie'[/COLOR][COLOR=#007700]])) {... nur was dann?[/COLOR][/COLOR][COLOR=#000000][COLOR=#007700][COLOR=black]Wie gebe ich nun an dieser Stelle aus ob bild.php angezeigt werden soll oder nicht?[/COLOR]
[/COLOR][/COLOR] -
if (isset([/COLOR][COLOR=#0000bb]$_COOKIE[/COLOR][COLOR=#007700][[/COLOR][COLOR=#dd0000]'meincookie'[/COLOR][COLOR=#007700]])) {... nur was dann?[/COLOR][/COLOR]
Andersrum: Wenn dein Cookie NICHT gesetzt ist, dann include bild.php, sonst ... naja nix sonst. ;-) -
Und wo/wie setzte ich das hin?
Langsam wird mir das zu hoch. Dafür das ich blutiger Anfänger bin, bin ich ja schon weit gekommen, aber langsam wirds zu viel.
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!