Stand with Ukraine! How can you help?

Multilang SEO Pro OpenCart

SEO Pro Multilanguage -  language prefix support
  • Module version: 2.1.6
  • Last Update: 27/03/2024
  • Module format: ocmod.zip
  • Modification: yes
  • OpenCart: 2.x, 3.x
  • OcStore: 2.x, 3.x
  • PHP: 5.6 - 8.x
  • License: Single Domain
  • Author: OpenCartBot
  • Support: yes

Multilang SEO Pro is the add-on to the SEO Pro extension that will allow setting up multilingual URLs with language prefixes on OpenCart 3.0.x.x and 2.3.x.x. Also, this module adds a hreflang linking to the page code to notify search engines about other language versions of the pages. 

DEMO AdminDEMO Live
demo/demo

Extension Highlights
  •   Works faster than analogues
  •   Adds language prefixes to URLs
  •   Adds the hreflang attribute
  •   Allows you to set the x-default localization
  •   Adds multilingual meta tags and SEO description for the main page
  •   Allows you to set different logos for different site localizations
  •   Complies with Google's recommendations for multilingual sites

Language URL prefixes for OpenCart SEOPro

Also, the module allows you to add the same SEO URLs for different languages, while the link will differ only in the language prefix.

In the module, you can add multilingual meta tags, h1-heading and seo-description for the home page. And you can make different logos for each localization of the site.

The extension works only with SEO Pro and will not work without SEO URL and SEO Pro mode enabled in the store settings.

SEO Pro is a module for the correct work of URL links in OpenCart. For OpenCart it needs to be installed additionally. You can find SEO Pro OpenCart on the Github web service or other platforms.

Our extension is compatible with OpenCart 2.3.x.x and 3.0.x.x and PHP 5.6 - 8.x

Advantages of the Multilingual SEO Pro extension over its analogues

  1. Speed: the extension does not load website with unnecessary requests, URL handlers and libraries, as its analogues do.
  2. Identical SEO URLs: your URLs will differ only in the language prefixes at the beginning of the address. Of course, you can also create different SEO URLs.
  3. Full compliance with Google's guidelines for multilingual websites: adds hreflang attributes to all pages, you can choose a localisation for x-default, multilingual pages are accessible by bots without redirects.
  4. Ability to set different logos for different languages.
  5. Free add-on for the language selection popup when you first visit a website

Hreflang on OpenCart

You can see the work of this module on this site, all multilingual links here are generated by SEO Pro with its help.

Example of link to home page:

  • https://opencart.com/ - home page in your default language
  • https://opencart.com/fr/ - version of the site in French
  • https://opencart.com/en/ - version of the site in English

Example of forming links to internal pages, for example a category:

  • https://opencart.com/modules/ - category page in your default language
  • https://opencart.com/fr/modules/ - category page in French
  • https://opencart.com/en/modules/ - category page in English

Features of the module Multilang SEO Pro OpenCart 3.0 & 2.3:

  • adds language prefixes to url
  • links to the main language of the site without a prefix
  • allows you to write the same SEO URL for different languages (add-on)
  • adds hreflang attributes to indicate alternate versions of pages in different languages
  • adds your custom URL prefixes for each language
  • title, description, meta tags for the home page in different languages
  • different logos for different languages
  • correct indexing of pages of different language versions
  • works with any languages

The prefix can contain any string, such as a short country code /en/ or /us/ or /eng/ or a language and region prefix - /en-us/ (the so-called multi-region).
The hreflang code can only be an iso-2 language code or a hyphenated language and region code, such as "en" or "en-us", but never the country code as "us" or "gb".


Module installation instructions:

  1. You must have installed the SEO Pro extension on your site. The Multilang SEO Pro is add-on for the SEO Pro extension. So you need to install and enable the SEO Pro first. You can download it from the link above.
  2. Upload the Multilang SEO Pro in the admin panel in the "Extensions" : "Install".
  3. Go to the "Modifications" section and update the cache.
  4. Go to the "Extensions" : "Extensions" : "Modules" and enable the module "Multilang SEO Pro".
  5. Edit module. Enable the status of the module, add the prefixes and hreflang and save the settings.
  6. In the Design : SEO URL section, add blank SEO URL for the home page for each language. That is, for the path (route) common/home, the SEO URL key must be empty.
  7. Check module operation.
  8. Bingo!


  • v2.1.6 (27/03/2024) - Minor compatibility improvement with the search form
  • v2.1.5 (13/01/2024) - Improved compatibility with the search form on the website
  • v2.1.4 (11/01/2024) - Fixed an error that occurred when one of the languages was temporarily disabled
  • v2.1.3 (26/10/2023) - Fixed an error that occurs when the multi-language logo is enabled during checkout (Undefined variable: $server)
  • v2.1.2 (22/08/2023) - Fixed compatibility with ocStore 2.3.x.x. Some fixes in the extension settings form.
  • v2.1.1 (19/05/2023) - Added correct "canonical" for the home page
  • v2.1 (10/12/2022) - Added x-default selection; switch to the same SEO URLs; multilingual H1, SEO-text, meta-tags of the home page, multilingual logos.
  • v2.0 (12/07/2022) - Ability to manually specify a prefix for each language
  • v1.5 (23/04/2022) - Bug fix on hrelang links (issue adding _route_)
  • v1.4 (10/12/2021) - Custom hreflang code for each language
  • v1.3 (02/12/2021) - Compatible with ocStore 2.3 an 3.0
  • v1.2 (27/11/2021) - Added support for OpenCart 2.3. Added options: select the type of prefixes, restore the language from the cookie
  • v1.1 (24/11/2021) - Updated hreflang generation method

When you go to search on the site, the default language is set. How to fix?

Open the file /catalog/view/javascript/common.js
Find the string:
var url = $('base').attr('href') + 'index.php?route=product/search';
You need to replace it with:
var url = (($('#logo a').length) ? $('#logo a').attr('href') : $('#logo').data('href')) + 'index.php?route=product/search';
Save the file.
Clear your browser cache.

How to add a new language to the site?

To add another language to OpenCart, use our instructions on the example of adding the Ukrainian language.

How to allow the same SEO URLs for different languages in Opencart 3.0?

Starting with version 2.1, this option has been added to the module settings, it is enough to enable the "Same SEO URLs" option there.
Download and install add-ons: allow_same_seo_url_lang_oc3.ocmod.zip
Update caches.

Why do you need to make the same SEO URL for different languages?

It is not necessary to do this. It has no effect on SEO promotion. But this is accepted, it is so convenient, it is more understandable, because if you manually change the prefix (language code) in the URL, you will see the same page in a different language, and if you have different SEO URLs, if you change only the prefix in the URL, you will get a 404 error. This is purely aesthetics.

Error 404 when switching languages. How to fix?

You are most likely using an outdated version of SEO Pro where this issue existed. You need to update the SEO Pro module to the latest version. You can download the working version of SEO Pro from our fork on github

If you have an Nginx server - you need to adjust its config, because when the link is not clear SEO URL - the server sees that there is no folder with a prefix name in the root of the site (for example /us/) and gives a 404 error instead of allowing the site's url to be processed by the script. that is, in SEO Pro.
Solution: in the nginx config find the code:

if (!-f $document_root$fastcgi_script_name) {
return 404;
}

and before it add the following code:

if (!-e $request_filename) {
rewrite ^/(.+)$ /index.php?_route_=$1 last;
}

The configuration file is usually called nginx.conf and is located in /usr/local/nginx/conf or /usr/local/etc/nginx or /etc/nginx or /etc/httpd/nginx.conf
Or ask the technical support of your server/host to help solve this problem, provide them with this instruction.

The prefix is duplicated on the home page, or home url contain index.php?route=... How to fix?

In the admin panel, open the Design : SEO URL section and filter the entries by the filter "Route" = "common/home".
All such entries in the Keyword field should be empty, as in the screenshot below:
screenshot

If you have something written there, for example a slash "/" or a language code, you need to edit and clear the Keyword field.
Attention! The system does not allow you to create an empty SEO URL. To solve this problem, you need to install the fix allow_empty_seo_url.ocmod.zip or edit the SEO URL through the database in the "oc_seo_url" table.
In order for the system to allow adding empty SEO URLs, the option "Same SEO URLs" must be enabled in the module settings.
If you do not have records for all languages, you need to create an SEO URL record for each language, where query = "common/home" and keyword is empty value (as in the screenshot above).
After any manipulation of the SEO URL, you need to clear the system cache in order to update the cache of the SEO PRO. The SEO PRO cache is automatically reset when you save the settings of the "Multilang SEO Pro" module, so you can simply re-save the module settings.

How to make language switchers as links?

To display language switches as links, add the following code to the common/header.twig template:

<ul class="list-inline">
{% for hreflang in hreflangs %}
  {% if hreflang.code == code %}
    <li><a class="active">{{ hreflang.code[:2]|upper }}</a></li>
  {% else %}
    <li><a href="{{ hreflang.href }}">{{ hreflang.code[:2]|upper }}</a></li>
  {% endif %}
{% endfor %}
</ul>

If you need to change the text on the links, for example, to display the name of the language there, then you need replace {{ hreflang.code[:2]|upper }} to {{ hreflang.name }}

If you need to display links in the form of a drop-down list, transform the code as follows:

<ul class="list-inline">
 <li class="dropdown">
  {% for hreflang in hreflangs %}
    {% if hreflang.code == code %}
     <a class="dropdown-toggle" data-toggle="dropdown">{{ hreflang.name }}<span class="caret"></span></a>
    {% endif %}
  {% endfor %}
 <ul class="dropdown-menu dropdown-menu-right">
 {% for hreflang in hreflangs %}
  {% if hreflang.code == code %}
    <li><a class="active">{{ hreflang.name }}</a></li>
  {% else %}
    <li><a href="{{ href }}">{{ hreflang.name }}</a></li>
  {% endif %}
 {% endfor %}
 </ul>
 </li>
</ul>

Don't forget to refresh the modification cache and template cache after editing the template.

Why do you need to make language switches html links?

Some SEO experts advise that the page should have links to its versions in other languages. Therefore, it is advised to make the language switcher not with a js script, as implemented by default, but with html links. This is a technical point.

Is it possible to specify the localized versions of pages (hreflang) in only one way?

Language versions of pages (hreflang) can be passed in only one way (HTML Tags, HTTP Headers, Sitemap) and this should be enough for search engines to link these pages. This, in particular, is stated in the Google documentation https://developers.google.com/search/docs/advanced/crawling/localized-versions
When you send hreflang in several ways at the same time - this is not a mistake, on the contrary, because you transmit more information about the content and this should have a positive effect on promotion. Only in this case, it is necessary to ensure that the data transmitted by several methods are identical.

How to copy SEO URL from one language to another?

You can copy all SEO URL records from one language to another using the following mySQL query, which can be executed in the SQL tab of the phpmyadmin database control panel:

CREATE table `temp_seo_url` AS SELECT * FROM `oc_seo_url` WHERE language_id = "1";
UPDATE `temp_seo_url` SET language_id = "2";
UPDATE `temp_seo_url` SET seo_url_id = 0;
INSERT INTO `oc_seo_url` SELECT * FROM `temp_seo_url`;
DROP TABLE `temp_seo_url`;

Here language_id = "1" is the id of the language from which we will copy, and language_id = "2" - where we will paste. Insert the id of the languages you need here.

Also, before this request, you can perform another request to remove all SEO URLs of the new language that you have already added manually:
DELETE FROM `oc_seo_url` WHERE language_id = "2";
You must be logged in to view the files!

Write a review

Facebook Google
Note: HTML is not translated!
   Bad      Good

Maxim Nikitin 01/03/2024

Куди звернутись з приводу роботи модуля? В розділі дизайн нічого нема, коли в вкладці сервер обираю Seopro всі урли взагалі робляться не зрозумілі. Кому писати? Поки 3

opencartbot 01/03/2024

На сайті є розділи Контакти, Підтримка. Також контакти вказані на кожній сторінці внизу.
В розділі меню Дизайн > SEO URL (це стандартний розділ) додаються SEO URL, щоб ваші сторінки мали ЧПУ URL. SEO Pro треба увімкнути, без нього модуль не працюватиме. Якщо щось не виходить - звертайтесь у підтримку.

Maxim Nikitin 01/03/2024

Дякую. Написав.

Maxim Nikitin 07/03/2024

Все чудово працює. Були певні проблеми з налаштуваннями теми, але фахівці технічної підтримки оперативно допомогли з вирішенняв, не дивлячь на те, що був вихідний день. Дякую. Однозначно 5 зірок)))

Олександр 22/02/2024

Вітаю! Модуль буде працювати на Opencart pro 2.1.0.2 ?

opencartbot 22/02/2024

Вітаю! Ні, на версії 2.1.0.2 не працюватиме. Сумісність вказана на цій сторінці.

Vladislav Hraboveno 20/02/2024

Доброго дня. Можливо придбати данний модуль на сайті www.opencart.com

opencartbot 20/02/2024

Цей модуль призначений в основному для нашого внутрішнього ринку, де користуються розширенням SEO Pro і знають, що це таке. Тому дане доповнення можна придбати лише тут.

Игор Моржецький 09/02/2024

Перевищів всі очікування. Встановлення пройшло чітко за інструкцією, навіть в технічну підтримку звертатися не було необхідності. Автори відповідають навіть за межами робочого часу, що тоже дуже приємно.

Мое завдання було вирішено за 15 хвилин (включаючи онлайн оплату :-).

Сергій 12/04/2023

ОФІГЕЗНИЙ МОДУЛЬ!!
ОФІГЕЗНА ПІДТРИМКА!!!
Все стає просто та без пролем! Було пару технічних питаь - та все вирішили за допомогою підтримки протягом 3-хв.
Купую цей модуль вже для 3-го сайту - і неймовірно задоволений!!!

Олексій К 26/01/2023

Супер модуль і супер підтримка ! РЕКОМЕНДУЮ !

Евгений Ип 21/11/2022

Дуже дякую розробнику!!!!
Гарний модуль, мінімум у настройках, пару хвилин встановив, налаштував, запустив в роботу. Придбав в парі з модулем "Модуль Мультимовна карта сайту XML OpenCart".
Тепер двомовний сайт укр/рус робе на ура, усі SEO урли та мапа сайту по феншую як для Законодавства України так і для гугл, фейсбук та інше.
Розробник швидко підправив код під мій нестандартний шаблон, та мої побажання.
Рекомендую усім і модулі і РОЗРОБНИКА!!!
Можете оцінити результати роботи:
https://liberty-tech.com.ua

Павел 26/10/2022

Всем привет! Хочу посоветовать данный модуль, он решает проблему SEO. Поддержка просто огонь. Очень приятно, когда тебе пишут на почту и интересуются, все ли получилось. У меня почему-то не получилось установить, разработчик все быстро сделал. Очень рекомендую

opencartbot 26/10/2022

Привіт! Дякую за хороший відгук!

Александр Фурик 29/09/2022

Купил. Установил. У меня версия ocStore 2.1.0.2 и он не будет работать?

opencartbot 29/09/2022

Модуль не сумісний з версією 2.1.0.2.
Всі версії, які підтримуються модулем, вказані на цій сторінці у блоці Сумісність.

Александр Фурик 29/09/2022

В описании рядом с картинкой. Черным по белому - OcStore: 2.x, 3.x Можно отказаться от лицензии и вернуть деньги?

opencartbot 29/09/2022

Вибачте, мені прикро, що опис модуля ввів Вас в оману. Написав Вам на email.

Сергій 19/08/2022

Неймовірна підтримка! Дуже класно все працю. Коректно!
ДУЖЕ ЗАДОВОЛЕНІЙ ПОКУПКОЮ!!!!

opencartbot 19/08/2022

Дякую, що залишили відгук! Удачі Вашому бізнесу!

olya prykhodko 12/08/2022

Модуль отличный. решил мою проблему. Поддержка оперативно отвечает и очень помогает. спасибо большое!

opencartbot 19/08/2022

Дякую за покупку і гарний відгук!

Oльга 02/08/2022

Подскажите, есть возможность указать переключение язіков не кнопкой а ссылкой с урлом?

opencartbot 02/08/2022

Так, можна. Модуль не додає перемикачі у вигляді посилань, але ви можете самостійно додати такі посилання в шапку вашого шаблону. При переході по цих посилання мова сайту буде автоматично змінюватися.
В шаблон header модуль передає масив $hreflang, який містить пари 'код мови' => 'посилання'. Відповідно, можна у циклі вивести ці посилання. Якщо потрібно детальніше - підкажу конкретний код.

olya prykhodko 06/08/2022

Буду очень признательна, если подскажете. Модуль купила Замовлення №: 171592 від 06.08.2022
Еще хотела попросить ключ для тестового домена https://veloritm.chiffoner.com
Я ранее приобретала у Вас модуль мультиязчной карты (Спасибо большое за него!), Вы мне делали уже ключ под тестовый.
Спасибо большое.

opencartbot 06/08/2022

У розділі FAQ на цій сторінці виклав інструкцію по додаванні переключателів мови у вигляді ссилок.
Ключ для тестового домена відправив на ваш email.
Дякую за покупку!

Vlad 23/05/2022

Здравствуйте. Использую модуль Opencart SEO Pack PRO. Он приписывает префиксы /ru-ru/, вместо /ru/ и это там не лечится. Если я выключу префиксы в вышеназванном модуле, поставлю ваш, они смогут взаимодействовать друг с другом?

opencartbot 23/05/2022

Вітаю. Цей модуль – доповнення до SEO Pro. Він працює тільки з SEO Pro. Якщо у вас посилання формуються іншим модулем, то він не буде працювати.

Комета 12/05/2022

Дякую за модуль і відповіді.
Все просто і зрозуміло. Працює як заявлено.
Рекомендую!

opencartbot 12/05/2022

Дякую за покупку і відгук!

Lam 18/04/2022

Fast and best support! highly recommended referral.

Will purchase other next time.

opencartbot 18/04/2022

Thanks! You are always welcome!

Load more
quick
support

Extension Compatibility

  • OpenCart: 2.3.x.x, 3.0.0.0, 3.0.0.2, 3.0.1.0, 3.0.1.1, 3.0.1.2, 3.0.2.0, 3.0.3.0, 3.0.3.1, 3.0.3.2, 3.0.3.3, 3.0.3.4, 3.0.3.5, 3.0.3.6, 3.0.3.7, 3.0.3.8, 3.0.3.9,
$15.00
Domain for which the extension will be purchased
Available payment methods
Official OpenCart partner

OpenCart Development Partner

  •  Professional support of the author
  • Lifetime license
  • The license key is provided automatically
  •  Free license key for test domain
  • Extensions can be modified
  • Periodic module updates
  • Free technical support
Special offer


More OpenCart Extensions

SEO Pages for OpenCart

$20.00

YML feed OpenCart

Free

Auto sending a request to Bing

$20.00

Buy Google Maps Extension

$15.00

Add field short name for product

$10.00

Read Our Blog