nur Autoren mit den meisten Beiträgen auflisten

  • Hallo liebes WP Forum,

    kann mir jemand einen Tipp geben, wie ich die Autorenliste wie im Titel beschrieben, verändern kann? Hab schon gegoogelt und hier im Forum sowie im WP-Codex geschaut aber solche Einschränkungen scheinen nicht vorgesehen zu sein ... oder?

    • 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

  • Lösungsansatz gefunden

    Habe noch etwas weiter gestöbert und folgenden Codeschnipsel gefunden:

    Die Listung der Autoren und deren manuelle Beschränkung funktioniert auch super. Leider fehlt jetzt die Verlinkung auf die entsprechenden Beiträge der jeweiligen Autoren.
    Bei Klick öffnet sich nur ein Meldungsfenster des Browsers, dass keine entsprechende URL existiere.
    Leider aber kann ich dem ursprünglichen Code

    PHP
    <?php wp_list_authors(); ?>


    nicht entnehmen wie die Verlinkung zu den posts funktioniert.

    Hat da vielleicht jemand eine zündende Idee?

  • Habe noch etwas weiter gestöbert und folgenden Codeschnipsel gefunden:


    Mmh, direkte DB-Abfragen sind immer heikel. Kann ja sein, dass sich and er DB was ändert. Nur so als Hinweis.

    $user->user_url enthält die URL der Website, die der Autor in seinem Profil eingetragen hat. the_author_posts_link()sollte in die Richtung gehen, ufnktioniert aber natürlich nur im Artikelloop. So sieht das intern aus (2.7):

    PHP
    printf(
    		'<a href="%1$s" title="%2$s">%3$s</a>',
    		get_author_posts_url( $authordata->ID, $authordata->user_nicename ),
    		sprintf( __( 'Posts by %s' ), attribute_escape( get_the_author() ) ),
    		get_the_author()
    	);


    und

    PHP
    /**
     * Retrieve the URL to the author page of the author of the current post.
     *
     * @since 2.1.0
     * @uses $wp_rewrite WP_Rewrite
     * @return string The URL to the author's page.
     */
    function get_author_posts_url($author_id, $author_nicename = '') {
     //...
    }


    Damit solltest du dir den link problemlos selbst zusammenbasteln können. $authordata hast du ja - $user bei dir.

  • Danke für Deine Antwort

    Hm: ich hab mir jetzt folgendes zusammengereimt

    PHP
    <?php echo '<a href="' . $user->user_id . '">' . $user->display_name . '</a>'; ?>

    Aber dabei wird dann nur auf die Startseite verlinkt und alle posts werden wie gewohnt gelistet ...

  • So müsste es funktionieren:

  • Au ja! Danke. So funktioniert es schon.
    Aber an irgendeiner Stelle wird jetzt das CSS ausgehebelt, so dass die Autorennamen nicht in der Liste erscheinen. Link

  • Wieso falsch?
    Wenn ich auf den (nicht ganz korrekt dargestellten) Autorenlistenpunkt klicke, werden im Contentbereich alle von ihm erstellten Beiträge gelistet.
    Soweit scheint es mir okay. (So wollte ich es jedenfalls haben :-)

    Aber leider nimmt er irgendeinen Listenstyle nicht an ...

  • Was soll er bitte auch anzeigen bei so einem Link?

    HTML
    <a title="Beiträge von " href="http://www.maulbeerblatt.com/?author=51"></a>


    :-D

    Klar, funktionieren tut er, zumindest solange man ihn findet. Das href-Attribut ist ja vorhanden und korrekt gefüllt. ;-) Das Problem ist der Display-Name, den ich in der falschen Variable suchte. Da gabs keinen, also wurde auch keiner angezeigt.

    Aber jetzt gehts ja, und auch der Name wird korrekt angezeigt. Hast meine Änderungen wohl trotzdem eingebaut?

Jetzt mitmachen!

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