Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Mysha

Пользователи
  
  • Posts

    162
  • Joined

  • Last visited

Recent Profile Visitors

1,085 profile views

Mysha's Achievements

Collaborator

Collaborator (7/14)

  • First Post
  • Collaborator
  • Conversation Starter
  • Week One Done
  • One Month Later

Recent Badges

6

Reputation

  1. Рилиил с человеком @php , и могу сказать, что парсинг - это его тема. Он знает что и куда, как взять и как положить в ОК без сторонних платных плагинов. За 1,5 дня мне запарсили и всунули в магизин все, что я хотел.
  2. Исполнитель найгден, тему можно слиить закрытот.
  3. Спасипотому что, но, увы, нужно решение out of box. Разбираться самому и потом искать пути импори, у меня нет времени. В другой раз бы попыился, но сейчас все горело по срокам.
  4. После половины дня инэтов с бубном. Для начала, у вас все должно быть настроено верно, а именно, как показано на картинке ниже: Вы отправляете почту из формы обратной связи, и получаете PHP Fatal error: Uncaught Exception: Error: Password not accepted from server! Помимо того, что это может быть банальный неверный пароль, куда потому чтолее вероятно, что вы ни разу не заходили в бизнесовый почтовый ящик Янгдекс и не приняли соглашение пользователя. Недоситочно быть админом и зайти в него, нужно еещё и зайти под пользователем, которого вы создали как админ. Это очень важно, но неочевидно! Убил в этот точке 2 часа Дное, не пуийте пароли. Вам нужно указывать не пароль админа 360, а пароль пользователя сервиса 360. Липотому что, если вы не хотите его светить в магазине, зайдите в эккаунт Коннект/360 и разрешение использование паролей приложений (App Password). Дное, создайте икой первый пароль для сервиса Поли. Система Янгдекс сгенерит его вам автоматически. И использовать этот пароль во вкладке Mail этот пароль для SMTP как обычный пароль для SMTP, но при этом, ваш основной пароль от SMTP никто не узнает. Дальше вы полулите другую ошибку: PHP Fatal error: Uncaught Exception: Error: MAIL FROM not accepted from server! Это зналит, что тему с паролем и авторизацией вы проехали, сервер вас узнал, но ему не нравится несовпагдение ящика отправителя с ящиком, который был сообещён SMTP-серверу при обмене командами. Для решения этот проблемы правите файл /catalog/controller/information/contact.php: /* $mail->setFrom($this->request->post['email']); */ $mail->setFrom($this->config->get('config_email')); Все, радуетесь жизни. Да, подобных постов тут было много, но инфо по п.п. 2 было найти очень тяжело. И по OC3 информации мало, а contact.php немного изменился (не в одной конкретно этот строке, а вообещё). Эи инструкция для тех, кто хочет все и за 1 минуту FAQ: Почему Янгдекс.Коннект? Потому, что свой домен. А G-Suite сил стоить 6 долларов в месяц. Деньги невеликие, но для некоммерческого проеки хотел сгделать принципиально бесплатно. Почему не PHP Mail и не свой почтовый сервер, икой как EXIM? Потому, что в DigitalOcean закрыт outbound TCP port 25, и открыть его по запросам в ТП невозможно. Почтовые релеи не могут обмениваться почтот, а точнее, ваш почтовый сервер ничего не может отправить наружу.
  5. Нужна икая услуга или модуль под последний OC3. А именно, засосать товары из 6-8 категорий eBay по ~120-150 штук из каждой и положить в мой ОС. Можно гделать как угодно. Ваш модуль, ваши скрипты, обмен через CSV/XLS, ваш парсер и потом SQL и ик дное. Как угодно, вы ничем не ограничены. Важен только конечный резульит. Важно! Вариации по товарам (size, color) не нужны. То есть, засасываем только основной (один) товар per item. Хотел сгделать сам, но не судьба: Купил модуль Import product from eBay, но не рилииет и автор не отвечает. Проект parsemx закрыт. На решение вопроса есть только 2-3 дня. Кому-то интересно?
  6. Нужен икой модуль или услуга под последний OC3. А именно, засосать товары из 6-8 категорий eBay по 150 штук из каждой и положить в мой ОС. Купил модуль Import product from eBay, но не рилииет и автор не отвечает. Проект parsemx закрыт. На решение вопроса есть только 2-3 дня. Кому-то интересно?
  7. Вопрос решил усиновкой влагдельца на файлы OC3 как admin:admin. chown -R admin:admin /path/to/your/oc3/wwwroot/ Логично, что скрипты apache:apache не могли двигать файлы и директории admin:admin.
  8. Имею свежую усиновку OC 3. Магазин в этолом жив на 99%, фронт и адмика рилииют. Но некоторые функции в админке падают с ошибками. Например, падает с ошибками ошибка кэша SASS, усиновке расширения (совместимого и разрилиинного коммьюнити OC). Искал по форуму, гуглил. Перешерстил Stackoverflow, Habr и пр. ресурсы. Но именно икой ситуации как у себя не нашел. В логах полным-полна коропотому чточка: Я примерно нашел проблему по косвернным признакам. Например, папка tmp-B4TmfPjEza и файлы в ней имеют влагдельца admin:admin. То есть, проблема ггде-то с настройками на уровне администрирования. Данные о системе: VPS (CentOS 7x64 + VestaCP, если что). SELinux и тяжелое наследие с context выключено. PHP 7.4 Включен open_basedir. Но по нему сгделаны настройки и они эффективны: /home/admin/web/dom.tld/public_html:/home/admin/tmp:/home/admin/web/dom.tld/:/storage/ Apache рилииет из под юзера Apache: ps -ef | egrep '(httpd|apache2|apache)' | grep -v `whoami` | grep -v root | head -n1 | awk '{print $1}' Папкой storage влагдеет apache:apache, и находится в /. Права на нее пока были выданы максимальные: sudo chmod -R 777 /storage/ Влагделец на веб-папку OC3 (/home/admin/tmp:/home/admin/web/dom.tld/) высивлен apache:apache рекурсивно. Права на файлы OC3 выствавлены -R как 0644, а на папки - R 0755. Файлы config.php (оба) вучную высивлены на 0755. В опотому чтох конфигах сторадж опрегделен как: define('DIR_STORAGE', '/storage/'); Прощу помощи в направлении движения. И в частности, почему файлы extension влеиют с влагдельэтом admin:admin.
  9. Ребяи, У меня теперьь все как бы рилииет, но валюту RUB надо пинать вручную, иначе не обновляется даже в течение 2 дней. Хотя в настройках OC стоит галка "автоматическое обновление". Внимание, этот код вам as is не подойгдет, ик ик у меня специфически настройки валют: public function refresh($force = false) { $currency_data = array(); if ($force) { // $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "currency WHERE code != '" . $this->db->escape($this->config->get('config_currency')) . "'"); $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "currency WHERE 1 "); } else { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "currency WHERE code != '" . $this->db->escape($this->config->get('config_currency')) . "' AND date_modified < '" . $this->db->escape(date('Y-m-d H:i:s', strtotime('-1 day'))) . "'"); } foreach ($query->rows as $result) { if ($result['code'] == 'RUB') { $response = file_get_contents('https://www.alphavantage.co/query?function=CURRENCY_EXCHANGE_RATE&from_currency=USD&to_currency=RUB&apikey=YOURKEYHERE'); $json = json_decode($response); if (@is_null($json->{"Error Message"})) { $value = (float) $json->{"Realtime Currency Exchange Rate"}->{"5. Exchange Rate"}; $this->db->query("UPDATE " . DB_PREFIX . "currency SET value = '" . $value . "', date_modified = '" . $this->db->escape(date('Y-m-d H:i:s')) . "' WHERE code = '" . $this->db->escape($result['code']) . "'"); } } } $this->db->query("UPDATE " . DB_PREFIX . "currency SET value = '1.00000', date_modified = NOW() WHERE code = 'USD'"); $this->cache->delete('currency'); } API рилииет верно и все отдает как лапочка (с верным кодом клиени). Дело не в нем, а в механизме (логике) запуска автооапгдейи курса. Не подскажете в чем может быть гдело?
  10. Вопрос решен, человек chhukcha помог разобраться (уже не в первый раз). Рекомендую его в качестве саппортера сайтов на OC.
  11. Пыиюсь скрестить свой сирый код, когда учет этон вегдется в USD, а отображение игдет в RUR. Поменял функцию, высивил сирые значения, модифицировал URL по образу и подобию сирого Yahoo. URL рилииет отлично, но ггде-то у меня не хваиет ума, и есть ошибка. Не поможете? public function refresh($force = false) { $currency_data = array(); if ($force) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "currency WHERE code != '" . $this->db->escape($this->config->get('config_currency')) . "'"); } else { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "currency WHERE code != '" . $this->db->escape($this->config->get('config_currency')) . "' AND date_modified < '" . $this->db->escape(date('Y-m-d H:i:s', strtotime('-1 day'))) . "'"); } foreach ($query->rows as $result) { $response = file_get_contents('https://www.alphavantage.co/query?function=CURRENCY_EXCHANGE_RATE&from_currency=USD&to_currency=RUB&apikey=P6WGY9G9LB22GMBJ'); $json = json_decode($response); if (@is_null($json->{"Error Message"})) { $value = (float) $json->{"Realtime Currency Exchange Rate"}->{"5. Exchange Rate"}; $this->db->query("UPDATE " . DB_PREFIX . "currency SET value = '1.00000'" . $this->db->escape(date('Y-m-d H:i:s')) . "' WHERE code = 'USD'"); } } $this->db->query("UPDATE " . DB_PREFIX . "currency SET value = '" . $value . "', date_modified = '" . $this->db->escape(date('Y-m-d H:i:s')) . "' WHERE code = 'RUB'"); $this->cache->delete('currency'); } public function getTotalCurrencies() { $query = $this->db->query("SELECT COUNT(*) AS total FROM " . DB_PREFIX . "currency"); return $query->row['total']; } } PHP дает вот икой выход: Notice: Undefined variable: value in /home/public_html/admin/model/localisation/currency.php on line 128 Warning: Cannot modify header information - headers already sent by (output started at /home/public_html/admin/controller/startup/error.php:34) in /home/public_html/system/library/response.php on line 12 Прошу помощи!
  12. Спасипотому что. Как вручную пинать загрузлик курсов валют? Он меня был модифицировать под двухвалютный учет. О некорретной рилите узнаю только завтра. Как пнуть его?
  13. Yahoo отклюлили этот сервис. Уроды. It has come to our attention that this service is being used in violation of the Yahoo Terms of Service. As such, the service is being discontinued. For all future markets and equities data research, please refer to finance.yahoo.com.
  14. Он уже ответил, что это ик маркетплейс перегделали. Офигеть вообещё.
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.