Website Without PHP
English (United Kingdom)GB
  • English (United States)
  • English (United Kingdom)
  • Dutch (Netherlands)
  • Dutch (Belgium)
Menu

Must-use plugin

A must-use plugin is a WordPress plugin loaded automatically from a special directory.

Read the explanation

WordPress Last updated:

A must-use plugin is a WordPress plugin loaded automatically from a special directory. You may also see the term mu-plugin. As a website owner, the useful questions are what the component does and who maintains it.

Its name does not mean every website needs one, or that an existing component can never be replaced through a planned change.

How is it different from an ordinary plugin?

The WordPress documentation for must-use plugins describes their special directory and separate section in plugin administration. They load automatically and do not have the usual deactivate control. The documentation also explains that normal plugin update notifications are not provided for this type of component.

Treat this kind of WordPress pluginA WordPress plugin is an add-on you install in WordPress to give your site extra features, such as contact forms, SEO tools or a webshop. as a distinct item in your maintenance inventory. Ask what it does, who installed it and who supplies updates. The name alone does not answer those questions.

A file that has been on the server for a long time still needs an identifiable maintenance owner.

Why might your host mention it?

Which PHP version does your site report?

We read only what your site already sends in public: the headers and the top of the homepage. No scan, no login.

A hosting providerWeb hosting is the service that keeps your website's files on a computer that is always online, so visitors can open your site at any time. can use this plugin type for platform-related features. That does not explain the purpose of a particular plugin on your installation. Request the description relevant to your account.

Do not assume an unfamiliar component can be removed just because you do not remember installing it yourself.

When moving hosts, record which components should move and which belong to the previous environment. Have the relevant maintainers explain meaningful differences. This avoids carrying a file into a new account without understanding it, only to investigate its purpose after visitors arrive.

Inventory work is not an instruction to disable anything immediately.

Also ask which website action would be affected if the component changed. The answer helps you select a useful test. If nobody can explain the purpose, leave it as an open investigation point.

A reassuring filename is not a substitute for reviewing the code or establishing who is responsible for keeping it maintained.

What does this mean for a PHP update?

Include must-use plugins when preparing a WordPressWordPress is free software for building and editing a website in your browser. It is written in PHP, so it builds each page when someone visits. update or a change to PHPPHP is a programming language that builds your web pages on the computer that hosts your site, just before they reach the visitor. WordPress runs on it.. Ask the responsible developer to assess suitability for the intended environment. An inventory limited to ordinary active plugins does not make this separate category sufficiently visible in the maintenance discussion or the resulting test plan.

Use a staging environmentA staging environment is a private copy of your website where you try updates first, so any mistakes happen there and not on the live site. to check the relevant behaviour. Have the maintainer confirm that the test copy contains the components needed for the check. A successful test provides little evidence about a component that was absent from the test environment.

Record such differences before treating the result as evidence about production.

Choose checks based on the documented purpose. For example, repeat the action that the component is expected to influence and write down the expected result beforehand. Loading the homepage is not adequate acceptance when the component supports an administration task or another specific process that the homepage test never exercises.

How should a suspected conflict be investigated?

Record the actual error, timestamp and preceding action first. Explain which change happened shortly before the problem appeared. Let the developer decide how to reproduce it on a test copy.

The presence of a mu-plugin does not establish that it caused the error, even when its name appears unfamiliar.

Do not move or remove live files yourself to see what happens. Request a controlled test with an agreed recovery procedure. Record exactly what changed and what happened afterwards.

This helps the maintainer distinguish a supported explanation from an improvement that happened at the same time for another reason.

For a recognisable PHP message, consult the Error Hub to narrow the question. If several explanations are possible, ask which one will be investigated first and what evidence would support it. A bounded technical question is easier to evaluate than an open request to inspect every plugin without a specific expected result.

Which maintenance agreement do you need?

Keep the purpose, owner and update procedure for each component in your records. Agree who will reassess it when PHP changes and which test that person will perform afterwards. This turns maintenance into a practical responsibility that another developer can understand and take over without reconstructing the entire project history.

The hosting guides provide context for hosting administration. The status page helps with PHP maintenance questions. If you plan to update PHP in WordPress, include your must-use plugin inventory in the handover.

Ask for help if the purpose or maintenance responsibility of an existing component remains unclear.

Frequently asked questions

Does every website need a mu-plugin?

No. Ask which specific function the component provides for your installation.

Can I deactivate it like a normal plugin?

This type does not use the ordinary deactivate control. Have the responsible maintainer plan any change.

Who keeps it updated?

Agree that explicitly with your host or developer. Automatic loading is not a maintenance agreement.

Share this page

Ask your AI to explain

Opens the chat with a question about this page. An AI answer can differ; the sources above are leading.

This question is sent along: Summarise the confirmed facts on https://websitewithoutphp.com/en-gb/glossary/must-use-plugin/ in 5 short points, with the source per point.

  1. Domain
  2. Check
  3. Result
  4. Report

Which PHP version does your site run?

Enter your domain. We read only what your site already sends in public: the headers and the top of the homepage. No scan, no login.

We keep the domain and the result, never your IP address.