Where does WordPress get the theme name from to check for updates?

The question:

I’m using a customised version of a commercial theme, with a lot of stuff in it.

I’ve changed style.css to only have:

/*!
Theme Name: A quite unique theme name
Theme URI: http://www.mywebsite.org/
Version: 1.0.0
Description: Unique description
*/

WordPress still finds an ‘update’ for the theme using the original name of the theme from the vendor. WordPress says the current version is 1.0.0, which matches the style.css header.

Where is it getting the name from in order to look up the update?

Thanks!

The Solutions:

Below are the methods you can try. The first solution is probably the best. Try others if the first one doesn’t work. Senior developers aren’t just copying/pasting – they read the methods carefully & apply them wisely to each case.

Method 1

It’s the directory name.

If your theme is in wp-content/themes/my-theme, then the theme name is my-theme.

Method 2

For anyone looking to change the theme name (which as per Jacob’s answer is the directory name) and have WordPress not know what you’ve done you can manually change settings as described here: https://docs.appthemes.com/tutorials/how-to-change-wordpress-themes-directly-from-the-database/

For me the ‘template’ option also needed to be the directory name, it did not work as the string of the name as in the style.css header, which is what this doc says.

Also the commercial theme I was using did do some slightly weird things but they were an easy fix, so I would not recommend doing this without thoroughly testing that a theme/plugin you’re using doesn’t have some stored hard-coded reference to the directory name somewhere!


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

Leave a Comment