{"id":22689,"date":"2026-08-07T10:54:04","date_gmt":"2026-08-07T05:24:04","guid":{"rendered":"https:\/\/www.youstable.com\/blog\/?p=22689"},"modified":"2026-08-07T10:54:07","modified_gmt":"2026-08-07T05:24:07","slug":"fix-wordpress-plugin-not-working","status":"publish","type":"post","link":"https:\/\/www.youstable.com\/blog\/fix-wordpress-plugin-not-working\/","title":{"rendered":"Fix WordPress Plugin Not Working 2026 | YouStable\u00ae"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">A WordPress plugin can stop working at any time, breaking forms, pages, or important website features. The right troubleshooting steps help you identify the actual problem before making unnecessary changes that could create bigger issues.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Most plugin problems are caused by cache, plugin conflicts, PHP limits, or compatibility issues. These are common WordPress problems and, in many cases, can be fixed without advanced technical knowledge or expensive developer support.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This guide walks you through practical, step-by-step solutions to fix a WordPress plugin that isn&#8217;t working. You&#8217;ll also learn how to prevent similar problems and keep your website running smoothly in the future.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"key-takeaways\">Key Takeaways<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Clear every caching layer first (browser, plugin, and server or <a href=\"https:\/\/www.youstable.com\/blog\/clear-dns-cache-on-windows-linux-mac\/\">CDN cache<\/a>) before assuming the plugin is actually broken<\/li>\n\n\n\n<li>A white screen or 500 error almost always traces back to a PHP fatal error, visible only once WP_DEBUG or the server error log is checked <\/li>\n\n\n\n<li>Deactivating a plugin never deletes its data. Settings and custom tables stay in the database until the plugin is reinstalled <\/li>\n\n\n\n<li>Test conflicts on a staging copy of the site, never directly on the live, production environment <\/li>\n\n\n\n<li>If a plugin has not been updated in 12+ months, treat it as a security risk and plan a replacement rather than continuing to patch around it<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"quick-diagnostic-flow\">Quick Diagnostic Flow<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Match your symptom to the step that fixes it fastest, instead of working through every step in order.<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-center\" data-align=\"center\">Symptom<\/th><th class=\"has-text-align-center\" data-align=\"center\">Likely Cause<\/th><th class=\"has-text-align-center\" data-align=\"center\">Jump To<\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\">Plugin update shows but nothing changed on the live site<\/td><td class=\"has-text-align-center\" data-align=\"center\">Cache serving an old version<\/td><td class=\"has-text-align-center\" data-align=\"center\">Step 1<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Plugin worked yesterday, broke after an update<\/td><td class=\"has-text-align-center\" data-align=\"center\">Version conflict with core, theme, or another plugin<\/td><td class=\"has-text-align-center\" data-align=\"center\">Step 2 \/ Step 3<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Entire site is a blank white page<\/td><td class=\"has-text-align-center\" data-align=\"center\">PHP fatal error (WSoD)<\/td><td class=\"has-text-align-center\" data-align=\"center\">Step 5<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Site shows \u201c<a href=\"https:\/\/www.youstable.com\/blog\/500-internal-server-error-in-wordpress\/\">500 Internal Server Error<\/a>\u201d<\/td><td class=\"has-text-align-center\" data-align=\"center\">PHP fatal error or corrupted <code>.htaccess<\/code><\/td><td class=\"has-text-align-center\" data-align=\"center\">Step 4 \/ Step 5<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Button, form, or dropdown from the plugin does not respond<\/td><td class=\"has-text-align-center\" data-align=\"center\">JavaScript or jQuery conflict<\/td><td class=\"has-text-align-center\" data-align=\"center\">Step 6<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Plugin broke right after a site migration or host change<\/td><td class=\"has-text-align-center\" data-align=\"center\">Absolute paths, PHP version mismatch, or missing extension<\/td><td class=\"has-text-align-center\" data-align=\"center\">See \u201cPlugin Not Working After a Migration\u201d below<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Plugin works for admin but not for visitors, or vice versa<\/td><td class=\"has-text-align-center\" data-align=\"center\">Caching serving different versions per user role<\/td><td class=\"has-text-align-center\" data-align=\"center\">Step 1, check role based cache exclusions<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"why-wordpress-plugins-stop-working\">Why WordPress Plugins Stop Working<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress plugins run as PHP code inside your site&#8217;s execution environment. When that code hits a limit the server enforces, PHP throws an error and WordPress can fail to load the plugin, the admin dashboard, or the entire front end. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The four entities to check in order are: <strong>cache<\/strong> (browser, plugin-level, and server-side), <strong>PHP environment<\/strong> (memory_limit, max_execution_time, PHP version), <strong>plugin\/theme conflicts<\/strong> (two plugins calling the same function or hook), and <strong>core compatibility<\/strong> (an outdated plugin running against a newer WordPress core release).<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"before-you-start-backup-checklist\">Before You Start: Backup Checklist<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Do not troubleshoot a live site without a safety net. Confirm the following before making any change:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A full backup exists (files + database), taken within the last 24 hours, either through your hosting panel&#8217;s backup tool or a plugin like UpdraftPlus<\/li>\n\n\n\n<li>You have active FTP\/SFTP or File Manager credentials, in case the WordPress dashboard becomes inaccessible<\/li>\n\n\n\n<li>You have database access (<strong><a href=\"https:\/\/www.youstable.com\/blog\/create-phpmyadmin-on-linux\/\">phpMyAdmin<\/a><\/strong>) through your hosting control panel<\/li>\n\n\n\n<li>A staging environment is available, or one can be cloned from your hosting panel, so conflict testing happens away from live traffic<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-1-clear-every-caching-layer\">Step 1: Clear Every Caching Layer<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Caching is the single most common false alarm in plugin troubleshooting. A plugin can be fixed on the server and still appear broken because an old cached version is being served.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Clear cache in this order:<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Browser cache<\/strong> \u2014 hard refresh with Ctrl+Shift+R (Windows) or Cmd+Shift+R (Mac), or test in an incognito window<\/li>\n\n\n\n<li><strong>Caching plugin<\/strong> \u2014 purge cache from WP Rocket, W3 Total Cache, LiteSpeed Cache, or whichever plugin is active<\/li>\n\n\n\n<li><strong>Server side or CDN cache<\/strong> \u2014 if hosting includes LiteSpeed Cache, Varnish, or a CDN like Cloudflare, purge that layer separately from the plugin cache. This step is frequently missed because it lives outside the WordPress dashboard, inside the hosting control panel<\/li>\n\n\n\n<li><strong>Object cache<\/strong> \u2014 if Redis or Memcached is active, flush it as well<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">If the plugin still misbehaves after every layer is cleared, the issue is not caching. Move to Step 2.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-2-update-wordpress-core-themes-and-plugins\">Step 2: Update WordPress Core, Themes, and Plugins<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Outdated software is the second most common cause. Before updating anything on a live site:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Take a fresh backup<\/li>\n\n\n\n<li>Update plugins one at a time, checking the site after each update<\/li>\n\n\n\n<li>Update the theme<\/li>\n\n\n\n<li>Update WordPress core last<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Updating in this order isolates exactly which update caused the problem, if one does.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-3-run-a-plugin-conflict-test\">Step 3: Run a Plugin Conflict Test<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If clearing cache and updating did not fix it, the plugin is very likely conflicting with another plugin or the active theme.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Switch the active theme to a default WordPress theme (Twenty Twenty Four)<\/li>\n\n\n\n<li>Deactivate every plugin except the one that is broken<\/li>\n\n\n\n<li>Test the broken plugin on its own<\/li>\n\n\n\n<li>If it now works, reactivate the other plugins one at a time, testing after each, until the conflict reappears. The last plugin reactivated before the conflict returns is the culprit<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Always run this test on a staging site. A plugin like WP Safe Mode, or the Health Check &amp; Troubleshooting plugin, can also run this test for logged in admins only, without affecting what visitors see on the live site.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-4-check-and-increase-php-limits\">Step 4: Check and Increase PHP Limits<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Many &#8220;broken&#8221; plugins are actually hitting a server-enforced ceiling, most commonly <code>memory_limit<\/code> or <code>max_execution_time<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Recommended PHP memory by site type:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-center\" data-align=\"center\">Site Type<\/th><th class=\"has-text-align-center\" data-align=\"center\">Minimum PHP Memory<\/th><th class=\"has-text-align-center\" data-align=\"center\">Recommended for 2026<\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\">Basic blog<\/td><td class=\"has-text-align-center\" data-align=\"center\">128MB<\/td><td class=\"has-text-align-center\" data-align=\"center\">256MB<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Business site with forms<\/td><td class=\"has-text-align-center\" data-align=\"center\">256MB<\/td><td class=\"has-text-align-center\" data-align=\"center\">512MB<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">eCommerce \/ visual builder heavy<\/td><td class=\"has-text-align-center\" data-align=\"center\">512MB<\/td><td class=\"has-text-align-center\" data-align=\"center\">1GB<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>To check or raise these limits:<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Look for the current value under <strong>Tools &gt; Site Health &gt; Info &gt; Server<\/strong> in wp-admin<\/li>\n\n\n\n<li>Raise it through your hosting control panel&#8217;s PHP configuration screen (path and label vary by host), or by adding <code>define('WP_MEMORY_LIMIT', '512M');<\/code> to <code>wp-config.php<\/code><\/li>\n\n\n\n<li>If using shared hosting, confirm with your host whether the limit is server-enforced. Some values in <code>wp-config.php<\/code> are overridden by the server&#8217;s <code>php.ini<\/code>, and can only be changed through the hosting panel or a support ticket<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-5-enable-wordpress-debug-mode\">Step 5: Enable WordPress Debug Mode<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">With debugging off, WordPress hides fatal errors from the visitor and shows a blank white screen instead, known as the White Screen of Death (WSoD).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To see the actual error, add this to <code>wp-config.php<\/code>, above the line that reads <code>\/* That's all, stop editing! *\/<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>define( 'WP_DEBUG', true );\ndefine( 'WP_DEBUG_LOG', true );\ndefine( 'WP_DEBUG_DISPLAY', false );<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This logs errors to <code>\/wp-content\/debug.log<\/code> without displaying them to site visitors. Open that file via FTP or File Manager and look at the most recent entries, which will name the exact plugin file and line number causing the failure.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Turn debug mode back off once the fix is confirmed. Leaving it on exposes file paths to anyone who can view page source.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"checking-server-side-error-logs-via-your-hosting-control-panel\">Checking Server Side Error Logs via Your Hosting Control Panel<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">WP_DEBUG only captures errors WordPress itself catches. Some failures, such as a PHP extension missing on the server or a crash before WordPress finishes loading, only appear in the raw server error log, which sits outside the WordPress dashboard entirely.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Log in to your hosting control panel (cPanel, or your host&#8217;s custom panel)<\/li>\n\n\n\n<li>Locate <strong>Errors<\/strong> or <strong>Error Log<\/strong> under the Metrics or Logs section<\/li>\n\n\n\n<li>Look for the most recent PHP Fatal error, PHP Warning, or Parse error entry, timestamped close to when the plugin broke<\/li>\n\n\n\n<li>Cross check the file path in the log against the plugin&#8217;s folder in <code>\/wp-content\/plugins\/<\/code> to confirm which plugin triggered it<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Server level logs also show issues WP_DEBUG cannot catch, including PHP version mismatches and missing PHP extensions a plugin depends on (such as <code>imagick<\/code> or <code>curl<\/code>).<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"plugin-not-working-after-a-migration-or-hosting-change\">Plugin Not Working After a Migration or Hosting Change<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Plugins that worked perfectly on the old server sometimes break immediately after moving to a new host or a new server. This is rarely the plugin&#8217;s fault. Check these first:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>PHP version mismatch<\/strong> \u2014 the new server may run a different PHP version than the old one. Check the plugin&#8217;s required PHP version against <strong>Tools &gt; Site Health<\/strong> and adjust the PHP version in the new hosting control panel if needed<\/li>\n\n\n\n<li><strong>Missing PHP extensions<\/strong> \u2014 some plugins depend on specific extensions (<code>imagick<\/code>, <code>curl<\/code>, <code>gd<\/code>, <code>zip<\/code>). A migration to a new server can leave one of these disabled by default<\/li>\n\n\n\n<li><strong>Hardcoded absolute file paths<\/strong> \u2014 plugins that store an absolute server path (rather than a relative one) in the database will break if the new server&#8217;s directory structure differs. Search the database for the old path and update it, or use a migration plugin that handles path search and replace automatically<\/li>\n\n\n\n<li><strong>File and folder permissions reset during transfer<\/strong> \u2014 set folders to 755 and files to 644 after any migration<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-6-inspect-the-browser-console-for-javascript-errors\">Step 6: Inspect the Browser Console for JavaScript Errors<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Not every plugin failure is server side. If a plugin adds a broken button, a form that will not submit, or a missing dropdown, the cause is usually JavaScript, not PHP.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Open the page in Chrome, right click, and select <strong>Inspect<\/strong><\/li>\n\n\n\n<li>Go to the <strong>Console<\/strong> tab<\/li>\n\n\n\n<li>Reload the page and look for red error text<\/li>\n\n\n\n<li>A common cause is jQuery conflicts, where two plugins load different jQuery versions or one plugin uses <code>$<\/code> in a context where another plugin has already redefined it<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"step-7-roll-back-or-reinstall-the-plugin\">Step 7: Roll Back or Reinstall the Plugin<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If the plugin is still broken after every previous step, roll back to the last working version or remove and reinstall it entirely.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>To roll back:<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to the plugin&#8217;s page on WordPress.org and check the <strong>Advanced View<\/strong> tab for previous versions<\/li>\n\n\n\n<li>Deactivate the current version<\/li>\n\n\n\n<li>Upload the older version via <strong>Plugins &gt; Add New &gt; Upload Plugin<\/strong><\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>To reinstall via FTP, if the dashboard is inaccessible:<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Connect via FTP\/SFTP or your hosting panel&#8217;s <a href=\"https:\/\/www.youstable.com\/blog\/access-file-manager-in-cpanel\/\">File Manager<\/a><\/li>\n\n\n\n<li>Navigate to <code>\/wp-content\/plugins\/<\/code><\/li>\n\n\n\n<li>Rename the problem plugin&#8217;s folder (adding <code>-disabled<\/code> to the name deactivates it without deleting anything)<\/li>\n\n\n\n<li>Confirm the site loads again, then delete the renamed folder and reinstall a fresh copy of the plugin<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Deactivating or renaming a plugin folder never deletes its settings. Custom data stays in the MySQL database until the plugin is reinstalled and its settings are reconfigured or restored.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"preventing-future-plugin-conflicts\">Preventing Future Plugin Conflicts<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Fixing a broken plugin once does not stop it from breaking again. These habits reduce how often this happens:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Update one plugin at a time<\/strong>, not all at once, so a failure is immediately traceable to a single update<\/li>\n\n\n\n<li><strong>Test updates on staging<\/strong> before applying them to the live site, especially for plugins tied to checkout, forms, or membership access<\/li>\n\n\n\n<li><strong>Keep the plugin count lean.<\/strong> Remove plugins that are inactive rather than leaving them installed, since inactive plugins can still be exploited if they contain a vulnerability<\/li>\n\n\n\n<li><strong>Set a monthly review<\/strong>, checking each active plugin&#8217;s last update date on WordPress.org. Anything untouched for 12+ months should be flagged for replacement<\/li>\n\n\n\n<li><strong>Keep a pre-update snapshot habit.<\/strong> A backup taken immediately before any update, even a minor one, turns a broken update into a two minute rollback instead of an hour of troubleshooting<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"when-to-contact-your-hosting-support-team\">When to Contact Your Hosting Support Team<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Some plugin issues are genuinely server side, and no amount of plugin level troubleshooting will fix them. Contact hosting support directly when:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The server error log references a <strong>PHP extension<\/strong> the host has not enabled (<code>imagick<\/code>, <code>curl<\/code>, <code>gd<\/code>)<\/li>\n\n\n\n<li>The site&#8217;s PHP memory or execution time limit needs raising and the hosting control panel does not expose that setting<\/li>\n\n\n\n<li>A <strong>500 error appears with no matching entry in <code>debug.log<\/code><\/strong>, which usually means the failure happened at the server level, before WordPress finished loading<\/li>\n\n\n\n<li>File permissions were reset unexpectedly and manual correction via FTP does not resolve it<\/li>\n\n\n\n<li>The issue reappears only under load or high traffic, which points to a server resource ceiling rather than the plugin&#8217;s code<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Issues that are plugin code specific, such as a bug in the plugin&#8217;s own logic or a genuine incompatibility with another plugin, are outside what hosting support can fix and are better directed to the plugin developer.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"glossary-of-key-terms\">Glossary of Key Terms<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>WSoD (White Screen of Death):<\/strong> A blank white page shown when a PHP fatal error occurs while debugging is turned off<\/li>\n\n\n\n<li><strong>memory_limit:<\/strong> The maximum amount of memory PHP allows a single script to use before terminating it<\/li>\n\n\n\n<li><strong>max_execution_time:<\/strong> The maximum number of seconds a PHP script is allowed to run before the server stops it<\/li>\n\n\n\n<li><strong><code>.htaccess<\/code>:<\/strong> An Apache server configuration file controlling redirects, permalinks, and access rules. Corruption here commonly causes 403 or 500 errors<\/li>\n\n\n\n<li><strong>FTP\/SFTP:<\/strong> File Transfer Protocol (and its encrypted version), used to access site files directly when the WordPress dashboard is inaccessible<\/li>\n\n\n\n<li><strong>Object cache:<\/strong> A caching layer (commonly Redis or Memcached) that stores database query results in memory to reduce repeated database calls<\/li>\n\n\n\n<li><strong>Plugin conflict:<\/strong> When two plugins, or a plugin and the active theme, both modify the same WordPress hook or function in incompatible ways<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"common-wordpress-error-codes-and-fixes\">Common WordPress Error Codes and Fixes<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-center\" data-align=\"center\">Error<\/th><th class=\"has-text-align-center\" data-align=\"center\">Likely Cause<\/th><th class=\"has-text-align-center\" data-align=\"center\">First Fix to Try<\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong><a href=\"https:\/\/www.youstable.com\/blog\/500-internal-server-error-in-wordpress\/\">500 Internal Server Error<\/a><\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">PHP fatal error, corrupted <code>.htaccess<\/code>, or exhausted memory<\/td><td class=\"has-text-align-center\" data-align=\"center\">Enable <code>WP_DEBUG<\/code>, check <code>\/wp-content\/debug.log<\/code><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">White Screen of Death (WSoD)<\/td><td class=\"has-text-align-center\" data-align=\"center\">PHP fatal error with debugging off<\/td><td class=\"has-text-align-center\" data-align=\"center\">Enable <code>WP_DEBUG_LOG<\/code>, check server error log<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong><a href=\"https:\/\/www.youstable.com\/blog\/how-to-fix-403-forbidden-error\/\">403 Forbidden<\/a><\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">Corrupted <code>.htaccess<\/code> or a security plugin blocking access<\/td><td class=\"has-text-align-center\" data-align=\"center\">Regenerate permalinks, temporarily disable the security plugin<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">\u201cAllowed memory size exhausted\u201d<\/td><td class=\"has-text-align-center\" data-align=\"center\"><code>PHP memory_limit<\/code> too low for the plugin\u2019s operation<\/td><td class=\"has-text-align-center\" data-align=\"center\">Raise PHP memory limit via hosting panel or <code>wp-config.php<\/code><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Maximum execution time exceeded<\/td><td class=\"has-text-align-center\" data-align=\"center\">A script, import, or plugin task ran longer than the server allows<\/td><td class=\"has-text-align-center\" data-align=\"center\">Raise <code>max_execution_time<\/code> via hosting panel PHP settings<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Plugin update failed: could not create directory<\/td><td class=\"has-text-align-center\" data-align=\"center\">Incorrect file\/folder permissions<\/td><td class=\"has-text-align-center\" data-align=\"center\">Set folders to 755 and files to 644 via FTP or File Manager<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"faqs\">FAQs<\/h2>\n\n\n<div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-1785936955160\" class=\"rank-math-list-item\">\n<h4 class=\"rank-math-question \" class=\"rank-math-question \" id=\"does-deactivating-a-plugin-delete-its-data\">Does deactivating a plugin delete its data?<\/h4>\n<div class=\"rank-math-answer \">\n\n<p>No. Deactivating or deleting a plugin through FTP only removes its executable files. Settings, shortcodes, and any data the plugin stored stay in the MySQL database until the plugin is reinstalled.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1785936971748\" class=\"rank-math-list-item\">\n<h4 class=\"rank-math-question \" class=\"rank-math-question \" id=\"how-do-i-know-if-my-theme-is-causing-the-conflict-not-a-plugin\"><strong>How do I know if my theme is causing the conflict, not a plugin?<\/strong><\/h4>\n<div class=\"rank-math-answer \">\n\n<p>Switch the active theme to a default <a href=\"https:\/\/www.youstable.com\/blog\/best-wordpress-themes-for-news-website\/\">WordPress theme<\/a> like Twenty Twenty Four. If the broken plugin works normally under the default theme, the premium theme&#8217;s code is conflicting with the plugin.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1785937000099\" class=\"rank-math-list-item\">\n<h4 class=\"rank-math-question \" class=\"rank-math-question \" id=\"what-is-the-white-screen-of-death\">What is the White Screen of Death?<\/h4>\n<div class=\"rank-math-answer \">\n\n<p>The WSoD happens when PHP hits a fatal error while debugging is turned off. Instead of showing the error, WordPress stops rendering entirely, leaving a blank white page. It is almost always caused by a plugin or theme conflict.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1785937016933\" class=\"rank-math-list-item\">\n<h4 class=\"rank-math-question \" class=\"rank-math-question \" id=\"will-updating-wordpress-break-my-existing-plugins\">Will updating WordPress break my existing plugins?<\/h4>\n<div class=\"rank-math-answer \">\n\n<p>It can. If a plugin has not been updated in over a year, a WordPress core update may remove functions that plugin still relies on. Testing any core update on a staging site first avoids this risk on the live site.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1785937024732\" class=\"rank-math-list-item\">\n<h4 class=\"rank-math-question \" class=\"rank-math-question \" id=\"how-much-php-memory-does-a-wordpress-site-actually-need\"><strong>How much PHP memory does a WordPress site actually need?<\/strong><\/h4>\n<div class=\"rank-math-answer \">\n\n<p>A basic blog runs fine on 128MB. Sites using eCommerce features, complex forms, or page builders need at least 256MB, and 512MB is a safer baseline for 2026 hosting environments.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1785937038282\" class=\"rank-math-list-item\">\n<h4 class=\"rank-math-question \" class=\"rank-math-question \" id=\"can-having-too-many-plugins-slow-down-my-site\"><strong>Can having too many plugins slow down my site?<\/strong><\/h4>\n<div class=\"rank-math-answer \">\n\n<p>Not directly through count alone, but poorly coded plugins that load unnecessary CSS and JavaScript on every page do slow load times and hurt Core Web Vitals, regardless of how many plugins are active.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1785937056599\" class=\"rank-math-list-item\">\n<h4 class=\"rank-math-question \" class=\"rank-math-question \" id=\"is-ftp-the-only-way-to-remove-a-broken-plugin\"><strong>Is FTP the only way to remove a broken plugin?<\/strong><\/h4>\n<div class=\"rank-math-answer \">\n\n<p>FTP or your <strong><a href=\"https:\/\/www.youstable.com\/\">hosting provider&#8217;s<\/a><\/strong> File Manager becomes necessary only if a fatal error has locked you out of the wp-admin dashboard entirely. If the dashboard is still reachable, deactivating through <strong>Plugins<\/strong> is simpler.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1785937068651\" class=\"rank-math-list-item\">\n<h4 class=\"rank-math-question \" class=\"rank-math-question \" id=\"what-if-the-plugin-developer-has-abandoned-the-plugin\">What if the plugin developer has abandoned the plugin?<\/h4>\n<div class=\"rank-math-answer \">\n\n<p>A plugin with no update in 12+ months is a security liability, even if it currently works. The safer path is migrating to an actively maintained alternative rather than continuing to run unpatched code.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>A WordPress plugin can stop working at any time, breaking forms, pages, or important website features. The right troubleshooting steps [&hellip;]<\/p>\n","protected":false},"author":13,"featured_media":22710,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"iawp_total_views":177,"footnotes":""},"categories":[350,2258],"tags":[],"class_list":["post-22689","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-knowledgebase","category-kb-wordpress"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/22689","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/comments?post=22689"}],"version-history":[{"count":5,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/22689\/revisions"}],"predecessor-version":[{"id":22707,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/22689\/revisions\/22707"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/media\/22710"}],"wp:attachment":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/media?parent=22689"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/categories?post=22689"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/tags?post=22689"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}