Помощь Организация мультиязычности на Presta 1.7

silenty

Хранитель порядка
Регистрация
19 Дек 2008
Сообщения
371
Реакции
515
И на 1.7 тоже есть. Я себе убирал ru. Сейчас конечно фиг вспомнишь, но если надо - могу поковырять. Причем точно помню, что делал через оверрайды, чтобы больше к этому не возвращаться. А вообще инфы в гугле полно, стоит только попробовать начать поиск.
 

silenty

Хранитель порядка
Регистрация
19 Дек 2008
Сообщения
371
Реакции
515
Решение для престы версии 1.7.x.x :
По такому пути /override/classes/ создаете файл Link.php с вот таким содержимым:
PHP:
<?php

class Link extends LinkCore
{
    protected function getLangLink($idLang = null, Context $context = null, $idShop = null)
    {
        static $psRewritingSettings = null;
        if ($psRewritingSettings === null) {
            $psRewritingSettings = (int) Configuration::get('PS_REWRITING_SETTINGS', null, null, $idShop);
        }

        if (!$context) {
            $context = Context::getContext();
        }

        if ((!$this->allow && in_array($idShop, array($context->shop->id,  null))) || !Language::isMultiLanguageActivated($idShop) || !$psRewritingSettings) {
            return '';
        }

        if (!$idLang) {
            $idLang = $context->language->id;
        }

        if (Configuration::get('PS_LANG_DEFAULT') == $idLang) {
            return '';
        }
        else {
            return Language::getIsoById($idLang).'/';
        }
    }
}

Этот код работает следующим образом: он убирает приставку языка только у того, который является главным (по умолчанию / основным). На всех остальных приставка языка остается.
 
Последнее редактирование:

agent cooper

Писатель
Регистрация
26 Фев 2020
Сообщения
2
Реакции
0
К сожалению на версии 1.7.6.3 не работает, 500 ошибка

Решение для престы версии 1.7.x.x :
По такому пути /override/classes/ создаете файл Link.php с вот таким содержимым:
PHP:
<?php

class Link extends LinkCore
{
    protected function getLangLink($idLang = null, Context $context = null, $idShop = null)
    {
        static $psRewritingSettings = null;
        if ($psRewritingSettings === null) {
            $psRewritingSettings = (int) Configuration::get('PS_REWRITING_SETTINGS', null, null, $idShop);
        }

        if (!$context) {
            $context = Context::getContext();
        }

        if ((!$this->allow && in_array($idShop, array($context->shop->id,  null))) || !Language::isMultiLanguageActivated($idShop) || !$psRewritingSettings) {
            return '';
        }

        if (!$idLang) {
            $idLang = $context->language->id;
        }

        if (Configuration::get('PS_LANG_DEFAULT') == $idLang) {
            return '';
        }
        else {
            return Language::getIsoById($idLang).'/';
        }
    }
}

Этот код работает следующим образом: он убирает приставку языка только у того, который является главным (по умолчанию / основным). На всех остальных приставка языка остается.
 

Sokil_Kiev

Создатель
Регистрация
17 Июн 2011
Сообщения
41
Реакции
27
Ну что, с Новым годом и Новым законом, земляки!
Освежим темку, так как снова актуальна.
Делитесь кто как убрал приставку на 1.7.6
Disallow: /ua/* сработает?

и еще. где "научить" ЧПУ правильно понимать украинские симолы?
/* UKRAINIAN CHARS*/
'Є' => 'Ye', 'І' => 'I', 'Ї' => 'Yi', 'Ґ' => 'G',
'є' => 'ye', 'і' => 'i', 'ї' => 'yi', 'ґ' => 'g',
 
Последнее редактирование:

artfull

Профессор
Регистрация
17 Янв 2017
Сообщения
105
Реакции
35
Есть что актуального по этой теме?
 

jeyer

Мой дом здесь!
Регистрация
19 Мар 2012
Сообщения
164
Реакции
482
Знаю, что Андрей с elcommerce делает переход на дефолтный укр. безболезненно для сеошки, как тут Для просмотра ссылки Войди или Зарегистрируйся
 

_sashok

PrestaShop Expert
Регистрация
15 Июл 2011
Сообщения
2.310
Реакции
4.110
Вот ещё интересное решение для реализации мультиязычности и мультидоменности (+по странам можно долю рынка распределить заодно:(

This module allows you to set a domain for every installed language.
That means you can set a domain extension for each installed language.
No multistore is needed!
Have a unique domain for every language (or country) that you are selling your products.

Для просмотра ссылки Войди или Зарегистрируйся


пока не понятно, как в плане скорости работы и регионального SEO будет работать...

будем изучать
 

Anton782z

Писатель
Регистрация
27 Окт 2011
Сообщения
6
Реакции
4
Поделитесь опытом: кто и каким сервисом перевода сайта пользовался?

MS Translate как-то очень криво переводит некоторые слова. Прям комедия - читать результат перевода.
 
Сверху