WordPress.org

Ready to get started?Download WordPress

Codex

Attention Interested in functions, hooks, classes, or methods? Check out the new WordPress Code Reference!

nl:Custom Fields

Wordpress heeft de mogelijkheid dat post auteurs een custom field kunnen toevoegen aan een post, dit is een apart veld waar je extra informatie kan invullen ( zonder het in de content box neer te zetten ) , zoals:

   * Stemming: Blij
   * Boek: Harry Potter
   * Muziek: Smurfenlied
   * Het weer: Heet en vochtig

Met wat extra coding, is het mogelijk om meer complexere dingen weer te geven, zoals het gebruiken van meta-data voor het opslaan van de vervaldatum van een post.

Meta-data worden 'behandeld' met key's/value's. De key is de naam van het meta-date element. De value is de informatie die wil verschijnen voor elke post die een value heeft.


Keys kunnen vaker dan 1 keer worden gebruikt voor een post. Bijvoorbeeld, als je 2 verschillende boeken aan het lezen was, dan kan je de key "lezen" aanmaken en het twee keer gebruiken voor dezelfde post, één voor elk boek.

Hier is een voorbeeld of hoe de informatie er uit kan zien in jou post :

Boek dat ik momenteel lees : Harry Potter

Mijn stemming vandaag: Blij

Gebruik

Gebaseerd op de voorbeelden van boven gaan we nu het echte werk doen. We maken 2 custom fields, "Boek dat ik momenteel lees" en de andere "Mijn stemming vandaag". De volgende instructies laten je zien hoe je deze informatie kan toevoegen aan een post, door het gebruik van Custom fields

  1. Na dat je een post heb geschreven, scroll naar beneden naar het veld genaamd Custom Fields
  2. Om een nieuw Custom Field genaamd "Het boek dat ik momenteel lees" te maken, plaats de tekst "Het boek dat ik momenteel lees" ( zonder aanhalingstekens ) in het tekst veld genaamd Key of Name.
  3. De nieuwe Key zou nu een ook een Value moeten bevat, dus type "Harry Potter" in het veld genaamd Value, dit keer zonder aanhalingstekens
  4. Click nu op de Add Custom Field button om deze informatie op te slaan voor je post

Om je "Mijn stemming vandaag" ook toe te voegen, herhaal het proces van boven en plaats bij de key "Mijn stemming vandaag", en je stemming ( in dit geval Blij ) in het value veld. En click op SAVE om deze informatie bij je post op te slaan.

Voor je volgende post, kan je dezelfde keys als eerder gebruikt weer gebruiken. In het Custom Fields gebied, zal de Key nu een dropdown list laten zien van al gebruikte Keys. Kies Boek dat ik momenteel lees" en vul een nieuw boek in ( als je tenminste al zover bent! ) in het Key gebied. Click nu in plaats van Save op Add Custom Field en herhaal dit ook met "Mijn stemming vandaag".

Je hoeft maar één keer een nieuwe "KEY" te maken, hierna kan je het toevoegen aan elke ost. Je kan ook, zoals eerder verteld, meerde Value's maken voor een key. Dat is dus voor mensen die meerdere boeken te gelijk lezen.

Laat je Custom field zien!

Met een een Custom Field toegevoegd aan je post, gaan we hem nu laten zien aan je bezoekers. Om dit te laten zien voor elke post, gebruik je de the_meta() template tag. Deze "tag" moet in de The Loop worden toegevoegd om het te laten werken. Veel mensen voegen de the_meta() template tag aan het einde van hun post toe of in hun Post Meta Data Section. Hier is een basis voorbeeld voor het gebruik van deze tag:


<?php the_meta(); ?>

Zo zal het eruit zien in de bron code:

<ul class='post-meta'>
<li><span class='post-meta-key'>Boek dat ik momenteel lees:</span> Harry Poter</li>
<li><span class='post-meta-key'>Mijn stemming vandaag:</span> Blij </li>
</ul>

De template tag voegt automatisch bij de hele meta-data CSS toe, genaamd : post-meta. De Key is in een span genaamd post-meta-key zodat jij de Style kan toevoegen in je Stylesheet. Dit alles wordt weergegeven in een UL ( unordered) - list.

Om de look van de post-meta lijst te bewerken, moet je de kenmerken in je stylesheet bewerken. Bijvoorbeeld, laten we wat style toevoegen aan het voorbeeld van boven. De stylesheet elementen zullen er dan zo uitzien :

To customize the look of the post-meta list, change the characteristics in your style sheet. For instance, let's add some style to our example from the top. The style sheet elements would look like this:

.post-meta {font-variant: small-caps; color: maroon; }
.post-meta-key {color: green; font-weight: bold; font-size: 110%; }
  • Boek dat ik momenteel lees: Harry Potter
  • Mijn stemming vandaag: Blij

Er zijn ook veel Plugins in de Officiële WordPress Plugin Database die mooie eigenschappen aan het werk van de meta tags weergeven toevoegen.

Professionele technieken voor Custom Fields

Voor het volgen voor meer geavanceerde technieken voor je het krijgen en bewerken van je meta-data en custom fields.

Zorgen voor Custom Fields

Om de waarden van meta gebruiken, gebruik je het volgende

 get_post_meta($post_id, $key, $single);
  • $post_id is de ID van de post waar je de meta values voor wilt. Gebruik $post->ID voor het krijgen van een ID van een post
  • $key is een 'string' die de name van meta value bevat die jij wilt
  • $single kan zijn: true of false. Als je het op true zet dan zal de functie een single result laten zijn, als een string. Als het false is, dat is de default, dan zal de functie een aray maken voor de custom fields.

Implementation Details

De PostMeta informatie wordt opgeslagen in een nieuwe tabel, $wpdb->postmeta. Deze tabel heeft vier velden

meta_id: Een uniqe ID for elke entry
post_id: De ID van een post voor de metadata
meta_key: De naam van de 'Key'
meta_value: De value The value geassocieërd met de 'Key'