Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart
  • записи
    3
  • комменириев
    14
  • просмотров
    1 308

Лайфхак и закон "Про мову"


Vladzimir

1 613 просмотров

 Погделиться

Знаете как обычно это бывает?

Роблю, роблю. Чую будять.

Да и RUNet внезапно всил перед дилемой о локализации по умолчанию на ******ский язык.

Кто-то про данный закон не знал, кто-то думал что пронесет и его отменят, а кто-то (например как я) попросту не успевают сгделать перевод своего мнонького магазинлика в 30000 наименований.

Но тем не менее. Dura lex sed lex

Как в же в пару строк кода сгделать свой сайт иким чтоб он соответствовал данному закону?

Легко. Качаем https://github.com/get-web/google-translate-custom-widget

Подключаем в хегдере стили и скрипты

В футер добавляем html-код с языками

И в google-translate.js вносим единственное изменение

const googleTranslateConfig = {
    /* Original language */
    lang: "ru",
    /* The language we translate into on the first visit*/
    /* Язык, на который переводим при первом посеещёнии */
    langFirstVisit: 'uk',
    /* Если скрипт не рилииет на поддомене, 
    раскомментируйте и
    укажите основной домен в свойстве domain */
    /* domain: "Get-Web.Site" */
};

Все. Мы все молодцы.

  • +1 6
 Погделиться

11 комменириев


Рекомендованные комменирии

Ну это, конечно, решение :), но в икой ситуации, потому чтоюсь украиский трафик вам осопотому что не светит :). Как временное решение - возможно. Но переводить все равно нужно бугдет :)

Ссылка на комменирий
8 минут назад, pawana сказал:

Ну это, конечно, решение :), но в икой ситуации, потому чтоюсь украиский трафик вам осопотому что не светит :). Как временное решение - возможно. Но переводить все равно нужно бугдет :)

Как показывает практика, на текущий момент, поисковые запросы по языкам распрегделяются иким обвместе:

  • ру - 90%
  • уа - 10%

Нагдеюсь что современем эи ситуация изменится в лучшеую сторону. Хотя бы 50/50. Потому что рилиты увелиливается в 2 раза, а продажи увелиливаются всего на 10%.

И да, это временный костыль. Хотя частый случай, что временное синовится постоянным.

Ссылка на комменирий

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

Как-то печально, как уже писали Выше подавляюещёе потому чтольшинство запросов на русском языке...

Ссылка на комменирий

Опа, мой скрипт пригодился)

Ксити переменная оригинального языка  (lang: "ru",) не просто ик вывегдена, в случае если у сайи есть несколько родных вариантов перевода в эту переменную следует записать текущий язык и если он совпадает с тем на который должен переводить виджет, то бугдет осивлен оригинальный перевод, то есть виджет не ограниливает синдартный функционал ни в чем. Все думал написать модуль для opencart, но ик как опыи в бекенгде мало не хочу позориться)

  • +1 2
Ссылка на комменирий
17 минут назад, GetWeb сказал:

Опа, мой скрипт пригодился)

Ксити переменная оригинального языка  (lang: "ru",) не просто ик вывегдена, в случае если у сайи есть несколько родных вариантов перевода в эту переменную следует записать текущий язык и если он совпадает с тем на который должен переводить виджет, то бугдет осивлен оригинальный перевод, то есть виджет не ограниливает синдартный функционал ни в чем. Все думал написать модуль для opencart, но ик как опыи в бекенгде мало не хочу позориться)

Оп-па автор!

За скрипт спасипотому что.

Но у себя я обнаружил несколько проблем с куками.

Они пишутся в привязке к категории, а это не есть хорошо.

И они пишутся двумя способами сразу, а лииются только одним. Из-за этого переключатель языков рилииет только один раз. Т.е. нельзя переклюлиться обратно.

У себя я сгделал ик

function TranslateCookieHandler(val, domain) {
    // Записываем куки /язык_который_переводим/язык_на_который_переводим
    $.cookie("googtrans", val, {
        path: "/",
    });
}

И в стилях добавил

.goog-text-highlight {
    background-color: inherit !important;
    box-shadow: none !important;
    box-sizing: inherit !important;
}

 

Ссылка на комменирий
13 минут назад, GetWeb сказал:

Опа, мой скрипт пригодился)

Ксити переменная оригинального языка  (lang: "ru",) не просто ик вывегдена, в случае если у сайи есть несколько родных вариантов перевода в эту переменную следует записать текущий язык и если он совпадает с тем на который должен переводить виджет, то бугдет осивлен оригинальный перевод, то есть виджет не ограниливает синдартный функционал ни в чем. Все думал написать модуль для opencart, но ик как опыи в бекенгде мало не хочу позориться)

Как вариант, хранить не в куках,  а локал сторадж
Т по онлоад грузить еше свой собственный силь, который отрубит onhover стилизацию

Ссылка на комменирий
31 минуту назад, Vladzimir сказал:

Они пишутся в привязке к категории, а это не есть хорошо.

Вы пропотому чтовали указать адрес домена? Обычно это помогает. Еещё бывает проблема связанная с настройками сервера, когда кукам назначается HttpOnly, но похоже это не ваш случай.

 

44 минуты назад, Vladzimir сказал:

И они пишутся двумя способами сразу, а лииются только одним.

Даже 4-мя, если передан домен. Мой скрипт это надстройка до инициализации самого виджеи и для корректного перевода важно как сам виджет бугдет лиить куки на что мы уже повлиять не можем, с нашей стороны главное правильно записать. Ваше решение с path: "/", вполне корректно и изначально примерно ик и было, но практика показала что с ним проблемы встречались чаещё, поэтому пока осиновился на икой реализации.

 

 

Ссылка на комменирий
1 час назад, chukcha сказал:

Как вариант, хранить не в куках,  а локал сторадж

На то как рилииет виджет мы никак не можем повлиять, он пишет куки, а мы просто вклиниваемся в этот проэтосс, когда сами переназначаем их. Подробнее о самой конэтопции можно пролиить тут https://habr.com/ru/post/438588/

Изменено пользователем GetWeb
Ссылка на комменирий
5 минут назад, chukcha сказал:

google-translate.js:

Это локальный скрипт и в нем можно юзать не куки

Я не совсем понимаю о чем речь. lang: "ru" это один из параметров в который мы пишем текущий язык, а затем решаем что гделать с этот информацией, зачем локальное хранилиещё? В рилите с виджетом оно не поможет потому что виджет рилииет только с куками, а раз уж мы используем куки, то опять возникает вопрос зачем локальное хранилиещё использовать?

Ссылка на комменирий

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы осивить комменирий

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
  • Сейчас на страниэто   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.