A custom field is extra information added to a post or page that is not part of the main content. It lets you store and show special details like a product price or author name.
Click to reveal answer
beginner
Which WordPress function retrieves the value of a custom field?
The function get_post_meta() is used to get the value of a custom field by providing the post ID and the custom field key.
Click to reveal answer
beginner
How do you display a custom field value inside a WordPress template?
Use echo get_post_meta($post->ID, 'field_name', true); inside the template to show the custom field value on the page.
Click to reveal answer
intermediate
What does the third parameter in get_post_meta() control?
The third parameter is a boolean that decides if you want a single value (true) or an array of values (false) if the custom field has multiple entries.
Click to reveal answer
beginner
Why should you check if a custom field has a value before displaying it?
Checking prevents showing empty or unwanted text on the page. It keeps the site clean and avoids confusing visitors.
Click to reveal answer
Which function is used to get a custom field value in WordPress?
Aget_meta_field()
Bthe_field()
Cget_custom_field()
Dget_post_meta()
✗ Incorrect
The correct function to retrieve custom field data is get_post_meta().
What does the third parameter in get_post_meta($post->ID, 'key', true) do?
AReturns a single value
BReturns all posts
CDeletes the meta key
DUpdates the meta value
✗ Incorrect
Setting the third parameter to true returns a single value instead of an array.
How do you safely display a custom field value in a template?
ACheck if the value exists before echoing
BEcho the value directly without checks
CUse <code>print_r()</code> on the value
DUse <code>var_dump()</code> on the value
✗ Incorrect
Always check if the custom field has a value before displaying it to avoid empty output.
Where are custom fields stored in WordPress?
AIn the comments table
BIn the postmeta table
CIn the users table
DIn the options table
✗ Incorrect
Custom fields are stored in the wp_postmeta table linked to posts.
Which of these is a common use for custom fields?
AChanging the site theme
BCreating new user accounts
CAdding extra info like event dates
DManaging WordPress plugins
✗ Incorrect
Custom fields let you add extra details like event dates or product prices to posts.
Explain how to retrieve and display a custom field value in a WordPress template.
Think about the function and parameters needed.
You got /4 concepts.
Why is it important to check if a custom field has data before showing it on a page?
Consider what happens if no data is present.
You got /4 concepts.
Practice
(1/5)
1. What is the main function used in WordPress to retrieve custom field data for a post?
easy
A. get_post_meta()
B. get_custom_field()
C. fetch_post_data()
D. retrieve_meta()
Solution
Step 1: Identify the WordPress function for custom fields
The standard WordPress function to get custom field data is get_post_meta().
Step 2: Confirm other options are not standard functions
Functions like get_custom_field(), fetch_post_data(), and retrieve_meta() do not exist in WordPress core.
Final Answer:
get_post_meta() -> Option A
Quick Check:
Custom field retrieval = get_post_meta() [OK]
Hint: Remember: WordPress uses get_post_meta() for custom fields [OK]
Common Mistakes:
Confusing function names with non-existent ones
Using get_post_meta() without parameters
Trying to access custom fields like normal variables
2. Which of the following is the correct syntax to get a single custom field value with key 'color' for post ID 42?
easy
A. get_post_meta(42, 'color', true);
B. get_post_meta('color', 42, true);
C. get_post_meta(42, 'color');
D. get_post_meta('color', 42);
Solution
Step 1: Understand get_post_meta() parameters order
The function signature is get_post_meta($post_id, $key, $single). So the post ID comes first, then the key, then whether to return a single value.
Step 2: Check which option matches this order
get_post_meta(42, 'color', true); uses get_post_meta(42, 'color', true); which is correct. Others swap parameters or miss the third argument.
Final Answer:
get_post_meta(42, 'color', true); -> Option A
Quick Check:
Correct parameter order = post ID, key, single [OK]
Hint: Post ID is first, key second, true for single value [OK]
What will be the output if the custom field 'price' for post ID 10 is set to '25.99'?
medium
A. Error: Undefined variable
B. Array
C. NULL
D. 25.99
Solution
Step 1: Understand get_post_meta() with single=true
When the third parameter is true, get_post_meta() returns a single value as a string, not an array.
Step 2: Check the stored value for 'price'
The custom field 'price' for post ID 10 is '25.99', so echoing $value outputs '25.99'.
Final Answer:
25.99 -> Option D
Quick Check:
Single meta value output = 25.99 [OK]
Hint: Use true to get single value, not array [OK]
Common Mistakes:
Expecting an array instead of a string
Not setting the third parameter to true
Assuming NULL if value exists
4. Identify the error in this code snippet:
echo get_post_meta('price', 15, true);
medium
A. Function get_post_meta() does not exist
B. Missing third parameter
C. Parameters are in wrong order
D. Post ID must be a string
Solution
Step 1: Check parameter order in get_post_meta()
The correct order is get_post_meta($post_id, $key, $single). Here, 'price' (key) is first and 15 (post ID) second, which is wrong.
Step 2: Confirm other options are incorrect
The third parameter is present, the function exists, and post ID should be an integer, not string.
Final Answer:
Parameters are in wrong order -> Option C
Quick Check:
Post ID first, key second in get_post_meta() [OK]
Hint: Post ID always comes before key in get_post_meta() [OK]
Common Mistakes:
Swapping post ID and key parameters
Assuming post ID can be string
Omitting required parameters
5. You want to display a custom field 'rating' for the current post inside the Loop, but only if it exists and is not empty. Which code snippet correctly does this?
hard
A. echo get_post_meta('rating', get_the_ID(), true);
B. if ($rating = get_post_meta(get_the_ID(), 'rating', true)) { echo esc_html($rating); }
C. if (get_post_meta('rating')) { echo get_post_meta(get_the_ID(), 'rating'); }
D. echo get_post_meta(get_the_ID(), 'rating');
Solution
Step 1: Retrieve 'rating' for current post with correct parameters
Use get_post_meta(get_the_ID(), 'rating', true) to get a single value for the current post inside the Loop.
Step 2: Check if value exists and sanitize before output
Assign the value to a variable and check if it is truthy (not empty). Use esc_html() to safely display it.
Step 3: Evaluate options
if ($rating = get_post_meta(get_the_ID(), 'rating', true)) { echo esc_html($rating); } correctly does all steps. echo get_post_meta('rating', get_the_ID(), true); swaps parameters. if (get_post_meta('rating')) { echo get_post_meta(get_the_ID(), 'rating'); } uses wrong parameter order and no sanitization. echo get_post_meta(get_the_ID(), 'rating'); echoes without checking if value exists.
Final Answer:
if ($rating = get_post_meta(get_the_ID(), 'rating', true)) { echo esc_html($rating); } -> Option B
Quick Check:
Check existence + sanitize output = if ($rating = get_post_meta(get_the_ID(), 'rating', true)) { echo esc_html($rating); } [OK]
Hint: Assign and check value before echoing, sanitize output [OK]
Common Mistakes:
Swapping post ID and key parameters
Not checking if value exists before echo
Not sanitizing output before display
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.