Compare commits
3 Commits
113c4d54da
...
v1.4.1
Author | SHA1 | Date | |
---|---|---|---|
78a911640f | |||
c45621d896 | |||
7ae1da3775 |
24
.github/workflows/assets.yml
vendored
Normal file
24
.github/workflows/assets.yml
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
name: Plugin Asset Update
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- '.wordpress-org/**'
|
||||
- 'assets/**'
|
||||
|
||||
jobs:
|
||||
assets:
|
||||
name: Push assets to WordPress.org
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: WordPress.org plugin asset/readme update
|
||||
uses: 10up/action-wordpress-plugin-asset-update@stable
|
||||
env:
|
||||
SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }}
|
||||
SVN_USERNAME: ${{ secrets.SVN_USERNAME }}
|
||||
SLUG: fix-plugin-does-not-exist-notices
|
20
.github/workflows/release.yml
vendored
20
.github/workflows/release.yml
vendored
@ -20,19 +20,19 @@ jobs:
|
||||
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Create build directory
|
||||
run: mkdir -p build/plugin-reference-cleaner
|
||||
run: mkdir -p build/fix-plugin-does-not-exist-notices
|
||||
|
||||
- name: Copy plugin files
|
||||
run: |
|
||||
cp plugin-reference-cleaner.php build/plugin-reference-cleaner/
|
||||
cp readme.txt build/plugin-reference-cleaner/
|
||||
cp LICENSE build/plugin-reference-cleaner/
|
||||
cp README.md build/plugin-reference-cleaner/
|
||||
cp fix-plugin-does-not-exist-notices.php build/fix-plugin-does-not-exist-notices/
|
||||
cp readme.txt build/fix-plugin-does-not-exist-notices/
|
||||
cp LICENSE build/fix-plugin-does-not-exist-notices/
|
||||
cp README.md build/fix-plugin-does-not-exist-notices/
|
||||
|
||||
- name: Create ZIP file
|
||||
run: |
|
||||
cd build
|
||||
zip -r ../plugin-reference-cleaner-${{ steps.get_version.outputs.VERSION }}.zip plugin-reference-cleaner
|
||||
zip -r ../fix-plugin-does-not-exist-notices-${{ steps.get_version.outputs.VERSION }}.zip fix-plugin-does-not-exist-notices
|
||||
|
||||
- name: Create Release
|
||||
id: create_release
|
||||
@ -42,11 +42,11 @@ jobs:
|
||||
draft: false
|
||||
prerelease: false
|
||||
files: |
|
||||
plugin-reference-cleaner-${{ steps.get_version.outputs.VERSION }}.zip
|
||||
fix-plugin-does-not-exist-notices-${{ steps.get_version.outputs.VERSION }}.zip
|
||||
body: |
|
||||
Plugin Reference Cleaner v${{ steps.get_version.outputs.VERSION }}
|
||||
Fix 'Plugin file does not exist.' Notices v${{ steps.get_version.outputs.VERSION }}
|
||||
|
||||
See [CHANGELOG.md](https://github.com/wpallstars/plugin-reference-cleaner/blob/main/CHANGELOG.md) for details.
|
||||
See [CHANGELOG.md](https://github.com/wpallstars/fix-plugin-does-not-exist-notices/blob/main/CHANGELOG.md) for details.
|
||||
|
||||
# Deploy to WordPress.org
|
||||
wordpress:
|
||||
@ -65,4 +65,4 @@ jobs:
|
||||
env:
|
||||
SVN_USERNAME: ${{ secrets.SVN_USERNAME }}
|
||||
SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }}
|
||||
SLUG: plugin-reference-cleaner
|
||||
SLUG: fix-plugin-does-not-exist-notices
|
@ -2,6 +2,15 @@
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
## [1.4.1] - 2023-11-30
|
||||
### Added
|
||||
- FAQ about keeping the plugin installed after notices are cleared
|
||||
|
||||
## [1.4.0] - 2023-11-30
|
||||
### Changed
|
||||
- Updated plugin name and text domain
|
||||
- Repository rename from plugin-reference-cleaner to fix-plugin-does-not-exist-notices
|
||||
|
||||
## [1.3.3] - 2023-10-05
|
||||
### Added
|
||||
- "Click here to scroll" button to automatically find missing plugins
|
||||
|
23
README.md
23
README.md
@ -1,8 +1,8 @@
|
||||
# Plugin Reference Cleaner
|
||||
# Fix 'Plugin file does not exist.' Notices
|
||||
|
||||
[](https://wordpress.org/plugins/plugin-reference-cleaner/)
|
||||
[](https://wordpress.org/plugins/plugin-reference-cleaner/)
|
||||
[](https://wordpress.org/plugins/plugin-reference-cleaner/)
|
||||
[](https://wordpress.org/plugins/fix-plugin-does-not-exist-notices/)
|
||||
[](https://wordpress.org/plugins/fix-plugin-does-not-exist-notices/)
|
||||
[](https://wordpress.org/plugins/fix-plugin-does-not-exist-notices/)
|
||||
[](https://www.gnu.org/licenses/gpl-2.0.html)
|
||||
|
||||
Easily remove references to deleted plugins that cause "Plugin file does not exist" errors in your WordPress admin.
|
||||
@ -45,7 +45,7 @@ When WordPress detects a plugin file that no longer exists but is still referenc
|
||||
### From WordPress.org:
|
||||
|
||||
1. Visit Plugins > Add New in your WordPress admin
|
||||
2. Search for "Plugin Reference Cleaner"
|
||||
2. Search for "Fix 'Plugin file does not exist.' Notices"
|
||||
3. Click "Install Now" and then "Activate"
|
||||
|
||||
### Manual Installation:
|
||||
@ -82,6 +82,12 @@ Yes, the plugin works on both single sites and multisite installations. It prope
|
||||
2. Missing plugin shown in the plugins list with "Remove Reference" link
|
||||
3. Auto-scroll feature that highlights the missing plugin
|
||||
|
||||
## FAQ
|
||||
|
||||
### Do I need to keep this plugin installed and active after notices are cleared?
|
||||
|
||||
Although this plugin consumes minimal disk space, and doesn't run unless you are on the /wp-admin/plugins.php page, you don't need to keep it active or installed if you don't have this notice to clear — but it is safe to, if you just want it as a part of your overall WordPress stack of enhancements and conveniences.
|
||||
|
||||
## Developers
|
||||
|
||||
### Contributing
|
||||
@ -104,6 +110,13 @@ The plugin works by:
|
||||
|
||||
## Changelog
|
||||
|
||||
### 1.4.1
|
||||
- Added FAQ about keeping the plugin installed after notices are cleared
|
||||
|
||||
### 1.4.0
|
||||
- Updated plugin name and text domain
|
||||
- Repository rename from plugin-reference-cleaner to fix-plugin-does-not-exist-notices
|
||||
|
||||
### 1.3.3
|
||||
* Improved notification placement next to WordPress error messages
|
||||
* Added "Click here to scroll" button that automatically locates missing plugins
|
||||
|
4
build.sh
4
build.sh
@ -10,7 +10,7 @@ if [ -z "$1" ]; then
|
||||
fi
|
||||
|
||||
VERSION=$1
|
||||
PLUGIN_SLUG="plugin-reference-cleaner"
|
||||
PLUGIN_SLUG="fix-plugin-does-not-exist-notices"
|
||||
BUILD_DIR="build/$PLUGIN_SLUG"
|
||||
ZIP_FILE="${PLUGIN_SLUG}-${VERSION}.zip"
|
||||
|
||||
@ -20,7 +20,7 @@ mkdir -p $BUILD_DIR
|
||||
|
||||
# Copy required files
|
||||
echo "Copying plugin files..."
|
||||
cp plugin-reference-cleaner.php $BUILD_DIR/
|
||||
cp fix-plugin-does-not-exist-notices.php $BUILD_DIR/
|
||||
cp readme.txt $BUILD_DIR/
|
||||
cp LICENSE $BUILD_DIR/
|
||||
cp README.md $BUILD_DIR/
|
||||
|
@ -1,21 +1,21 @@
|
||||
<?php
|
||||
/**
|
||||
* Plugin Reference Cleaner
|
||||
* Fix 'Plugin file does not exist.' Notices
|
||||
*
|
||||
* @package PluginReferenceCleaner
|
||||
* @package FixPluginDoesNotExistNotices
|
||||
* @author Marcus Quinn
|
||||
* @copyright 2023 WP All Stars
|
||||
* @license GPL-2.0+
|
||||
*
|
||||
* @wordpress-plugin
|
||||
* Plugin Name: Plugin Reference Cleaner
|
||||
* Description: Adds a "Remove Reference" button to plugin deactivation error notices, allowing users to clean up invalid plugin entries.
|
||||
* Version: 1.3.3
|
||||
* Plugin Name: Fix 'Plugin file does not exist.' Notices
|
||||
* Description: Adds missing plugins to the plugins list with a "Remove Reference" link so you can clean up invalid plugin entries.
|
||||
* Version: 1.4.1
|
||||
* Author: Marcus Quinn
|
||||
* Author URI: https://www.wpallstars.com
|
||||
* License: GPL-2.0+
|
||||
* License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
||||
* Text Domain: plugin-reference-cleaner
|
||||
* Text Domain: fix-plugin-does-not-exist-notices
|
||||
* Domain Path: /languages
|
||||
* Requires at least: 5.0
|
||||
* Requires PHP: 7.0
|
||||
@ -39,7 +39,7 @@ if (!defined('ABSPATH')) {
|
||||
exit;
|
||||
}
|
||||
|
||||
class Plugin_Reference_Cleaner {
|
||||
class Fix_Plugin_Does_Not_Exist_Notices {
|
||||
public function __construct() {
|
||||
// Add our plugin to the plugins list
|
||||
add_filter('all_plugins', array($this, 'add_missing_plugins_references'));
|
||||
@ -103,7 +103,7 @@ class Plugin_Reference_Cleaner {
|
||||
// Add our action
|
||||
$nonce = wp_create_nonce('remove_plugin_reference_' . $plugin_file);
|
||||
$remove_url = admin_url('plugins.php?action=remove_reference&plugin=' . urlencode($plugin_file) . '&_wpnonce=' . $nonce);
|
||||
$actions['remove_reference'] = '<a href="' . esc_url($remove_url) . '" class="delete" aria-label="' . esc_attr__('Remove Reference', 'plugin-reference-cleaner') . '">Remove Reference</a>';
|
||||
$actions['remove_reference'] = '<a href="' . esc_url($remove_url) . '" class="delete" aria-label="' . esc_attr__('Remove Reference', 'fix-plugin-does-not-exist-notices') . '">Remove Reference</a>';
|
||||
}
|
||||
|
||||
return $actions;
|
||||
@ -120,7 +120,7 @@ class Plugin_Reference_Cleaner {
|
||||
|
||||
// Verify permissions
|
||||
if (!current_user_can('activate_plugins')) {
|
||||
wp_die(__('You do not have sufficient permissions to perform this action.', 'plugin-reference-cleaner'));
|
||||
wp_die(__('You do not have sufficient permissions to perform this action.', 'fix-plugin-does-not-exist-notices'));
|
||||
}
|
||||
|
||||
// Get the plugin file
|
||||
@ -231,7 +231,7 @@ class Plugin_Reference_Cleaner {
|
||||
ourNotice.className = 'prc-notice';
|
||||
|
||||
// Add content
|
||||
ourNotice.innerHTML = '<h3 style="margin-top:0;color:#826200;">👉 Plugin Reference Cleaner Can Fix This</h3>' +
|
||||
ourNotice.innerHTML = '<h3 style="margin-top:0;color:#826200;">👉 Fix Plugin Does Not Exist Notices Can Fix This</h3>' +
|
||||
'<p>To remove the above error notification, scroll down to find the plugin marked with "<strong style="color:red">(File Missing)</strong>" and click its "<strong>Remove Reference</strong>" link.</p>' +
|
||||
'<p>This will permanently remove the missing plugin reference from your database.</p>' +
|
||||
'<p><a href="#" id="prc-scroll-to-plugin" style="font-weight:bold;text-decoration:underline;color:#826200;">Click here to scroll to the missing plugin</a></p>';
|
||||
@ -288,7 +288,7 @@ class Plugin_Reference_Cleaner {
|
||||
|
||||
// Also display our standard info notice with more details
|
||||
echo '<div class="notice notice-info is-dismissible">';
|
||||
echo '<h3>Plugin Reference Cleaner</h3>';
|
||||
echo '<h3>Fix Plugin Does Not Exist Notices</h3>';
|
||||
echo '<p><strong>Missing plugin files detected:</strong> The plugins listed below with <span style="color:red;">(File Missing)</span> tag no longer exist but are still referenced in your database.</p>';
|
||||
echo '<p><strong>How to fix:</strong> Click the "Remove Reference" link next to each missing plugin to safely remove it from your active plugins list.</p>';
|
||||
echo '<p>This will clean up your database and remove the error notifications.</p>';
|
||||
@ -340,4 +340,4 @@ class Plugin_Reference_Cleaner {
|
||||
}
|
||||
|
||||
// Initialize the plugin
|
||||
new Plugin_Reference_Cleaner();
|
||||
new Fix_Plugin_Does_Not_Exist_Notices();
|
19
readme.txt
19
readme.txt
@ -1,11 +1,11 @@
|
||||
=== Plugin Reference Cleaner ===
|
||||
=== Fix 'Plugin file does not exist.' Notices ===
|
||||
Contributors: marcusquinn
|
||||
Donate link: https://www.wpallstars.com
|
||||
Tags: plugins, missing plugins, cleanup, error fix, admin tools
|
||||
Tags: plugins, missing plugins, cleanup, error fix, admin tools, plugin file does not exist
|
||||
Requires at least: 5.0
|
||||
Tested up to: 6.4
|
||||
Requires PHP: 7.0
|
||||
Stable tag: 1.3.3
|
||||
Stable tag: 1.4.1
|
||||
License: GPL-2.0+
|
||||
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
||||
|
||||
@ -46,7 +46,7 @@ When WordPress detects a plugin file that no longer exists but is still referenc
|
||||
|
||||
== Installation ==
|
||||
|
||||
1. Upload the `plugin-reference-cleaner` folder to the `/wp-content/plugins/` directory
|
||||
1. Upload the `fix-plugin-does-not-exist-notices` folder to the `/wp-content/plugins/` directory
|
||||
2. Activate the plugin through the 'Plugins' menu in WordPress
|
||||
3. No configuration needed - the plugin works automatically
|
||||
4. If you have missing plugin errors, you'll immediately see them in your plugins list with "Remove Reference" links
|
||||
@ -77,6 +77,10 @@ No. Since the plugin is only removing references to plugins that no longer exist
|
||||
|
||||
If you remove a reference to a plugin that you later want to reinstall, simply install the plugin again and activate it normally.
|
||||
|
||||
= Do I need to keep this plugin installed and active after notices are cleared? =
|
||||
|
||||
Although this plugin consumes minimal disk space, and doesn't run unless you are on the /wp-admin/plugins.php page, you don't need to keep it active or installed if you don't have this notice to clear — but it is safe to, if you just want it as a part of your overall WordPress stack of enhancements and conveniences.
|
||||
|
||||
== Screenshots ==
|
||||
|
||||
1. Error message with explanation notification
|
||||
@ -85,6 +89,13 @@ If you remove a reference to a plugin that you later want to reinstall, simply i
|
||||
|
||||
== Changelog ==
|
||||
|
||||
= 1.4.1 =
|
||||
* Added FAQ about keeping the plugin installed after notices are cleared
|
||||
|
||||
= 1.4.0 =
|
||||
* Updated plugin name and text domain
|
||||
* Repository rename from plugin-reference-cleaner to fix-plugin-does-not-exist-notices
|
||||
|
||||
= 1.3.3 =
|
||||
* Improved notification placement next to WordPress error messages
|
||||
* Added "Click here to scroll" button that automatically locates missing plugins
|
||||
|
Reference in New Issue
Block a user