Bird
Raised Fist0
Wordpressframework~5 mins

Style.css and theme metadata in Wordpress

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
Introduction

The style.css file in a WordPress theme holds the theme's main styles and important information about the theme. This information helps WordPress recognize and display the theme details in the dashboard.

When creating a new WordPress theme from scratch.
When customizing or updating an existing theme's styles and metadata.
When sharing or distributing a theme so users can see theme details.
When troubleshooting theme recognition issues in WordPress.
When adding theme support or credits in the theme header.
Syntax
Wordpress
/*
Theme Name: Your Theme Name
Theme URI: http://example.com/your-theme
Author: Your Name
Author URI: http://example.com
Description: A short description of your theme.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: your-theme-textdomain
Tags: light, two-columns, responsive-layout
*/

/* Your CSS styles start here */
The metadata block must be at the very top of the style.css file inside a CSS comment block.
Each line starts with a key like Theme Name followed by a colon and the value.
Examples
A minimal metadata block for a simple blog theme.
Wordpress
/*
Theme Name: Simple Blog
Author: Jane Doe
Version: 1.0
Description: A clean and simple blog theme.
*/
A full metadata example including URLs, license, and tags.
Wordpress
/*
Theme Name: Modern Portfolio
Theme URI: https://example.com/modern-portfolio
Author: John Smith
Author URI: https://example.com
Description: A modern portfolio theme with responsive design.
Version: 2.3
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: modern-portfolio
Tags: portfolio, responsive, grid-layout
*/
Sample Program

This style.css file starts with the required theme metadata so WordPress can identify the theme. Below it, simple CSS styles set the font, background, and heading color.

Wordpress
/*
Theme Name: Friendly Theme
Theme URI: https://friendlytheme.example
Author: Friendly Dev
Author URI: https://friendlydev.example
Description: A warm and welcoming WordPress theme.
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: friendly-theme
Tags: friendly, clean, accessible
*/

body {
  font-family: Arial, sans-serif;
  background-color: #f9f9f9;
  color: #333333;
}

h1 {
  color: #2a7ae2;
}
OutputSuccess
Important Notes

Always keep the metadata block at the top of style.css for WordPress to read it correctly.

Use meaningful and accurate information in the metadata to help users understand your theme.

The Text Domain is important for translations and should match your theme folder name.

Summary

The style.css file holds both the theme's styles and its metadata.

The metadata block tells WordPress the theme's name, author, version, and more.

Proper metadata helps WordPress list and manage your theme correctly.

Practice

(1/5)
1. What is the main purpose of the style.css file in a WordPress theme?
easy
A. To configure WordPress user roles
B. To store the theme's PHP functions
C. To manage WordPress database connections
D. To hold the theme's styles and metadata information

Solution

  1. Step 1: Understand the role of style.css

    The style.css file contains CSS styles that define the look of the theme.
  2. Step 2: Recognize the metadata block

    It also includes a metadata comment block that tells WordPress about the theme's name, author, and version.
  3. Final Answer:

    To hold the theme's styles and metadata information -> Option D
  4. Quick Check:

    style.css = styles + metadata [OK]
Hint: Remember style.css holds styles plus theme info [OK]
Common Mistakes:
  • Confusing style.css with functions.php
  • Thinking style.css manages database or users
  • Ignoring the metadata block in style.css
2. Which of the following is the correct way to start the metadata block in style.css for a WordPress theme?
easy
A. /* Theme Name: My Theme */
B. // Theme Name: My Theme
C.
D. # Theme Name: My Theme

Solution

  1. Step 1: Identify CSS comment syntax

    CSS comments use /* ... */ to enclose text, including metadata.
  2. Step 2: Check WordPress metadata format

    WordPress expects metadata in a CSS comment block at the top of style.css.
  3. Final Answer:

    /*\nTheme Name: My Theme\n*/ -> Option A
  4. Quick Check:

    Metadata uses CSS comments /* ... */ [OK]
Hint: Metadata must be inside CSS comment block /* ... */ [OK]
Common Mistakes:
  • Using // or # which are not CSS comments
  • Using HTML comments in CSS
  • Placing metadata outside comment block
3. Given this metadata block in style.css, what is the theme's version?
/*
Theme Name: Simple Theme
Author: Jane Doe
Version: 1.2.3
*/
medium
A. Jane Doe
B. 1.2.3
C. Simple Theme
D. style.css

Solution

  1. Step 1: Locate the Version field

    Within the metadata block, the line starting with 'Version:' shows the theme's version number.
  2. Step 2: Read the version value

    The version is '1.2.3' as given after 'Version:'.
  3. Final Answer:

    1.2.3 -> Option B
  4. Quick Check:

    Version field = 1.2.3 [OK]
Hint: Look for 'Version:' line in metadata block [OK]
Common Mistakes:
  • Confusing Author with Version
  • Picking Theme Name as version
  • Ignoring the metadata block format
4. What is wrong with this metadata block in style.css that prevents WordPress from recognizing the theme?
/*
Theme-Name: Cool Theme
Author: John Smith
Version: 2.0
*/
medium
A. The field 'Theme-Name' should be 'Theme Name' without a dash
B. The comment block is missing the closing tag
C. The version number must be numeric only
D. Author name cannot contain spaces

Solution

  1. Step 1: Check metadata field names

    WordPress requires exact field names like 'Theme Name' with a space, not 'Theme-Name'.
  2. Step 2: Verify comment block correctness

    The comment block is properly opened and closed with /* and */.
  3. Final Answer:

    The field 'Theme-Name' should be 'Theme Name' without a dash -> Option A
  4. Quick Check:

    Field names must match exactly [OK]
Hint: Use exact field names like 'Theme Name' with space [OK]
Common Mistakes:
  • Using dashes instead of spaces in field names
  • Leaving comment block unclosed
  • Misunderstanding version format rules
5. You want to create a child theme that inherits styles from its parent. Which metadata field must you add in the child theme's style.css to link it to the parent theme?
hard
A. Inherits: parent-theme-folder-name
B. Parent: parent-theme-name
C. Template: parent-theme-folder-name
D. Depends-On: parent-theme-name

Solution

  1. Step 1: Understand child theme metadata

    To link a child theme to its parent, WordPress uses the 'Template' field with the parent's folder name.
  2. Step 2: Identify correct field name

    The correct metadata field is 'Template', not 'Parent', 'Inherits', or 'Depends-On'.
  3. Final Answer:

    Template: parent-theme-folder-name -> Option C
  4. Quick Check:

    Child theme uses Template field to link parent [OK]
Hint: Use 'Template' field with parent's folder name [OK]
Common Mistakes:
  • Using 'Parent' instead of 'Template'
  • Confusing theme name with folder name
  • Omitting the Template field in child theme