Seite als Startseite und darunter die neusten Artikel... wie umsetzen?

  • Guten Tag zusammen,

    Zurzeit bin ich dabei, mein neues Layout fertig zustellen und es dann für Wordpress einzusetzen. Doch ein Problem habe ich dabei noch. Im Admin-Bereich des WP habe ich eine Seite als Startseite für das Blog ausgewählt. Ich möchte nun aber noch, dass die neusten drei oder fünf Artikel als Vorschau (also mit einer Beschränkten länge) auftauchen. Wie kann ich das machen?

    Vom Layout her ist es ja kein Problem, hab das da berücksichtigt. Nur wie ich das mit den PHP-Variablen für das WP machen soll, habe ich zurzeit keine Ahnung. Kann mir da jemand helfen?

    Lieben Gruß und vielen Dank
    Muckel

    • 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

  • In das template für die Startseite:

  • Guten Abend,

    mit der normalen index.php ersetzen oder dazufügen? Habe es unterhalb des normalen Inhaltes hinzugefügt, aber es klappt leider nicht. Habe ja mein bereich, in denen die neuen Artikel seien sollen. Doch selbst dieses

    HTML
    <div class="umgeben1"><div class="ol"><div class="or"><div class="ul"><div class="ur">
      <div class="inhalt">
    neuer Artikel
    </div>
    </div></div></div></div></div>

    wird nicht angezeigt obwohl ich es in meiner index.php habe:

    Genauso war es leider mit Deinem Code auch :(

    Es wäre wirklich sehr wichtig für uns dieses Problem zu lösen, da unsere Kategorien sonst keine beachtung finden würden. Es sollte an sich so sein, wie in dem statischen Layout: Stamm Ambronen im Deutschen Pfadfinderbund Hamburg

    Sprich unterhalb des normalen Content sollen die neusten 3 oder vier Artikel sein. (Muss das dort nur noch von der Gestaltung anders lösen - das mit den Scralleisten klappt noch nicht so, wie es sein sollte.)

    Gruß und vielen Dank
    Muckel

  • Der Code oben läuft. Beispiel hier: move - Mobilität bewahren, Verkehr sparen … in Wiesloch und Dielheim Kampagnen und Aktionen auf der Seite ganz unten.

    Ich habe den Code in mehrere Dateien (je nach zulesender Cat) gespeichert und incude die Dateien in eine if/else Abfrage. Die Abfrage habe ich in der index.php vor den footer, aber innerhalb des Seiten-div gesetzt


    PHP
    <?php 
             if(get_the_title()=='Projektgruppen') include('projekte.php');
             elseif(get_the_title()=='Kampagnen und Aktionen') include('kampagne.php');
             ?>
  • Guten Tag,

    kann es sein, dass Du mich falsch verstanden hast? Ich möchte ja keine Datei einbinden. Es gibt im Admin-Menue unter dem Punkt Einstellungen die Möglichkeit, dass man eine Seite als Startseite auswählen kann: Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Das möchte ich so auch haben - doch unterhalb dieser Startseite sollen halt die neusten Artikel angezeigt werden.

    Gruß Muckel

  • genauso habe ich dich verstanden. Ob es nun die Startseite oder eine andere ist, das ist egal, du bestimmst dann halt, dass diese Seite die Startseite sein soll..
    in dem o.gen. code gibst du den Titel deiner Startseite ein.
    Und die Kategorie und die Anzahl der Artikel die du anzeigen willst.

    Der Code zeigt dann die gewünschten Artikel an. Dann musst du den Code (Datei) in deine Indexphp einbinden, damit die Artikel unter dem Content deiner Startseite angezeigt wird.

  • Ich verstehe dein Quellcode nicht so ganz. Denn Du verweist ja auf die projekte.php und auf die kampagne.php. Was ich hingegen möchte ist, dass einfach die Artikel des Blogs, die ja in der DB sind unterhalb der "statischen Blog Seite" erscheinen.

    Habe deinen Code direkt über den footer in meine index.php eingebunden. Doch es geschieht nichts, wie man sehen kann. Die index.php schaut so aus:

    Die index.php des Themes bleibt weiß.

    Gruß und vielen Dank
    Muckel

  • Guten Tag,

    ja das ist mir ja bekannt. Wollte damit nur ausdrücken / zeigen, dass dein Code anscheinend nicht funktioniert. Denn mehr als den in die index.php des themes zu kopieren kann ich ja nicht machen - habe jedenfalls nichts gesehen, was ich da anpassen sollte/könnte.

    Gruß und Danke
    Muckel

  • Hey Muckel,

    wenn Du eine andere Seite (so wie ich das oben gelesen habe), als Startseite definiere, dann "ersetzt" Wordpress die index.php mit der von Dir festgelegten. D.h.: Den gesamten Code, den Dir bgeissler geschrieben hat in eine Datei whatever.php schreiben, dann speichern und in Dein Theme-Verzeichnis unter wp-content/DeinTheme/ hochladen. Die Seite, die Du als Startseite definiert hast dann im Adminbereich aufrufen und ihr als Template whatever.php zuweisen. Und: Oh Wunder! Alles was Dir der bgeissler geschrieben erweist sich als richtig und funktioniert (hoffentlich :-D )

  • Guten Abend,

    ich habe eine Datei Namend aktuelles.php mit dem Code von bgeissler erstellt und in das Theme Verzeichnis mit hochgeladen. Doch wie man auf dem Bild sehen kann, kann ich es leider nicht als "Vorlage" auswählen: Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Auch mit diesem Code in der index:

    PHP
    <?php 
             if(get_the_title()=='Startseite') include('aktuelles.php');
             elseif(get_the_title()=='Willkommen auf meiner Seite!') include('aktuelles.php');
             ?>

    und der hochgeladenen aktuelles.php ändert sich das nicht.

    Zu sehen gibt es das unter jurtenrunde.de - Muckels Tagebuch. Normalerweise hat man im BLog ja von Haus aus die neusten Artikel stehen, sofern keine Startseite gewählt ist. Dieses bräuchte ich ja nur unterhalb der im Admin-Menue bestimmten Seite.

    Gruß Muckel

  • Schau mal ins Lexikon Seitentemplate (<- klick) bzw. dann in die Doku.

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Moin,

    das alles funktioniert nun auch - der Inhalt der wahtever.php wird nun angezeigt - es hatte nur ein

    Code
    Template Name: aktuelles

    gefehlt. Das Problem ist "nur", dass jetzt nur der Inhalt dieser Datei da ist. In meinem Fall halt die aktuellen Artikel, wie gewünscht. Aber die normale statische Seite fehlt nun halt. (also die "Startseite", die aus der MySql DB gelesen wird.)

    Gruß Muckel

  • Du hast jetzt eine neue Templatedatei angelegt und zeigst diiese an.
    Als nächstes musst du die anderen gewünschten Teile in diese Template Datei einfügen. Dazu nimmst du den Code aus deiner index.php.

  • Guten Tag zusammen,

    das hatte ich schon ausprobiert, es klappt aber nicht, wenn ich den Code der index.php oder der page.php nehme. Meine Datei schaut nun so aus:

    Es wird damit das Layout und aufgerufen (über den header) und den footer habe ich Manuell eingefügt, da er anders ist, als sonst. Es fehlt jetzt "nur" noch der normale Inhalt, den ich aber weiterhin über das Admin Menue schreiben möchte.

    Gruß und vielen Dank
    Muckel

  • Was wird denn jetzt von dieser datei angezeigt? Kann man das irgendwo sehen?

    Du hast jetzt den Header und den Footer dazugepackt. Deine Index.php enthält aber noch mehr?

  • EDIT: farbliche Markierung im Code funktioniert grad ned...
    1. Hast Du wirklich eine Kategorie mit der ID=0 (rot)?
    2. Wieso brauchst Du derartig viele Divs (grün)?
    3. Wieso ein rewind am Anfang (blau)? Hätte eine normale query dafür nicht gereicht?
    4. Kann man sich die Seite einmal ansehen?
    [COLOR=Gray][COLOR=Black]5. Probier einmal alles zu vereinfachen und nimm Dir als Lernbeispiel ein einfach Theme wie Kubrick (Standard)
    6. Probier es erst einmal mit einem Child-Theme zu Kubrick.[/COLOR] D.h. Kubrick 2 mal hochladen. Die eine ist Dein Original und die zweite benennst Du ein wenig um, damit Du an dieser als Child-Theme problemlos und zersörungsfrei ausprobieren kannst.[/COLOR] [COLOR=Gray]Wie Du mit einem Child-Theme herum tust, lernst Du in unter 5 min.[/COLOR] LINK
    7. Probier folgenden Code zum vereinfachen

    a) Header holen, Query machen und 3 Posts der Kategorie 0 ausgeben.

    PHP
    <?php get_header(); ?>
    <?php if (is_front_page()) {query_posts("cat=[COLOR=Red]0[/COLOR]&showposts=3");}?>

    b) für die Titellinks dann

    PHP
    <?php while (have_posts()) : the_post(); ?>
                <li><a href="#<?=$post->post_name?>"><span><?php the_title(); ?></span></a></li>

    die Links als Liste erstellen und dann

    c) die Inhalte holen:

    8. Wenn Du Deinen eigenen Footer unten als html hart codiert einfügst, kannst Du auf den wp_footer verzichten. Anderenfalls könntest Du für den Footer auch einfach ein php-Datei mit include aufrufen. Im Standard immer die eine und in diesem Template immer eine andere.
    9. Wenn´s mit all dem nicht funktioniert, dann halt Dich mit möglichst detailierten Erklärungen an den bgeissler. Der kennt sich aus (zumindest dort wo ich mit meinem Latein am Ende bin).

    lies ein bisschen im Codex, wenn Du Dich nicht auskennst und versuch Beispiele bei anderen Themes und Seiten zu finden. Dann lösen sich die meisten Probleme von selbst. Es gibt zb auf Wordpressrecipes einige nette Beispiele für Deine Probleme. Andere Seiten findest auch schnell einmal.

    Firebug laden! Foreregeln bitte lesen. FAQ. Bitte keine Anfragen per PN.

    Einmal editiert, zuletzt von kaiser (13. Januar 2009 um 20:22)

  • Guten Abend,

    1. Eine Kategorie 0 habe ich nicht, aber das mit den Beiträgen unten Funktioniert nun auch.
    2. vielen Dank für Deine Antworten. Also die div's brauche ich wegen der Runden Ecken, die um den Inhalt sein sollen. Sprich für jede Rundung ein Div. Hin zu kommt noch ein Div inhalt, damit man den Inhalt gesondert designen kann und ich brauche es so für den Innenabstand.
    3. Zu den rewind kann ich Dir leider nichts sagen, da der PHP-Code hier aus den Post sind.
    4. Klar kann man sich die Seite anschauen:

    5. Ja, Kurbick habe ich ja und daran auch mein Layout eingebaut. Bzw. erst ein statisches Layout gemacht und jenes dann mit Hilfe des Kurbicks angepasst.


    Das Layout als solches Funktioniert ja. Es geht nur darum, unterhalb der Startseite die neuen Beiträge zu zeigen. Wie hier in diesem Faden gesagt wurde, habe ich eine Template-Datei erstellt, die ich im Admin-Menü bei meiner Startseite auswähle. Mit ihr kann ich nun auch die aktuellen Beiträge anzeigen.

    Was zurzeit nicht funktioniert ist folgendes:

    • Den Inhalt den ich im Admin Menu geschrieben habe (für die Stratseite) möchte ich auch noch darstellen nur fehlt mir dazu der PHP-Code.
    • Bei den aktuellen Beiträgen habe ich den MORE-Tag zwar im Admin Menue eingefügt und im PHP-Code der Template Datei steht auch, dass er genutzt werden sollte, aber es geht leider nicht:
      PHP
      <?php the_content('Lese weiter...'); ?>

      Schaut man sich aber eine Kategorie an, so klappt es.


    Mit diesem Anfang der Template-Datei hole ich mir das eigentliche Layout der Website und schließe den Bereich des Hauptinhaltes:

    Der folgende Code ist das Resultat dieses Faden und erlaubt es mir, die aktuellen vier Beiträge aller Kategorien zu sehen. Die vielen div's sind mal wieder dafür da, damit die vier Grafiken bei jedem Artikel sind und das umgeben Div ist dazu da, damit der Abstand zur rechten und linken Seite für alle Beiträge gehalten wird:

    Dein Beispiel besagt, dass ich direkt die index.php meines Layouts ändern kann? So wie ich es eigentlichen wollte.

    Gruß und vielen Dank
    Muckel

Jetzt mitmachen!

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