How do you manage your theme versions when privately distributing?

I’m working on a theme that I don’t want to be public or available via the default WordPress directory, as it’s going to be a framework that we use to develop a variety of websites we host.

Now, I wanted to know what methods you use for ensuring all your themes are up to date and the user is aware of any changes.

Allow me to explain;

When I deploy the theme and build the website all is fine. A few weeks go by and I add a new feature to the theme, make improvements, etc…

Now I want to distribute it to all the websites I host, but I also want the client to get a dismissable notification when they get a new version.

I know there are hooks for updating plugins and themes, but they don’t seem to work on manual FTP upload. So, I wonder how any of you perhaps tackle this task.

Kind regards.

(Posting via my Phone. Sorry for any errors)

1 Answer
1

I have a similar workflow. I use GitHub Updater to manage all of my 1st party plugins and themes. The versioning, which is specified in the GHU documentation, is Semantic Versioning. x.x.x, 1.0.4, or whatever. There’s a philosophy behind SemVar and I follow that.

I install the GitHub Updater and then install all my 1st party assets like themes and plugins via GitHub Updater from my GitHub account. You can use other git repositories if you need to. You can also use public or private repos too.

Once everything is installed, you make edits to your theme and then increment the version number. GitHub Updater will detect a difference in the versions and prompt the user for to Update.

There are also some continuous integration capabilities within GitHub Updater too, which from your question, may be what you’re looking for. You’d push any changes to your repo, then the repo would fire off webhooks and update all the themes (or plugins) that are set up for CI.

https://github.com/afragen/github-updater

Leave a Comment