Benutzerdefinierte Felder in WordPress ausgeben
Vorab
In der Regel sitze ich ja den Tag über am Rechner und baue an irgendwelchen Websites rum. Überwiegend auf TYPO3-Basis, zuletzt gibt es aber eine horrende Häufung an WordPress-Projekten. Da kommt es dann permanent vor, dass ich irgendeine Funktion/ein Verhalten erreichen will und dafür eine Lösung finde(n muss). Das ist mal aufwendig, öfter aber auch ganz simpel.
Wenn man aber mit mehreren System arbeitet und permanent vor neuen Aufgaben steht, kann es passieren, dass man schon einmal vergisst, wie man Problem X oder Y eigentlich gelöst hatte. Zumindest geht mir das so. Da muss man dann wieder ein altes Template rauskramen oder den alten Setup-Code suchen und nochmal nachschauen. Ich will dieses Blog aber auch als kleine Gedankenstütze für mich selbst nutzen und werde jetzt immer wieder solche Anforderungen mit der entsprechenden Lösung posten. Nur damit es Euch nicht so überrascht.
Benutzerdefinierte Felder in WordPress ausgeben
Dieses Szenario gehört sicherlich zu den sehr einfach zu lösenden. In WordPress gibt es die Funktion, an einen Beitrag oder eine Seite “benutzerdefinierte Felder” anzufügen. Der Inhalt kann ganz verschieden sein, in meinem Fall soll dort etwas simpler HTML-Code (Aufzählungen) rein, der auf Seiten mit speziellem Template ausgegeben wird.
Im Template der Seite muss dann einfach der folgende Code eingefügt werden:
[php]$meta_values = get_post_meta($post-ID,’themenintro’,true);
echo $meta_values; [/php]
Und das wars schon. In meinem Beispiel heisst das Userfeld “themenintro“, was ihr dann entsprechend ersetzen müsst. Sehr simpel, aber das sagte ich ja bereits ;)
Und so sieht das komplette Template dann bei mir aus:
Ähnliche Artikel
- WordPress: Piwik im Dashboard
- WordPress und WordPress MU werden ab Version 3 eins
- Der Start des eigenen Blogs: WordPress MU vs. WordPress
- WordPress: Code darstellen und hervorheben
- Custom Post Types in den Newsfeed von WordPress integrieren
5 Kommentare
Ein Pingback
-
Von Links ZweiNull #3 » Bilder, Tools, IP-Adressen, Website, Feed, Felder » Generation ZweiNull am 5. Dezember 2009 um 12:43 Uhr:


An Themes bastle ich in Ermangelung von PHP-Kenntnissen und weil das nicht mein Hauptgeschäftsfeld ist möglichst wenig herum, hole mir aber gerne Anregungen. Das Schwierigste für Normal-WPler ist wohl, den PHP-Code irgendwo zu bekommen. Woher weiß ich, welcher Code es sein muss? (Ist diese Frage jetzt sehr doof?)
Für meine Presseseite benutze ich ein Theme, das ein solches ben.def. Feld schon mitbringt, prima. Hier erscheint ein Bild im Entry, wenn ich im Feld “Image” und bei Wert die URL des Bildes eintrage.
Falls man als Non-PHPler in die Funktionen von WordPress und sein Design eingreifen will, kann das schwierig werden. Dennoch gibt es genügend Tutorials, die einem das erleichtern.
Ich werde wohl in Kürze auch eines schreiben!
Den PHP-Code bekommen? Das geht ganz leicht über einen Texteditor, wie ihn jedes Betriebssystem mit sich bringt. Einfach den Editor öffnen, dann Ctrl.+O und die Dateien im Grundverzeichnis von wordpress holen.
Hallo,
ich habe mir gerade mal deine Seite angeschaut und finde gerade diesen Beitrag nützlich.
Ein kleiner Gedankengang den ich gerade hatte(kommt nicht oft vor ;-)) wäre deine Funktion
$meta_values = get_post_meta($post-ID,’themenintro’,true);
in die funktions.php deines templates zu schreiben so braucvhst quasi nur den Befehl
des auslesens in deinem Template zu verbauen.
eventuel müßte dafür der code minimal umgeschrieben werden aber ich denke das sollte drinne sein. :-)
Aber danke für deine Veröffentlichung
Gruß Sven
Einen einfachen Text nun auszugeben hab ich geschafft. Ich würde aber gerne auf einer “Seite” alle Artikel mit einem bestimmten Kriterium ausgeben. Sprich, wenn der Wert auf ja ist, soll der jeweilige Artikel auf der speziellen Seite ausgegeben werden. Bei nein eben nicht. Kann mir da einer einen Rat geben? Vielen Dank und viele Grüße Falko
Das ist netter Trick.. ich bis jetzt immer auf Felder verzichten und eher Plugins geschrieben aber das wesentlich einfacher ;)