Anker aus the_title generieren

  • Hallo,

    mal wieder ne Frage, die vielleicht auch andere interessieren könnte.

    Ich habe in der sidebar eine Liste mit den Überschriften der zehn neusten News-Beiträgen. Die Beiträge werden im Content-Bereich untereinander in einem scrollbaren Bereich angezeigt.
    Jetzt möchte ich die einzelnen Beiträge automatisch mit Ankern versehen und über die Liste in der Sidebar direkt verlinken.

    Prinzipiell ist es mir klar, wie ich das machen muß:
    Ich habe ja einen Anker durch die ID des Posts:

    PHP
    <h2 id="post-<?php the_ID(); ?>"><?php the_title(); ?></h2>

    Wie bekomme ich jetzt aber in der Sidebar die entsprechenden Links?
    Was ich probiert habe, ist:

    PHP
    <?php $myposts = get_posts ('numberposts=10&offset=0&category=3');
    foreach($myposts as $post) : ?>
    <li>
    <a class="fett" href="#post-<?php the_ID(); ?>"><?php the_title(); ?></a>
    </li>
    <?php endforeach; ?>


    Jetzt sehen aber alle Links gleich aus: #post-5

    Wo ist der Fehler?
    Was ich nicht verstehe ist, warum gibt mir in der Sidebar

    Code
    the_title();

    den korrekten Titel aus,

    Code
    the_ID();

    aber nicht. Stattdessen bekomme ich nur die ID des letzten (ältesten) Beitrags im Content-Bereich.

    Kann mir jemand auf die Sprünge helfen?

    Merci im Voraus.
    kruisko

    • 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

  • Cool! Vielen Dank. Genau das wars...

    PS.: Ich sehe gerade, daß die Überschrift doch etwas daneben geraten ist.
    Ich hatte nämlich eigentlich vor, die Ankernamen aus the_title zu generiren, mußte aber feststellen, daß dann ja die ganzen Sonder- und Satzzeichen des Titels in dem Link landen...
    Meine Frage wäre gewesen, wie man den Titel so ausgeben kann, wie er in den Links benutzt wird... das würde doch die schöneren Links geben (#neulich-im-park anstatt #post-165).
    Vielleicht hat dazu ja noch jemand ne Idee...

    kruisko

  • hi
    nimm die ID
    ist wesentlich sicherer - ANker sind niemals schön erzeugen doppelten content, da ist es dann schon irgendwie egal ob ID oder posttitle ;)

    lg

  • Hey danke an die Infos, bei mir hat alles geklappt (mit bisschen ausprobieren und fummeln)...

    Da ich wenig erfahrung mit PHP / HTML usw habe ich kurze Frage:
    Wie kann ich die ID vom letztens Eintrag entnehmen?

    Ich erkläre das mal kurz: Ich möchte ein Button machen, mit dem man autom. (durch Anker) zum nächsten bzw. vorherigen Eintrag kommt.

    Die ID ist ja leider nicht ID: 1843 (-1) / vorheriger post ID 1842 sondern eine autom. generierte... Hat da vielleicht einer ein Vorschlag?

    Das wäre echt super...
    Hier der Code:

Jetzt mitmachen!

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