How to update internal links to their translated versions

In today’s post I’ll show you how to easily update internal links to their translated version in another language on your website.

If you still have not translated your site, in the article how to translate a website for free you will find an easy way to do it for free.

There are some common issues with translation plugins. In this article for example I explain how I managed to fix pages that were broken when their translation was added. However, once the translation project is completed, you will be able to offer your users a localised experience.

So, now – you have translated your site from the main language (say, English) into a second language (say French), but all of the internal links in the new French pages link to English posts, as they keep the same hyperlink that the original version in English had.

Obviously that is not good. You want the new French pages to link between each other in the same way that the English did, but not linking to the English version.

So what to do? The first solution that might come to your mind is editing the links manually. Mmmm… that would be a time-consuming process, isn’t it? The second option would be editing the HTML files of your site, which might be risky and complex.

How could you do that without spending hours and days updating the links to their translated version by hand and without paid plugins? Well this is exactly what I will show you in this post.

When I translated one of my websites from Spanish into English one of the issues I ran into was that the hyperlinks on a translated page were still linking to the original language. In this case, they were still linking to a Spanish version instead of the English. This is definitely a no-no! 

Having internal links to pages in a different language on your website can present several downsides, depending on the specific goals of your website. 

Why you should not have internal links between content in different languages

Here are the drawbacks that I personally had:

User Experience: 

The website that I am referring to was originally in Spanish from Spain, and was localised to English. This English version caters to a specific language audience, and having my internal linking to pages in a different language can create confusion and frustration among your users. 

They may click on a link expecting content in their preferred language but end up on a page they can’t understand. In my case this led me to a poor user experience and increased bounce rates in the English versions that were still pointing to Spanish pages.

SEO challenges: 

Search engines rely on various signals to determine the relevance and quality of a website’s content. When you link to pages in a different language, it can confuse search engine crawlers and impact your website’s SEO performance. Search engines might struggle to understand the context and relevance of the linked pages, potentially affecting your rankings in search results.

It was only after I updated my internal links to their translated versions that I managed to see an increase in the SEO of the English pages.

Diluted conversion rates: 

If your website aims to convert visitors into customers or achieve specific goals, linking to pages in a different language can dilute your conversion rates. Visitors who land on pages they can’t understand are unlikely to engage with your content, complete desired actions, or make purchases. This can impact the overall effectiveness of your website’s conversion funnel.

In my case this website was purely informational (it was monetised via Ezoic advertising) and also affiliate, and even though programmatic advertising shows relevant ads depending on location, not having the translated links messed up a bit with my affiliate links.

Maintenance complexity: 

Managing a website with multiple languages requires additional effort and resources. If you have internal links pointing to pages in different languages, it can add complexity to the maintenance process. 

You’ll need to ensure that the links are correctly implemented, up to date, and properly localised. This can be time-consuming and increase the potential for errors.

For example, when I need to update any content and I do a word search I come across content that is still in the original language when it should be translated. That is very annoying, believe me.

Content consistency: 

If you offer content in multiple languages, it’s important to maintain consistency across all versions. When I was linking to pages in a different language, it was more challenging to ensure that the content was consistent and synchronised across different translations. And as you can imagine, inconsistencies can confuse users and diminish the credibility of your website.

Overall, while it’s possible to have internal links to pages in different languages, it’s essential to carefully consider the potential downsides and implement strategies to mitigate them. A well-executed multilingual website should prioritise user experience, maintain SEO best practices, and provide consistent and relevant content in all supported languages.

If you know you have internal links pointing to the wrong language but you don’t know how to find those links inside your website, read first how to find links in your website without plugins or tools. That way you will be able to identify how many links you need to update.

Now, let’s see how we can update all these links to the relevant language versions in an easy way.

How to update internal links to their translated version

We can do this in three ways: by updating them manually using your Customer Management System editor (WordPress or other), by replacing the links in the HTML code and by using free plugins.

Option 1: Update internal links to their translated version manually

This first option is the safest and easiest. Something that all of us could do. You simply go to the editor and update manually in each post, replacing the existing link with the one in the new language.

This method is fine as long as there aren’t many pages to update.

However, the task can become a headache when there are dozens or hundreds of pages that have been translated and whose internal links need to be updated.

And the situation would be even worse if the translations are into multiple languages. Let’s imagine that you have translated 100 pages into 4 different languages, and each of these pages has 5 or so page links within them.

To update them you would need to edit 400 pages and manually update the 5 links in each page that still points to the source language. Yes, that is 2000 manual links!

I personally have no time for that! Let’s see two more options available when we deal with a large number of translations.

Option 2: Update internal links to translations by editing the HTML

Updating internal links to their translated versions without plugins can be done manually by following these general steps. This method is a bit more intermediate level, but definitely worth it if you have many pages to update.

You simply need to do as follows:

  1. Identify Translated Pages: Determine which pages on your website have translated versions available. Ensure that each translated page has a unique URL or permalink. You can export an excel with a list of your posts from Google Analytics or from your sitemaps for example. Then add a column to the right with the matching URLs of the translations.
  2. Update Links: Locate the internal links on your website that need to be updated to their translated versions. This could include navigation menus, sidebar links, footer links, or links within the content.
  3. HTML Editor: Access the HTML source code of your web pages using a text or HTML editor. You can use software like Notepad++, Sublime Text, or any other editor that allows you to edit HTML files.
  4. Find and Replace: Use the find and replace feature of your HTML editor to replace the existing link URLs with the URLs of the translated pages. Make sure to replace the URLs in all relevant instances.
  5. Test Links: After making the changes, test the links to ensure they correctly navigate to the translated pages. Verify that the linked pages open in the correct language and that the user experience remains smooth.
  6. Repeat for Each Page: Repeat the above steps for all pages that contain internal links needing translation updates.
  7. Update Sitemaps: If you have XML sitemaps or other sitemap files, make sure to update them to include the URLs of the translated pages. This helps search engines discover and index your translated content.
  8. Redirects (if necessary): If you’ve changed the URL structure or moved content to different URLs for translated pages, consider setting up proper redirects from the old URLs to the new ones. This helps maintain SEO equity and ensures a seamless user experience.

Remember to keep a backup of your original HTML files before making any changes. This allows you to revert back to the previous version if needed. Additionally, it’s essential to follow best practices for multilingual website setup, such as using hreflang annotations, indicating language preferences in HTML tags, and ensuring proper localization of content.

Be aware that when you translate your website, there are some common issues with translation plugins. In this article for example I explain how I managed to fix pages that were broken when their translation was done.

Option 3: Update internal links to their translated versions by using free plugins

As you can see, while it’s possible to update internal links manually without relying on plugging via the two methods just mentioned, plugins can simplify the process of managing multilingual websites. Let’s explore that option now.

In order to update the internal links to their updated versions, I first tried these WordPress plugins:

However, the problem with these four is that they work on the entire site, and not only on the English pages that I wanted to work on.

The plugin AIO SEO does a similar job but only in its pro version, although I did not get to install that one.

Finally I managed to find a plugin that allowed me to work on certain pages only, and is called Search Regex.

This is a very popular plugin because of its versatility. A similar use case would be to implement it in adding internal links.

With the Search Regex plugin you can create a preset that filters the posts by category, and that way you choose to work only on content that has categories in the translated languages.

You can set your own parameters to filter and update the database to replace the links as needed. Also, you can use the .json code below to run it in Search Regex:

{“name”:”Replace a URL in a link”,”description”:”Replace the original URL in a HTML link with the new URL”,”search”:{“searchPhrase”:”href=\”SOURCEURL”,”replacement”:”href=\”TARGETURL”,”perPage”:25,”searchFlags”:[“case”],”sourceFlags”:[],”source”:[“post”,”comment”,”page”]},”locked”:[“searchFlags”,”sourceFlags”,”perPage”],”tags”:[{“title”:”Original URL”,”name”:”SOURCEURL”},{“title”:”New URL”,”name”:”TARGETURL”}]}

Obviously this only works if you work with WordPress categories, but most sites do. Check this article about categories in WordPress and how they affect your SEO health.

Alternatively you could use other filters to select only content in the target language.

I hope this article helped you update internal links to their translated version in an easy way by using the CSM editor, updating the HTML files or using free plugins.

Stay curious and pounce back here for more marketing magic, my purr-fect pals!

Missing me already, dear human? You can find me on X and Facebook.

Moxie