Bump version to 2.0.10 with improved plugin details popup display

This commit is contained in:
2025-04-13 02:39:42 +01:00
parent 4c9e8d5a7b
commit ae84806cf9
8 changed files with 162 additions and 21 deletions

View File

@ -2,6 +2,24 @@
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
## [2.0.10] - 2024-05-18
### Fixed
- Plugin details popup version display issue with Git Updater integration
- Added JavaScript-based solution to ensure correct version display in plugin details
### Improved
- Version consistency across all plugin views
- Enhanced cache busting for plugin information API
## [2.0.9] - 2024-05-18
### Fixed
- Plugin details popup now correctly shows version and author information
- Added support for both old and new plugin slugs to fix caching issues
### Improved
- Cache clearing mechanism to ensure plugin details are always up-to-date
- Enhanced version display in plugin details popup
## [2.0.8] - 2024-05-17 ## [2.0.8] - 2024-05-17
### Fixed ### Fixed
- Plugin details popup now correctly shows version and author information - Plugin details popup now correctly shows version and author information

View File

@ -8,7 +8,7 @@
'use strict'; 'use strict';
// Current plugin version - this should match the version in the main plugin file // Current plugin version - this should match the version in the main plugin file
const CURRENT_VERSION = '2.0.9'; const CURRENT_VERSION = '2.0.10';
// Plugin slugs to check for // Plugin slugs to check for
const OUR_SLUGS = ['wp-fix-plugin-does-not-exist-notices', 'fix-plugin-does-not-exist-notices']; const OUR_SLUGS = ['wp-fix-plugin-does-not-exist-notices', 'fix-plugin-does-not-exist-notices'];

View File

@ -52,6 +52,10 @@ cd ..
if [ -f "$ZIP_FILE" ]; then if [ -f "$ZIP_FILE" ]; then
echo "✅ Build successful: $ZIP_FILE created" echo "✅ Build successful: $ZIP_FILE created"
echo "File path: $(pwd)/$ZIP_FILE" echo "File path: $(pwd)/$ZIP_FILE"
# Deploy to local WordPress installation
echo "\nDeploying to local WordPress installation..."
./scripts/deploy-local.sh
else else
echo "❌ Build failed: ZIP file was not created" echo "❌ Build failed: ZIP file was not created"
exit 1 exit 1

109
clear-transients.php Normal file
View File

@ -0,0 +1,109 @@
<?php
/**
* Plugin Name: Clear Plugin Transients
* Description: A temporary plugin to clear all WordPress plugin transients
* Version: 1.0.0
*/
// If this file is called directly, abort.
if (!defined('WPINC')) {
die;
}
// Run on plugin activation
register_activation_hook(__FILE__, 'clear_plugin_transients');
// Also run immediately
add_action('admin_init', 'clear_plugin_transients');
/**
* Clear all plugin-related transients
*/
function clear_plugin_transients() {
global $wpdb;
// Log that we're running
error_log('Running clear_plugin_transients');
// Clear specific plugin transients
$our_slugs = array('wp-fix-plugin-does-not-exist-notices', 'fix-plugin-does-not-exist-notices');
foreach ($our_slugs as $slug) {
// Delete all possible transients for this plugin
delete_transient('plugins_api_' . $slug);
delete_site_transient('plugins_api_' . $slug);
delete_transient('plugin_information_' . $slug);
delete_site_transient('plugin_information_' . $slug);
// Log what we're deleting
error_log('Deleting transients for: ' . $slug);
// Delete any transients with the slug in the name
$wpdb->query($wpdb->prepare(
"DELETE FROM $wpdb->options WHERE option_name LIKE %s OR option_name LIKE %s",
'%' . $wpdb->esc_like('_transient_' . $slug) . '%',
'%' . $wpdb->esc_like('_transient_timeout_' . $slug) . '%'
));
// Delete site transients too (for multisite)
if (is_multisite()) {
$wpdb->query($wpdb->prepare(
"DELETE FROM $wpdb->sitemeta WHERE meta_key LIKE %s OR meta_key LIKE %s",
'%' . $wpdb->esc_like('_site_transient_' . $slug) . '%',
'%' . $wpdb->esc_like('_site_transient_timeout_' . $slug) . '%'
));
}
}
// Clear all plugin API transients
$wpdb->query("DELETE FROM $wpdb->options WHERE option_name LIKE '%_transient_plugins_api_%'");
$wpdb->query("DELETE FROM $wpdb->options WHERE option_name LIKE '%_transient_timeout_plugins_api_%'");
$wpdb->query("DELETE FROM $wpdb->options WHERE option_name LIKE '%_transient_plugin_information_%'");
$wpdb->query("DELETE FROM $wpdb->options WHERE option_name LIKE '%_transient_timeout_plugin_information_%'");
// Clear site transients too (for multisite)
if (is_multisite()) {
$wpdb->query("DELETE FROM $wpdb->sitemeta WHERE meta_key LIKE '%_site_transient_plugins_api_%'");
$wpdb->query("DELETE FROM $wpdb->sitemeta WHERE meta_key LIKE '%_site_transient_timeout_plugins_api_%'");
$wpdb->query("DELETE FROM $wpdb->sitemeta WHERE meta_key LIKE '%_site_transient_plugin_information_%'");
$wpdb->query("DELETE FROM $wpdb->sitemeta WHERE meta_key LIKE '%_site_transient_timeout_plugin_information_%'");
}
// Clear update cache
delete_site_transient('update_plugins');
delete_site_transient('update_themes');
delete_site_transient('update_core');
delete_site_transient('plugin_information');
// Clear plugin update counts
delete_transient('plugin_updates_count');
delete_site_transient('plugin_updates_count');
// Clear plugin slugs cache
delete_transient('plugin_slugs');
delete_site_transient('plugin_slugs');
// Force refresh of plugin update information
if (function_exists('wp_clean_plugins_cache')) {
wp_clean_plugins_cache(true);
}
// Clear object cache
if (function_exists('wp_cache_flush')) {
wp_cache_flush();
}
// Add admin notice
add_action('admin_notices', 'plugin_transients_cleared_notice');
}
/**
* Display admin notice
*/
function plugin_transients_cleared_notice() {
?>
<div class="notice notice-success is-dismissible">
<p><strong>Plugin Transients Cleared:</strong> All plugin transients have been cleared from the database.</p>
</div>
<?php
}

4
deploy-local.sh Executable file
View File

@ -0,0 +1,4 @@
#!/bin/bash
# Simple wrapper to call the deploy-local script
./scripts/deploy-local.sh

View File

@ -2,14 +2,14 @@
# This file is distributed under the GPL-2.0+. # This file is distributed under the GPL-2.0+.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Fix 'Plugin file does not exist.' Notices 2.0.7\n" "Project-Id-Version: Fix 'Plugin file does not exist.' Notices 2.0.10\n"
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-fix-plugin-does-not-exist-notices\n" "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-fix-plugin-does-not-exist-notices\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"POT-Creation-Date: 2024-05-17T12:00:00+00:00\n" "POT-Creation-Date: 2024-05-18T12:00:00+00:00\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"X-Generator: WP-CLI 2.8.1\n" "X-Generator: WP-CLI 2.8.1\n"
"X-Domain: wp-fix-plugin-does-not-exist-notices\n" "X-Domain: wp-fix-plugin-does-not-exist-notices\n"
@ -27,7 +27,7 @@ msgid "Adds missing plugins to the plugins list with a \"Remove Reference\" link
msgstr "" msgstr ""
#. Author of the plugin #. Author of the plugin
msgid "Marcus Quinn" msgid "Marcus Quinn & The WP ALLSTARS Team"
msgstr "" msgstr ""
#. Author URI of the plugin #. Author URI of the plugin

View File

@ -5,7 +5,7 @@ Tags: plugins, missing plugins, cleanup, error fix, admin tools, plugin file doe
Requires at least: 5.0 Requires at least: 5.0
Tested up to: 6.7.2 Tested up to: 6.7.2
Requires PHP: 7.0 Requires PHP: 7.0
Stable tag: 2.0.9 Stable tag: 2.0.10
License: GPL-2.0+ License: GPL-2.0+
License URI: https://www.gnu.org/licenses/gpl-2.0.html License URI: https://www.gnu.org/licenses/gpl-2.0.html
@ -140,6 +140,12 @@ Manually editing the WordPress database is risky and requires technical knowledg
== Changelog == == Changelog ==
= 2.0.10 =
* Fixed: Plugin details popup version display issue with Git Updater integration
* Added: JavaScript-based solution to ensure correct version display in plugin details
* Improved: Version consistency across all plugin views
* Enhanced: Cache busting for plugin information API
= 2.0.9 = = 2.0.9 =
* Fixed: Plugin details popup now correctly shows version and author information * Fixed: Plugin details popup now correctly shows version and author information
* Added: Support for both old and new plugin slugs to fix caching issues * Added: Support for both old and new plugin slugs to fix caching issues

View File

@ -3,7 +3,7 @@
* Plugin Name: Fix 'Plugin file does not exist' Notices * Plugin Name: Fix 'Plugin file does not exist' Notices
* Plugin URI: https://www.wpallstars.com * Plugin URI: https://www.wpallstars.com
* Description: Adds missing plugins to your plugins list with a "Remove Notice" action link, allowing you to safely clean up invalid plugin references. * Description: Adds missing plugins to your plugins list with a "Remove Notice" action link, allowing you to safely clean up invalid plugin references.
* Version: 2.0.9 * Version: 2.0.10
* Author: Marcus Quinn & WP ALLSTARS * Author: Marcus Quinn & WP ALLSTARS
* Author URI: https://www.wpallstars.com * Author URI: https://www.wpallstars.com
* License: GPL-2.0+ * License: GPL-2.0+
@ -23,7 +23,7 @@ if ( ! defined( 'WPINC' ) ) {
} }
// Define plugin constants. // Define plugin constants.
define( 'FPDEN_VERSION', '2.0.9' ); define( 'FPDEN_VERSION', '2.0.10' );
define( 'FPDEN_PLUGIN_DIR', plugin_dir_path( __FILE__ ) ); define( 'FPDEN_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
define( 'FPDEN_PLUGIN_URL', plugin_dir_url( __FILE__ ) ); define( 'FPDEN_PLUGIN_URL', plugin_dir_url( __FILE__ ) );