Changeset 3433756
- Timestamp:
- 01/06/2026 03:35:42 PM (12 days ago)
- Location:
- conflict-finder-wp-fix-it
- Files:
-
- 3 added
- 5 edited
-
assets/banner-1544x500.png (modified) (previous)
-
assets/banner-772x250.png (modified) (previous)
-
tags/7.0/readme.txt (modified) (1 diff)
-
tags/7.1 (added)
-
tags/7.1/conflict-finder.php (added)
-
tags/7.1/readme.txt (added)
-
trunk/conflict-finder.php (modified) (13 diffs)
-
trunk/readme.txt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
conflict-finder-wp-fix-it/tags/7.0/readme.txt
r3433072 r3433756 3 3 Contributors: wpfixit 4 4 Donate link: https://www.wpfixit.com/ 5 Tags: plugin conflict, t roubleshooting, wp_debug, debug log, admin tools6 Requires at least: 4.9 7 Tested up to: 6.9 5 Tags: plugin conflict, theme conflict, troubleshooting, wp_debug, debug log, email testing, admin tools 6 Requires at least: 4.9 7 Tested up to: 6.9 8 8 Stable tag: 7.0 9 License: GPLv2 10 License URI: https://www.gnu.org/licenses/gpl-2.0.html 9 License: GPLv2 10 License URI: https://www.gnu.org/licenses/gpl-2.0.html 11 11 12 Conflict Finder is a powerful, admin-only troubleshooting toolkit designed to safely diagnose WordPress issues caused by plugin conflicts, theme conflicts, debugging configuration, or email delivery problems.12 Conflict Finder is a WordPress troubleshooting toolkit that helps diagnose plugin conflicts, theme issues, debugging errors, and email delivery problems by temporarily changing site behavior during testing. 13 13 14 14 == Description == 15 15 16 Conflict Finder is a powerful, admin-only troubleshooting plugin designed to help WordPress site owners, developers, and support professionals quickly identify thecause of site issues.16 Conflict Finder is a comprehensive troubleshooting plugin designed for WordPress administrators, developers, and support professionals who need to identify the root cause of site issues. 17 17 18 From a single interface, you can temporarily disable plugins, switch themes, enable and manage WP_DEBUG settings, view and clear the debug log, and test email delivery.18 From a single interface, Conflict Finder allows you to: 19 19 20 Conflict Finder automatically tracks your original configuration and ensures it can be restored at any time, allowing you to isolate problems quickly and confidently. 20 * Enable and manage WP_DEBUG without manually editing files 21 * View, download, and clear the WordPress debug log 22 * Temporarily disable plugins to identify conflicts 23 * Switch themes to test theme-related issues 24 * Test WordPress email delivery using `wp_mail()` 21 25 22 == Key Features == 26 **Important:** 27 Conflict Finder **does temporarily affect site behavior** while troubleshooting is active. This may include: 23 28 24 * One-click disable and restore plugins 25 * Safe theme switching for conflict testing 26 * Enable and manage WP_DEBUG without FTP or server access 27 * View and clear the WordPress debug log directly from the admin area 28 * Test if site is delivering emails 29 * Disabled plugins 30 * A different active theme 31 * Debug notices or errors being displayed 32 * Changes visible to logged-out visitors 29 33 30 == Why Use Conflict Finder == 34 For this reason, troubleshooting should be performed during maintenance windows or on staging sites whenever possible. 31 35 32 * Quickly determine if a plugin or theme is causing an error 33 * Avoid FTP access or manual file edits 34 * Safely debug live sites 35 * Designed specifically for administrators and support workflows 36 * Clean, modern UI focused on clarity and speed 36 Conflict Finder automatically tracks your original configuration and allows you to restore plugins, themes, and debugging settings once testing is complete. 37 38 == Features == 39 40 * **Troubleshooting Dashboard** 41 * Central overview of debugging and conflict states 42 * Environment snapshot including WordPress, PHP, memory, and server software 43 44 * **WP_DEBUG Tool** 45 * Enable or disable WP_DEBUG with a single switch 46 * Control error display and logging behavior 47 * Load unminified scripts for debugging 48 * View, download, or clear `wp-content/debug.log` 49 * Safely updates `wp-config.php` as needed 50 51 * **Plugin Conflict Tool** 52 * Temporarily deactivate all active plugins 53 * Save and restore original plugin states 54 * Activate plugins one at a time to identify conflicts 55 56 * **Theme Conflict Tool** 57 * Temporarily switch to another installed theme 58 * Identify theme-related layout or functionality issues 59 * Restore the original theme instantly 60 61 * **Email Delivery Tool** 62 * Send a real test email using WordPress mail 63 * Confirm whether the server can successfully send email 64 * Helps identify SMTP or hosting mail issues 65 66 == When to Use Conflict Finder == 67 68 * Diagnosing white screens or fatal errors 69 * Identifying plugin conflicts 70 * Testing theme-related layout or functionality issues 71 * Investigating PHP notices or warnings 72 * Verifying WordPress email delivery 73 * Support and development workflows 37 74 38 75 == Installation == 39 76 40 1. Upload the plugin ZIP file to your WordPress admin under **Plugins → Add New → Upload Plugin**, or extract the folderto `/wp-content/plugins/`.41 2. Activate Conflict Finder throughthe **Plugins** menu.77 1. Upload the plugin ZIP file via **Plugins → Add New → Upload Plugin**, or extract it to `/wp-content/plugins/`. 78 2. Activate Conflict Finder from the **Plugins** menu. 42 79 3. Access the tools under **Tools → Troubleshoot**. 43 80 44 81 == Frequently Asked Questions == 45 82 46 **Do I need FTP or server access?**47 No. Conflict Finder allows you to manage debugging and troubleshooting directly from the WordPress admin.83 **Does this affect visitors?** 84 Yes. While troubleshooting is active, plugins may be disabled, themes may be switched, and debug output may be visible on the frontend. 48 85 49 86 **Is this safe to use on live sites?** 50 Yes. The plugin is designed specifically to avoid impacting non-admin users.87 It can be used on live sites, but it is recommended to troubleshoot during low-traffic periods or on staging environments when possible. 51 88 52 For questions, support, or suggestions, please visit: 53 https://www.wpfixit.com/contact 89 **Does this permanently change my site?** 90 No. All changes are temporary and can be restored once troubleshooting is complete. 91 92 **Do I need FTP or server access?** 93 No. Conflict Finder manages debugging and conflict testing directly from the WordPress admin. 54 94 55 95 == Screenshots == 56 96 57 1. Conflict Finder overview58 2. WP_DEBUG troubleshooting tool97 1. Troubleshooting tools overview and environment snapshot 98 2. WP_DEBUG configuration and reporting options 59 99 3. Debug log viewer 60 4. Plugin troubleshooting tool61 5. Theme troubleshooting tool62 6. Email delivery t ool100 4. Plugin conflict isolation tool 101 5. Theme conflict isolation tool 102 6. Email delivery testing tool 63 103 64 104 == Changelog == -
conflict-finder-wp-fix-it/trunk/conflict-finder.php
r3433068 r3433756 10 10 Conflict Finder automatically saves your original setup and allows you to restore everything instantly once troubleshooting is complete, making it safe to use on live sites. 11 11 12 Version: 7. 012 Version: 7.1 13 13 14 14 Author: WP Fix It … … 108 108 } 109 109 ); 110 111 110 112 111 class conflict_finder_wp_debug_toggle_tool { … … 137 136 } 138 137 139 public function conflict_finder_send_test_email() {138 public function conflict_finder_send_test_email() { 140 139 141 140 if ( ! current_user_can( 'manage_options' ) ) { … … 154 153 } 155 154 156 $subject = '✅ Email Delivery Test Successful'; 157 158 $site_name = get_bloginfo( 'name' ); 159 $site_url = home_url(); 160 $admin_url = admin_url( 'tools.php?page=wpfi-troubleshooting-tools#wpfi-tab-email-tool' ); 161 162 $message = ' 155 // ========================= 156 // Force FROM (scoped only) 157 // ========================= 158 $parsed_url = wp_parse_url( home_url() ); 159 $domain = $parsed_url['host'] ?? ''; 160 161 $domain = preg_replace( '/^www\./', '', strtolower( $domain ) ); 162 163 // Final forced FROM address (DMARC-aligned) 164 $force_from_email = 'noreply@' . $domain; 165 166 // Safety fallback (should almost never hit) 167 if ( ! is_email( $force_from_email ) ) { 168 $force_from_email = get_option( 'admin_email' ); 169 } 170 171 $force_from_name = get_bloginfo( 'name' ); 172 173 $from_email_filter = function () use ( $force_from_email ) { 174 return $force_from_email; 175 }; 176 177 $from_name_filter = function () use ( $force_from_name ) { 178 return $force_from_name; 179 }; 180 181 $phpmailer_filter = function ( $phpmailer ) use ( $force_from_email, $force_from_name ) { 182 183 $phpmailer->setFrom( 184 $force_from_email, 185 $force_from_name, 186 false 187 ); 188 189 // Absolute last line of defense 190 $phpmailer->Sender = $force_from_email; 191 $phpmailer->From = $force_from_email; 192 $phpmailer->FromName = $force_from_name; 193 }; 194 195 add_filter( 'wp_mail_from', $from_email_filter, 9999 ); 196 add_filter( 'wp_mail_from_name', $from_name_filter, 9999 ); 197 add_action( 'phpmailer_init', $phpmailer_filter, 9999 ); 198 199 // ========================= 200 // Email content 201 // ========================= 202 $subject = '✅ Email Delivery Test Successful'; 203 204 $site_name = get_bloginfo( 'name' ); 205 $site_url = home_url(); 206 $admin_url = admin_url( 'tools.php?page=wpfi-troubleshooting-tools#wpfi-tab-email-tool' ); 207 208 $message = ' 163 209 <!doctype html> 164 210 <html> … … 173 219 <table width="100%" cellpadding="0" cellspacing="0" style="max-width:520px;background:#ffffff;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.08);overflow:hidden;"> 174 220 175 <!-- Header -->176 221 <tr> 177 222 <td style="background:#d16aff;padding:22px 26px;color:#ffffff;"> 178 <h1 style="margin:0;font-size:20px;font-weight:600;"> 179 Website Email Test 180 </h1> 223 <h1 style="margin:0;font-size:20px;font-weight:600;">Website Email Test</h1> 181 224 <p style="margin:6px 0 0;font-size:14px;opacity:.9;"> 182 225 Email delivery is working correctly! … … 185 228 </tr> 186 229 187 <!-- Body -->188 230 <tr> 189 231 <td style="padding:26px;"> … … 218 260 </tr> 219 261 220 <!-- Footer -->221 262 <tr> 222 263 <td style="background:#f6f7f9;padding:16px 26px;font-size:12px;color:#777;text-align:center;"> … … 233 274 </table> 234 275 </body> 235 </html> 236 '; 237 238 $headers = [ 239 'Content-Type: text/html; charset=UTF-8', 240 ]; 241 276 </html>'; 277 278 $headers = [ 279 'Content-Type: text/html; charset=UTF-8', 280 'From: ' . $force_from_name . ' <' . $force_from_email . '>', 281 ]; 282 283 // ========================= 284 // Send 285 // ========================= 242 286 $sent = wp_mail( $email, $subject, $message, $headers ); 243 287 288 // ========================= 289 // Cleanup (CRITICAL) 290 // ========================= 291 remove_filter( 'wp_mail_from', $from_email_filter, 9999 ); 292 remove_filter( 'wp_mail_from_name', $from_name_filter, 9999 ); 293 remove_action( 'phpmailer_init', $phpmailer_filter, 9999 ); 294 295 // ========================= 296 // Persist result + redirect 297 // ========================= 244 298 update_option( 245 'conflict_finder_email_test_status',246 [247 'status' => $sent ? 'success' : 'fail',248 'time' => time(),249 ]250 );299 'conflict_finder_email_test_status', 300 [ 301 'status' => $sent ? 'success' : 'fail', 302 'time' => time(), 303 ] 304 ); 251 305 252 306 wp_safe_redirect( … … 825 879 wp_send_json_error( [ 'message' => 'debug.log is not writable.' ], 500 ); 826 880 } 827 828 881 829 882 // Truncate file safely (do NOT delete) … … 1607 1660 <?php if ( isset( $_GET['email_result'] ) ) : ?> 1608 1661 <?php if ( $_GET['email_result'] === 'success' ) : ?> 1609 <div style="margin-top:15px;color:#166534;"> 1610 ✅ Test email was sent successfully! 1662 <div style="color:#166534;"> 1663 <span style="font-size: 15px;font-weight: 700;"> ✅ Test email was sent successfully!</span> 1664 <p style="background: #efe;padding: 15px;border-radius: 10px;font-size: 13px;">If this message arrived in your spam or junk folder, your server can send email but is not yet trusted by mailbox providers.<br><br>For reliable inbox delivery, configure an SMTP plugin and DNS authentication (SPF, DKIM, DMARC).</p> 1611 1665 </div> 1612 1666 <?php else : ?> … … 1633 1687 <h3>Common reasons email fails</h3> 1634 1688 <ul> 1689 <li>Check spam or junk folder</li> 1635 1690 <li>No SMTP plugin configured</li> 1636 1691 <li>Hosting provider blocks PHP mail()</li> … … 2298 2353 '; 2299 2354 } 2300 2301 2355 2302 2356 private function conflict_finder_js() { … … 2480 2534 } 2481 2535 2482 2483 2536 public function conflict_finder_ajax_get_debug_log() { 2484 2537 if ( ! current_user_can( 'manage_options' ) ) { -
conflict-finder-wp-fix-it/trunk/readme.txt
r3433072 r3433756 3 3 Contributors: wpfixit 4 4 Donate link: https://www.wpfixit.com/ 5 Tags: plugin conflict, t roubleshooting, wp_debug, debug log, admin tools6 Requires at least: 4.9 7 Tested up to: 6.9 8 Stable tag: 7. 09 License: GPLv2 10 License URI: https://www.gnu.org/licenses/gpl-2.0.html 5 Tags: plugin conflict, theme conflict, troubleshooting, wp_debug, debug log, email testing, admin tools 6 Requires at least: 4.9 7 Tested up to: 6.9 8 Stable tag: 7.1 9 License: GPLv2 10 License URI: https://www.gnu.org/licenses/gpl-2.0.html 11 11 12 Conflict Finder is a powerful, admin-only troubleshooting toolkit designed to safely diagnose WordPress issues caused by plugin conflicts, theme conflicts, debugging configuration, or email delivery problems.12 Conflict Finder is a WordPress troubleshooting toolkit that helps diagnose plugin conflicts, theme issues, debugging errors, and email delivery problems by temporarily changing site behavior during testing. 13 13 14 14 == Description == 15 15 16 Conflict Finder is a powerful, admin-only troubleshooting plugin designed to help WordPress site owners, developers, and support professionals quickly identify thecause of site issues.16 Conflict Finder is a comprehensive troubleshooting plugin designed for WordPress administrators, developers, and support professionals who need to identify the root cause of site issues. 17 17 18 From a single interface, you can temporarily disable plugins, switch themes, enable and manage WP_DEBUG settings, view and clear the debug log, and test email delivery.18 From a single interface, Conflict Finder allows you to: 19 19 20 Conflict Finder automatically tracks your original configuration and ensures it can be restored at any time, allowing you to isolate problems quickly and confidently. 20 * Enable and manage WP_DEBUG without manually editing files 21 * View, download, and clear the WordPress debug log 22 * Temporarily disable plugins to identify conflicts 23 * Switch themes to test theme-related issues 24 * Test WordPress email delivery using `wp_mail()` 21 25 22 == Key Features == 26 **Important:** 27 Conflict Finder **does temporarily affect site behavior** while troubleshooting is active. This may include: 23 28 24 * One-click disable and restore plugins 25 * Safe theme switching for conflict testing 26 * Enable and manage WP_DEBUG without FTP or server access 27 * View and clear the WordPress debug log directly from the admin area 28 * Test if site is delivering emails 29 * Disabled plugins 30 * A different active theme 31 * Debug notices or errors being displayed 32 * Changes visible to logged-out visitors 29 33 30 == Why Use Conflict Finder == 34 For this reason, troubleshooting should be performed during maintenance windows or on staging sites whenever possible. 31 35 32 * Quickly determine if a plugin or theme is causing an error 33 * Avoid FTP access or manual file edits 34 * Safely debug live sites 35 * Designed specifically for administrators and support workflows 36 * Clean, modern UI focused on clarity and speed 36 Conflict Finder automatically tracks your original configuration and allows you to restore plugins, themes, and debugging settings once testing is complete. 37 38 == Features == 39 40 * **Troubleshooting Dashboard** 41 * Central overview of debugging and conflict states 42 * Environment snapshot including WordPress, PHP, memory, and server software 43 44 * **WP_DEBUG Tool** 45 * Enable or disable WP_DEBUG with a single switch 46 * Control error display and logging behavior 47 * Load unminified scripts for debugging 48 * View, download, or clear `wp-content/debug.log` 49 * Safely updates `wp-config.php` as needed 50 51 * **Plugin Conflict Tool** 52 * Temporarily deactivate all active plugins 53 * Save and restore original plugin states 54 * Activate plugins one at a time to identify conflicts 55 56 * **Theme Conflict Tool** 57 * Temporarily switch to another installed theme 58 * Identify theme-related layout or functionality issues 59 * Restore the original theme instantly 60 61 * **Email Delivery Tool** 62 * Send a real test email using WordPress mail 63 * Confirm whether the server can successfully send email 64 * Helps identify SMTP or hosting mail issues 65 66 == When to Use Conflict Finder == 67 68 * Diagnosing white screens or fatal errors 69 * Identifying plugin conflicts 70 * Testing theme-related layout or functionality issues 71 * Investigating PHP notices or warnings 72 * Verifying WordPress email delivery 73 * Support and development workflows 37 74 38 75 == Installation == 39 76 40 1. Upload the plugin ZIP file to your WordPress admin under **Plugins → Add New → Upload Plugin**, or extract the folderto `/wp-content/plugins/`.41 2. Activate Conflict Finder throughthe **Plugins** menu.77 1. Upload the plugin ZIP file via **Plugins → Add New → Upload Plugin**, or extract it to `/wp-content/plugins/`. 78 2. Activate Conflict Finder from the **Plugins** menu. 42 79 3. Access the tools under **Tools → Troubleshoot**. 43 80 44 81 == Frequently Asked Questions == 45 82 46 **Do I need FTP or server access?**47 No. Conflict Finder allows you to manage debugging and troubleshooting directly from the WordPress admin.83 **Does this affect visitors?** 84 Yes. While troubleshooting is active, plugins may be disabled, themes may be switched, and debug output may be visible on the frontend. 48 85 49 86 **Is this safe to use on live sites?** 50 Yes. The plugin is designed specifically to avoid impacting non-admin users.87 It can be used on live sites, but it is recommended to troubleshoot during low-traffic periods or on staging environments when possible. 51 88 52 For questions, support, or suggestions, please visit: 53 https://www.wpfixit.com/contact 89 **Does this permanently change my site?** 90 No. All changes are temporary and can be restored once troubleshooting is complete. 91 92 **Do I need FTP or server access?** 93 No. Conflict Finder manages debugging and conflict testing directly from the WordPress admin. 54 94 55 95 == Screenshots == 56 96 57 1. Conflict Finder overview58 2. WP_DEBUG troubleshooting tool97 1. Troubleshooting tools overview and environment snapshot 98 2. WP_DEBUG configuration and reporting options 59 99 3. Debug log viewer 60 4. Plugin troubleshooting tool61 5. Theme troubleshooting tool62 6. Email delivery t ool100 4. Plugin conflict isolation tool 101 5. Theme conflict isolation tool 102 6. Email delivery testing tool 63 103 64 104 == Changelog == 105 106 = 7.1 January 6th, 2026 = 107 108 * Improved email testing tool 65 109 66 110 = 7.0 January 5th, 2026 =
Note: See TracChangeset
for help on using the changeset viewer.