• This repository has been archived on 01/Feb/2019
  • Stars
    star
    107
  • Rank 322,431 (Top 7 %)
  • Language
    PHP
  • Created over 13 years ago
  • Updated over 9 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A theme updater for GitHub hosted Wordpress themes. This Wordpress plugin automatically checks GitHub for theme updates and enables automatic install.

No Longer Supported

Since we are no longer supporting this plugin please feel free to look at one of the many forks for possible updates and fixes. If you are couragous enough you can fork this project and upgrade it as needed. Thanks

Wordpress plugin: a theme updater for GitHub-hosted Wordpress themes

Do you wish that you could somehow get update notifications within WordPress for custom themes that you use for your site? Perhaps a custom theme that you had developed specifically for your site? Or a theme you developed for a client site? And do you wish you could do "automatic updates" to those custom themes just like you can for public themes available from WordPress.org?

This WordPress plugin lets you host a custom theme in a Github public repository (private repos are not supported) and then notify sites when a new version of the theme is available. Those sites can then perform an auto-update just as with publicly available themes. The plugin also allows you to roll back to a previous version of the theme.

This plugin works with WordPress in both a standalone and MultiSite mode and has been tested up to WordPress 3.3.x. It can be found in the WordPress plugin directory at:

Bugs, feature requests or other suggestions should be filed as issues at the plugin's Github repository

Screenshots

Screenshot One


Screenshot Two


Screenshot Three


Installation

Here is a sample theme. Download (.zip)

1 - Publish your theme to a public GitHub Repository

2 - Update Your theme's style.css

Add Github Theme URI to your style.css header, this will be where the plugin looks for updates. I also recommend using semantic versioning for the version number. (Note that the version number does not need to start with "v" as shown in the examples below. You can simply use a number such as "1.2.0". You just need to be consistent with how you create version numbers.)

Example header:

Theme Name: Example
Theme URI: http://example.com/
Github Theme URI: https://github.com/username/repo
Description: My Example Theme
Author: person
Version: v1.0.0

Push these changes back to the project.

3 - Create a new tag and push the change back to the repo

$ git tag v1.0.0
$ git push origin v1.0.0

Note, your tag numbers and theme version numbers should match. If you want to increment the version number, be sure to update and commit your style.css prior to creating the new git tag.

4 - Upload your modified theme to your WordPress site

Before the plugin can work, your theme with the Github Theme URI addition needs to be uploaded to our WordPress site.

  • Create a ZIP file of your theme on your local computer.
  • Inside your WordPress admin menu (standalone) or network admin menu (MultiSite) go to the Install Themes panel and click on "Upload".
  • Choose your ZIP file and press "Install Now".

Your theme will now be installed inside of WordPress and can be activated for your site. From this point forward all updates will be installed automatically once the plugin is activated.

5 - Download and install the plugin

Inside your WordPress admin menu (standalone) or network admin menu (MultiSite) choose "Add New" under the Plugins menu. Search for "Theme Updater" and this will bring you to the plugin's WordPress page where you can install the plugin directly into your WordPress installation. (Alternatively you can visit that page, download the plugin as a zip file and upload it to your WordPress install, but why go through all that work?)

With the plugin installed and activated (it must be network activated on multisite installs) on your site and the theme uploaded, the next time you push a new tag to your Github repository, it will be recognized by the plugin and an update notice will appear in your admin menu.

This is no configuration or settings panel for this plugin.


Updating The Theme

The process of updating your theme and generating auto-update notifications is now simply this:

1 - Make your changes to the theme and commit those changes to your local git repository.

2 - IMPORTANT - Update your style.css file with a new version number and commit that change to your local repository.

3 - Push your changes to the Github repository

$ git push origin master

4 - Create a new tag and push the change back to the repo

$ git tag v1.1.0
$ git push origin v1.1.0

Note, you should use the identical number for the tag that you did for a version number in style.css in step #2.

That's it. Now any sites with your theme installed will receive an update notification the next time their WordPress installation checks for updates.


Code Comments

The flow of the plugin is:

1 - Get the Theme's Update URI

Code is a mashup of Wordpress source. I'm looking at:

2 - Get the github tags

Pull the tags trough the Repository Refs API.

3 - Notify Worpress of the Update

Publish the update details to the response array in the update_themes transient, similar to how Wordpress updates themes.

Changelog

*** v1.3.7 - July 23, 2012

  • URLencode repo and user names
  • Handle Github API errors appropriately

*** v1.3.6 - July 23, 2012

v1.3.5 - July 23, 2012

v1.3.4 - February 8, 2012

  • Fix to SSL issue. Code by Github user bainternet. Added by Github user danyork.

More Repositories

1

Main-Site-Theme

Theme for ucf.edu
PHP
5
star
2

WP-Allowed-Hosts

WordPress plugin that allows you to specify a domain to be checked against the `http_request_host_is_external` filter.
PHP
4
star
3

Campus-Map

UCF Campus Map
HTML
4
star
4

Disable-Yoast-SEO-Redirects

Disables Yoast SEO Premium's redirection manager, including automatic redirection generation and notifications.
PHP
4
star
5

UCF-Header

JavaScript
3
star
6

unify-events

events system
JavaScript
3
star
7

VarnishDependencyPurge

WordPress plugin to purge Vanish caches. Includes support for non-permalink page dependencies.
PHP
3
star
8

UCF-WordPress-Theme

A generic, responsive WordPress theme for UCF websites, built off of the Athena Framework.
PHP
3
star
9

Athena-Framework

A front-end web framework for UCF websites and applications
HTML
3
star
10

Brand-Theme

WordPress theme for displaying and managing UID files
PHP
2
star
11

critical-css

Critical CSS generator for UCF websites and applications
JavaScript
2
star
12

Weather-Data

Script that grabs new or cached weather data and outputs JSON for use on other UCF sites.
PHP
2
star
13

UCF-Critical-CSS-Plugin

WordPress plugin that allows for critical CSS and deferred styles and supports automatic generation via an external service.
PHP
1
star
14

Colleges-Theme

PHP
1
star
15

UCF-People-CPT

Provides a custom post type for People and People Groups.
PHP
1
star
16

FSI-theme

Wordpress theme for new Florida Space Institute site. Based off of bootstrap branch of Generic theme
PHP
1
star
17

UCF-Remote-Object-Field

Provides an ACF field type for pulling and parsing remote JSON objects into a choice field.
PHP
1
star
18

UCF-Post-List-Shortcode

Provides a shortcode for displaying lists of posts.
PHP
1
star
19

Rosen

WordPress theme for Rosen College of Hospitality Management website.
PHP
1
star
20

ucf-rest-menus

WordPress plugin that provides a REST API for accessing WordPress menus.
PHP
1
star
21

UCF-Announcements

Provides a custom post type for announcements.
PHP
1
star
22

BS-mainsite-theme

Custom theme for Businessservices.ucf.edu
Less
1
star
23

Pegasus-Theme

Wordpress theme for Pegasus Magazine
JavaScript
1
star
24

PostMaster

Python
1
star
25

Provost-Bootstrap

PHP
1
star
26

BS-spot-theme

Theme for spot.ucf.edu
Less
1
star
27

ucf-az-devops-rest-api

PHP
1
star
28

BS-theme-framework

A quickstart WordPress template build, complete with prebuilt template components, Gulp and Node configurations, and SMACSS SASS modular library build.
PHP
1
star
29

PrimoVE-baseline-view

JavaScript
1
star
30

WRC-Provost

Woman's research center theme based on Provost theme
PHP
1
star
31

bs-copierservices-theme

Theme for copiers.busserv.ucf.edu and DEV/QA environments
CSS
1
star
32

BS-officeplus-theme

WordPress theme for UCF Office Plus
JavaScript
1
star
33

TechTransfer-Theme

PHP
1
star
34

Community-Relations-WP-Theme

PHP
1
star
35

Athena-GravityForms-Plugin

Applies Athena Framework styling to Gravity Forms.
SCSS
1
star
36

50

WordPress theme for UCF's 50th Anniversary Website
HTML
1
star
37

BS-ucfcard-theme

Custom theme for ucfcard.ucf.edu
JavaScript
1
star
38

TW-Harvest-Project-Integ

Python
1
star
39

ansible-role-httpd24-config

Flexible, powerful, templated configuration for Apache 2.4 on RHEL/CentOS/Amazon Linux
Jinja
1
star
40

UCF-Page-Assets-Plugin

WordPress plugin that allows editors to enqueue a page specific stylesheet and javascript file.
PHP
1
star
41

Nicholson

PHP
1
star
42

Unit-Identifier-Generator

Django application that dynamically generates UCF UID's based on user input.
HTML
1
star
43

ucf-mobile-wordpress

CSS
1
star
44

platformspace-renamer

script to remove incompatible named files and directories from a platform space
Shell
1
star
45

Publications-Theme

PHP
1
star
46

BOT-Bootstrap

Board of Trustees website rebuild in Bootstrap
PHP
1
star
47

BS-printing-theme

Theme for printing.ucf.edu
CSS
1
star
48

Experience-Homecoming-2012

Prototype single-page site using Masonry.js.
CSS
1
star
49

Search-Service-Django

A django based REST API for accessing search data and related data management tools.
Python
1
star
50

UCF-GMUCF-Theme

WordPress theme that serves up HTML emails for bi-weekly news & announcements, events, and weekly coronavirus updates.
PHP
1
star
51

WP-Apple-Touch-Icons

Provides the ability to upload a separate apple-touch-icon image, instead of using the site's favicon. Also allows for per page uploads of apple-icon-image.
PHP
1
star
52

CHPS-Child-Theme

Child theme of the UCF College Theme used for College of Health Professions and Sciences.
PHP
1
star