content einer Seite includen

  • Hallo,

    ich möchte in meinem Blog auf der Startseite ein News-Feld einrichten, dass sich wie jede andere Seite auch mit Inhalt füttern lässt. Bisher habe ich das über folgenden Eintrag in der header.php realisiert:

    <?php // Abfrage ob News angezeigt werden Beginn
    if(is_page('Home')) {
    echo '<div id="newsfeld">';
    include(get_permalink(44));
    echo '</div>';
    } // Abfrage ob News angezeigt werden Ende
    ?>

    Das funktioniert auch.

    Probleme gibt es dann, wenn ich einen Verzeichnisschutz anlege, mit der
    ich das root-Verzeichnis der Hompage schütze, da sich die Seite ja noch im Aufbau befindet.

    Im Newsfeld wird nun folgende Fehlermeldung angezeigt:

    Warning: main(http:// XXX ) [function.main]: failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required in XXX on line 90

    Warning: main() [function.include]: Failed opening XXX for inclusion (include_path=' XXX ') in XXX on line 90

    Warum will er da noch einmal eine Authorization haben? Wie kann ich dieses Problem beheben?

    Oder gibt es eine bessere Methode, das Newsfeld zu realisieren?

    Vielleicht kann es ja jemand einem php-Anfänger erklären...

    Vielen Dank schon mal!!

    • 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

  • ein teil ist mir klar

    okay, warum er die Fehlermeldung ausgibt, habe ich herausgefunden. Dieses liegt daran, das die Pfadangabe des includes eine http:// - angabe ist, der server also wieder über das web gehen muss und dann im Verzeichnisschutz hängen bleibt.

    Nun stellt sich nur noch die Frage, wie man eine bestimmte Wordpressseite (bzw den Content einer bestimmten Seite) auf der Startseite in einem div anzeigen lässt. Wie lasse ich also den Inhalt der Seite mit der id=44 in dem div erscheinen?

  • okay, warum er die Fehlermeldung ausgibt, habe ich herausgefunden. Dieses liegt daran, das die Pfadangabe des includes eine http:// - angabe ist, der server also wieder über das web gehen muss und dann im Verzeichnisschutz hängen bleibt.

    Nun stellt sich nur noch die Frage, wie man eine bestimmte Wordpressseite (bzw den Content einer bestimmten Seite) auf der Startseite in einem div anzeigen lässt. Wie lasse ich also den Inhalt der Seite mit der id=44 in dem div erscheinen?

    statische Seite oder Beitrag?

    statische seite

    ob du da ein div eine Liste oder sonstwas drumherum gibst, ob Du da auch den Titel anzeigen willst, das kannst du dann auch noch entscheiden, aber so gehts

    lg

  • Das sieht gut aus

    Also schonmal vielen Dank. Es scheint zu funktionieren. Allerdings stellt sich mir eine Frage:
    Wenn ich Deinen Code einbaue, zeigt er mir folgende Fehlermeldung:

    Parse error: syntax error, unexpected T_ENDIF in XXX header.php on line 99

    Da habe ich dann das endif; einfach herausgenommen und nun funktioniert es. Mein Code an der Stelle sieht nun so aus:

    <?php // Abfrage ob News angezeigt werden Beginn
    if(is_page('Home')) {
    echo '<div id="newsfeld">';


    global $more;
    $more = 0;
    $my_query = new WP_Query('page_id=44');
    while ($my_query->have_posts()) : $my_query->the_post();
    $do_not_duplicate = $post->ID;
    the_content();
    endwhile;

    echo '</div>';
    } // Abfrage ob News angezeigt werden Ende
    ?>

    Da ich ja mit php (noch) nicht so firm bin, würde ich gerne wissen, warum er sich über das endif beschwert.

    Wie gesagt: Vielen Dank auch!!!

Jetzt mitmachen!

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