-
Публікації
459 -
З нами
-
Відвідування
Тип публікації
Профілі
Форум
Маркетплейс
Статті
FAQ
Наші новини
Магазин
Блоги
module__dplus_manager
Повідомлення, опубліковані користувачем efremovxp
-
-
-
deleted
-
1 час назад, kJlukOo сказал:
купить симплу
Не, вы не поняли. Я же не зря пишу в ветке разработчиков.
Я разрабатываю модуль курьерской доставки. Нужно сделать возможность ввода времени доставки
-
Как добавить input поле в определенный метод оплаты, к тому же, чтобы он отображался в заказе в админке.
-
В 25.01.2017 в 16:50, kin208 сказал:
В поиске перестали искаться трех-буквенные слова.
А таких слов в названиях модулей много, например: EMS, DPD, DHL.
При поиске по фразе "EMS Почта" - в результатах будут отображаться тоже что и при поиске слова "Почта".
Можно это как-то исправить?
ems+почта
-
В модуле симпла, если покупатель не указал свой email, ему подставляется рандомный empty email.
-
Можно ли обрабатывать введенные номера телефона?
К примеру, элементарно удалять тире, пробел, кавычки.
И хотелось бы еще расширенные возможности, замена по регулярному выражению. Например, номер начинается на 9, значит надо подставить +7 вперед или если 3 впереди, то +. Если 8, то поменять на +7. Нужно, к примеру для смс сервисов, которые упрямо понимают только формат начинающийся с +. Либо для интеграции с разными CRM и т.д. Данные нужно хранить в порядке. Знаю, есть функция маски, но надо не ограничивать пользователей, а быть самим гибче и подготовленными ко всему.
-
Нравится, что появились наконец то Push уведомления.
-
start ssl признан не надежным.
Заказывайте Let's Encrypt или платные
-
19 часов назад, efremovav сказал:
Какая вообще у вас версия opencart?
2.2.0.0
-
https://открытки-ежика.рф/index.php?route=api/order/history&token=XYZ&order_id=536
ответ
error: "Внимание! Доступ запрещен к API!"
Тогда, эта тема тоже взаимосвязана.
Я уже для доступа к API добавил IP маску *.*.*.*, но не помогло
-
Таблица oc_store существует, оказалось, что запрос приходится на время, когда я восстанавливал бекап.
Alert если заходить с https, а если c http, то алерта нет, но зато появляется проблема при изменении статуса якобы нет доступа к API
-
Все аналогичные темы перечитал, ничего не помогло. В один прекрасный день перестало работать редактирование статуса заказа.
Внимание! Доступ запрещен к API!
IP добавлен, API в настройках опций выбран.
Какие есть мысли?
-
[Sat Jan 28 10:53:15 2017] [error] [client 94.25.179.103] PHP Fatal error: Uncaught exception 'Exception' with message 'Error: Table 'oc_store' doesn't exist<br />Error No: 1146<br />SELECT * FROM oc_store WHERE REPLACE(`ssl`, 'www.', '') = 'https://xn----8sboehdjaf6axwc9j.xn--p1ai/'' in /home/w/webair/otkrytky/public_html/system/storage/modification/system/library/db/mysqli.php:47\nStack trace:\n#0 /home/w/webair/otkrytky/public_html/system/library/db.php(16): DB\\MySQLi->query('SELECT * FROM o...', Array)\n#1 /home/w/webair/otkrytky/public_html/catalog/controller/startup/startup.php(6): DB->query('SELECT * FROM o...')\n#2 [internal function]: ControllerStartupStartup->index()\n#3 /home/w/webair/otkrytky/public_html/system/storage/modification/system/engine/action.php(44): call_user_func_array(Array, Array)\n#4 /home/w/webair/otkrytky/public_html/system/storage/modification/system/engine/front.php(39): Action->execute(Object(Registry))\n#5 /home/w/webair/otkrytky/public_html/system/storage/modification/system/engine/front.php(19): Front->execute(Object(Action))\n#6 /home/w/webai in /home/w/webair/otkrytky/public_html/system/storage/modification/system/library/db/mysqli.php on line 47, referer: http://www.yandex.ru/clck/jsredir?from=www.yandex.ru%3Bsearch%2Fpad%2F%3Bweb%3B%3B&text=&etext=1314.pRM2fTBI2xDSyaBAxKa-wp5Ea29XzzxaZjkGQvupAZyEv-NSmylvHO6T69fjmntATAggKQDc89vMyU8CQrbqTsUgKKah7o2YVZFMTTg2QF5_aUKUuNMDATDOEwTjOYwy.094d328cc3aa26700d73cefa4a059697d534ed8a&uuid=&state=PEtFfuTeVD5kpHnK9lio9T6U0 [Sat Jan 28 10:53:29 2017] [error] [client 95.188.241.35] PHP Fatal error: Uncaught exception 'Exception' with message 'Error: Table 'oc_store' doesn't exist<br />Error No: 1146<br />SELECT * FROM oc_store WHERE REPLACE(`ssl`, 'www.', '') = 'https://xn----8sboehdjaf6axwc9j.xn--p1ai/'' in /home/w/webair/otkrytky/public_html/system/storage/modification/system/library/db/mysqli.php:47\nStack trace:\n#0 /home/w/webair/otkrytky/public_html/system/library/db.php(16): DB\\MySQLi->query('SELECT * FROM o...', Array)\n#1 /home/w/webair/otkrytky/public_html/catalog/controller/startup/startup.php(6): DB->query('SELECT * FROM o...')\n#2 [internal function]: ControllerStartupStartup->index()\n#3 /home/w/webair/otkrytky/public_html/system/storage/modification/system/engine/action.php(44): call_user_func_array(Array, Array)\n#4 /home/w/webair/otkrytky/public_html/system/storage/modification/system/engine/front.php(39): Action->execute(Object(Registry))\n#5 /home/w/webair/otkrytky/public_html/system/storage/modification/system/engine/front.php(19): Front->execute(Object(Action))\n#6 /home/w/webai in /home/w/webair/otkrytky/public_html/system/storage/modification/system/library/db/mysqli.php on line 47, referer: http://m.vk.com/away.php
Что это?
SELECT * FROM oc_store WHERE REPLACE(`ssl`, 'www.', '')
-
Одновременно с этой проблемой
появилась проблема - сразу при заходе в любой заказ выскакивает ошибка NetworkError: A network error occurred, консоль ошибок то ли не работает то ли действительно пустая. При изменении статуса заказа ошибка опять выскакивает.
Все загружаемые ресурсы на странице возвращают статус 200 и 304.
-
4 часа назад, Dotrox сказал:
То есть, у вас $this->config->get('config_ssl') пустой получается? Или у вас $server заполнялся не так, как здесь: https://github.com/opencart/opencart/blob/master/upload/catalog/controller/common/header.php
У меня было вот так. Значит, $this->config->get('config_ssl') был пустой
<?php class ControllerCommonHeader extends Controller { public function index() { // Analytics $this->load->model('extension/extension'); $data['analytics'] = array(); $analytics = $this->model_extension_extension->getExtensions('analytics'); foreach ($analytics as $analytic) { if ($this->config->get($analytic['code'] . '_status')) { $data['analytics'][] = $this->load->controller('analytics/' . $analytic['code'], $this->config->get($analytic['code'] . '_status')); } } if ($this->request->server['HTTPS']) { $server = $this->config->get('config_ssl'); } else { $server = $this->config->get('config_url'); } if (is_file(DIR_IMAGE . $this->config->get('config_icon'))) { $this->document->addLink($server . 'image/' . $this->config->get('config_icon'), 'icon'); } $data['title'] = $this->document->getTitle(); $data['base'] = $server; $data['description'] = $this->document->getDescription(); $data['keywords'] = $this->document->getKeywords(); $data['links'] = $this->document->getLinks(); $data['styles'] = $this->document->getStyles(); $data['scripts'] = $this->document->getScripts(); $data['lang'] = $this->language->get('code'); $data['direction'] = $this->language->get('direction'); $data['name'] = $this->config->get('config_name'); if (is_file(DIR_IMAGE . $this->config->get('config_logo'))) { $data['logo'] = $server . 'image/' . $this->config->get('config_logo'); } else { $data['logo'] = ''; } $this->load->language('common/header'); $data['text_home'] = $this->language->get('text_home'); // Wishlist if ($this->customer->isLogged()) { $this->load->model('account/wishlist'); $data['text_wishlist'] = sprintf($this->language->get('text_wishlist'), $this->model_account_wishlist->getTotalWishlist()); } else { $data['text_wishlist'] = sprintf($this->language->get('text_wishlist'), (isset($this->session->data['wishlist']) ? count($this->session->data['wishlist']) : 0)); } $data['text_shopping_cart'] = $this->language->get('text_shopping_cart'); $data['text_logged'] = sprintf($this->language->get('text_logged'), $this->url->link('account/account', '', true), $this->customer->getFirstName(), $this->url->link('account/logout', '', true)); $data['text_account'] = $this->language->get('text_account'); $data['text_register'] = $this->language->get('text_register'); $data['text_login'] = $this->language->get('text_login'); $data['text_order'] = $this->language->get('text_order'); $data['text_transaction'] = $this->language->get('text_transaction'); $data['text_download'] = $this->language->get('text_download'); $data['text_logout'] = $this->language->get('text_logout'); $data['text_checkout'] = $this->language->get('text_checkout'); $data['text_category'] = $this->language->get('text_category'); $data['text_all'] = $this->language->get('text_all'); $data['home'] = $this->url->link('common/home'); $data['wishlist'] = $this->url->link('account/wishlist', '', true); $data['logged'] = $this->customer->isLogged(); $data['account'] = $this->url->link('account/account', '', true); $data['register'] = $this->url->link('account/register', '', true); $data['login'] = $this->url->link('account/login', '', true); $data['order'] = $this->url->link('account/order', '', true); $data['transaction'] = $this->url->link('account/transaction', '', true); $data['download'] = $this->url->link('account/download', '', true); $data['logout'] = $this->url->link('account/logout', '', true); $data['shopping_cart'] = $this->url->link('checkout/cart'); $data['checkout'] = $this->url->link('checkout/checkout', '', true); $data['contact'] = $this->url->link('information/contact'); $data['telephone'] = $this->config->get('config_telephone'); // Menu $this->load->model('catalog/category'); $this->load->model('catalog/product'); $data['categories'] = array(); $categories = $this->model_catalog_category->getCategories(0); foreach ($categories as $category) { if ($category['top']) { // Level 2 $children_data = array(); $children = $this->model_catalog_category->getCategories($category['category_id']); foreach ($children as $child) { $filter_data = array( 'filter_category_id' => $child['category_id'], 'filter_sub_category' => true ); $children_data[] = array( 'name' => $child['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id']) ); } // Level 1 $data['categories'][] = array( 'name' => $category['name'], 'children' => $children_data, 'column' => $category['column'] ? $category['column'] : 1, 'href' => $this->url->link('product/category', 'path=' . $category['category_id']) ); } } $data['language'] = $this->load->controller('common/language'); $data['currency'] = $this->load->controller('common/currency'); $data['search'] = $this->load->controller('common/search'); $data['cart'] = $this->load->controller('common/cart'); // For page specific css if (isset($this->request->get['route'])) { if (isset($this->request->get['product_id'])) { $class = '-' . $this->request->get['product_id']; } elseif (isset($this->request->get['path'])) { $class = '-' . $this->request->get['path']; } elseif (isset($this->request->get['manufacturer_id'])) { $class = '-' . $this->request->get['manufacturer_id']; } elseif (isset($this->request->get['information_id'])) { $class = '-' . $this->request->get['information_id']; } else { $class = ''; } $data['class'] = str_replace('/', '-', $this->request->get['route']) . $class; } else { $data['class'] = 'common-home'; } return $this->load->view('common/header', $data); } }
-
12 минут назад, markimax сказал:
Ну это костыль :)
Вы разберитесь почему $server из переменных конфига не получил правильное имя домена
Потому что рано или поздно все равно всплывет в другом месте похожий багЭто я подсмотрел в /admin/controller/common/header.php
Не понятно, почему в админской и пользовательской части это сделано по разному.
-
Не понимаю, на какой магии это работало и почему перестало работать, ведь я ничего не трогал.
Решение оказалось таким:
заменить
$data['base'] = $server
на
if ($this->request->server['HTTPS']) { $data['base'] = HTTPS_SERVER; } else { $data['base'] = HTTP_SERVER; }
-
3 часа назад, markimax сказал:
Там и другая проблема
В header заменены "стандартные" относительные пути на "/...
Т е здесь проблема "глобальная" а не только в base
2 часа назад, Strelez сказал:А в админке все норм. Вспоминайте, что меняли.
специально поменял на / чтобы хоть как то работало. А то вообще ни стилей ни js ни изображений не было.
-
Вспомнил, что единственное, что я делал, это проверял сайт по этой ссылке http://ocshop.info/testmyshop.html
Но проблем не было обнаружено. Возможно, после этой проверки что то случилось... Куда этот сайт стучится, что он проверяет?
-
2 минуты назад, markimax сказал:
Там по цепочке много чего может быть :)
К примеру config.php для https часто заполняют url без схемы не https://... а тупо //...
Потом начинаются проблемы. (но может в данном случае быть и другая ошибка)
Уже не раз встречал "такое" с base после перехода на https у клиентов
По "цепочке" модулями где то меняется переменная конфига отвечающая за имя домена на https протоколе// HTTP define('HTTP_SERVER', 'https://xn----8sboehdjaf6axwc9j.xn--p1ai/'); // HTTPS define('HTTPS_SERVER', 'https://xn----8sboehdjaf6axwc9j.xn--p1ai/');
Сайт с самого начала, еще пол года назад работал на https
-
3 минуты назад, Dotrox сказал:
Это и есть $base.
Всё, что в контроллере в виде ключей массива $data - в шаблоне превращается в переменные. Смотрите дальше на $server.
И не забывайте про кеш модификаторов. В оригинальных файлах проблем может и не быть.
тут
/system/storage/modification/catalog/view/theme/welldone/template/common
и тут
/system/storage/modification/catalog/controller/common
нет файла header.tpl и header.php
Я в тупике
-
Только что, Dotrox сказал:
Здесь ничего не надо менять. Идите в контроллер шапки и смотрите, почему у вас переменная $base передаётся в шаблон пустой.
$data['base'] = $server;
Ничего связанного с $base там нет, проверил в чистом opencart контроллер шапки, там так же ничего связанного с $base. Откуда он берется и почему может быть пустым?
-
9 минут назад, markimax сказал:
Именно там
Не правильный мета тег base<base href="<?php echo $base; ?>" />
На что же его менять?
Создать интернет-магазин по действующему образцу
в Створення магазинів під ключ
Опубліковано:
@iti За 15 дней, 40тр и 50% предоплатой, сделаем.
Если интересно, продолжим в личке. Предоставлю портфолио.