Contents
Overview
This Default Field Type is available in WordPress Creation Kit free version. The Select Field creates a drop-down multiple select box.
Creating a Select Field
To add a Select Field to a previously created Custom Meta Box, under the Meta Box Fields tab simply insert a Field Title and under Field Type make sure you select Select.
The Select Field contains options to customize it:
- Description – Allows you to specify a description for the Select field
- Required – Select whether the field is required or not
- Default Value – Set a default value for the Select Field. In case of multiple values separate them with a “,”
- Options – For multiple options separate them with a “,”
- Labels – For multiple labels separate them with a “,”
Page, Post or Custom Post Type Edit Screen
This is how the Select Field we created above looks like in the Edit Screen:
Template usage
The following examples are for a Custom Meta Box with the “Group Name” argument “my_meta_name“. Make sure to replace this with the “Group Name” you have set up. The Custom Meta Box below is setup to be attached to a page.
Using the WCK Custom Fields API
The Select Field returns a string.
For a Single Meta Box
To output a value inside The Loop we use the function the_cfc_field()
1 | Value: <!--?php the_cfc_field('my_meta_name', 'favorite-color'); ?--> |
To assign the value to a variable we use the function get_cfc_field():
1 | <!--?php $favorite_color = get_cfc_field('my_meta_name', 'favorite-color'); ?--> |
For a Repeater Meta Box
To output all the “Favorite Color” entries from the repeater field we use the functions get_cfc_meta() and the_cfc_field():
1 | <!--?php foreach( get_cfc_meta( 'my_meta_name' ) as $key => $value ){ the_cfc_field( 'my_meta_name','favorite-color', false, $key ); } ?--> |
To output a specific “Favorite Color” entry from the repeater field (e.g. the second entry), we use the function the_cfc_field():
1 | <!--?php the_cfc_field( 'my_meta_name','favorite-color', false, 1 ); ?--> |
The index starts at 0 so that’s why we pass “1” to the function. For the first entry it would be “0”, the second is “1”, the third is “2” and so on…
Using the default WordPress functions
The Select Field returns a string.
For a Single Meta Box
1 | <!--?php $my_meta = get_post_meta( $post->ID, 'my_meta_name', true ); if( !empty( $my_meta[0]['favorite-color'] ) ) echo 'Value:'.$my_meta[0]['favorite-color']; ?--> |
For a Repeater Meta Box
To output all the “Favorite Color” entries in the repeater field:
1 | <!--?php $my_meta = get_post_meta( $post->ID, 'my_meta_name', true ); if( !empty( $my_meta ) ){ foreach( $my_meta as $entry ){ echo $entry['favorite-color']; } } ?--> |
To output a specific “Favorite color” entry from the repeater field (e.g. the second entry):
1 | <!--?php $my_meta = get_post_meta( $post->ID, 'my_meta_name', true ); if( !empty( $my_meta[1]['favorite-color'] ) ) echo $my_meta[1]['favorite-color']; ?--> |
The index starts at 0 so that’s why we pass “1” to the function. For the first entry it would be “0”, the second is “1”, the third is “2” and so on…