“If this file were writable, you could edit it,” a missing Update File button, and failed plugin or theme updates are related but different problems. First identify which operation is failing: saving code in the built-in editor, installing a WordPress update, or an automatic update run by WP-Cron. Then back up the site before changing files, use Site Health to identify filesystem access problems, and involve your host when ownership or server configuration is the cause.
Identify the failed operation
Saving a theme or plugin file
The Theme File Editor and Plugin File Editor write directly to files on the server. WordPress hides or disables Update File when the selected file is not writable. Messages such as “If this file were writable, you could edit it” and the absence of the save control point to file access, not an update-download problem. Confirm that you opened the intended editor and selected the expected file; editing a local copy and uploading it is a separate workflow. See WordPress’s Editing Files – Advanced Administration Handbook.
Installing WordPress, a plugin, or a theme update
Update errors can involve filesystem ownership, credentials, network access, or a stuck maintenance mode. Typical messages include “Update failed: Could not copy file,” a failed-update notice, or a request for “Connection Information.” These are not automatically permission errors.
Automatic updates
Plugin and theme auto-updates run as scheduled WP-Cron tasks. If an automatic update never runs, check Tools > Site Health for scheduled-event or cron errors. Hosts or plugins can also disable auto-update controls. WordPress documents the process at Plugin and themes auto-updates.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Fix the driver behind crashes, sound loss and screen glitches3Clear out junk files and repair common Windows errors#1 Best Overall
Prepare a safe recovery point
- Back up the file before editing it. A syntax error can take the site down, and the built-in editor does not create a backup copy.
- Before a core, plugin, or theme upgrade, back up both the files and the database. Keep a copy somewhere outside the web root; an external drive can hold a copy, but it is not a substitute for a complete, restorable backup.
- Record the theme, plugin, and WordPress versions and the exact error text. This helps your host distinguish an ownership problem from a network or PHP failure.
WordPress’s backup and upgrade cautions are covered in its troubleshooting FAQ and Updating WordPress guide.
Fix a file that is not writable
Check Site Health first
Open Tools > Site Health > Info and review the filesystem-permissions information. Site Health checks whether WordPress can write to the main directory and important wp-content subdirectories. If required directories are not writable, the documentation advises contacting the hosting provider rather than guessing at server changes: Site Health screen.
Understand the 604 guidance
WordPress’s file-editing guide gives “at least 604” as a writable permission in this editor context. That is not a command to recursively run chmod 604 across a WordPress installation. Directory permissions, ownership, the web-server user, and host security policies differ. Changing permissions blindly can expose files or make directories unusable.
Use the access method your host supports
When the dashboard cannot write, use the host’s web file manager, FTP/SFTP, or SSH with a local plain-text editor. Download the file, keep the original backup, edit the copy, and upload it through the same account that owns the site files. WordPress documents these methods without endorsing a particular client. If ownership is wrong, only the host may be able to correct it.
Recommended Free Tools
Consider disabling dashboard code editing
Administrators can disable the built-in editors with DISALLOW_FILE_EDIT in wp-config.php. This removes a live-site editing route and can reduce the impact of a compromised administrator account. It does not repair permissions; it changes where edits must be performed. See WordPress’s file-editing guidance.
Resolve “Connection Information” and copy errors
WordPress chooses a filesystem method based partly on file ownership. If it cannot create files with the correct owner, it may ask for FTP or other connection details. A prompt therefore reflects the server’s configuration, not proof that your password is wrong. Ask the host which filesystem method and account should be used, and have them verify ownership of the WordPress directory and wp-content.
For “Update failed: Could not copy file,” inspect the destination directory’s write access and available disk space with your host, then retry. Do not delete unrelated files to make space or change ownership recursively without a backup and host instructions.
Recover from a failed core update
Clear a stale maintenance mode
A failed update can leave a .maintenance file in the WordPress root, causing a persistent failed-update or maintenance notice. WordPress’s official procedure is to remove that file using FTP (or the host file manager), then reload the site. Delete only the stale .maintenance file after confirming the update process is no longer running: Dashboard Updates screen.
Use the documented manual update
If one-click updating continues to fail, follow the current manual-update steps in Updating WordPress. Back up first, upload the new WordPress files by the supported access method, and preserve wp-content, which contains your themes and plugins. Do not improvise by deleting the whole installation; the official instructions identify which files are replaced and which are retained.
Rank #4
When downloads or name lookups fail
Errors mentioning a failed download, connection, or name-lookup timeout indicate that the server may not be reaching the update service. Confirm the server’s outbound internet and DNS connectivity with your host and retry. If the error persists, hosting support is the appropriate escalation. A writable disk cannot fix a server that cannot resolve or reach the download host.
If only PHP edits fail
PHP involvement alone does not establish the cause. A reported support discussion about PHP saves recommends checking hosting error logs and testing for plugin interference, but it is an anecdotal case, not a universal diagnosis: WordPress support discussion. Preserve your backup, reproduce the failure once, and ask the host to review PHP and web-server logs. If another plugin is suspected, test in a maintenance window or staging copy rather than disabling security controls on a live site.
Choose the right editing route
| Method | Best use | Restoration and access considerations |
|---|---|---|
| Built-in editor | Small, urgent change when the file is writable | Edits the live file; no automatic backup; a syntax error can crash the site |
| Host web file manager | Hosts that provide browser-based file access | Can make a backup and replace a file; ownership rules still apply |
| FTP/SFTP | Downloading, editing, and uploading with a host account | Use the credentials and permissions supplied by the host; retain the original file |
| SSH plus local editor | Administrators comfortable with shell access and versioned workflows | Fast and precise, but a wrong path or command can alter live files |
Or skip the browser setup
If your goal is to capture a clean image of the WordPress screen while documenting an issue, ScreenshotNeo returns a screenshot or PDF from one request. It accepts consent banners like a visitor, removes more than 60 known consent platforms plus newsletter popups and chat widgets before capture, and bills only clean shots: bot checks, CAPTCHAs, blank pages, timeouts, failed loads, and cache hits cost nothing. Responses identify the result with X-Page-Verdict and X-Billed headers. Its MCP server provides take_screenshot, get_page_info, and capture_pdf tools for Claude, Cursor, and other MCP clients.
Free tools Windows power users keep installed
One-click scans. No signup required.
Using the documented API, replace the target URL with your WordPress page. Full options and authentication details are in the ScreenshotNeo documentation.
Best Value
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://example.com/wp-admin -o shot.webp
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://example.com/wp-admin"}, timeout=90)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://example.com/wp-admin' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
ScreenshotNeo supports full-page and element captures, device presets, custom viewports, retina scale, dark mode, PDF settings, CSS and JavaScript, clicks, waits, blocked resources, headers, cookies, user agents, timezone and geolocation, transparent backgrounds, resizing, TTL caching, signed links, asynchronous webhooks, bulk capture of 100 URLs per call, usage reporting, and an OpenAPI specification. Every feature is on every plan: 1,000 shots per month are free with no card; paid plans start at $5 for 3,000 shots. Create a free ScreenshotNeo account.
Fast diagnostic checklist
- Is this a live-file save, a manual update, or an automatic update?
- Did you back up the file, database, or both as appropriate?
- Does Site Health report writable directories or cron errors?
- Does the host confirm ownership, disk space, DNS, and outbound connectivity?
- Is a stale
.maintenancefile present after a failed core update? - Can you reproduce the error in a staging copy and supply the exact message and logs?
Frequently Asked Questions
Why is Update File missing in the WordPress editor?
WordPress makes the control unavailable when the selected server file is not writable. Check Site Health and ask the host to verify permissions and ownership.
Should I chmod every WordPress file to 604?
No. WordPress cites at least 604 for files in this editor context, but directory and ownership requirements vary. Do not apply recursive permission changes without host guidance.
What should I do when an update asks for Connection Information?
Have the host confirm the filesystem method and account ownership. The prompt usually means WordPress cannot create files with the required owner directly.
Can a plugin cause a PHP file save error?
It is possible, but a support-thread report is anecdotal. Preserve a backup and use hosting PHP and web-server logs to identify the actual cause.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




