Kategorie-Beschreibung bei Artikelansicht anzeigen

  • Hallo zusammen,

    ich möchte gerne die Kategoriebeschreibung unter dem Artikel anzeigen lassen, wenn man sich in der Artikelansicht befindet (sprich, wenn man auf den Permalink geklickt hat).

    Das Template-Tag category_description führt an dieser Stelle leider zu einem PHP-Fehler. Ich habe schon gegoogelt und habe im Plugin-Verzeichnis geschaut. Gefunden habe ich nur dieses Plugin, doch müssen da die entsprechenden Platzhalter direkt in den Artikel eingefügt werden. Ich hätte jedoch lieber eine automatische Variante.

    Kennt da jemand eine Möglichkeit?

    • 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

  • Müsste eigentlich auch mit
    $category = get_the_category();
    $category->cat_description; oder $category->description

    funktionieren.

    Poste aber bitte einmal die Fehlermeldung. Alles andere ist raten à la Monikas Glaskugel.

  • Wie schon gesagt: Poste doch einmal die erste Fehlermeldung.

    Und: Was bedeutet: "zeigt gar nichts an" ... leere weiße Seite? liegt vermutlich am fehlenden ";" bei der zweiten Variante.


    Soweit so gut. Also bekommen wir bitte a) die ursprüngliche Fehlermeldung und b-d) die Ergebnisse der print-r-Geschichte.

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

    Einmal editiert, zuletzt von kaiser (28. April 2010 um 19:20)

  • Oh Sorry, hatte die vorhin vergessen.

    Er gibt mir folgenden Fehler aus:

    Zitat

    Catchable fatal error: Object of class WP_Error could not be converted to string

    Mit "zeigt gar nichts an" meinte ich, dass er an der Stelle nichts anzeigt. Also weder Fehler noch sonst etwas.

    Edit:

    Dein Code bringt folgendes:

    Zitat

    5TESTS FUER EXPORT:
    Test 1:
    Test 2:
    Test 3:

    Hier steht die Beschreibung

  • Das heißt, dass die Variante von bene0222 plötzlich auch nichts mehr ausgibt? Poste doch bitte einmal einen Link zu Deiner Seite (siehe meine Signatur > Forenregeln) und den Code des Templates.

  • Hallo,

    ich teste die Seite lokal, daher kann ich keinen Link posten.

    Der Code der Seite ist ein ganz normaler Loop:

    Zum Test habe ich die Kategorie 3 mit der Kategoriebeschreibung "Das ist ein Test."


    Die Ergebnisse der verschiedenen Varianten, die ich zwischen Artikel und "<?php endwhile; else: ?>" geschrieben habe:


    <?php echo category_description(3); ?>
    bringt folgendes Ergebnis:

    Zitat

    Catchable fatal error: Object of class WP_Error could not be converted to string

    ________________

    Die Variante von bene0222:

    Zitat

    3
    Das ist ein Test.

    _________________

    Deine Variante:

    Zitat

    5TESTS FUER EXPORT:
    Test 1:
    Test 2:
    Test 3:

    Das ist ein Test.


    bene0222s Variante funktioniert, zeigt mit aber noch die Kategorie-ID an. Deine Variante funktioniert auch, zeigt mit dann aber noch die ganzen Test-Zeilen an.

  • Naja. Da steht jetzt nirgendwo der Code drinnen, damit ich drüber lesen könnte... Daher kann ich jetzt auch schlecht sagen, was an bene0222-Variante nicht stimmen sollte.

    echo "<div style='width: 100%;'>" . category_description(6) . "</div>";

    ...funktioniert bei mir problemlos in einem Testszenario...

    Probier noch folgendes: (vor dem Loop)

    Code
    $cat = get_query_var('cat');
    $categories = get_categories('exclude=1,2,3,4'.$cat); // hier testweise was ausschließen
    wp_reset_query();
    foreach($categories as $term) {
    echo '<a href="' . get_category_link( $term->term_id ) . '" title="' . sprintf( __( "Archiv: %s" ), $term->cat_name ) . '" ' . '>' . $term->cat_name.'</a>';
    echo "<br />" . $term->taxonomy . ": " . $term->description . "<br />";
    }

    Nachdem da ein WP-Error auftaucht, würde ich Dir alternativ folgendes vorschlagen: Kopier WP einfach noch einmal drüber. (Die wp-config.php vorher sichern). Ich glaube mittlerweile, dass Du entweder eine Uraltversion von WP hast, oder etwas beim kopieren/installieren/upgraden falsche gewesen sein kann.

  • In der index.php deines Themen unmittelbar vor dem Loop.

    PHP
    if (have_posts()) : ?><?php while (have_posts()) : the_post();

    die folgende Zeile einfügen:

    PHP
    <?php    if (   (is_category()) ) {       echo category_description();    } ?>

    Nun genügt es ja wenn diese Beschreibung auf der ersten Seite zu finden ist, und nicht auf jeder Seite. Ergänze die obige Zeile mit einer Abfrage der Seitenzahl:

    PHP
    <?php if ( (is_category() and ($paged < 2) ) ) { echo category_description(); } ?>

    Nun wird die Beschreibung nur noch auf Seite 1 angezeigt.

    Falls die Seiteneingrenzung nicht geht, benutze diesen Code, dann geht es bestimmt:

    Zitat

    if ($paged == 0)

    Einmal editiert, zuletzt von escapet (18. September 2010 um 18:42)

Jetzt mitmachen!

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