How can I catch WordPress custom settings page slug has already changed?

you can use the admin_init hook along with the add_query_arg() function to modify the redirection URL for handle the situation. Redirect users to the correct URL admin.php?page=management if they access the settings page with an unexpected slug. Modify the redirection URL after settings have been updated to include the current page slug management, ensuring that … Read more

Using WP_PLUGIN_DIR for include file

It doesn’t make a lot of sense, to me, to say “these should not be used directly by plugins”. I tend to think you should use an available function over the constant – if an available function exists – which, in your case, does not. I would go ahead and use the WP_PLUGIN_DIR constant.

Plugin’s “Update Now” not working – Installed in folder with random suffix

I tried the hook update_plugins_{$hostname} following the fresher informations I found in the link quoted by Tom J Nowell : https://make.wordpress.org/core/2021/06/29/introducing-update-uri-plugin-header-in-wordpress-5-8/ here is a example of plugin with self managed update. it’s a base for update by the Updates page and the Plugins page and this example can be complete to manage more details, e.g. … Read more