Glossary · File change
A plugin file has been modified
- Wordfence type
pluginFile- Category
- File change
- Severity
- Medium to High
A plugin's file no longer matches the copy published on WordPress.org.
Modified plugin file: wp-content/plugins/akismet/akismet.php
What Wordfence found
For plugins hosted on WordPress.org, Wordfence compares the installed files against the published release and reports differences.
Why it matters
Injected code in a plugin file survives everything except reinstalling that plugin, and it runs on every request. The benign explanation — someone edited a plugin directly to change behaviour — is also a real problem, because the edit disappears at the next update and takes the behaviour with it.
How to fix it
- 1Inspect the change before acting.
- 2For an unexplained difference, reinstall the plugin cleanly: delete it and install fresh, rather than pressing update.
- 3If the edit was deliberate, reimplement it through a hook in a small custom plugin.
- 4Re-scan to confirm the file now matches.
Common questions
- Nobody here edits plugin files. How can one be modified?
- Then something else did: malware appending itself to an existing plugin (a favourite hiding place, since plugin code changes legitimately on every update and blends), a developer's quick fix from years ago, or a build process that strips comments. 'No human edited it' narrows the list to exactly the possibilities worth checking.
- Does updating the plugin clear the modification?
- Yes — an update replaces the plugin's files wholesale, which both removes the modification and clears the finding. That is also the cheapest clean-up when the diff looks malicious: update (or reinstall the same version), then verify the scan comes back clean. If modifications reappear, the writer is still active.
- Why does Wordfence not check my premium plugins?
- The comparison needs a published reference copy, and WordPress.org only hosts free plugins. Premium plugin files are invisible to this check — so absence of findings there is absence of coverage, not a clean bill. For premium code, your integrity reference is the vendor's original ZIP.
How WPSecureOps treats it
The connector reports this as pluginFile. WPSecureOps files it under
File change and bands it by the numeric severity Wordfence
assigns, so findings of this kind from every site you manage arrive in one queue rather
than one email per site. Titles and descriptions are stripped of HTML and the site's
absolute path is replaced before anything leaves the server.
Primary references
Product behaviour and remediation guidance were checked against these primary sources.