UnderHost
WordPress Help

WordPress Help & Troubleshooting

Step-by-step guides for common WordPress issues — from white screens to security hardening, written for UnderHost customers.

No articles match your search. Try different keywords or contact our support team.

Common Errors

3 articles
  1. Enable WP_DEBUG. Add define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); to wp-config.php. Check the debug log at wp-content/debug.log for the actual error.
  2. Deactivate all plugins. Rename your wp-content/plugins folder to plugins.bak via File Manager or FTP. Reload — if the site comes back, a plugin is the cause. Rename back and reactivate one by one.
  3. Switch to a default theme. Rename your active theme folder (e.g., mythememytheme.bak). WordPress will fall back to the default theme.
  4. Increase PHP memory. Add define('WP_MEMORY_LIMIT', '256M'); to wp-config.php. Low memory is a frequent WSOD cause.
  5. Check PHP version. In cPanel, go to Select PHP Version and confirm your PHP version matches your theme/plugin requirements (typically PHP 8.0+).
  6. Still blank? Open a support ticket with UnderHost. Include your PHP version, error log excerpts, and when the issue started.

Still need help? Contact UnderHost support →

  1. Check the error log first. In cPanel → Error Logs or File Manager → error_log at your site root. The log usually points directly to the problem.
  2. Repair or rename .htaccess. Rename .htaccess to .htaccess.bak. Reload. If the site loads, regenerate the file in WordPress → Settings → Permalinks → Save Changes.
  3. Deactivate all plugins. A corrupted or incompatible plugin is the most common cause of a 500 error. Use File Manager to rename the plugins folder.
  4. Check PHP memory. Add php_value memory_limit 256M to .htaccess or update php.ini if available in your hosting environment.
  5. Check file permissions. Folders should be 755, files 644. Use File Manager or FTP to correct permissions on wp-content.
  6. Contact support. If the server is returning a 500 with no clear log entry, the issue may be server-side. Open a ticket with UnderHost for investigation.

Still need help? Contact UnderHost support →

  1. Check wp-config.php credentials. Open wp-config.php and verify DB_NAME, DB_USER, DB_PASSWORD, and DB_HOST are correct. DB_HOST is usually localhost.
  2. Test the database user in cPanel. In cPanel → MySQL Databases, confirm the user exists, has the correct password, and is assigned to the database.
  3. Check if MySQL is running. If other sites on the same server are also down, the MySQL service may be down. Contact UnderHost support immediately.
  4. Try the WordPress repair tool. Add define('WP_ALLOW_REPAIR', true); to wp-config.php, then visit yoursite.com/wp-admin/maint/repair.php. Remove the line after.
  5. Check for a corrupted table. In cPanel → phpMyAdmin, select your database and run Repair Table on flagged tables. The wp_options table is a common culprit.
  6. Contact UnderHost support if the database is inaccessible or phpMyAdmin cannot connect. This may be a server-level issue.

Still need help? Contact UnderHost support →

Plugins & Themes

2 articles
  1. Switch to a default theme first. Go to Appearance → Themes and activate Twenty Twenty-Four (or any bundled default theme). If the issue disappears, your theme is the cause.
  2. Deactivate all plugins. In Plugins → Installed Plugins, select all and choose Deactivate. Reload your site. If it works, a plugin is the cause.
  3. Reactivate plugins one by one. Activate each plugin, reload the site, and test. The plugin that breaks the site is the conflict.
  4. Cannot access wp-admin? Use File Manager or FTP to rename wp-content/plugins to plugins.bak. Log in, then rename back and identify via the admin.
  5. Check for plugin updates. Outdated plugins are a major source of conflicts. Always keep plugins and themes updated.
  6. Use a staging environment to test plugin updates before applying them to your live site. Ask UnderHost support if you need staging help.

Still need help? Contact UnderHost support →

  1. Disable all plugins via FTP/File Manager: Navigate to wp-content/ and rename the plugins folder to plugins_disabled. WordPress will deactivate all plugins.
  2. Re-enable plugins: Rename the folder back to plugins. WordPress will show all plugins as deactivated — re-enable them individually from wp-admin.
  3. Disable a single plugin: Navigate to wp-content/plugins/ and rename the specific plugin folder (e.g., jetpackjetpack_off).
  4. Via phpMyAdmin: In your wp_options table, find the row where option_name = 'active_plugins'. Set option_value to a:0:{} to deactivate all plugins.
  5. Re-enable from phpMyAdmin: After logging into wp-admin, go to Plugins and re-enable what you need.

Still need help? Contact UnderHost support →

Admin Access

1 article
  1. Method 1 — Email reset: Go to yoursite.com/wp-login.php → Lost your password? Enter your username or admin email address and submit.
  2. Method 2 — phpMyAdmin: In cPanel, open phpMyAdmin. Select your WordPress database → wp_users table → find your user → click Edit. Set user_pass to a new MD5-hashed password (use a tool like md5hashgenerator.com). Save.
  3. Method 3 — wp-config.php trick: Open wp-config.php, add: define('WPLANG', ''); — this is not a reset method. Use phpMyAdmin for a reliable reset.
  4. Method 3 — WP-CLI (if available): Run wp user update 1 --user_pass="NewPassword123" from SSH to reset the admin password instantly.
  5. Contact UnderHost support if you have no access to email, phpMyAdmin, or cPanel. We can assist with identity-verified account recovery.

Still need help? Contact UnderHost support →

Performance

5 articles
  1. Via wp-config.php (recommended): Add define('WP_MEMORY_LIMIT', '256M'); before /* That's all, stop editing! */.
  2. Via .htaccess: Add php_value memory_limit 256M to the top of your .htaccess file.
  3. Via php.ini: If your host allows a custom php.ini, add memory_limit = 256M.
  4. In cPanel → MultiPHP INI Editor: Select your domain, find memory_limit and increase it.
  5. Verify the change: Install Health Check & Troubleshooting plugin or create a file with and check the memory_limit value.
  6. Note: If your hosting plan has a hard memory cap, you may need to upgrade your plan. Contact UnderHost support for assistance.

Still need help? Contact UnderHost support →

  1. Regenerate .htaccess: In WordPress admin, go to Settings → Permalinks → click Save Changes (no changes needed). This regenerates the .htaccess file.
  2. Check mod_rewrite is enabled: Your server needs Apache mod_rewrite. If you're on nginx, you need specific rewrite rules. Contact UnderHost support for nginx configuration.
  3. Check .htaccess contents: The file should contain WordPress rewrite rules. If it's missing or incorrect, paste the standard WordPress .htaccess block from wordpress.org/support.
  4. Verify .htaccess permissions: The file should be readable by Apache. Set permissions to 644.
  5. Still broken? In some shared hosting setups, AllowOverride must be set to All in the Apache config. Contact UnderHost if you've confirmed the above steps and still have 404s on posts.

Still need help? Contact UnderHost support →

  1. Install Query Monitor or WP Hive: Identify slow database queries, PHP errors, and heavy plugins.
  2. Check for an overloaded shared server: If speed varies throughout the day, your shared server may be resource-constrained. Consider upgrading to a VPS. Ask UnderHost about VPS options.
  3. Enable a caching plugin: W3 Total Cache, WP Super Cache, or LiteSpeed Cache (if on a LiteSpeed server). Caching is the single biggest performance improvement for most WordPress sites.
  4. Optimise images: Use WebP images and a plugin like Imagify, ShortPixel, or EWWW Image Optimizer.
  5. Use a CDN: Offload static assets (CSS, JS, images) through Cloudflare or the UnderHost CDN add-on.
  6. Limit WordPress revisions: Add define('WP_POST_REVISIONS', 5); to wp-config.php to stop database bloat from unlimited revisions.
  7. Clean the database: Use WP-Optimize or Advanced Database Cleaner to remove old revisions, spam comments, transients, and post meta.

Still need help? Contact UnderHost support →

  1. LiteSpeed Cache: Install the LiteSpeed Cache plugin (free). It works natively with LiteSpeed Web Server — available on UnderHost LiteSpeed plans. Enable Page Cache, Image Optimization, and CDN settings.
  2. Object cache / Redis: If your UnderHost plan includes Redis, enable it via cPanel → Redis. Then add to wp-config.php: define('WP_REDIS_HOST', '127.0.0.1'); and install the WP Redis plugin.
  3. Memcached: Some plans offer Memcached instead of Redis. Install the W3 Total Cache plugin and select Memcached as the object cache backend.
  4. OPcache: PHP OPcache is usually enabled by default on UnderHost plans. Verify in cPanel → MultiPHP INI Editor → check opcache settings.
  5. Ask UnderHost support if you're unsure which cache technologies your plan supports. We can confirm what's available and help with configuration.

Still need help? Contact UnderHost support →

  1. From your caching plugin: Most caching plugins have a "Clear Cache" button in the WordPress admin toolbar. Click it after making changes.
  2. LiteSpeed Cache: In WordPress admin, click LiteSpeed → Purge → Purge All, or use the top admin bar shortcut.
  3. W3 Total Cache: Performance → Purge All Caches.
  4. WP Super Cache: Settings → WP Super Cache → Delete Cache.
  5. Cloudflare: If using Cloudflare, log in to your dashboard → Caching → Configuration → Purge Everything.
  6. cPanel/Server-level: In cPanel, look for "Cache Manager" or contact UnderHost support to flush OPcache or server-level caches.
  7. Browser cache: Press Ctrl+Shift+R (or Cmd+Shift+R on Mac) to hard-reload and bypass your local browser cache.

Still need help? Contact UnderHost support →

Security

2 articles
  1. Keep everything updated. WordPress core, all plugins, and all themes should always be on the latest stable version.
  2. Use strong, unique passwords. Use a password manager. Never reuse your WordPress admin password anywhere else.
  3. Enable two-factor authentication (2FA). Install the WP 2FA or Google Authenticator plugin on the admin account.
  4. Limit login attempts. Install Limit Login Attempts Reloaded or use Wordfence to block brute-force attacks.
  5. Change the default login URL. Use WPS Hide Login to move wp-admin to a custom URL. This reduces automated attack traffic significantly.
  6. Remove the admin username. Create a new admin user with a non-obvious username, log in as that user, then delete the "admin" account.
  7. Disable file editing from wp-admin. Add define('DISALLOW_FILE_EDIT', true); to wp-config.php.
  8. Set correct file permissions. wp-config.php should be 600 or 640. Folders 755, files 644.
  9. Install a security plugin. Wordfence, Sucuri Security, or iThemes Security for active monitoring and firewall rules.
  10. Enable UnderHost's server-side protection where available — ask support about WAF, malware scanning, and hardening add-ons.

Still need help? Contact UnderHost support →

  1. Do not panic — act methodically. Take a backup of the current (possibly infected) state before doing anything, so you can reference files.
  2. Put the site in maintenance mode to prevent further damage and protect visitors from malicious redirects or code.
  3. Change all passwords immediately: WordPress admin, cPanel/FTP, database password, and your email account.
  4. Run a malware scan: Use Wordfence Free Scan, Sucuri SiteCheck, or ask UnderHost to run a server-side malware scan.
  5. Restore from a clean backup if available. This is the fastest and most reliable recovery method. Contact UnderHost about backup restoration.
  6. Identify the infection point: Check access logs for suspicious POST requests, new files with recent timestamps, and encoded/obfuscated PHP.
  7. Common malware locations: wp-content/uploads/ (PHP files should not exist here), wp-includes/, functions.php injected code.
  8. After cleanup: Update everything, replace WordPress core files from a fresh download, apply security hardening steps, and enable monitoring.
  9. Contact UnderHost support for managed malware cleanup. We offer professional remediation services.

Still need help? Contact UnderHost support →

Updates & Backups

2 articles
  1. Always take a full backup first. Use UpdraftPlus, Jetpack Backup, or the cPanel backup tool to create a complete snapshot before any update.
  2. Update in staging first if you have a staging environment. Test the update on staging before applying to production.
  3. Update plugins and themes before WordPress core. Plugin/theme updates often add compatibility for the new core version.
  4. Deactivate security plugins temporarily if they're preventing auto-updates — some WAF plugins block update requests.
  5. Use Dashboard → Updates to update WordPress core. Read the changelog for any breaking changes before updating major versions.
  6. After updating: Clear all caches (plugin cache, Cloudflare, server cache), test all critical pages, forms, and checkout flows.
  7. If an update breaks the site: Restore from the backup you took in step 1. Do not update plugins and core simultaneously if you can avoid it.

Still need help? Contact UnderHost support →

  1. Identify your backup type: Do you have a cPanel/WHMCS backup, an UpdraftPlus backup, or a manual FTP backup? The restore process differs.
  2. cPanel Backup Restore: In cPanel → Backup Wizard → Restore → Home Directory. Then restore the database via phpMyAdmin → Import.
  3. UpdraftPlus Restore: Install UpdraftPlus, connect to your backup storage (Dropbox/Google Drive/etc.), and use the Restore button in the plugin.
  4. Manual restore: Upload your files via FTP, create/import your database via phpMyAdmin, update wp-config.php with the correct database credentials.
  5. Update URLs if moving servers: Use WP Migrate DB or run SQL: UPDATE wp_options SET option_value = replace(option_value, 'old-url.com', 'new-url.com');
  6. Test thoroughly after restoration — admin, frontend, forms, cron jobs, and email.
  7. Contact UnderHost support if you need help restoring from a server-level backup we hold. We retain rolling backups on most hosting plans.

Still need help? Contact UnderHost support →

Need hands-on WordPress support?

UnderHost offers managed WordPress hosting, migration help, and expert technical support. Get real human help when you need it.