WordPress help hub: find the right guide and troubleshoot step by step

This page is the starting point for every guide on Plain Hooks, plus a troubleshooting routine that works for almost any WordPress problem.

Looking for the old ShiftThis support forum or documentation? They no longer exist. The ShiftThis plugins (Newsletter, Swift SMTP, Order Pages, Thumbnail Size, Image Captions, Lock Out, URL Login, Mint Stats) were discontinued long ago and we do not distribute, support or sell them. Plain Hooks is unrelated to their author. Old plugins written for WordPress 2.x should not be installed on a current site. The guides below explain how to do the same job today.

Find a guide by problem

What you are trying to doGuide
Send a newsletter or mailing list from WordPressSending a newsletter from WordPress
Site email (password resets, form notifications) is missing or lands in spamSending WordPress email through SMTP
Use a Gmail or Google Workspace account as the mail serverWordPress and Gmail SMTP
Control the order of pages in menus and listsOrdering WordPress pages
Change thumbnail dimensions or rebuild old onesThumbnail and image sizes
Show captions under images, consistentlyImage captions in WordPress
Block repeated login attempts, or close the site during maintenanceLocking WordPress down
Move the login page or use login linksCustom login URLs and login links
Count visitors without a heavy analytics suiteLightweight visitor statistics
Understand what happened to the messenger add-ons of the 2000sThe messenger add-on era

A troubleshooting routine that works

Most WordPress problems come from one of four places: a plugin, the theme, the server configuration, or a setting you changed and forgot. The steps below isolate the cause methodically instead of by guesswork. Work on a staging copy if your host offers one; many managed hosts create one in a click.

1. Back up first

Before changing anything, take a full backup of the files and the database, and confirm you know how to restore it. Your host's control panel usually has a backup tool; otherwise use a backup plugin that stores copies off the server.

2. Read Site Health

Go to Tools → Site Health. WordPress checks the PHP version, required extensions, scheduled events (WP-Cron), HTTPS, and whether loopback and REST API requests work. The Info tab lists your server environment and active plugins; copy it when you ask for help elsewhere. The feature is documented in the Site Health screen article.

3. Turn on logging, not on-screen errors

Add these lines to wp-config.php, above the line that says "That's all, stop editing!":

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Errors are then written to wp-content/debug.log instead of being shown to visitors. Reproduce the problem, read the last lines of the log, and note the file path in each error: it usually names the plugin or theme responsible. Switch WP_DEBUG back to false when you are done, and delete the log, which can contain paths and data you would not want public. The constants are explained in Debugging in WordPress.

4. Rule out plugins and the theme

Deactivate all plugins and check whether the problem disappears. If it does, reactivate them one at a time, testing after each, until the problem returns. To test the theme, switch temporarily to a default theme such as Twenty Twenty-Five. On a live site, the Health Check & Troubleshooting plugin offers a troubleshooting mode that disables plugins and switches theme only for your own session, so visitors are not affected.

If you cannot reach the dashboard at all, rename the wp-content/plugins folder over FTP or your host's file manager: WordPress deactivates every plugin it can no longer find. Since WordPress 5.2, fatal errors also trigger a recovery-mode email to the administrator address with a special login link.

5. Check the server side

Some problems are not WordPress at all. Missing emails often come from the host blocking outgoing mail; white screens can be memory limits; failed uploads can be file-size limits set in PHP (upload_max_filesize, post_max_size). Your host's error log and Site Health's Info tab show the actual values in force.

6. Ask for help with the right details

The free WordPress.org support forums are the best place for core questions, and every plugin in the official directory has its own support forum. A good request includes your WordPress and PHP versions, the exact error message from the log, what you have already tried, and the steps to reproduce the problem.

Keeping a site healthy