1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

PHP Code oben vor Theme laden?

Dieses Thema im Forum "Design" wurde erstellt von urban9, 25. September 2008.

  1. urban9

    urban9 Active Member

    Registriert seit:
    2. März 2008
    Beiträge:
    29
    Zustimmungen:
    0
    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ß!
     
  2. marX

    marX Well-Known Member
    Ehrenmitglied

    Registriert seit:
    5. Oktober 2006
    Beiträge:
    12.943
    Zustimmungen:
    0
    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.
     
  3. urban9

    urban9 Active Member

    Registriert seit:
    2. März 2008
    Beiträge:
    29
    Zustimmungen:
    0
    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ß!
     
  4. marX

    marX Well-Known Member
    Ehrenmitglied

    Registriert seit:
    5. Oktober 2006
    Beiträge:
    12.943
    Zustimmungen:
    0
  5. urban9

    urban9 Active Member

    Registriert seit:
    2. März 2008
    Beiträge:
    29
    Zustimmungen:
    0
    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?
     
  6. marX

    marX Well-Known Member
    Ehrenmitglied

    Registriert seit:
    5. Oktober 2006
    Beiträge:
    12.943
    Zustimmungen:
    0
    Gut. bei größeren Änderungen hätte ich dich sonst an die Templates verwiesen. ;)

    Inwiefern 1x aufrufen? 1x pro Request? 1x pro Besucher? 1x am Tag?
     
  7. urban9

    urban9 Active Member

    Registriert seit:
    2. März 2008
    Beiträge:
    29
    Zustimmungen:
    0
    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!?
     
  8. marX

    marX Well-Known Member
    Ehrenmitglied

    Registriert seit:
    5. Oktober 2006
    Beiträge:
    12.943
    Zustimmungen:
    0
    Je nachdem was du vor hast ist das eine oder das andere besser geeignet.

    Dann bleibt erstmal dabei. ;)

    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.
     
  9. urban9

    urban9 Active Member

    Registriert seit:
    2. März 2008
    Beiträge:
    29
    Zustimmungen:
    0
    Und wie löst man so etwas mittels Cookie?
     
  10. marX

    marX Well-Known Member
    Ehrenmitglied

    Registriert seit:
    5. Oktober 2006
    Beiträge:
    12.943
    Zustimmungen:
    0
    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.

    Mehr:
    PHP: Cookies - Manual
     
  11. urban9

    urban9 Active Member

    Registriert seit:
    2. März 2008
    Beiträge:
    29
    Zustimmungen:
    0
    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:

    <?php $value = 'meincookie';
    setcookie("meincookie", $value, time()+3600, "/", ".meinedomain.de");
    ?>


    Damit sollte dieser ja für alle Seiten der Domain gültig sein und eine Stunde gelten.

    Auch die Überprüfung sollte ja so gehen:

    if (isset($_COOKIE['meincookie'])) {... nur was dann?

    Wie gebe ich nun an dieser Stelle aus ob bild.php angezeigt werden soll oder nicht?

     
  12. marX

    marX Well-Known Member
    Ehrenmitglied

    Registriert seit:
    5. Oktober 2006
    Beiträge:
    12.943
    Zustimmungen:
    0
    Andersrum: Wenn dein Cookie NICHT gesetzt ist, dann include bild.php, sonst ... naja nix sonst. ;)
     
  13. urban9

    urban9 Active Member

    Registriert seit:
    2. März 2008
    Beiträge:
    29
    Zustimmungen:
    0
    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.
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden