I’ve always used the upgrader_process_complete
hook:
function my_plugins_update_completed( $upgrader_object, $options ) {
// If an update has taken place and the updated type is plugins and the plugins element exists
if ( $options['action'] == 'update' && $options['type'] == 'plugin' && isset( $options['plugins'] ) ) {
foreach( $options['plugins'] as $plugin ) {
// Check to ensure it's my plugin
if( $plugin == plugin_basename( __FILE__ ) ) {
// do stuff here
}
}
}
}
add_action( 'upgrader_process_complete', 'my_plugins_update_completed', 10, 2 );
More info in the Codex: https://developer.wordpress.org/reference/hooks/upgrader_process_complete/
Hope that helps
Related Posts:
- How to include wp-load.php from any location?
- Correct way to enqueue jquery-ui
- How to echo the_excerpt without the P tag wrapper?
- How can I update a wordpress plugin from a Git repository (github)
- Is There a Plugin Life Cycle Documentation?
- What is an alternative method to the WordPress private _doing_it_wrong() function
- Shortcode adding p and br tags
- Using AJAX in a plugin to submit form – REALLY confused
- Plugin Architecture/Design Pattern – is better to use a private Observer/Mediator Pattern for plugin subclasses or WP add_action?
- Problems with localization
- Install and load additional plugins when running unit tests
- Having Problem On Getting WP Post Gallery Images URL
- Post added via wp_insert_post with category doesn’t show in category listing
- How to properly use a hook to create template for custom product type in a plugin such as Woocommerce? [closed]
- How do I hook a custom discount to change a WC_Order price total on WooCommerce?
- Using a front controller in a WordPress plugin, any suggestions?
- Properly licensing a plugin that uses Apache 2.0 licensed code
- How to restrict plugin’s sub-menu pages to admin/subscribers?
- Can I dynamically create a link to my plugin settings/options page from my plugin description?
- How to load the plugin only when logged in?
- Self-hosted plugin update problems
- Cannot search post by taxonomy
- Hook into theme-switching later than `setup_theme`
- Save image as featured image
- Best choice of options/settings framework for plugin/theme development
- Will current_theme_supports return TRUE with a nonstandard add_theme_support?
- WP AJAX is not working, always returns 0
- Act on user meta updated, but only once
- get_pages Drop down list for selection of a page
- Admin auto-refresh is interfering with Firebug — how to prevent it?
- Hide plugin dashboard menu item for specific roles
- Display content from custom post without modifying the single template
- How do I add custom column to woocommerce cart?
- WordPress mode for emacs?
- Widget translation on my plugin
- Upload to a remote server using wp_remote_post
- how to add custom functionality after woocommerce place order button
- Problems with: manage_${post_type}_posts_columns
- Make WordPress cache permanent for some pages until edited
- Getting timestamp of activation plugin time
- conditionally load javascript & CSS for do_action() calls from plugin
- How can I rewrite a URL to pass requests to a custom method via AJAX? (I can’t use admin-ajax.php)
- Set different custom menu items for different user roles
- Getting List of all registered Dashboard Widgets
- Why does wp_remote_post returns an empty body response on certain endpoints?
- Replace youtube embed in wordpress
- Adding dropdown list to tutor lms registration form
- Where to write custom logs in WordPress
- How developed with version control word press site on shared host? [closed]
- Admin – Handle data before creating or updating a post, page or custom post
- How to Bind one post object Type with other postobject Type in Advanced Custom field [closed]
- wp_redirect on base wp-admin and login
- add_settings_field Data not passing to Options Page Like it should
- Valid filenames for add_action’s first parameter
- What to hook into to check a value before a post is published?
- Correct syntax for database inserts from plugin?
- How to add a gradient component to a custom block
- wp_schedule_event() set daily, but processed every second
- Can’t get AJAX call working in custom plugin
- Empty Pdf file generated with FPDF library in WordPress plugin [closed]
- $wpdb->update() always need a second try
- Why aren’t some plugin styles loading when I load a template?
- How to create custom dynamic url
- Pagination not working with custom wp_query
- My plugin won’t create table in wordpress 3.5
- Remove Permalink Meta Box not working?
- WordPress actions for plugin admin UI page
- wp_insert_user keeps echoing values
- Getting posts by taxonomy
- Pause plugin option page until all data manipulation is complete
- can members have multiple registration using the same password?
- Modify custom block plugin without losing content
- Exclude Woocommerce Product Category From Sitemap
- apply_filters() and call_user_func() to define and call a function outside a class
- How to show only the last two categories in a menu?
- HTML Elements in my WP Plugin being generated in JS. Security and Translated Text Question about this method being used
- howTo let wordpress endpoint return html-page
- User meta query using Wildcard
- use a (Polymer) web component within a plugin (or theme)?
- Warning: Illegal string offset ‘Andorra’ in … on line 106
- wp_ajax add_action fuction won’t fire on custom jQuery action
- wordpress4.8.2 Multilingual Plugin
- Customize WordPress Admin Menu
- Dedicated server and WPDB Class : huge slow-down of the website
- $wpdb how can i save my postmeta table before querying it
- Create dedicated page with custom template showing custom data
- How can I see a varibles value when my plugin runs?
- Add Button to TinyMCE Custom Menu
- How should I use wpdb class to submit a form in admin dashboard?
- WordPress plugin: admin-ajax.php not passing data to custom function
- Create pages for authors
- How do I create Widget within plugin that uses its own class?
- Looking for Hook that is fired after a plugin or wp upgrade is installed/updated
- How to design WooCommerce-like admin tabs for plugin settings page?
- Woocommerce: block user removing cart item
- How can I dynamically change title and description in WordPress?
- get the queried_object of an url
- Advanced Custom Fields conflicting with custom plugin when saving custom field
- plugabble wp_authenticate function not works from wp-login.php
- How to get recent one post from each category on home page?