
Антон Самарин
Ы
+20
Репутация
0
Рейтинг
Юзаю v1.10.5. Если в настройках сайта, во вкладке "Главная страница" заполнить поле "Описание", то оно появится в description не только главной, но и всех страниц, у которых этот мета-тег не заполнен. Сайт старый, страниц сотни. Для многих страниц лучше без дескрипшена вообще, чем с одинаковым на всех. Как сделать так, чтобы дескрипшн из поля "Описание" шёл только на главную?
Ещё момент. Ранее добавляемым товарам присваивались id по порядку по возрастанию. Последний успешно загруженный на прошлом хостинге товар имеет id 8483. А тот товар который якобы создался, но потом сразу пропал имел id 47374. То есть совсем не по порядку. В базе данных товар с id 47374 отсутствует.
Переехал с одного хостинга на другой. Версия на поменялась PHP 5.5.9 Все паркеты как были так и остались.
Импортирую товар через csv в InstantShop — выдает ошибку "Ошибка открытия файла 300". Залез на хостинг и скорректировал права на аплоад и вложения на 777. И теперь происходит глюк. При нажатии на кнопку "Импортировать товары" админка выдаёт "Ни один товар не был добавлен. Проверьте настройки импорта и повторите попытку". Несколько раз попробовал повторить импорт и вот админка показывает, что один товар создан (я загружал именно один товар). Админка показадла название товара и в url был виден присвоенный id. Но при уходе в редактирования товара открывается окно с пустыми полями. Даже название, которое админка раньше показывала, было пустое. При попытке поиска этого товара через каталог — результата нет. Нет такого товара. Повторяю попытку импорта — опять сообщение "Ни один товар не был добавлен. Проверьте настройки импорта и повторите попытку" Что это может быть?
Импортирую товар через csv в InstantShop — выдает ошибку "Ошибка открытия файла 300". Залез на хостинг и скорректировал права на аплоад и вложения на 777. И теперь происходит глюк. При нажатии на кнопку "Импортировать товары" админка выдаёт "Ни один товар не был добавлен. Проверьте настройки импорта и повторите попытку". Несколько раз попробовал повторить импорт и вот админка показывает, что один товар создан (я загружал именно один товар). Админка показадла название товара и в url был виден присвоенный id. Но при уходе в редактирования товара открывается окно с пустыми полями. Даже название, которое админка раньше показывала, было пустое. При попытке поиска этого товара через каталог — результата нет. Нет такого товара. Повторяю попытку импорта — опять сообщение "Ни один товар не был добавлен. Проверьте настройки импорта и повторите попытку" Что это может быть?
Прикрепленный файл
3_n71uo.jpg
127 Кб
Такая же фигня на v1.10.5. Как нибудь это лечится?
Стандартный поиск 1.10.6 сортирует товары интернет-магазина instantshop по заголовку товара. Как сделать так, чтобы сортировать найденный интернет-магазина по возрастанию цены?
Здесь описывалась проблема instantcms.ru/forum/thread20206.html в выдаче поиска по товарам instantshop ранжировать по цене. При обновлении до 1.10.6 поиск с теми изменениями, которые были в 1.10.5 сначала сортирует по цене как надо. Но потом, видимо, когда наполняется кэш, перестаёт ранжировать по цене. Если очистить кэш, то какое-то короткое время опять как надо ранжирует.
Вот пример:
На 1.10.6 ранжирует так: test.historiosophy.ru/search?query=индия (не правильно, не по цене товара)
На 1.10.5 ранжирует так: historiosophy.ru/search?query=индия (правильно, по цене товара)
Вот пример:
На 1.10.6 ранжирует так: test.historiosophy.ru/search?query=индия (не правильно, не по цене товара)
На 1.10.5 ранжирует так: historiosophy.ru/search?query=индия (правильно, по цене товара)
Pasha, Волшебно! Спасибо!

Сейчас формируется урл из всего заголовка целиком. А как задать, чтобы урл брал только первые 40 символов?
на 1.10.5 на это работал код в файле cms.php
на 1.10.6 все уже сложнее :)
Если поменять там 250 на 40, то эффекта не будет. Также формируется урл из всего заголовка. Как нужно поменять, чтобы урл формировался только из 40 символов из заголовка?
на 1.10.5 на это работал код в файле cms.php
if (!$string){ $string = 'untitled'; }
/** * Обрезает строку по заданному кол-ву символов * @return str */ function crop($string, $length = 250, $etc = ''){ if ($length == 0) { return ''; } } else { return $string; }
В instantshop у товаров настроена характеристика, которая представляет собой текстовое поле, в которое вставляется ссылка на альбом фотогалереи.
Нужно в альбоме после вывода превьюшек фоток и перед блоком комментариев выводить блок со списком названий (ссылок на товар) всех товаров, у которых есть характеристика, в которой прописана ссылка на этот альбом. Выводимый список названий должен ранжироваться по цене товаров.
Версия instantcms v1.10.5
Нужно в альбоме после вывода превьюшек фоток и перед блоком комментариев выводить блок со списком названий (ссылок на товар) всех товаров, у которых есть характеристика, в которой прописана ссылка на этот альбом. Выводимый список названий должен ранжироваться по цене товаров.
Версия instantcms v1.10.5
Как выяснилось там был баг: instantcms.ru/blogs/uluchshenija/glyuchek-v-v-funkci-ishop-pri-vybore-sled-predydushego-tovara.html придется переделывать исходя из него.
API у Почты России, насколько я знаю, до сих пор нет. Мы работаем через axiomus.ru от них получаем статусы о получении оплаты за заказы наложенным платежом. Если отправляем заказ после предоплаты, то никаких статусов не получаем, т.к. деньги уже получили :)
Если сами отправляете, то через отслеживание отправлений на сайте www.russianpost.ru/tracking20/
Если через кого-то, то просите, чтобы они вам по API передавали статус, что доставлено
Если через кого-то, то просите, чтобы они вам по API передавали статус, что доставлено
Это да, может быть это и правильно. Просто в моем частном случае ранжирование по дате добавления товара для меня лишний и ненужный функционал.Вот я и предлагаю устранить баг и изменить возможность сортировки по дате: от последней или от первой или в обратном порядке
В instantshop нужно сделать, чтобы следующий и предыдущий товар показывался по цене. Т.е. следующий товар дороже текущего, а предыдущий — дешевле.
В \components\shop\model.php было так (предыдущий и следующий выбирались по последовательности в категории):
Сделал так:
Но следующий и предыдущий товар по цене как-то странно выбирается. Где-то только следующий, где-то — вообще ничего не показывает. Может я где-то ошибку в коде сделал?
В \components\shop\model.php было так (предыдущий и следующий выбирались по последовательности в категории):
public function getItemNav($item_id, $cat_id) { $ordering = $this->inDB->get_field('cms_shop_items_cats', "item_id={$item_id} AND category_id={$cat_id}", 'ordering'); $sql = "SELECT i.id as id, i.seolink as seolink, ic.ordering as ordering, i.title as title FROM cms_shop_items i, cms_shop_items_cats ic WHERE ic.item_id = i.id AND i.published = 1 AND ic.category_id = {$cat_id} AND (ic.ordering < {$ordering} OR ic.ordering > {$ordering}) LIMIT 2"; $result = $this->inDB->query($sql); if (!$this->inDB->num_rows($result)){ return false; } while($item = $this->inDB->fetch_assoc($result)){ if($item['ordering'] == $ordering-1){ $nav['prev'] = $item; } else { $nav['next']= $item; } } return $nav; }
public function getItemNav($id, $price) { $ordering = $this->inDB->get_field('cms_shop_items', "id={$id} AND price={$price}", 'price'); $sql = "SELECT id, seolink, title, price FROM cms_shop_items WHERE published = 1 AND (price < {$ordering} OR price > {$ordering}) LIMIT 2"; $result = $this->inDB->query($sql); if (!$this->inDB->num_rows($result)){ return false; } while($item = $this->inDB->fetch_assoc($result)){ if($item['price'] == $ordering-1){ $nav['prev'] = $item; } else { $nav['next']= $item; } } return $nav; }
Если так поменять frontend.php, то поиск не ранжирует по полю price
У меня ещё раньше было изменение, чтобы ранжировать по полю price. Эти изменения были сделаны в предыдущей версии v1.10.4 и до обновления до v1.10.5 они работали как надо.
В файле /components/shop/psearch.php блок
заменено на
может изменения frontend.php конфликтуют с этим?
У меня ещё раньше было изменение, чтобы ранжировать по полю price. Эти изменения были сделаны в предыдущей версии v1.10.4 и до обновления до v1.10.5 они работали как надо.
В файле /components/shop/psearch.php блок
$sql = "SELECT DISTINCT con.*, cat.title cat_title, cat.seolink as cat_seolink FROM cms_shop_items con, cms_shop_cats cat WHERE MATCH(con.title, con.shortdesc, con.description) AGAINST ('$query' IN BOOLEAN MODE) AND con.category_id = cat.id AND con.published=1";
заменено на
$sql = "SELECT DISTINCT con.*, cat.title cat_title, cat.seolink as cat_seolink FROM cms_shop_items con, cms_shop_cats cat WHERE MATCH(con.title, con.shortdesc, con.description) AGAINST ('$query' IN BOOLEAN MODE) AND con.category_id = cat.id AND con.published=1 ORDER BY con.price ASC";