Copy the Claude code with Ctrl+A, not a double-click
The code you get when connecting Claude has two parts with a # in between. A double-click only selects the first part, and then you get "Invalid code".
Connect Claude →The code you get when connecting Claude has two parts with a # in between. A double-click only selects the first part, and then you get "Invalid code".
Connect Claude →DirectAdmin's jailshell only exposes /usr and your home directory. An install in /opt is invisible to users. Put the binary under /usr/local/lib.
su - username -c 'which claude'Explanation →
Claude makes a backup on its own before WordPress updates and database work. For other big jobs it helps to ask for one explicitly.
Make a backup first, then update all plugins
wp uses the server's default PHP. If your site runs on a different version, call WP-CLI through that PHP binary.
/usr/local/php84/bin/php /usr/local/bin/wp plugin listSafely update WordPress →
Some plugins print notices or run actions on every WP-CLI call. --skip-plugins --skip-themes gives you clean output, and it works on a broken site too.
wp --skip-plugins --skip-themes plugin list --update=available
Replacing a domain or URL in the database touches hundreds of rows. Check how many first, make a backup, and only then run it for real.
wp search-replace 'https://old.com' 'https://new.com' --dry-run
You don't need to restore a full backup straight away. Just put that one plugin back on its previous version.
wp plugin update plugin-name --version=1.2.3 --force
Need more memory or bigger uploads? Put a .user.ini in the web root. It can take a few minutes before it takes effect.
memory_limit = 256M upload_max_filesize = 64M post_max_size = 64M
The uploads folder is for images and documents, not PHP. A .php file in there is a well-known sign of a hack.
find wp-content/uploads -name '*.php' ! -name index.php
To deploy your website the server only needs to read. A key with write access could also push to your repository.
Connect a repository →A deploy writes what is in the repository but never removes anything. Remove old files from the website yourself.
Automatic deploys →DirectAdmin's Git API only works on main domains. Create the repository under the main domain and set the deploy directory to the subdomain's folder.
DirectAdmin Git API →Exit code 137 means a process was stopped because your account reached its memory limit. Run heavy jobs one at a time, or build elsewhere.
Limits →LiteSpeed Cache may still serve an old version of a page. Purge the cache after a change.
wp litespeed-purge all