Say what?


An easy-to-use plugin that allows you to alter strings on your site without editing WordPress core, or plugin code. Simply enter the current string, and what you want to replace it with and the plugin will automatically do the rest!

The plugin’s available for forking and contribution over on GitHub

Check out Say What Pro for:

  • String discovery – Don’t have the time/expertise to find strings in the code, set up replacements easily with easy-to-use autocomplete features
  • Wildcard string replacements – replace individual words, or fragments across your whole site
  • Multi-lingual support – set different replacements for different languages on multi-lingual sites
  • Import/export features – Easy import/export of replacements through the user interface


  • Finding a string to replace
  • The admin screen - setting up a replacement
  • The result


  • Install it as you would any other plugin
  • Activate it
  • Head over to Tools » Text changes and configure some string replacements


Installation Instructions
  • Install it as you would any other plugin
  • Activate it
  • Head over to Tools » Text changes and configure some string replacements
Can I use it to change any string?

You can only use the plugin to translate strings which are marked for translation.

How do I find the string to translate?

You can either have a guess, or checkout the plugin in question’s source code, translatable strings are generally wrapped in __(), _e(), _n(), or _x(), for example:

$foo = __('This is a translatable string', 'plugin-domain');

The article here shows some examples of what you’re looking for. Alternatively, the Pro version of the plugin provides a String Discovery mode which means you can search for strings on your site via autocomplete suggestions.

Is there any support for importing replacements?

“Say What?” has preliminary support for exporting, and importing replacements via The following commands are currently

  • export – Export all current string replacements.
  • import – Import string replacements from a CSV file.
  • list – Export all current string replacements. Synonym for ‘export’.
  • update – update string replacements from a CSV file.

See the GitHub homepage for examples.

Can I set different replacements for different languages?

Not in the free plugin, however this is available in the Pro version of the plugin


Replace strings in just 3 convoluted steps!

Not easy to use, before installing consider this quick instruction:

A somewhat useful walkthrough of the 3 steps needed to change a string (useful assuming, you specifically want to change, ‘Register’ in Campaign Monitor plugin).

Spent about 15 minutes on it before I gave up. Perhaps the Pro version works well.

Works perfect!

Wanted to change the text of one string on our site, and this plugin worked perfect!


Did the trick

Takes some five minutes to learn to use, but does what it says. Good for creating a few exceptions to default translations.

Read all 57 reviews

Contributors & Developers

“Say what?” is open source software. The following people have contributed to this plugin.


“Say what?” has been translated into 2 locales. Thank you to the translators for their contributions.

Translate “Say what?” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Update information about Pro features


  • Fix issue adding more strings after downgrade from Pro
  • Update text domain of plugin to match guidelines to aid translations


  • Documentation updates only


  • Update plugin links, include settings and upgrade link
  • Update documentation about pro features
  • Admin styling fixes


  • Fix issues where entities could be double encoded on admin screens.


  • Update to admin marketing message. No functional changes.


  • Support for _n() and _nx()
  • Support for multi-line strings


Introduce filters that allows back compatibility for plugins that change their text-domain. Props Pippin Williamson


Avoid warnings on initial activation.
Avoid issues where strings contain HTML / entities


Add info box about Pro version


Support for WP-CLI import and export.


Swap database to UTF-8 to fix problems entering non-ASCII strings.


Fix incorrect escaping on the admin screens.


Fix initial DB table creation
Fix translations for strings with no domain


Allow strings with context to be replaced


Documentation improvements


Avoid wpdb->prepare warning
Minor admin fixes, don’t double translate strings


Fix issue with fields being swapped when first entered


Beta ready for testing and feedback