Антон Самарин

Антон Самарин

Ы
+20
Репутация
0
Рейтинг
#1 description главной страницы для v1.10.5 2 августа 2017 в 19:05
Юзаю v1.10.5. Если в настройках сайта, во вкладке "Главная страница" заполнить поле "Описание", то оно появится в description не только главной, но и всех страниц, у которых этот мета-тег не заполнен. Сайт старый, страниц сотни. Для многих страниц лучше без дескрипшена вообще, чем с одинаковым на всех. Как сделать так, чтобы дескрипшн из поля "Описание" шёл только на главную?
#2 InstantShop глюк импорта 20 декабря 2015 в 22:09
Ещё момент. Ранее добавляемым товарам присваивались id по порядку по возрастанию. Последний успешно загруженный на прошлом хостинге товар имеет id 8483. А тот товар который якобы создался, но потом сразу пропал имел id 47374. То есть совсем не по порядку. В базе данных товар с id 47374 отсутствует.
#1 InstantShop глюк импорта 20 декабря 2015 в 21:48
Переехал с одного хостинга на другой. Версия на поменялась PHP 5.5.9 Все паркеты как были так и остались.
Импортирую товар через csv в InstantShop — выдает ошибку "Ошибка открытия файла 300". Залез на хостинг и скорректировал права на аплоад и вложения на 777. И теперь происходит глюк. При нажатии на кнопку "Импортировать товары" админка выдаёт "Ни один товар не был добавлен. Проверьте настройки импорта и повторите попытку". Несколько раз попробовал повторить импорт и вот админка показывает, что один товар создан (я загружал именно один товар). Админка показадла название товара и в url был виден присвоенный id. Но при уходе в редактирования товара открывается окно с пустыми полями. Даже название, которое админка раньше показывала, было пустое. При попытке поиска этого товара через каталог — результата нет. Нет такого товара. Повторяю попытку импорта — опять сообщение "Ни один товар не был добавлен. Проверьте настройки импорта и повторите попытку" Что это может быть?
Прикрепленный файл
3_n71uo.jpg 127 Кб
#4 Ошибка в подсветке слов на страницах в результатах поиска 27 апреля 2015 в 21:19
Такая же фигня на v1.10.5. Как нибудь это лечится?
#1 Сортировка поиска 1.10.6 19 февраля 2015 в 14:38
Стандартный поиск 1.10.6 сортирует товары интернет-магазина instantshop по заголовку товара. Как сделать так, чтобы сортировать найденный интернет-магазина по возрастанию цены?
#1 Поиск v1.10.6 12 февраля 2015 в 13:05
Здесь описывалась проблема 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=индия (правильно, по цене товара)
#7 [ЕСТЬ РЕШЕНИЕ] Обрезание строки url по заданному кол-ву символов 10 февраля 2015 в 09:44
Pasha, Волшебно! Спасибо! smile
#1 [ЕСТЬ РЕШЕНИЕ] Обрезание строки url по заданному кол-ву символов 10 февраля 2015 в 00:13
Сейчас формируется урл из всего заголовка целиком. А как задать, чтобы урл брал только первые 40 символов?

на 1.10.5 на это работал код в файле cms.php
  1.  
  2. if (!$string){ $string = 'untitled'; }
  3. if (is_numeric($string)){ $string .= 'untitled'; }
  4.  
  5. return mb_substr($string, 0, 40);
на 1.10.6 все уже сложнее :)

  1. /**
  2.  * Обрезает строку по заданному кол-ву символов
  3.  * @return str
  4.  */
  5. function crop($string, $length = 250, $etc = ''){
  6.  
  7. if ($length == 0) { return ''; }
  8.  
  9. $string = str_replace("\n", ' ', strip_tags($string));
  10.  
  11. if (mb_strlen($string) > $length){
  12.  
  13. $length -= min($length, mb_strlen($etc));
  14. $string = preg_replace('/\s+?(\S+)?$/u', '', mb_substr($string, 0, $length+1));
  15.  
  16. return mb_substr($string, 0, $length) . $etc;
  17.  
  18. } else {
  19. return $string;
  20. }
Если поменять там 250 на 40, то эффекта не будет. Также формируется урл из всего заголовка. Как нужно поменять, чтобы урл формировался только из 40 символов из заголовка?
#1 Доработка модуля фотогалереи 23 января 2015 в 12:25
В instantshop у товаров настроена характеристика, которая представляет собой текстовое поле, в которое вставляется ссылка на альбом фотогалереи.

Нужно в альбоме после вывода превьюшек фоток и перед блоком комментариев выводить блок со списком названий (ссылок на товар) всех товаров, у которых есть характеристика, в которой прописана ссылка на этот альбом. Выводимый список названий должен ранжироваться по цене товаров.

Версия instantcms v1.10.5
#10 [ЕСТЬ РЕШЕНИЕ] Следующий и предыдущий товар по цене 15 декабря 2014 в 16:12
Как выяснилось там был баг: instantcms.ru/blogs/uluchshenija/glyuchek-v-v-funkci-ishop-pri-vybore-sled-predydushego-tovara.html придется переделывать исходя из него.
#11 вопрос по доставке, к тем у кого есть работающие интерне-магазины ? 12 декабря 2014 в 13:59
API у Почты России, насколько я знаю, до сих пор нет. Мы работаем через axiomus.ru от них получаем статусы о получении оплаты за заказы наложенным платежом. Если отправляем заказ после предоплаты, то никаких статусов не получаем, т.к. деньги уже получили :)
#12 вопрос по доставке, к тем у кого есть работающие интерне-магазины ? 12 декабря 2014 в 13:45
Если сами отправляете, то через отслеживание отправлений на сайте www.russianpost.ru/tracking20/
Если через кого-то, то просите, чтобы они вам по API передавали статус, что доставлено
#13 Поиск v1.10.5 -next 11 декабря 2014 в 22:06

Вот я и предлагаю устранить баг и изменить возможность сортировки по дате: от последней или от первой или в обратном порядке

Олег Васильевич я
Это да, может быть это и правильно. Просто в моем частном случае ранжирование по дате добавления товара для меня лишний и ненужный функционал.
#1 [ЕСТЬ РЕШЕНИЕ] Следующий и предыдущий товар по цене 11 декабря 2014 в 17:24
В instantshop нужно сделать, чтобы следующий и предыдущий товар показывался по цене. Т.е. следующий товар дороже текущего, а предыдущий — дешевле.

В \components\shop\model.php было так (предыдущий и следующий выбирались по последовательности в категории):

  1. public function getItemNav($item_id, $cat_id) {
  2.  
  3. $ordering = $this->inDB->get_field('cms_shop_items_cats', "item_id={$item_id} AND category_id={$cat_id}", 'ordering');
  4.  
  5. $sql = "SELECT i.id as id, i.seolink as seolink, ic.ordering as ordering, i.title as title
  6. FROM cms_shop_items i, cms_shop_items_cats ic
  7. WHERE ic.item_id = i.id AND i.published = 1
  8. AND ic.category_id = {$cat_id}
  9. AND (ic.ordering < {$ordering} OR ic.ordering > {$ordering})
  10. LIMIT 2";
  11.  
  12. $result = $this->inDB->query($sql);
  13.  
  14. if (!$this->inDB->num_rows($result)){ return false; }
  15.  
  16. $items = array();
  17. $nav = array();
  18.  
  19. while($item = $this->inDB->fetch_assoc($result)){
  20. if($item['ordering'] == $ordering-1){
  21. $nav['prev'] = $item;
  22. } else {
  23. $nav['next']= $item;
  24. }
  25. }
  26.  
  27. return $nav;
  28.  
  29. }
Сделал так:

  1. public function getItemNav($id, $price) {
  2.  
  3. $ordering = $this->inDB->get_field('cms_shop_items', "id={$id} AND price={$price}", 'price');
  4. $sql = "SELECT id, seolink, title, price
  5. FROM cms_shop_items
  6. WHERE published = 1
  7. AND (price < {$ordering} OR price > {$ordering})
  8. LIMIT 2";
  9. $result = $this->inDB->query($sql);
  10.  
  11. if (!$this->inDB->num_rows($result)){ return false; }
  12.  
  13. $items = array();
  14. $nav = array();
  15.  
  16. while($item = $this->inDB->fetch_assoc($result)){
  17. if($item['price'] == $ordering-1){
  18. $nav['prev'] = $item;
  19. } else {
  20. $nav['next']= $item;
  21. }
  22. }
  23.  
  24. return $nav;
  25.  
  26. }
Но следующий и предыдущий товар по цене как-то странно выбирается. Где-то только следующий, где-то — вообще ничего не показывает. Может я где-то ошибку в коде сделал?
#15 Поиск v1.10.5 -next 11 декабря 2014 в 12:50
Если так поменять frontend.php, то поиск не ранжирует по полю price

У меня ещё раньше было изменение, чтобы ранжировать по полю price. Эти изменения были сделаны в предыдущей версии v1.10.4 и до обновления до v1.10.5 они работали как надо.

В файле /components/shop/psearch.php блок

  1. $sql = "SELECT DISTINCT con.*,
  2. cat.title cat_title,
  3. cat.seolink as cat_seolink
  4. FROM cms_shop_items con, cms_shop_cats cat
  5. WHERE MATCH(con.title, con.shortdesc, con.description) AGAINST ('$query' IN BOOLEAN MODE) AND con.category_id = cat.id AND con.published=1";

заменено на

  1. $sql = "SELECT DISTINCT con.*,
  2. cat.title cat_title,
  3. cat.seolink as cat_seolink
  4. FROM cms_shop_items con, cms_shop_cats cat
  5. WHERE MATCH(con.title, con.shortdesc, con.description) AGAINST ('$query' IN BOOLEAN MODE) AND con.category_id = cat.id AND con.published=1
  6. ORDER BY con.price ASC";
может изменения frontend.php конфликтуют с этим?
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.