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

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

Ошибка сортировки товаров в категории. VM 2

 (Прочитано 235 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Liss
Давно я тут
****

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

Сообщений: 207


« : 04.01.2016, 13:46:20 »

J 2.5.28
VM  2.6.22

Работал сайт, работал, и вдруг я решил настроить кэширование. Дело совсем не в нем, просто при решении проблем с ним, обнаружила себя такая вот проблема: если в базовых настройках CMS включить отладку системы (т.е. вывод служебной информации), то при попытке открыть любую из товарных категорий выдается 500 ошибка сервера, и такое вот объяснение:

JDatabaseMySQLi::query: 1054 - Unknown column 'pc.ordering' in 'order clause' SQL=SELECT c.modified_on as `modified`, c.created_on as `created`, cn.category_name AS `category_name`, pn.product_name AS `product_name`, pp.product_price AS `product_price`, p.modified_on AS `p_modified`, p.created_on AS `p_created` FROM j25_virtuemart_categories AS c LEFT JOIN j25_virtuemart_categories_ru_ru AS cn USING (virtuemart_category_id) LEFT JOIN j25_virtuemart_product_categories USING (virtuemart_category_id) LEFT JOIN j25_virtuemart_products AS p USING (virtuemart_product_id) LEFT JOIN j25_virtuemart_products_ru_ru AS pn USING (virtuemart_product_id) LEFT JOIN j25_virtuemart_product_prices AS pp USING (virtuemart_product_id) WHERE c.virtuemart_category_id = 32 ORDER BY pc.ordering ASC LIMIT 45

pc.ordering - это сортировка по порядку (т.е. как задан порядок товаров в админке). Стоит отметить, что при включенном кэшировании (JotCache), категория вовсе не открывается - белый экран.
Если в настройках VM по умолчанию выставить сортировку по имени, то все ОК (и при кэшировании ОК). Если отключить отладку системы, а сортировку оставить по порядку, то все ОК (а вот при кэшировании не ОК - белый экран). Сортировка по порядку тоже работает без ошибок, если она не по умолчанию, а выбрана пользователем во фронтеде

Кто-нибудь сталкивался с подобным? Может, кто-то попробует симулировать ситуацию на своем сайте
Просто забить не могу. Есть категории, где очень важна та сортировка, которую я в админке задаю
Записан
Liss
Давно я тут
****

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

Сообщений: 207


« Ответ #1 : 19.05.2016, 22:22:40 »

Сам спросил - сам ответил.
Нашел косяк в /administrator/components/com_virtuemart/models/product.php
точный номер строк не скажу, т.к. файл у меня уже с изменениями в коде, ищите вот этот кусок
Код:
case '`pc`.ordering':
$orderBy = ' ORDER BY pc.`ordering` ';
$joinCategory = TRUE;
break;

обратите внимание на расстановку символа ` (клавиша, где русская Ё)
Записан
m3chanic
Новичок
*

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

Сообщений: 6


« Ответ #2 : 10.06.2016, 22:11:53 »

А тот кусок кода, что приведен правильный или надо еще смотреть на кавычку?
Записан
Liss
Давно я тут
****

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

Сообщений: 207


« Ответ #3 : 11.06.2016, 15:07:01 »

процитированный кусок правильный (рабочий), а в оригинале с кавычками беда
Записан
Страниц: [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