• Уважаемые пользователи! К сожалению, наш домен был заблокирован РКН в связи с решением Мосгорсуда по заявлению № 2И-5839/2021. Никаких уведомлений не было, чтобы мы удалили контент. Просто блокировка и всё. На самом деле блокировка касается только одной страницы, но т.к. не у всех провайдеров есть возможность блокировать определенную страницу, то идёт блокировка домена и IP адреса. Официальный канал: https://t.me/ucrackcom Основной чат: https://t.me/ucrack_chat Приносим свои извинения!

Помощь Удалить префикс для основного языка для Prestashop 1.7

leaderdm

Творец (III)
Сообщения
5
Симпатии
6
Баллы
89
Ребята Help! Как реализовать для престашоп версии 1.7 следующую задачу:
При добавлении нового языка (конкретно украинского в связи с вступившими новым законом в Украине) нужно сделать так, чтоб префикс "ru" для русского не появлялся.
 

pashad

Продвинутый (IV)
Сообщения
24
Симпатии
14
Баллы
237
Ребята Help! Как реализовать для престашоп версии 1.7 следующую задачу:
При добавлении нового языка (конкретно украинского в связи с вступившими новым законом в Украине) нужно сделать так, чтоб префикс "ru" для русского не появлялся.
Есть вариант поставить модуль Advanced SEO Frendly URLs, там есть много чего (например убрать ИД из категории и товара. В том числе есть настройка Remove Default Language from URL
Возможно вам этот вариант подойдет. Если модуль нужен могу выложить, только не знаю как.
 

leaderdm

Творец (III)
Сообщения
5
Симпатии
6
Баллы
89

Djack

Разрушитель (V)
Сообщения
74
Симпатии
40
Баллы
826
Есть вариант поставить модуль Advanced SEO Frendly URLs, там есть много чего (например убрать ИД из категории и товара. В том числе есть настройка Remove Default Language from URL
Возможно вам этот вариант подойдет. Если модуль нужен могу выложить, только не знаю как.
Тоже использую этот модуль для удаления префикса языка по умолчанию. Работает отлично!
 

xxxATOMxxx

Созидатель (II)
Сообщения
2
Симпатии
6
Баллы
16
Ребята Help! Как реализовать для престашоп версии 1.7 следующую задачу:
При добавлении нового языка (конкретно украинского в связи с вступившими новым законом в Украине) нужно сделать так, чтоб префикс "ru" для русского не появлялся.

Создайте в .../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).'/';
        }
    }
}
 

leaderdm

Творец (III)
Сообщения
5
Симпатии
6
Баллы
89
Создайте в .../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).'/';
        }
    }
}
Работает!)
 

Cooper

Созидатель (II)
Сообщения
24
Симпатии
3
Баллы
41
Создайте в .../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).'/';
        }
    }
}
Добрый вечер! Почему-то выдает 500 ошибку(((
 

Cooper

Созидатель (II)
Сообщения
24
Симпатии
3
Баллы
41
а вообще префикс языка, как-то влияет на продвижение сайта, в отрицательном плане? Спасибо
 

Cooper

Созидатель (II)
Сообщения
24
Симпатии
3
Баллы
41
Есть вариант поставить модуль Advanced SEO Frendly URLs, там есть много чего (например убрать ИД из категории и товара. В том числе есть настройка Remove Default Language from URL
Возможно вам этот вариант подойдет. Если модуль нужен могу выложить, только не знаю как.
Отлично! Работает на престе 1.7.6.3. Спасибо за подсказку!!!
 

leaderdm

Творец (III)
Сообщения
5
Симпатии
6
Баллы
89
Добрый вечер! Почему-то выдает 500 ошибку(((
1. Попробуйте очистить кеш.
2. Проверьте точно ли весь текст разместили в файл. Пересоздайте файл опять и еще раз попробуйте.
3. На счет SEO. Если у вас сайт уже работает без префикса, то и нужно делать без него. Иначе поменяются все урлы сайта. И на восстановление позиций в поисковиках потребуется время.
4. Вариант с созданием файла Link.php предпочтительнее тем что не нужно устанавливать дополнительные модули. Стараюсь меньше их устанавливать.
 

Cooper

Созидатель (II)
Сообщения
24
Симпатии
3
Баллы
41
1. Попробуйте очистить кеш.
2. Проверьте точно ли весь текст разместили в файл. Пересоздайте файл опять и еще раз попробуйте.
3. На счет SEO. Если у вас сайт уже работает без префикса, то и нужно делать без него. Иначе поменяются все урлы сайта. И на восстановление позиций в поисковиках потребуется время.
4. Вариант с созданием файла Link.php предпочтительнее тем что не нужно устанавливать дополнительные модули. Стараюсь меньше их устанавливать.
Спасибо огромное, попробуем:)
Такой вопрос, возможно, глупый вопрос, по пути .../override/classes/Link.php уже есть файл Link.php необходимо туда вписать данный код или вообще удалить все, что там есть и вписать этот код?
 
Последнее редактирование:
Верх