Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

AndreyPopov

Користувачі
  
  • Публікації

    150
  • З нами

  • Відвідування

Усі публікації користувача AndreyPopov

  1. заменил public function delete($key) { $this->cache->delete(CACHE_PREFIX . $key); } на public function delete($key) { $this->cache->del(CACHE_PREFIX . $key); } перестало ругаться и вроде работает
  2. разработчики поменяли https://github.com/opencart/opencart/commit/e412d7915af99a12bc48f04bfbcfad3765652904 setTimeout на expire перестало ругаться на setTimeout но вот на Function Redis::delete() is deprecated продолжате ругаться
  3. посоветовали добавить еще проверку таблицы user , точнее исключить таблицу из кэша, как и cart. наверное как-то так. $select_id = (0 <= stripos($sql, 'SELECT') && ( !stripos($sql, 'FROM ' . DB_PREFIX . 'cart') || !stripos($sql, 'FROM ' . DB_PREFIX . 'user') ) ) ? sha1($sql) : false; буду пробовать
  4. пробовал и redis - и как кэш + как менеджер сессий а именно redis для базы данных - пока не видел драйвера. все равно этот драйвер реально быстрее - даже на глаз видно как сайт начинает летать. потому и хочется разобраться с проблемой - почему не дает залогиниться. там в коде есть одно место: $select_id = (0 <= stripos($sql, 'SELECT') && !stripos($sql, 'FROM ' . DB_PREFIX . 'cart')) ? sha1($sql) : false; и вот это sha1($sql) мне кажется "подозрительным" в предыдущих версиях MySQL-cacahe для 1.5 и 2.0 там стояло md5($sql) и у меня такое ощущение, что из-за этого шифрования, которое от версии к версии меняется?
  5. взял этот модуль Memcached Speed Booster https://github.com/volynweb/opencart-memcached-speed-booster сайты начинают реально летать. OpenCart 3.0.3.1-rs2 у меня стоит еще Journal3 тема и недавно перевел сайт на PHP 7.2 - это инфа для полной картины. столкнулся с тем, что при включенном драйвере пользователи не могут залогиниться в свой аккаунт. т.е. после введения логин/пароль снова перебрасывает на страницу для входа при этом в админке пишет, что пользователь "совершил вход" автор модуля Shaman (Евгений) Lifescale к сожалению c осени 2016 года своих новых координат не дал и на связь пока не выходит и координат его раздобыть не получается. может кто подскажет куда копать и смотреть, потому что уж очень быстро начинают откликаться сайты с этим драйвером.
  6. поскольку разработчики OpenCart уже поправили свой косячок с выводом на карте https://github.com/opencart/opencart/commit/c66d34534c28490509a80de38e20b567681ccd то поправил слегка ocmod для совместимости с будущими версиями admin-map-ukraine-digits-opencart3x.ocmod.zip admin-map-ukraine-opencart3x.ocmod.zip admin-map-ukraine-ua-digits-opencart3x.ocmod.zip admin-map-ukraine-ua-opencart3x.ocmod.zip
  7. сделал четыре варианта. украинское и русское написание областей коды областей буквенные и цифровые если есть желающие - проверьте плиз. для тех у кого стоит simple и/или Новая почта надо слегка рихтовать и коды карты и запрос в базу. потому что к примеру Волынская область имеет код 300001 и назначена как страна (country_id) и не регион (zone_id) admin-map-ukraine-digits-opencart3.ocmod.zip admin-map-ukraine-opencart3.ocmod.zip admin-map-ukraine-ua-digits-opencart3.ocmod.zip admin-map-ukraine-ua-opencart3.ocmod.zip
  8. вообще непонятно ЗАЧЕМ разработчики в OpenCart 3.x мудрили с этими преобразованиями в целые числа, если в запросе к базе надо передавать строку со значениями через запятую! сам повысказывал мысли, сам порассуждал, сам покопался и после нескольких проб и ошибок типа "неправильное преобразование массива в строку" нашел рабочий вариант. добавил $config_complete_status_string = implode(',', $this->config->get('config_complete_status')); а в запросе к базе данных заменил на: WHERE o.order_status_id IN ($config_complete_status_string) и все заработало как и задумывалось! теперь на карте отображаются заказы, статус которых отнесен к "Завершенным" в настройках магазина.
  9. возвращаемся к вопросу 2 в чем суть в admin/model/extension/dashboard/map.php if (is_array($this->config->get('config_complete_status'))) { foreach ($this->config->get('config_complete_status') as $order_status_id) { $implode[] = (int)$order_status_id; у меня в настройках к "завершенным заказам" относятся несколько статусов: "Завершен", "Возмещен", … "Аннулирован" и хотя Аннулирован имеет id=16, но начинается с буквы А - то в базе в параметре 'config_complete_status' он стоит первым! config_complete_status ["16","8","11","5","7","9","17","10","14"] судя по логике указанного выше кода: - проверяется, что config_complete_status это действительно массив - запускается цикл, который должен преобразовать символьные переменные массива config_complete_status в массив целых чисел $implode после чего из базы делается выборка заказов по статусам из $implode WHERE o.order_status_id IN('" . (int)implode(',', $implode) . "') по ходу получается выборка только по первому элементу массива $implode!!!! и вот тут мне уже непонятна логика: ЗАЧЕМ в запросе в базу данных стоит (int)implode ???????? вроде как $implode и так уже массив целых чисел, зачем его еще раз делать "челым числом"? помогите разобраться в этой логике! прочитал описание функции implode — Объединяет элементы массива в строку т.е. вот эта конструкция (int)implode(',', $implode) а) implode делает из массива целых чисел $implode строку через запятую б) а потом эта строка превращается в целое число бред какой-то вообще получается?
  10. OpenCart 3.0.3.1 обнаружил, что функция getTotalOrdersByCountry объявляется трех файлах admin/model/extension/report/sale.php admin/model/extension/dashboard/sale.php admin/model/extension/dashboard/map.php а вызывается только в admin/controller/extension/dashboard/map.php заменил во всех трех файлах $query = $this->db->query("SELECT COUNT(*) AS total, SUM(o.total) AS amount, c.iso_code_2 FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "country` c ON (o.payment_country_id = c.country_id) WHERE o.order_status_id > '0' GROUP BY o.payment_country_id"); на: $query = $this->db->query("SELECT COUNT(*) AS total, SUM(o.total) AS amount, z.code as iso_code_2 FROM `" . DB_PREFIX . "order` o LEFT JOIN `" . DB_PREFIX . "zone` z ON (o.payment_zone_id = z.zone_id) WHERE o.order_status_id > '0' GROUP BY o.payment_zone_id"); в файле jquery.vmap.ukraine.js все буквенные индексы заменил на строчные, потому что в admin/controller/extension/dashboard/map.php где вызывается getTotalOrdersByCountry стоит функция strtolower, которая преобразует все символы в строчные на карте появились заказы! так что хочет проверить - ловите. теперь осталось пару вопросов: 1. проверить работу в варианте, когда коды областей не буквенные, а цифровые. у кого-то стоит оригинальный Openacart 3.0 где прописаны цифровые коды регионов? 2. сюда по отображаемой статистике, выводятся только заказы сделанные зарегистрированными покупателями, заказы сделанные Гостями не попадаются в эту статистику. кто-то может подсказать где это можно проверить и исправить? P.S. вопрос 2 снят, оказалось что заказы в статусе "Заверешен" уже не отображаются. и у меня как раз два заказа показываются "Аннулированные", но именно от зарегистрированных покупателей. P.S.P.S. хотя непонятно, почему отображаются только незавершенные заказы, а не все? admin-map-ukraine-opencart3.ocmod.zip
  11. 1. Модуль Новой почты меняет коды регионов на свои согласно списку отделений. и скорее всего после очередного обновления списка отделений карта и перестала отображать заказы. у меня OpenCart 2.3.0.2 2. есть еще у меня OpenCart 3.0.3.1 прикручиваю карту и туда. карта показывает. но встал тот же вопрос с отображением заказов. вопрос в чем, что в OpenCart 3.0.3.1-rs (руссифицированная сборка) прописаны буквенные коды областей, а в оригинале OpenCart 3.0.3.1 они цифровые. вот и встает вопрос - что делать? сделал свою карту Украины из SVG карты, где есть отдельно Киев с буквенными кодами регионов. jquery.vmap.ukraine_all_kiev.js ukraineHigh.svg
  12. OpenCart 3.0.3.1rs после установки модуля поля H1 появились в категориях и информационных статьях. а в Продуктах не появились глянул в storage/modifications - вроде как во все файлы прописались "добавки"
  13. может кому пригодится проверено на OpenCart 3.x + Journal 3.x sort-by-newest-variant-add.ocmod.xml
  14. таки пришлось докупать место на хостинге под кэш картинок. потому что кроме постоянного ресайза тут еще вылезла проблема с индексацией поисковиками. они начали ругаться, что страница отображается неправильно, потому как они не могут найти картинку в кэше!
  15. опишу свою проблему в этой теме, потому что очень и очень похожая. "давным-давно" сделал "кто-то" заказчику(родственику) сайт на VirtuеMart'е потом этот "кто-то" ушел, сайт прошел еще через "пару рук" и наконец заказчик попросил меня посмотреть "что можно сделать" после года "мучений" заказчик таки пришел к мысли все сделать "с нуля". поднял сайт на тестовом домене на OpenCart 2.3.0.2, заказчик наполнил его товарами ну и запустили сайт на оригинальном домене. случилось это в апреле 2017 года. сайт на VirtuеMart перевели на тестовый домен, и поставили "Режим обслуживания" еще пол-года подчищали, настраивали, доводили до "товарного вида" по желанию заказчика поставил Paladin SEO и включили ЧПУ - это было в ноябре 2017 в январе 2018 перевели на https, сгенерировали карту сайта и добавили сайт в Google Search Console -------------------------------------------- по началу, когда начало сыпать ошибками сканирования типа index.php?option=com_virtuemart&view=productdetails&virtuemart_product_id=1683&virtuemart_category_id=53&Itemid=564 последняя дата посещения 24.02.2017 вроде бы было понятно - "застряло" в кэше, надо ждать пока кэш очистится вроде мало-по-малу кэш чистился и последняя ошибка сканирования с option=com_virtuemart была где-то в апреле 2018. и тут в августе заказчик не уследил и забыл заплатить за продление доменного имени - сайт 10 часов не отвечал. и через неделю Google Search Console вывали в ошибках сканирования 200 (двести) ошибок с option=com_virtuemart - где он их взял??? может кто подскажет как это побороть?
  16. бывает.... я вот тоже модуль купил, а автор уже оказывается пол года как на связь не выходит ни с кем
  17. ну а вдруг у вас решит кто-то заказать оттуда, где нет ни одного перевозчика, а есть только отделение Укрпочта? или у вас политика отправлять только на отделение перевозчика? тогда есть куча модулей как платных, так и бесплатных под конкретного(ых) перевозчиков, которые подменяют поля Адреса на номер отделения. или воспользуйтесь таки модулем Simple - там можно настроить кучу полей и условий по доставке и в первую очередь их обязательность.
  18. а разве вывод по категории дело фильтра? этим вроде Opencart или тема занимается?
  19. а у вас есть отключенные товары в этой категории? может фильтр считает все товары в категории, а выводит соответственно только активные.
  20. про отсутствие H1 на главной странице сайта в Opencart уже есть как минимум с десяток тем! в том числе с вариантами решения, чтобы H1 был, но не был виден на главной.
  21. тут давеча обсуждали правда речь шла об админке. потому как лично у меня на магазине стоит тема Journal - а там свой поиск
  22. я работаю с ней. если знаете английский - то вообще песня. единственное, что могу сказать, что 80% возможностей Journal так и не использую. но зато внутри Journal есть многие решения, которые очень часто ищутся дополнительно. лично то, что нравится мне: - создание любых меню через интерфейс - встроенная возможность управления интерфейсом сайта для desktop, tablet, phone (что выводить и как) - наличие "наклеек" для товаров: Новый, Нет на складе, Акция - обалденный Суперфильтр для товаров - возможность (хоть и вручную) создать список товаров под заказ с запросом - карусели, слайдеры - это вообще отдельная тема
  23. зайти в MySQL через phpAdmin и через запрос заменить этот стринг на "ничто" давече вот тут примерно тоже самое обсуждали
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.