1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

the_category vs. get_the_category

Dieses Thema im Forum "Allgemeines" wurde erstellt von heinetz, 11. Februar 2017.

  1. heinetz

    heinetz Well-Known Member

    Registriert seit:
    8. Oktober 2007
    Beiträge:
    82
    Zustimmungen:
    0
    Hallo Forum,

    vorab: Ich habe nur wenig Erfahrung mit der Anpassung von WP-Template-Code und versuche gerade, ein Verständnis dafür zu entwickeln.

    jetzt stehe ich vor folgender Aufgabe:

    Um meine Beiträge als Timeline darzustellen, nutze ich das recht einfache Plugin Infinite Timeline. Beiträge werden wie im Archiv-Template chronologisch sortiert als Teaser dargestellt. Was mir in dem Teaser fehlt sind die Kategorien. Nun habe ich schon herausgefunden, dass ich mit get_the_category() da rankomme und weiss, wie ich aus dem zurückgegebenen Array den entsprechenden HTML-Code generieren kann, damit
    die Kategorien, wie im Archiv-Template dargestellt werden. Nun habe ich mich gefragt, ob das u.U. auch effizienter geht und bin auf die
    Funktion the_category gestossen, die mir genau den HTML-Code ausgeben würde, den ich brauche. Nur funktioniert the_category nicht an der Stelle, wo ich die Funktion einsetzen möchte. Nun bin ich auch schon so weit, dass ich begriffen habe, dass es hier offenbar einen grundsätzlichen Unterschied gibt und es sich genauso mit get_the_title() vs. the_title() verhält, denn im Originalcode wird Ersteres verwendet, während zweiteres auch nicht funktioniert.

    Nun meine Frage:

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Komme ich irgendwie drum herum, den HTML-Code so zu erzeugen, wie ich das jetzt mache ? Kann ich u.U. die Funktion
    the_category() doch verwenden ?

    danke für Tipps und gruss,
    heinetz

    ps. Mir ist bewusst, dass hier niemand eine Glaskugel hat. Aber wenn ich den gesamten Plugin-Code hier poste, wird's unübersichtlich und ich hoffe, dass Ihr euch vorstellen könnt, an welcher Stelle the_title() nicht funktioniert, während get_the_title() funktioniert.
     
    #1 heinetz, 11. Februar 2017
    Zuletzt bearbeitet: 11. Februar 2017
  2. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.637
    Zustimmungen:
    1.778
    Wo genau hast Du sie denn eingesetzt?

    Möglicherweise rufst Du Funktionen die für "in der Loop" vorgesehen sind, "ausserhalb der Loop" auf. Für solche Fälle gibt es in WordPress setup_postdata() i.v.m. wp_reset_postdata(), damit baut man sich sozusagen eine kleine extra Loop, mehr dazu hier.
     
  3. heinetz

    heinetz Well-Known Member

    Registriert seit:
    8. Oktober 2007
    Beiträge:
    82
    Zustimmungen:
    0
    so ähnlich hatte ich das versucht zu interpretieren.

    Danke für den Tipp. Darin bestand (indirekt) die Lösung. In dem Code habe ich sowohl setup_postdata()als auch wp_reset_postdata() gefunden ... aber es funktionierte dennoch nicht, obwohl es ja hätte funktionieren müssen ;)

    Dass:

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    ... nicht funktionieren kann, ist mir auf den zweiten Blick klar geworden als ich meine Ausgabe statt im p-Tag ganz oben auf der Seite wiederfand ;)
    Das könnte ich nun mit Output buffering lösen, ist aber keine saubere Lösung ;)

    gruss,
    heinetz
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden