Beginner's Guide for WordPress / Start your WordPress Blog in minutes

How to Easily Find and Replace Text in Your WordPress Database

Are you looking to do a mass search and replace in WordPress?

Whether you want to find and replace a specific text, URL, or image on your WordPress website, you can easily do so by using a find and replace WordPress plugin or a simple SQL query.

In this article, we will show you how to find and replace text in your WordPress database.

Find and replace text in WordPress database with just one click

When Do You Need to Find & Replace in the WordPress Database?

There are a few scenarios when you might need to find and replace items within the database of your WordPress website.

For example, let’s suppose that you have added specific text or URLs to a number of your posts. You don’t know which posts you have added that text to, but you do know that there are a lot of them.

Now, you can manually search your site and edit every single post one by one. But that’s going to take a lot of time and has a high chance of you missing some of the text you want to change.

Using a single command to automatically find and replace the items will do the same thing but much quicker and more efficiently.

There is one downside to this method, though. If you made a mistake, then you will not be able to undo it. Once you replace the text, it is gone. You will need to carefully type the text you are looking for and the text you want to replace it with.

Having said that, let’s see how you can easily find and replace text in your WordPress database.

Before Running Search and Replace on Your Database

As we mentioned earlier, the changes you make to your database will not be reversible. You need to be very careful to make sure that you don’t lose data.

First, you need to create a WordPress database backup. You can do that by using a WordPress backup plugin like Duplicator.

Alternatively, you can also create a database backup using phpMyAdmin.

After creating the backup of your WordPress database, you can move on to run your find and replace commands.

Running Find and Replace With a WordPress Plugin

If you are not familiar with code and don’t want to write a custom SQL query, then there is an easy-to-use find and replace WordPress plugin called Better Search Replace.

First, you need to install and activate the Better Search Replace plugin. For more details, you can see our guide on how to install a WordPress plugin.

Then, you need to go to Tools » Better Search Replace in your WordPress admin dashboard.

From here, you need to enter the text you want to change into the ‘Search for’ field. You must then write the text you want to replace it with into the ‘Replace with’ field.

You also have the option to select specific tables within your WordPress database.

Better search replace plugin

In the ‘Additional Settings’, we also recommend checking ‘Run as dry run’. That way, the plugin will allow you to check the changes it will make before it applies them.

Then, simply click on ‘Run Search/Replace’.

Run search and replace

If you need more help, we have a detailed guide on how to search and replace in WordPress with a Better Search Replace plugin.

Running Find & Replace MySQL Query with phpMyAdmin

You can also use phpMyAdmin to find and replace text from your WordPress database.

First, you need to log in to the cPanel dashboard of your WordPress hosting account. Then, scroll down to the Databases section and click on ‘phpMyAdmin’.

Launch phpMyAdmin

The screenshot above shows the cPanel dashboard on Bluehost. Your cPanel dashboard may look slightly different.

This will launch phpMyAdmin, where you will need to click on your WordPress database name and then click on ‘SQL’.

SQL query in phpMyAdmin

You will then need to enter your SQL query in this format:

update TABLE_NAME set FIELD_NAME =
replace(FIELD_NAME, 'Text to find', 'text to replace with');

For example, if you wanted to search for text in a WordPress post’s content, then you would write your query like this:

update wp_posts set post_content =
replace(post_content,'Text to find','text to replace with');

Then, click on the ‘Go’ button to continue.

phpMyAdmin will run your SQL query, and upon success, it will show the number of rows affected by the query.

You can now visit your WordPress site to see your changes in action.

We hope this article helped you learn how to find and replace text with one click in your WordPress database. You may also want to see our beginner’s guide on WordPress database management with phpMyAdmin and our expert picks of the best WordPress database plugins.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how WPBeginner is funded, why it matters, and how you can support us. Here's our editorial process.

The Ultimate WordPress Toolkit

Get FREE access to our toolkit - a collection of WordPress related products and resources that every professional should have!

Reader Interactions

18 CommentsLeave a Reply

  1. Can do search and replace HTML code? I have snippets of (table td tr) code I would like to replace.

    • It would depend on where that code was added from, you should normally be able to edit the page that it is on for modifying the code.

      Admin

  2. Hey there! could you please tell me how can I do this find and replace in sql for a word only in specific language?
    I tried using language queries but din’t work out!
    I really appreciate any help towards this. Thank you

    • Unless I hear otherwise, we don’t have a language specific search at the moment sadly.

      Admin

    • For the post and page titles, you would search the wp_posts table but, for changing categories and their urls you would want to do that manually and create 301 redirects.

      Admin

  3. I want to replace all instances of “OpenTx” with “OpenTX” but skipping URLs. So basically only what the viewer sees… How do I do this? I’ve installed both Search Replace and Better Search Replace but they also replace in the URLs…

  4. I tried plugins “Search $ replace” and “Better Search Replace” but there was no effect. Links in my posts was there. But…

    Thanks a lot for code metod, it works fine. It takes only few seconds.

  5. Is this something that would work in migrating a site – to change the DB urls to a new location?

  6. I’m not 100% sure but I’d say the SQL query can’t handle serialised data. If you search & replace your database using the suggested SQL query you’ll break the serialised data and get yourself into lots of troubles down the road like widgets not working, images dissappearing, broken javascript, etc.

    It’s well explained in this link http://davidcoveney.com/782/mysql-database-search-replace-with-serialized-php/

    So better look for a plugin, script or tool which handles serialised data, like the suggested plugin Better Search Replace or the interconnectit script.

    Personally I use search and replace tool integrated in WP-CLI, in my experience it’s the best and fastest tool out there, never had a problem so far, tested in dozens of websites. For less savvy people, I’d recommend a plugin since WP-CLI is a terminal command tool and might not suite everyone.

  7. I like internetconnect/it’s Database Search and Replace Script.

    Unlike the phpMyAdmin example in the article, it will search all fields. It will also do a dummy run.

Leave A Reply

Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.