Featured images let you add a main picture to your posts or pages. This makes your content look nice and helps readers understand what it is about quickly.
When you want to show a main picture for a blog post to attract readers.
When creating a portfolio and you want each project to have a thumbnail image.
When making a news site and you want each article to have a headline image.
When designing a homepage that shows recent posts with images.
When you want to improve how your posts look when shared on social media.
Use set_post_thumbnail to assign a featured image to a post programmatically.
The $post_id is the ID of the post, and $thumbnail_id is the ID of the image attachment.
Examples
This code checks if the current post has a featured image and then displays it.
Wordpress
<?php if ( has_post_thumbnail() ) {
the_post_thumbnail();
} ?>
This sets the featured image with ID 123 for the post with ID 42.
Wordpress
<?php set_post_thumbnail( 42, 123 ); ?>
This displays the featured image in the 'medium' size.
Wordpress
<?php the_post_thumbnail( 'medium' ); ?>
Sample Program
This WordPress template code loops through posts. For each post, it shows the featured image in large size with an alt text for accessibility. If no featured image is set, it shows a message. Then it displays the post title and content.
Wordpress
<?php
// Template part to show featured image in a post
if ( have_posts() ) {
while ( have_posts() ) {
the_post();
if ( has_post_thumbnail() ) {
the_post_thumbnail( 'large', ['alt' => get_the_title()] );
} else {
echo '<p>No featured image set.</p>';
}
the_title( '<h2>', '</h2>' );
the_content();
}
}
?>
OutputSuccess
Important Notes
Always add alt text to images for accessibility.
Featured images improve how your posts look on social media and search engines.
You can set featured images in the WordPress editor or programmatically with code.
Summary
Featured images add a main picture to posts or pages.
Use has_post_thumbnail() to check and the_post_thumbnail() to display it.
They help make your site more attractive and accessible.
Practice
(1/5)
1. What is the main purpose of a featured image in WordPress?
easy
A. To change the font style of the post
B. To add background music to posts
C. To add a video to the sidebar
D. To add a main picture to posts or pages
Solution
Step 1: Understand the role of featured images
Featured images are used to add a main picture that represents a post or page visually.
Step 2: Compare options with this purpose
Only To add a main picture to posts or pages describes adding a main picture; others describe unrelated features.
Final Answer:
To add a main picture to posts or pages -> Option D
Quick Check:
Featured image = main picture [OK]
Hint: Featured images show main pictures for posts/pages [OK]
Common Mistakes:
Confusing featured images with videos or audio
Thinking featured images change fonts
Assuming featured images affect sidebars
2. Which WordPress function correctly checks if a post has a featured image?
easy
A. has_post_thumbnail()
B. the_post_thumbnail()
C. get_featured_image()
D. check_thumbnail()
Solution
Step 1: Identify the function to check featured image existence
WordPress uses has_post_thumbnail() to check if a post has a featured image.
Step 2: Differentiate from display functions
the_post_thumbnail() displays the image, not checks it. Other options are not valid WordPress functions.
Final Answer:
has_post_thumbnail() -> Option A
Quick Check:
Check featured image = has_post_thumbnail() [OK]
Hint: Use has_post_thumbnail() to check existence [OK]
Common Mistakes:
Using the_post_thumbnail() to check instead of display
Assuming get_featured_image() exists
Confusing function names
3. What will the following code output if the current post has a featured image?
The code checks if the post has a featured image using has_post_thumbnail().
Step 2: Analyze the output when true
If true, it calls the_post_thumbnail('medium'), which displays the image in medium size.
Final Answer:
Displays the featured image in medium size -> Option C
Quick Check:
has_post_thumbnail() true = show medium image [OK]
Hint: If has_post_thumbnail() true, the_post_thumbnail() shows image [OK]
Common Mistakes:
Thinking it shows full size by default
Assuming it prints 'No image' when image exists
Confusing function usage causing syntax errors
4. Identify the error in this code snippet that tries to display a featured image:
if (has_post_thumbnail) {
the_post_thumbnail();
}
medium
A. Missing semicolon after the_post_thumbnail()
B. Missing parentheses after has_post_thumbnail
C. No error, code is correct
D. the_post_thumbnail() should have an argument
Solution
Step 1: Check function usage
has_post_thumbnail is a function and must be called with parentheses ().
Step 2: Verify other parts
the_post_thumbnail() can be called without arguments; the semicolon is present after it.
Final Answer:
Missing parentheses after has_post_thumbnail -> Option B
Quick Check:
Function calls need () [OK]
Hint: Always add () when calling functions [OK]
Common Mistakes:
Forgetting parentheses on function calls
Thinking arguments are always required
Assuming semicolons are mandatory in PHP
5. You want to show a featured image only if it exists, otherwise show a default image located at /images/default.jpg. Which code snippet correctly does this?
hard
A. if (has_post_thumbnail()) {
the_post_thumbnail();
} else {
echo '';
}
B. the_post_thumbnail() ?: '';
C. if (the_post_thumbnail()) {
the_post_thumbnail();
} else {
echo '';
}
D. has_post_thumbnail() ? the_post_thumbnail('/images/default.jpg') : '';
Solution
Step 1: Check condition for featured image existence
Use has_post_thumbnail() to check if the post has a featured image.
Step 2: Display featured image or default image
If true, display with the_post_thumbnail(). Otherwise, echo an <img> tag with the default image path.
Final Answer:
if (has_post_thumbnail()) {
the_post_thumbnail();
} else {
echo '<img src="/images/default.jpg" alt="Default">';
} -> Option A
Quick Check:
Check existence, show image or default [OK]
Hint: Use has_post_thumbnail() with if-else for fallback image [OK]
Common Mistakes:
Using the_post_thumbnail() in condition instead of has_post_thumbnail()
Passing image path as argument to the_post_thumbnail() incorrectly
Not providing an else fallback for missing images
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.