YahnisElsts / plugin-update-checker

A custom update checker for WordPress plugins. Useful if you don't want to host your project in the official WP repository, but would still like it to support automatic updates. Despite the name, it also works with themes.
MIT License
2.21k stars 403 forks source link

Streamline "check for theme updates" #569

Open Milosh911 opened 5 months ago

Milosh911 commented 5 months ago

It sucks that we need debug bar plugin to check for updates. The way I streamlined it (quick and dirty) is to add new admin bar link:

<?php $wp_admin_bar->add_node( array( 'id' => 'theme-check-for-update', 'title' => 'Check for update', 'parent' => 'theme-version', 'href' => '/wp-admin/themes.php?check_for_updates=true&secret=SECRET_CODE', 'meta' => array( 'class' => 'theme-check-for-update', 'title' => 'Check for update', ) ) );?>

and check in functions.php (right after the buildUpdateChecker from documentation

require get_template_directory().'/backend/vendor/plugin-update-checker/plugin-update-checker.php'; use YahnisElsts\PluginUpdateChecker\v5\PucFactory; $myUpdateChecker = PucFactory::buildUpdateChecker( 'URL', get_template_directory()."/functions.php", 'SLUG' ); if($_GET['check_for_updates'] && $_GET['secret'] == SECRET_CODE){ $myUpdateChecker->checkForUpdates(); }

Again quick and dirty but it works for my needs. Since its so simple I think it should be available natively in plugin itself, as there are many use cases where people want to trigger update check manually.

Edit: sorry for code formatting, new on github issues and it's not very intuitive on how to do it...

YahnisElsts commented 5 months ago

I'd rather not change the WordPress admin UI any more than necessary. That's one of the reasons why all of the debugging info is only in the Debug Bar, not in a separate admin page or a widget. PUC is intended to be nearly invisible to end-users.

That said, you're of course welcome to add an Admin Bar/Toolbar link in your theme.