Форум русской поддержки Joomla!® CMS
10.12.2016, 05:12:05 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

VirtueMart 1.1.4 и несуществующая категория

 (Прочитано 103 раз)
0 Пользователей и 1 Гость смотрят эту тему.
xpyct
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 62


« : 29.12.2015, 16:52:32 »

Сабж.
Есть допустим категория с id=233 а с id 23334 нету и получается что
/component/virtuemart/?page=shop.browse&category_id=233 (страница нормальная с товаром)
/component/virtuemart/?page=shop.browse&category_id=23334 (страница пустая и отдает код 200) Так не должно быть.
Как поправить?
Поставить какой нить плагин SEF не предлагать, обновиться тоже анриал... Уж очень много правок внесено.
Записан
fsv
Moderator
*****

Репутация: +330/-2
Offline Offline

Пол: Мужской
Сообщений: 2247


« Ответ #1 : 29.12.2015, 17:21:22 »

А что, кто-то заходит на несуществующие категории по проиндексированным ссылкам, чтобы волноваться по этому поводу? А если кто руками вбил, его проблемы.
Если структура URL правильная, то, что категории нет, не известно. Там в категории выборка товаров по id категории. Из базы ничего не вернуло, но url то правильный, поэтому и отобразило. Бывают категории (родительские) без товара. В чем косяк разработчиков? - Не вижу.
Если все равно надо, и нет категорий без товаров, допишите в shop.browse после получения результатов запроса: если пусто, отдать 404 то, что вам надо.
Записан
xpyct
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 62


« Ответ #2 : 29.12.2015, 17:44:45 »

А что дописать и куда?
Это?
header('HTTP/1.x 404 Not Found');
Записан
xpyct
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 62


« Ответ #3 : 30.12.2015, 12:54:21 »

Пришел к такому, но выдает ошибка Resource id #136
Код:
$zaprosid = "SELECT * FROM `jos_vm_category` WHERE `category_id` LIKE '%$category_id%'";
mysql_query($zaprosid) or die (mysql_error());
$resultid = mysql_query($zaprosid);
echo $resultid;
Записан
xpyct
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 62


« Ответ #4 : 30.12.2015, 14:20:00 »

Вообщем пришел к такому.
Код:
$zaprosid =  "SELECT * FROM ###_##_category WHERE category_id = '$category_id'";
mysql_query($zaprosid) or die (mysql_error());
$result = mysql_query($zaprosid);
while ($row = mysql_fetch_array($result)) {
if ($row[0] < 0) {
header('HTTP/1.x 404 Not Found');
}
}
По базе ищет проверяет.
Но если ID в базе нет то видимо скрипт не успевает сработать. Так как проверял в другую сторону if ($row[0] > 0) то 404 отлично выдается
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet