I have a few customers and they absolutely want me to make changes within plugins which do NOT offer hooks etc. I checked it - only way is to modify the plugin directly.

So: I want to know what is the easiest way to rename the plugin, to achieve:

  1. avoid getting plugin updates, i.e. block them
  2. to make clear that modifications by me were done in this plugin

Just rename the folder and the header in the main file? Or can this break anything?


1 Answer 1



  • the plugin folder
  • the Plugin Name in whatever php file loads first
  • the name at the top of the readme.txt

If it is a premium plugin, you need to remove or cripple any external checks.

You may also want to include an init check for an activated version of the original plugin and if found, deactivate.

  • Thanks shane, compact and great answer. Just one more question: How to handle language and template files? Language files are named by the original plugin, can I just rename them or does it depend on the concrete implementation!? If I'm not mistaken, it depends on the slug, right? -> __( 'Some translatable string', 'XXX' ); -> So just keep the original Slug here and keep the language files with the original filenames!?
    – tim
    Commented Aug 13, 2021 at 6:15
  • I saw some places where the old plugin name is used, e.g. in the grunt.js file as the text_domain. In the language files (pot, po etc) themselves, when calling the translating function (see previous comment), also in the first loaded php plugin file in the header (Text Domain: xxxx). So shall I leave it that way? I suppose it should work that way right?
    – tim
    Commented Aug 13, 2021 at 6:28
  • You shouldn't have to rename files and templates - assuming the old plugin is not active. Text domain should be fine as is.
    – shanebp
    Commented Aug 13, 2021 at 20:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.