Bird
Raised Fist0
Wordpressframework~20 mins

Site identity and branding in Wordpress - Practice Problems & Coding Challenges

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Challenge - 5 Problems
🎖️
Site Identity Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
component_behavior
intermediate
2:00remaining
How does WordPress use the Site Title in themes?
In a typical WordPress theme, where does the Site Title appear by default?
AOnly in the footer section as plain text
BInside the sidebar widget area by default
CIn the header section, usually wrapped in an <h1> or <p> tag
DIt is not displayed anywhere unless manually added
Attempts:
2 left
💡 Hint
Think about where visitors first see the site name on most websites.
📝 Syntax
intermediate
2:00remaining
Which function outputs the Site Tagline in WordPress?
Select the correct WordPress function that prints the Site Tagline (description) in a theme template.
Abloginfo('description');
Bget_bloginfo('title');
Cthe_site_tagline();
Dsite_tagline();
Attempts:
2 left
💡 Hint
The function starts with 'bloginfo' and takes a parameter.
state_output
advanced
2:00remaining
What is the output of this code snippet in a WordPress theme?
Consider this PHP code in a WordPress theme header.php file:

<?php if ( get_bloginfo('name') ) : ?>
  <h1><?php bloginfo('name'); ?></h1>
<?php endif; ?>

What will be displayed if the Site Title is set to "My Blog"?
Wordpress
<?php if ( get_bloginfo('name') ) : ?>
  <h1><?php bloginfo('name'); ?></h1>
<?php endif; ?>
A<h1>My Blog</h1>
BMy Blog without any HTML tags
CNothing, because get_bloginfo() returns empty
DA PHP error because bloginfo() cannot be used inside if
Attempts:
2 left
💡 Hint
get_bloginfo('name') returns the Site Title string.
🔧 Debug
advanced
2:00remaining
Why does this WordPress code not display the Site Logo?
Given this code in a theme template:

<?php the_custom_logo(); ?>

The site has a logo set in the Customizer, but nothing shows on the page. What is the most likely reason?
Wordpress
<?php the_custom_logo(); ?>
AThe logo image file is missing from the media library
BThe theme does not support 'custom-logo' feature, so the logo won't display
Cthe_custom_logo() requires a parameter with the logo URL
Dthe_custom_logo() only works in the footer template
Attempts:
2 left
💡 Hint
Check if the theme declares support for custom logos.
🧠 Conceptual
expert
2:00remaining
How does WordPress handle site identity for multisite networks?
In a WordPress multisite network, which statement about Site Title and Tagline is true?
AOnly the main site can have a Site Title and Tagline; others inherit it
BThe network admin sets a single Site Title and Tagline for all sites
CSite Title and Tagline are shared but can be overridden by plugins
DEach site in the network has its own Site Title and Tagline settings
Attempts:
2 left
💡 Hint
Think about how multisite allows independent sites.

Practice

(1/5)
1. What is the main purpose of the Site Identity section in WordPress Customizer?
easy
A. To add new posts and pages to the website
B. To set the site logo, title, and tagline for branding
C. To manage user roles and permissions
D. To install and activate plugins

Solution

  1. Step 1: Understand Site Identity role

    The Site Identity section is designed to let users set the logo, site title, and tagline, which are key branding elements.
  2. Step 2: Compare with other options

    Adding posts, managing users, and plugins are handled elsewhere in WordPress, not in Site Identity.
  3. Final Answer:

    To set the site logo, title, and tagline for branding -> Option B
  4. Quick Check:

    Site Identity = logo, title, tagline [OK]
Hint: Site Identity = logo + title + tagline for branding [OK]
Common Mistakes:
  • Confusing Site Identity with content management
  • Thinking user roles are set here
  • Mixing plugin management with branding
2. Which of the following is the correct way to add a site logo using WordPress Customizer PHP code?
easy
A. add_theme_support('custom-logo');
B. register_logo('custom-logo');
C. add_logo_support();
D. enable_logo_feature();

Solution

  1. Step 1: Recall WordPress theme support functions

    WordPress uses add_theme_support('custom-logo') to enable logo support in themes.
  2. Step 2: Check other options

    Functions like register_logo, add_logo_support, or enable_logo_feature do not exist in WordPress core.
  3. Final Answer:

    add_theme_support('custom-logo'); -> Option A
  4. Quick Check:

    Enable logo with add_theme_support('custom-logo') [OK]
Hint: Use add_theme_support('custom-logo') to enable logo [OK]
Common Mistakes:
  • Using non-existent functions
  • Confusing logo registration with theme support
  • Forgetting to add theme support before using logo
3. Given this code snippet in a WordPress theme's functions.php:
add_theme_support('custom-logo');

function display_logo() {
  the_custom_logo();
}
display_logo();
What will be the output on the site if no logo is set in the Customizer?
medium
A. The site logo image will display a default placeholder
B. An error message will appear on the site
C. The site title text will automatically show instead
D. Nothing will display where the logo should be

Solution

  1. Step 1: Understand the_custom_logo() behavior

    If no logo is set, the_custom_logo() outputs nothing (no image or placeholder).
  2. Step 2: Check fallback behavior

    It does not show an error or fallback text automatically; the theme must handle that separately.
  3. Final Answer:

    Nothing will display where the logo should be -> Option D
  4. Quick Check:

    the_custom_logo() outputs nothing if no logo set [OK]
Hint: No logo set means the_custom_logo() outputs nothing [OK]
Common Mistakes:
  • Assuming a default image appears
  • Expecting automatic site title fallback
  • Thinking an error message shows up
4. You added add_theme_support('custom-logo'); in your theme but the logo does not appear on the site. What is the most likely cause?
medium
A. You forgot to call the_custom_logo() in your theme template
B. You did not upload a logo image in the Customizer
C. Your theme does not support Customizer at all
D. You need to install a plugin to enable logos

Solution

  1. Step 1: Check theme code for logo display

    Adding theme support enables logo feature but does not display it automatically; you must call the_custom_logo() in templates.
  2. Step 2: Verify other options

    Uploading logo is needed but even if uploaded, without calling the_custom_logo(), it won't show. Themes support Customizer by default, and no plugin is required for logos.
  3. Final Answer:

    You forgot to call the_custom_logo() in your theme template -> Option A
  4. Quick Check:

    Call the_custom_logo() to display logo [OK]
Hint: Add the_custom_logo() in template to show logo [OK]
Common Mistakes:
  • Assuming add_theme_support shows logo automatically
  • Thinking a plugin is needed for logos
  • Ignoring the need to upload a logo image
5. You want to customize your WordPress site so the tagline only shows if it is not empty. Which PHP code snippet correctly implements this in your theme template?
hard
A. echo '

' . get_bloginfo('description') . '

';
B. if (get_bloginfo('name')) { echo '

' . get_bloginfo('description') . '

'; }
C. if (get_bloginfo('description')) { echo '

' . get_bloginfo('description') . '

'; }
D. if (get_bloginfo('tagline') !== '') { echo get_bloginfo('tagline'); }

Solution

  1. Step 1: Identify correct function for tagline

    The tagline is retrieved by get_bloginfo('description'), not 'tagline'.
  2. Step 2: Check condition for non-empty tagline

    Using if (get_bloginfo('description')) checks if tagline is not empty before echoing it wrapped in <p> tags.
  3. Step 3: Evaluate other options

    echo '

    ' . get_bloginfo('description') . '

    '; always echoes tagline even if empty. if (get_bloginfo('name')) { echo '

    ' . get_bloginfo('description') . '

    '; } checks site name, not tagline. if (get_bloginfo('tagline') !== '') { echo get_bloginfo('tagline'); } uses wrong key 'tagline' which returns empty string.
  4. Final Answer:

    if (get_bloginfo('description')) { echo '<p>' . get_bloginfo('description') . '</p>'; } -> Option C
  5. Quick Check:

    Use get_bloginfo('description') to get tagline [OK]
Hint: Use get_bloginfo('description') to get tagline safely [OK]
Common Mistakes:
  • Using wrong key 'tagline' instead of 'description'
  • Not checking if tagline is empty before echoing
  • Confusing site name with tagline