To edit a WordPress child theme with FileZilla, connect to your hosting account by FTP or SFTP, open the WordPress installation’s wp-content/themes directory, download the child-theme file you need, edit that local copy in a code editor, and upload it back to the same path. Keep a known-good copy before every PHP change. The child theme keeps your custom files separate from the parent, so parent-theme updates do not overwrite your work.
Antihost offers managed WordPress hosting with free migration, one-click staging and a 14-day free trial.
The details that prevent most failures are simple but exact: the child theme’s style.css must sit in the child directory’s root, its Template header must match the parent folder slug exactly, template overrides must preserve the parent’s relative path, and the child functions.php adds to the parent file rather than replacing it.
As an Amazon Associate I earn from qualifying purchases.
What you need before opening FileZilla
Prepare these items before touching a live file:
- FTP or SFTP credentials from your hosting account: server or host name, username, password, and port when your host requires one.
- The local folder where you will keep downloaded working copies and backups.
- A plain-text or code editor. Do not use a word processor that can add formatting characters.
- The WordPress administrator account needed to activate and test the child theme.
- A clear idea of the file you intend to change and the page or feature that will prove the change worked.
SFTP is preferable when your host offers it because the connection encrypts credentials and file transfers. Use the protocol and port supplied by the host rather than guessing. Never paste credentials into a public document or send them in an unsecured message.
Connect to the site in FileZilla
- Open FileZilla and choose File > Site Manager.
- Create a new site entry and select FTP or SFTP – SSH File Transfer Protocol, according to the credentials supplied by your host.
- Enter the host, port, username, and password. If the host specifies a transfer or logon mode, use those settings exactly.
- Click Connect. The left side of FileZilla is the local pane; the right side is the remote server pane.
- Read the message log and confirm that authentication succeeded. A successful connection should show the remote directory listing rather than repeated password or timeout errors.
If the account opens in a home directory instead of the site root, look for a folder such as public_html, www, htdocs, or the document-root name supplied by your host. Do not assume that the first directory shown is the WordPress installation.
#1 Best Overall
Confirming that you are in the right WordPress installation
In the remote pane, open the directory that contains WordPress’s familiar folders, especially wp-admin, wp-content, and wp-includes. Then open wp-content and themes. If you manage more than one site, verify the domain or document-root path before changing anything; editing the correct-looking theme in the wrong installation can produce a change that appears to have no effect.
Locate and validate the child theme
Inside wp-content/themes, each theme has its own directory. Open the directory whose name corresponds to the child theme you want to edit. The child theme’s style.css must be directly inside that directory, not inside a second nested folder.
Open style.css in your local editor and inspect its header. The Template value must exactly match the parent theme’s directory name, including capitalization and hyphens. WordPress uses this relationship to identify the child theme.
/*
Theme Name: Example Child
Template: example-parent
*/
In this example, the parent directory must be named example-parent. A display name, the parent theme’s marketing name, or a URL is not a substitute for the folder slug. If the value is wrong, WordPress may not recognize the directory as a child theme or may not associate it with the intended parent.
Rank #2
- Used Book in Good Condition
Check the parent directory before editing
From wp-content/themes, note the exact parent directory named by the child stylesheet’s Template line. You may need to inspect that parent theme to understand how it loads styles, where a template resides, or which hook is available. Download the relevant parent file for inspection rather than editing it directly; parent changes are vulnerable to being replaced by a future update.
The safe FileZilla edit cycle
FileZilla can transfer a file, but it is not a substitute for a local backup or a code editor. Use this repeatable cycle for every change:
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minute- Download first. In the remote pane, right-click the target file and choose Download. Save it in a project folder with a useful name, such as
style-before-2026-10-15.cssorfunctions-known-good.php. - Preserve the original. Keep the downloaded file unchanged. Make a separate working copy if you want to experiment. For a live site, retain at least one copy that is known to work.
- Edit locally. Use a plain-text or code editor. Keep the existing encoding and line endings unless you have a specific reason to change them.
- Review the diff. Check that only the intended declarations, markup, or PHP statements changed. For PHP, look especially for missing semicolons, braces, quotation marks, and accidental edits outside the target function.
- Upload to the same path. Drag the saved local file to the matching remote directory, or right-click it and choose Upload. Confirm replacement when FileZilla asks.
- Verify the transfer. Check the transfer queue for a successful result and make sure the remote file’s size and modification time changed as expected.
- Test immediately. Load the affected page, clear any relevant cache, and check both the front end and the WordPress administration area.
Do not edit a file directly in the remote pane and then close the editor without knowing where its temporary copy was saved. A local working folder makes it possible to compare versions and restore the last good file when a change fails.
Change CSS in the child theme
Use the child theme’s style.css for its metadata and CSS overrides. Put new rules after the existing header and preserve the header comments. A simple override might look like this:
.site-title {
letter-spacing: 0.04em;
}
.entry-content a {
text-decoration-thickness: 0.12em;
}
Whether those rules load after the parent stylesheet depends on the parent theme. Some themes enqueue the child stylesheet automatically; others require the child to enqueue it. WordPress documentation specifically notes that stylesheet loading differs by theme, so inspect the parent theme instead of assuming one universal behavior.
Enqueue the child stylesheet when the parent does not
If inspection shows that the child stylesheet is not being loaded, add an enqueue to the child theme’s functions.php using the appropriate WordPress hook. A typical pattern is:
function example_child_enqueue_styles() {
wp_enqueue_style(
'example-child-style',
get_stylesheet_uri(),
array(),
wp_get_theme()->get('Version')
);
}
add_action('wp_enqueue_scripts', 'example_child_enqueue_styles');
Adapt the handle, dependencies, and versioning to the parent theme’s implementation. Do not add a second enqueue blindly if the parent already loads the child stylesheet; duplicate or conflicting declarations can make debugging harder. After uploading, view a page that uses the affected CSS and verify the rule is present and winning in the browser’s styles.
Override a parent template without editing the parent
To customize a template, copy the parent file into the child theme using the same filename and the same relative path. For example, if the parent uses single.php at its root, place the customized copy at the child root. If the parent file is template-parts/content.php, the child copy must be template-parts/content.php as well.
Rank #4
- Download the parent template to your local project folder.
- Make the required markup or logic changes in the local copy.
- Create the matching directory inside the child theme if it does not already exist.
- Upload the file to the child directory while preserving its relative path.
- Test the specific content type that calls the template, such as a post, page, archive, or search result.
The child copy takes precedence for that path while the parent remains untouched. Child themes can also add new templates, template parts, and patterns where the active WordPress theme supports them. A path error is a common reason an override appears not to work: content.php in the child root does not replace a parent file stored at template-parts/content.php.
Add PHP safely in functions.php
The child theme’s functions.php is additive. WordPress loads it immediately before the parent’s functions.php; it does not override or replace the parent file. The practical consequence is that you should add hooks and functions to the child file rather than copy the parent’s entire file.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problemsUse unique names
Prefix functions, classes, constants, and other globally named items to reduce collisions with the parent theme and plugins:
function example_child_register_feature() {
// Add the child-theme behavior here.
}
add_action('init', 'example_child_register_feature');
Choose a prefix tied to your project, not a generic name such as custom_function. Copying the parent file can redeclare functions when both files load, producing a fatal error before WordPress can render the page.
Best Value
Make one small PHP change at a time
Download the current child functions.php, save a known-good copy, add one logical change, and upload it. Test after each change. Avoid combining a template rewrite, a stylesheet enqueue, and unrelated hooks in one upload; separating them makes the failing edit identifiable.
Activate and test the child theme
- In WordPress, open Appearance > Themes.
- Select the child theme and click Activate if it is not already active.
- Open the exact front-end pages affected by the edit, including a logged-out view when visitors would see a different result.
- Check responsive layouts, navigation, forms, and any page type touched by a template override.
- For PHP hooks, check the administration screens as well as the front end. A function can leave the home page working while breaking a settings or editor screen.
If a style appears unchanged, confirm that the child theme is active, the stylesheet is actually loaded, the selector is specific enough, and a cache is not serving the previous CSS. If a template appears unchanged, compare the child path with the parent’s path character for character and confirm that the page is using that template.
Free tools Windows power users keep installed
One-click scans. No signup required.
Recover when a PHP edit breaks the site
A syntax error or naming collision can produce a blank page, a fatal-error screen, or an administration area that will not load. Do not keep experimenting in the broken file. Restore the last known-good version through FTP or SFTP:
- Reconnect in FileZilla using the same site entry.
- Open the active child theme directory under
wp-content/themes. - Upload your preserved known-good
functions.phpover the broken remote file. - Confirm the transfer completed successfully.
- Reload the front end and administration area, then identify the faulty change locally before trying again.
WordPress also documents a fallback technique for a broken theme: rename the active theme’s directory through FTP so WordPress can fall back to another available theme. Use this only when you understand which theme should be available as the fallback and have a backup of the original directory name. Once access is restored, rename the directory back and repair the file rather than leaving the site on an unintended theme.
Common PHP failure symptoms
- Immediate fatal error after upload: restore the previous file, then inspect for a missing semicolon or brace, a misspelled function, or a duplicate declaration.
- Only one feature fails: disable or remove the newest hook and test again; the callback may be attached to the wrong hook or may assume data that is not present on every request.
- The site loads but the change does nothing: verify that the function name is unique, the hook is registered, and the file uploaded to the active child theme rather than a similarly named theme directory.
- WordPress will not activate the child: check that
style.cssis at the child root and that itsTemplatevalue exactly matches the parent folder slug.
FTP editing compared with other workflows
FTP editing is one option among three common ways to change a theme. The right choice depends on how much recovery control and repeatability you need.
| Approach | Local backups | Recovery if PHP breaks | Remote-path visibility | Credential and security handling | Repeatability across staging and production |
|---|---|---|---|---|---|
| FileZilla FTP/SFTP | Strong when you download and archive each file before upload. | Direct: upload the known-good file; you can also rename a broken theme directory. | High; you see the exact WordPress and theme paths. | You must protect credentials; SFTP is preferred when available. | Manual unless you document changes and copy them through environments. |
| WordPress Theme File Editor | Usually poor unless you create separate copies first. | More difficult from a locked-out dashboard; WordPress warns that an edit can break the site and documents FTP restoration. | Moderate; the editor shows files but not the full server context. | No separate FTP credential entry, but access is tied to administrator security. | Low; changes are difficult to reproduce consistently on another site. |
| Deployment workflow | Strong when changes are tracked in a local project or repository. | Strong when a previous deployment can be rolled back; setup varies by host and team. | Depends on the deployment tooling and project structure. | Centralized keys and permissions can reduce manual credential exposure. | Highest; the same reviewed change can move from staging to production. |
For a one-off fix on a site you can access, FileZilla provides the clearest path and an independent recovery route. For recurring development, a documented staging-and-deployment process reduces the chance that an emergency FTP edit becomes an undocumented production-only change.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →Pre-upload checklist
- Is the child theme active, and are you in the correct site’s document root?
- Did you download the current remote file before editing?
- Do you have an untouched, known-good copy that can be uploaded immediately?
- For
style.css, is the file at the child directory root and is theTemplateslug exact? - For a template, does the child file use the parent’s exact relative path and filename?
- For PHP, are every new function and class names prefixed uniquely?
- Did you inspect how the parent loads styles before adding an enqueue?
- Did FileZilla report a successful upload rather than a queued or failed transfer?
- Have you tested the affected page and an administration screen where relevant?
Key principles to keep
Child themes are extensions of a parent theme, not replacements for it. Keep custom CSS, template copies, and PHP additions in the child directory so parent updates do not erase them. Treat every live upload as a reversible operation: download first, preserve the working version, upload to the exact path, verify the transfer, and test immediately. Those habits make FileZilla a controlled editing tool instead of a risky shortcut.
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.




