Bilder im Header mit Seite wechseln - geht nicht

  • Ja ich habe schon in der Suchfunkttion nachgeschaut und auch schon einiges gebastelt - siehe unten - aber es funktioniert nicht.
    im css ist der Header und das Bild wie folgt angezeigt:
    /* begin Header */
    div.Header
    {
    margin: 0 auto;
    position: relative;
    z-index:0;
    width: 898px;
    height: 348px;
    }


    div.Header-jpeg
    {
    position: absolute;
    z-index:-1;
    top: 0;
    left: 0;
    width: 898px;
    height: 348px;
    background-image: url('images/Header.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    }
    /* end Header */

    in der header.php habe ich das dann so vor dem TITLE eingebaut:
    <style type="text/css"><!--
    <?php if (is_page('Über uns')) { ?>
    .Header .Header-jpeg {
    background-image: url(<?php bloginfo('stylesheet_directory'); ?>/images/header2.jpg) no-repeat;
    }
    <?php } elseif (is_page('Unser Service')) { ?>
    .Header .Header-jpeg {
    background-image: url(<?php bloginfo('stylesheet_directory'); ?>/images/header3.jpg) no-repeat;
    }
    <?php } ?>
    //--></style>

    Habe ich das div aus css falsch in die php eingebunden? Oder die Seiten ID falsch? "Über uns" ist page_id=2 z.B.

    Die bilder sind richtig benannt und im imgages Ordner des themes.
    Wäre toll wenn mal einer drauf schaut.
    Vielen Dank!

    • 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)

    Mehr erfahren

  • Versuch es mal so:

    Geht das auch nicht arbeite mal mit den ID´s der Seiten anstelle der Namen.

    Besser wäre es allerings das ganz anders zu lösen.

    Neue Klasse in der sytles.css anlegen.

    header-jpeg-1 und header-jpg-1 wo Du die Bilder gleich mit angibst jeweils. Dann per obiger Abfrage als Ergebniss $css = ".header .header-jpeg-1"; oder eben $css = ".header .header-jpeg-2"; ausgeben lassen und diese dann per <?php echo $css ?> an entsprechender Stelle ausgeben lassen, also zum Beispiel:

    PHP
    <?php 
    global $css;
    if (is_page('IDDERSEITE')) {
    $css = "header header-jpeg-1";
    } elseif (is_page('IDDERSEITE')) {
    $css = "header header-jpeg-2";
    } ?>
    <div class="<?php echo $css ?>">blablabla</div>
  • Danke Bambaataa!
    Habe jetzt Deine Ratschläge probiert, siehe unten, aber weder die ID noch die unterschiedlichen Pfadangaben haben geholfen?
    Ist es richtig, wie ich die id angegeben habe?
    Der Pfad muss doch von der header Datei zum Bild angegeben werden, oder?
    <?php if (is_page('id=2')) { ?>
    <style type="text/css">
    .Header .Header-jpeg {
    background-image: url(images/header2.jpg) no-repeat;
    </style>
    }
    <?php } elseif (is_page('id=14')) { ?>
    <style type="text/css">
    .Header .Header-jpeg {
    background-image: url(images/header3.jpg) no-repeat;
    </style>
    }
    <?php } ?>

    Dann muss ich wohl doch an Deine dritte Lösung trauen...
    Liebe Grüße

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!