Benutzerdefinierte Felder in WordPress nutzen
Zur Zeit wird ein wenig an meinem Weblog herumgeschraubt und da habe ich mir gedacht, wie kann ich die Benutzerdefinierten Felder (Custom Fields) in WordPress besser nutzen.
Mein Ziel
Mein Ziel war es für bestimmte Artikel einen Text- oder Werbeblock an den Anfang der Seite zu plazieren. Jedoch nicht jedes mal wieder den Code per Hand eintragen zu müssen!
Benutzerdefinierte Felder anlegen
Die Lösung ist mit Hilfe der Custom Fields in WordPress sehr einfach umzusetzen. Dazu muss man als Autor erst einmal einen Artikel anlegen oder einen bestehenden Artikel öffnen.
Benutzerdefinierte Felder sind nämlich nichts weiter als “Schlüssel/Werte Paare” (key/values). Diese werden in der WordPress Datenbanktabelle wp_postmeta gespeichert. Um diese Daten im Weblog wieder abzurufen, gibt es Template Tags wie z.B. the_meta() oder get_post_meta(), die innerhalb eines Loops verwendet werden können. (Links zum Thema findet Ihr am Ende des Beitrages)
Nun können wird ein Benutzerdefiniertes Feld anlegen. Dazu einfach einen Schlüssel-Namen vergeben, einen Wert zu dem Schlüssel definieren und dann den Button “Benutzerdefiniertes Feld hinzufügen” klicken. dadurch wird das Feld zu dem Artikel gespeichert.

Mann kann beliebig viele Benutzerdefinierte Felder für einen Beitrag anlegen!

Benutzerdefinierte Felder in Template einbauen
So nun fehlt zum Endergebnis nur noch eine kleine Anpassung in der entsprechenden WordPress Template Datei zum Beispiel der single.php.
<?php if(get_post_meta($post->ID, 'topbanner_on')) : ?>
Hier beliebigen Code einfügen...
<?php endif; ?>
Der Codeblock sorgt dafür, dass aus den Meta Daten für den Beitrag das benutzerdefinierte Feld “topbanner_on” geprüft wird. Ist das Feld vorhanden und der wert ist 1 (true) dann wird der eingeschlossene Codeblock ausgegeben. Somit ist jede Variante von Abfragen und Ausgaben möglich!
Das Ergebnis meines Test kannst du in dem Beitrag WordPress 2.3 auf PHP-Version 5.2.4 umgestellt sehen.
Weitere interessante Links zum Thema
- WordPress benutzerdefinerte Felder (Custom Fields)
- WordPress Custom Fields nutzen
- Using Custom Fields (WordPress Codex)




Hallo,
sehr netter Beitrag habe diesen auch gleich mal in meinem Blog umgesetzt und natürlich auch verlinkt!
Ich fiesele mich gerade in WordPress rein, und das war gerade genau der richtige kleine Kniff für ein Problem. Danke!
zunächst noch’n Tipp:
ich nutze diese Felder um in einem VeranstaltungsCMS zur jeweiligen Veranstaltung in der Überschrift neben dem Datum als Schlüssel den jeweiligen Veranstalter (z. B jazzkeller XY stellt vor: 21 Uhr) und als Wert den Ort (zb. Schauraum XY Adresse) in einer Zeile (oder mit Umbruch) zu legen.
Dazu aber ist es nötig die ul und li tags im post-meta zu entfernen.
Hierzu in der In der post-template.php unter wp-include bei der function the meta() alles was ul span und li betrifft löschen!!!
FRAGE:
Heute upgedated auf 2.7 und sehe das die Felder “Wähle” bei Benutzerdefinierte Felder erheblich kleiner geworden sind.
Weißt du wo ich Werte für die InputFelder im Core liegen????
Grüße thomas
Hallo Thomas,
im Moment leider noch nicht, wahrscheinlich in einer Standard CSS-Datei von WordPress.
Vielleicht kann jemand anderes helfen?