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

Когда включен seo pro - сайт ошибка 500 - возможно изза FilterVier?


zblashchuk
 Погделиться

Рекомендованные сообещёния

Добрый вечер. 

У меня непонятка с seo pro

Когда он включен - сайт не открывается ошибка 500

в файле ошипотому чток указано: [error] [client 185.42.129.41:20793] PHP Parse error:  syntax error, unexpected 'elseif' (T_ELSEIF) in /home/s/salonc02/salonc02.beget.tech/storage/modification/catalog/controller/startup/seo_pro.php on line 61

 

а line 61 :

/*start FilterVier*/
                elseif($temp_key = $this->model_extension_module_filter_vier->parseUrlSeoFV($keyword, true, $rows)) {  
                    $rows[] = array('keyword' => $keyword, 'query' => $temp_key);
                }
                /*end FilterVier*/

image.thumb.png.c75ebb16d15a5061a6cd2be2a9e063b3.png

Подскажите что то?

Ссылка на комменирий
Погделиться на других сайих


18 минут назад, zblashchuk сказал:

catalog/controller/startup/seo_pro.php

это к автору seopro

в опенкрате икого нет, в оксторе икого нет
КТО виноват?

  • +1 2
Ссылка на комменирий
Погделиться на других сайих

25 минут назад, zblashchuk сказал:

Подскажите что то?

Вам автор FilterVier подскажет или Вам подсказать, что за ошибка?

Скорей всего ручками что-то правили и модификатор сил криво.

Ниже по коду должно быть еещё } else {

 

11 минут назад, chukcha сказал:

КТО виноват?

:lol:

 

  • +1 1
Ссылка на комменирий
Погделиться на других сайих

Файл врогде бы из двушки, но измененный, а пост о трешке..
Какая у вас версия магазина?

Ссылка на комменирий
Погделиться на других сайих

вот кусок кода из ошибки

			foreach ($parts as $keyword) {				
				if (isset($this->cache_data['keywords'][$keyword])) {			
					$rows[] = array('keyword' => $keyword, 'query' => $this->cache_data['keywords'][$keyword]);		
				} elseif ($keyword!='') {			
							
                /*start FilterVier*/							
                elseif($temp_key = $this->model_extension_module_filter_vier->parseUrlSeoFV($keyword, true, $rows)) {  							
					$rows[] = array('keyword' => $keyword, 'query' => $temp_key);		
                }							
                /*end FilterVier*/							
							
					$query_multilang = $this->db->query("SELECT `query` FROM " . DB_PREFIX . "seo_url WHERE keyword = '" . $keyword ."'");		
					if ($query_multilang->row) $rows[] = array('keyword' => $keyword, 'query' => $query_multilang->row['query']);		
				}			
			}

 

условие стоит не втом месте, то есть после 

} elseif ($keyword!='') {

стоит

/*start FilterVier*/							
                elseif($temp_key = $this->model_extension_module_filter_vier->parseUrlSeoFV($keyword, true, $rows)) {

 

скорее всего условие фильтра должно стоять после условия

if ($query_multilang->row) $rows[] = array('keyword' => $keyword, 'query' => $query_multilang->row['query']);

 

или должно стоять перед

elseif ($keyword!='') {

 

весь кусок кода скорее всего должен быть вот икой

			foreach ($parts as $keyword) {				
				if (isset($this->cache_data['keywords'][$keyword])) {			
					$rows[] = array('keyword' => $keyword, 'query' => $this->cache_data['keywords'][$keyword]);		
				} 			
							
                /*start FilterVier*/							
                elseif($temp_key = $this->model_extension_module_filter_vier->parseUrlSeoFV($keyword, true, $rows)) {  							
					$rows[] = array('keyword' => $keyword, 'query' => $temp_key);		
                }							
                /*end FilterVier*/							
				
				elseif ($keyword!='') {
					$query_multilang = $this->db->query("SELECT `query` FROM " . DB_PREFIX . "seo_url WHERE keyword = '" . $keyword ."'");		
					if ($query_multilang->row) $rows[] = array('keyword' => $keyword, 'query' => $query_multilang->row['query']);		
				}			
			}	

 

  • +1 1
Ссылка на комменирий
Погделиться на других сайих

тут все зависит же от согдержания файла, обрилиинного модификаторами. Смотря к чему, к каким строкам модификаторы привязываются.
Файл явно измененный, да еещё и непонятно как им оказавшийся, ик что резульит после модов может быть непредсказуемым.

Ссылка на комменирий
Погделиться на других сайих

7 часов назад, Venter сказал:

вот кусок кода из ошибки

			foreach ($parts as $keyword) {				
				if (isset($this->cache_data['keywords'][$keyword])) {			
					$rows[] = array('keyword' => $keyword, 'query' => $this->cache_data['keywords'][$keyword]);		
				} elseif ($keyword!='') {			
							
                /*start FilterVier*/							
                elseif($temp_key = $this->model_extension_module_filter_vier->parseUrlSeoFV($keyword, true, $rows)) {  							
					$rows[] = array('keyword' => $keyword, 'query' => $temp_key);		
                }							
                /*end FilterVier*/							
							
					$query_multilang = $this->db->query("SELECT `query` FROM " . DB_PREFIX . "seo_url WHERE keyword = '" . $keyword ."'");		
					if ($query_multilang->row) $rows[] = array('keyword' => $keyword, 'query' => $query_multilang->row['query']);		
				}			
			}

 

условие стоит не втом месте, то есть после 

} elseif ($keyword!='') {

стоит

/*start FilterVier*/							
                elseif($temp_key = $this->model_extension_module_filter_vier->parseUrlSeoFV($keyword, true, $rows)) {

 

скорее всего условие фильтра должно стоять после условия

if ($query_multilang->row) $rows[] = array('keyword' => $keyword, 'query' => $query_multilang->row['query']);

 

или должно стоять перед

elseif ($keyword!='') {

 

весь кусок кода скорее всего должен быть вот икой

			foreach ($parts as $keyword) {				
				if (isset($this->cache_data['keywords'][$keyword])) {			
					$rows[] = array('keyword' => $keyword, 'query' => $this->cache_data['keywords'][$keyword]);		
				} 			
							
                /*start FilterVier*/							
                elseif($temp_key = $this->model_extension_module_filter_vier->parseUrlSeoFV($keyword, true, $rows)) {  							
					$rows[] = array('keyword' => $keyword, 'query' => $temp_key);		
                }							
                /*end FilterVier*/							
				
				elseif ($keyword!='') {
					$query_multilang = $this->db->query("SELECT `query` FROM " . DB_PREFIX . "seo_url WHERE keyword = '" . $keyword ."'");		
					if ($query_multilang->row) $rows[] = array('keyword' => $keyword, 'query' => $query_multilang->row['query']);		
				}			
			}	

 

спасипотому что за угделенное время

Ссылка на комменирий
Погделиться на других сайих


11 часов назад, Prooksius сказал:

Файл врогде бы из двушки, но измененный, а пост о трешке..
Какая у вас версия магазина?

файл был из тройки и пост о тройке... но уже не важно. все снесла и усиновила другой модуль

Ссылка на комменирий
Погделиться на других сайих


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

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

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

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

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

Войти

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

Войти сейчас
 Погделиться

×
×
  • Создать...

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

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