Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Индексация сайта на двух языках и автоматическое определение языка


Recommended Posts

Добрый вечер, хочу разобраться в вопросе индексации сайта поисковыми системами при двух и более языках. 

Делаем магазин, стал вопрос о двух языках (укр. и рус.) установили ocStore 2.1, как в нем обстоят дела с индексацией страниц?

Читал некоторые статьи, пишут что в Opencart индексируются страницы, только языка по умолчанию, но в основном эти статьи 2010-15 годов. 

Возможно есть какие нибудь модули или требуются доработки?

Буду благодарен за консультацию в данном вопросе!

 

Также хотелось бы грамотно реализовать определение языка по языку браузера. Нашел вот такой код, подскажите пожалуйста, возможно его внедрять или есть более грамотное решение?

 

if (!isset($this->session->data['language_change'])) {    
    $this->session->data['language_change'] = '0'; } if ($this->session->data['language_change']=='0') {
    $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
    $this->session->data['language_change']='1'; if ($lang=='ru' || $lang=='uk' || $lang=='be' || $lang=='ky' || $lang=='am' || $lang=='ab'){ 
        $_SESSION['language'] = 'ru';
        $this->session->data['language']='ru';
        $this->session->data['language_code']='ru'; } else { 
        $_SESSION['language'] = 'en'; 
        $this->session->data['language']='en';
        $this->session->data['language_code']='en'; }
    $this->response->redirect($_SERVER['REQUEST_URI']); }

 

Edited by AlexanderShef
Link to post
Share on other sites

В помощь
Тот код что вы привели - грабли и костыли

Link to post
Share on other sites

либо как вариант через алиасы

Link to post
Share on other sites

2 часа назад, markimax сказал:

Тот код что вы привели - грабли и костыли

100%

 

Не надо давать системе распознавать ваш язык..
Это не цель магазина, удобства это не принесет.
Вы должны определиться с основным контингентом сайта, проанализировать языковые предпочтения ЦА, выбрать язык по умолчанию.

 

Но если вы уж задались целью, то может вы бы посмотрели в код ОС, приведу на всякий случай

		// Language Detection
		if (!empty($this->request->server['HTTP_ACCEPT_LANGUAGE']) && !array_key_exists($code, $languages)) {
			$detect = '';
			
			$browser_languages = explode(',', $this->request->server['HTTP_ACCEPT_LANGUAGE']);
			
			// Try using local to detect the language
			foreach ($browser_languages as $browser_language) {
				foreach ($languages as $key => $value) {
					if ($value['status']) {
						$locale = explode(',', $value['locale']);
						
						if (in_array($browser_language, $locale)) {
							$detect = $key;
							break 2;
						}
					}
				}	
			}			
			
			if (!$detect) { 
				// Try using language folder to detect the language
				foreach ($browser_languages as $browser_language) {
					if (array_key_exists(strtolower($browser_language), $languages)) {
						$detect = strtolower($browser_language);
						
						break;
					}
				}
			}
			
			$code = $detect ? $detect : '';
		}

 

  • +1 1
Link to post
Share on other sites
9 часов назад, chukcha сказал:

100%

 

Не надо давать системе распознавать ваш язык..

 

 

100%
Это запутает ПС ботов, раз. Да и у многих язык браузера отличается от языка на котором говорят или к примеру заходят по поиску с поисковика (они то лучше знают что ищут и на каком языке) и т п
Вообще с точки зрения юзабилити пользователей бесит когда за них что то "выбирают"

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.