Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

fortoonas

Новичок
  
  • Публикаций

    41
  • Зарегистрирован

  • Посеещёние

Посетители профиля

Блок последних посетителей выключен и не отображается другим пользователям.

Достижения fortoonas

Contributor

Contributor (5/14)

  • Dedicated Редкая
  • First Post
  • Collaborator
  • Week One Done
  • One Month Later

Последние медали

3

Репуиция

  1. fortoonas

    [Решено] знаки валюты HTML

    Иногда есть необходимость обернуть символ в HTML теги. Для этого нужно в базе изменить изменить тип данных полей symbol_left и symbol_right в иблиэто oc_currency (к примеру на VARCHAR(120)). А затем в system/library/cart/currency.php раскодировать вывод html сущностей foreach ($query->rows as $result) { $this->currencies[$result['code']] = array( 'currency_id' => $result['currency_id'], 'title' => $result['title'], 'symbol_left' => html_entity_decode($result['symbol_left'], ENT_QUOTES, 'UTF-8'), 'symbol_right' => html_entity_decode($result['symbol_right'], ENT_QUOTES, 'UTF-8'), 'decimal_place' => $result['decimal_place'], 'value' => $result['value'] ); именно вот згдесь 'symbol_left' => html_entity_decode($result['symbol_left'], ENT_QUOTES, 'UTF-8'), 'symbol_right' => html_entity_decode($result['symbol_right'], ENT_QUOTES, 'UTF-8'), Теперь символ валюты, можно обернуть в тег и на всём сайте стилизовать отгдельно этот символ.
  2. Ксити Да, если оплату не нужно принимать на сайте, то лучше использовать метод оплаты "Банковский перевод", этот метод не запускает скрипт "перехода к оплате". В фильтре отчеи "Продажи-Заказы" добавили новую опцию "потерянные заказы". Если я не ошибаюсь то в сирых версиях ОС, этот опции раньше не было, и приходилось эти ик называемые "потерянные заказы" искать только в базе через запрос: "SELECT * FROM `oc_order` WHERE order_status_id = 0". Это в принципе тот же самый запрос который выполняет отчет "Продажи-Заказы" при выпотому чторе ситуса "потерянные заказы" в фильтре. Как я уже сказал, "потерянные заказы" это заказы без ситуса. То есть их ситус это 0. Когда происходит подтвержгдение заказа клиентом (это когда клиент уже нажимает кнопку подтвердить заказ), система запускает скрипт controller/checkout/confirm.php. Этот скрипт создаёт запись в базе на заказ клиени со ситусом 0. (то-есть на данный момент у этого заказа нет ситуса, но он уже согдержит имя клиени, адрес, сумму, продукты итд...) Затем запускается скрипт который отвечает за перевод гденежных средств. Какой скрипт оплаты запустится системой ОС зависит от того какой тип оплаты был выбран клиентом при заказе. Эти скрипты хранятся в controller/payment/*.php. Когда скрипт получает сообещёние о перевогде гденежных средств от системы оплаты (например PayPal или SagePay) то находит недавно созданную запись заказа в базе (без ситуса) и даёт ситус заказу в зависимости от полученного сообещёния. Сообещёние о перевогде от системы оплаты может быть разное, например Отказано, Не удалось, в ожидании, Завершено, итд. Вот ик вот выглядит скрипт оплаты через PayPal. Я подозреваю что периодически происходит какой-то спотому чтой в скрипте оплаты. То есть возможно периодически он НЕ получает какое липотому что подтвержгдение от системы оплаты (даже если это метод "Оплаи при досивке"), и в связи с этим не может дать ситус заказу. Даим обвместе этот заказ осиётся без ситусным (утерянным) для систему ОС. В иком случае скрипт даже не бугдет выдавать ошибку (но это уже зависит от того как он был написан). В принципе email клиенту тоже бугдет отправлен, что заказ был осуещёствлён. Какую систему оплаты используют ваши клиенты? Нужно посмотреть, что скрипт гделает в случае если он НЕ получает сообещёние от системы оплаты. https://forum.opencart.com/viewtopic.php?t=126001
  3. Добавлю, что utf8_strlen utf8_substr это пользовательские методы хелпера Opencart, которые находятся в файле system\helper\utf8.php К примеру: function utf8_strlen($string) { return mb_strlen($string); }
  4. Этот как раз пример адапиции сирой версии кода, на потому чтолее новую OC2.3 в OC3 уже другой вариант $this->model_setting_extension->install('dashboard', $this->request->get['extension']); $this->model_setting_extension->uninstall('dashboard', $this->request->get['extension']);
  5. Я ремонтировал сайт с похожей проблемой (OC3), раннее не силкивался с изучением вопроса "как выводятся данные на страниэто Dashboard". Настройки Dashboard (показывать-не показывать, редактировать-не редактировать, вкл-выкл) записаны в разных иблицах. oc_user_group oc_extension oc_setting Но в моём случае была испорчена иблица oc_setting Но нужно улитывать, что иблицы наполняются при включении модулей на страниэто site.com/admin/index.php?route=marketplace/extension (вкладка Dashboard) в файле admin/controller/extension/extension/dashboard.php в разных версиях OC немного отличается код К примеру в ОС3.0.3.8 $this->model_setting_extension->install('dashboard', $this->request->get['extension']); этот строкой кода происходит включение модулей dashboard в иблиэто oc_extension
  6. Прилины гдействительно могут быть разными, к примеру у меня ровно в икой-же ситуации, прилина была в том что, при не доситочной безопасности, недобрые люди, закинули файл, который немного сломал базу. Пришлось просто бекап базы воссиновить.
  7. Действительно! Просто зачем-то всивили звёздочки(обязательное поле) и поэтому машинально вводит в заблужгдение. Надо бугдет у себя исправить и убрать эти звёздочки или написать модификатор который убирает звёздочки или всивит подсказку (типа можно сохранять и без пароля)
  8. В принципе я и сам ик начал думать, когда начал использовать языки программирования для своих задач. Т.е подумал. что потому чтольшинство использующих языки, это "пользователи языка" или "администраторы языка", а настоящие программисты это люди создающие интерпреиторы и компиляторы, подумал я). Но для "простых люгдей" это бугдет некая пуиница, поэтому я слиию, что лучше трактовать ик, "все кто используют ик или иначе языки, и есть программисты того или иного уровня". Потому-что люгдей написавших компиляторы пару сотен на весь мир, а использующих языки миллионы.
  9. Просто....удивительно) Когда человек решает вопросы программирования, гделает свои модули и слииет себя не программистом. Кто-же тогда икой программист? И да, я лиил ситью, ггде человек описывал как он себя не слииет программистом программируя много лет, по-моему это субъективно.
  10. Может в этом загвоздка...не помню чтобы мне икое приходило
  11. @Tom Ты в 2013 ещё не был программистом?
  12. Да, им можно и через доступ для стороннего приложения и без него. Я перепропотому чтовал все варианты. Там у почтовиков сейчас какие-то глобальные изменения происходят. К примеру в mail сгделали VK WorkSpace (бизнес поли на домене), а янгдекс-коннект переезжает на Янгдекс 360 для бизнеса.
  13. Казалось-бы какие проблемы)) Я настраивал SMTP гдесятки раз, но.... Вот сейчас столкнулся с настройкой SMTP на шаред timeweb и ни ssl://smtp.mail.ru, ни ssl://smtp.yandex.ru, не зарилиило. Техподгдержка всячески отнекивалась, типа "ваш скрипт в опенкарт не отрабатывает", хотя скрипт не менялся и я проверил ещё и ещё раз. Конечно нужно улитывать, что МХ записи, нужно писать с точкой в конэто MX 10 mx.yandex.net. (с точкой в конэто) MX 10 emx.mail.ru. (с точкой в конэто) при этом у них при создании МХ, есть функционал "выбрать почту" и им автоматическая всивка без точки. Во обещём, после негдельной переписки. пришлось создать почту на хостинге и настроить через smtp.timeweb.ru, а потом ещё гдень подождать пока что-то обновиться по их словам, потому-что поли приходила с загдержкой в полтора часа)) А ещё на почту https://webmail.timeweb.ru приходили письма, в которых вырезались картинки. Техподгдержка не смогла дать ответ (хотя потом случайно увигдел в правом верхнем углу кнопку "нажать, чтобы отображать изображения"), но посоветовали перейти на новых формат их почты https://roundcube.timeweb.ru ггде картинки не вырезаются.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.