Anfäger kommt nicht weiter mit wp_list_pages

  • Hallo Leute,

    ich brauche unbedingt Eure Hilfe!
    Ich versuche nun schon seit Wochen (!) ohne Erfolg eine Kleinigkeit im Bereich Formatierung der Links des horizontalen Menüs hinzubekommen.
    Selbstredend habe ich bereits etliche Abende das Web, Foren und andere Blogs durchsucht, um halbwegs in den Bereich zu kommen, doch es half leider alles nichts... :(
    Ich habe aber den Eindruck, dass es irgendwas mit wp_list_pages zu tun haben könnte (???) - also mit der Funktion selber, nicht mit der Art des Aufrufs der Funktion aus der functions.php des entsprechenden Themes... (???)

    Deswegen heute die Frage an Euch! ;-)
    Folgende Ausgabe soll das Ergebnis sein:

    Code
    <div id="nav_main">
      <ul class="wahl">
        <li class="current_page_item"><a href="link1"><b>Startseite</b></a></li>
        <li class="page_item page-item-2"><a href="link2" title="link2"><b>link2</b></a></li>
        <li class="page_item page-item-4"><a href="link3" title="link3"><b>link3</b></a></li>
      </ul>
    </div>

    Das Problem ist, dass ich es nicht hinbekomme, die HTML-Tags <b> und </b> vor und nach den Link-Texten im Menü erscheinen zu lassen... Ich benötige diese Tags aber für eine speziellere CSS-Navigation...
    Was ich bereits gemacht habe, ist mir in der Datei (wp-includes/post-template.php, WP-DE v2.3.1) die Zeilen 302-345 angeschaut, doch wie gesagt, ich peil das nicht... Dabei muss ich sagen, dass ich auch nicht sooo der PHP-Crack bin... ;-)
    Na, ich hoffe, Ihr habt die eine oder andere Idee für mich! ;-)

    Grüsse,
    Michi

    • 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

  • naja du brauchst die b ja beim Link und nicht bei der Funktion
    denn die macht ja keine Links

    das wird dann problematisch (mir denk)

    gibts eine Permalink Struktur und wenn ja welche.

    Könntest Du damit leben und die so formatieren per css, dass die b auch bei anderen Links nicht wirklich stören?

    lg

  • Hallo Monika,

    danke für Deine Antwort,

    das wird dann problematisch (mir denk)

    okay, mit Eurer Hilfe würde ich es trotzdem sehr gerne versuchen! ;-)

    gibts eine Permalink Struktur und wenn ja welche.

    Oh, ich wusste nicht, dass das wichtig ist... Aber kein Problem, die .htaccess sieht folgendermassen aus:

    Apache Configuration
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>

    Könntest Du damit leben und die so formatieren per css, dass die b auch bei anderen Links nicht wirklich stören?

    Hmm, ehrlich gesagt nicht wirklich. Das würde das gesamte Layout zerschiessen. Ich möchte das eigentlich schon so haben, dass nur die Hauptnavi von den <b>'s betroffen ist. Ein Beispiel kann man sich unter Was mit WordPress so alles geht … » BlogPimp ansehen, dort ist die Navigation genauso aufgebaut, wie ich sie (von der Semantik her) haben möchte...

    Michael

  • diese Navigation kannst du dann nur mehr händisch machen, so wie in dem Beispiellink,
    die haben nicht wp list pages genommen, sondern die statischen Seiten einfach so verlinkt

    wäre auch das einfachste, anders wirds kaum gehen

    lg

  • Zitat

    anders wirds kaum gehen

    Geht nicht, gibt's nicht bei WordPress :-)

    PHP
    add_filter('wp_list_pages', 'b_title');
    
    
    function b_title ($output) {
      $output=preg_replace(':<a href(.*)>(.*)</a>:','<a href$1><b>$2</b></a>',$output);
      return $output;
    }

    Den folgenden Code, der vor der Ausgabe das <b></b> um die Links herum macht, in die functions.php des Themes einfügen oder ein eigenes Plugin daraus machen.

  • Hallo spickzettel!

    Geht nicht, gibt's nicht bei WordPress :-)

    Das hört sich ja schon mal seeehr gut an! ;-)


    PHP
    add_filter('wp_list_pages', 'b_title'); [...]

    Prima, es geht!! Super vielen Dank für Deinen klasse Tip!!! Und ich hab' mich wirklich schon dusselig gesucht, doch sowas feines habe ich noch nirgends gefunden!! ;-) Also nochmals ein grosses Dankeschön! ;-)

    Grüsse,
    Michael

Jetzt mitmachen!

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