ZloyShaman
Новичок-
Публикаций
15 -
Зарегистрирован
-
Посещение
Посетители профиля
Блок последних посетителей выключен и не отображается другим пользователям.
Достижения ZloyShaman
-
Взаимодействие магазина с поставщиком по API
ZloyShaman ответил в теме пользователя ZloyShaman в Opencart 2.x: Поиск модулей
По сути нужно разместить их товар на нашем сайте, с фото и информацией о товарах, обновлять цены и наличие на складе -
Взаимодействие магазина с поставщиком по API
ZloyShaman ответил в теме пользователя ZloyShaman в Opencart 2.x: Поиск модулей
Если обосную нецелесообразность, то откажутся от этой мысли собственно поставщик Омега (запчасти) https://public.omega.page/swagger/ui/index#!/PublicSearch/PublicSearch_SimpleSearch -
Взаимодействие магазина с поставщиком по API
ZloyShaman опубликовал теме в Opencart 2.x: Поиск модулей
Добрый день, возникла такая проблема, руководство хочет что бы на нашем сайте, кроме имеющихся позиций (около 5к), появились товары нашего поставщика. поставщик дает возможность взаимодействия по API(есть ссылка на документацию) , и стала собственно проблема как это организовать, модуль может какой есть, или надо писать какой то код вручную, сколько вообще это стоит, и целесообразно ли.. -
[Поддержка] Simple Watermark (Простой водяной знак)
ZloyShaman ответил в теме пользователя SirGrey в Модули и дополнения
Модуль был установлен через стандартную установку, модификаторы обновлены, в менеджере дополнений также был добавлен(установлен) после чего появился в дополнениях, но в самих дополнениях НЕ включен, и при этом всем на каждой странице была куча ошибок, которая исчезала после нескольких обновлений страниц. В следствии был отключен. Что не так?- 29 ответов
-
- watermark
- водяной знак
- (і ще 7)
-
я так понял, новые цены должны в любом случае хранится в БД, и если я понял правильно хранится они будут в oc_product_discount и oc_product_special, это так?
-
Добрый день, такой вопрос. В стандартной выгрузке товара на комп в файл ексель, есть поле Цена, которая позволяет сравнить цену с выгруженным с 1С прайсом, тем самым обновить цену. Вопрос собственно в том появятся ли новые поля в этой выгрузке после установки данного модуля? для массового обновления цен для каждой категории пользователей
-
Ошибка в Админке (Дизайн-Схемы)
ZloyShaman ответил в теме пользователя ZloyShaman в Opencart 2.x: Общие вопросы
Да я понял, конечно нужно, я пока не понимаю как, вариантов слишком много -
Ошибка в Админке (Дизайн-Схемы)
ZloyShaman ответил в теме пользователя ZloyShaman в Opencart 2.x: Общие вопросы
Та ну мне скучно просто, я по ночам удаляю файлы, а утром удивленно обнаруживаю их отсутствие)))) на самом деле, я просто переделывал немного БД, с опенкарта 1,5, для того чтобы поставить ее на 2,3. Все прошло успешно, база перенеслась, все пока проводилось на опенсервере. Для справки делаю я это первый раз, так же это первое знакомство с опенкартом. Поэтому считаю что подобные проблемы скорее всего связаны с отсутствием опыта -
Ошибка в Админке (Дизайн-Схемы)
ZloyShaman ответил в теме пользователя ZloyShaman в Opencart 2.x: Общие вопросы
И проблема решилась.. но привела к новой.. По сути куда то делась часть файлов, каждый раз копируя недостающий, проблема уходит -
Ошибка в Админке (Дизайн-Схемы)
ZloyShaman ответил в теме пользователя ZloyShaman в Opencart 2.x: Общие вопросы
Спасибо всем. Решение найдено, не хватало файла hyper_position.php . Проблема решилась его копированием в указанную папку -
Ошибка в Админке (Дизайн-Схемы)
ZloyShaman ответил в теме пользователя ZloyShaman в Opencart 2.x: Общие вопросы
-
Ошибка в Админке (Дизайн-Схемы)
ZloyShaman ответил в теме пользователя ZloyShaman в Opencart 2.x: Общие вопросы
По указанному адресу, такого файла нет -
Ошибка в Админке (Дизайн-Схемы)
ZloyShaman ответил в теме пользователя ZloyShaman в Opencart 2.x: Общие вопросы
Сделал, ничего не изменилось. -
Ошибка в Админке (Дизайн-Схемы)
ZloyShaman ответил в теме пользователя ZloyShaman в Opencart 2.x: Общие вопросы
Сложность в том что перед появление ошибки ничего не менялось и все работало, последний раз, в Модулях, я заходил в "Магазин", но ничего не менялось. никаких изменений связанных с шаблоном не было.. Файл Layout.php <?php class ControllerDesignLayout extends Controller { private $error = array(); public function index() { $this->load->language('design/layout'); $this->document->setTitle($this->language->get('heading_title')); $this->load->model('design/layout'); $this->getList(); } public function add() { $this->load->language('design/layout'); $this->document->setTitle($this->language->get('heading_title')); $this->load->model('design/layout'); if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) { $this->model_design_layout->addLayout($this->request->post); $this->session->data['success'] = $this->language->get('text_success'); $url = ''; if (isset($this->request->get['sort'])) { $url .= '&sort=' . $this->request->get['sort']; } if (isset($this->request->get['order'])) { $url .= '&order=' . $this->request->get['order']; } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } $this->response->redirect($this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url, true)); } $this->getForm(); } public function edit() { $this->load->language('design/layout'); $this->document->setTitle($this->language->get('heading_title')); $this->load->model('design/layout'); if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) { $this->model_design_layout->editLayout($this->request->get['layout_id'], $this->request->post); $this->session->data['success'] = $this->language->get('text_success'); $url = ''; if (isset($this->request->get['sort'])) { $url .= '&sort=' . $this->request->get['sort']; } if (isset($this->request->get['order'])) { $url .= '&order=' . $this->request->get['order']; } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } $this->response->redirect($this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url, true)); } $this->getForm(); } public function delete() { $this->load->language('design/layout'); $this->document->setTitle($this->language->get('heading_title')); $this->load->model('design/layout'); if (isset($this->request->post['selected']) && $this->validateDelete()) { foreach ($this->request->post['selected'] as $layout_id) { $this->model_design_layout->deleteLayout($layout_id); } $this->session->data['success'] = $this->language->get('text_success'); $url = ''; if (isset($this->request->get['sort'])) { $url .= '&sort=' . $this->request->get['sort']; } if (isset($this->request->get['order'])) { $url .= '&order=' . $this->request->get['order']; } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } $this->response->redirect($this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url, true)); } $this->getList(); } protected function getList() { if (isset($this->request->get['sort'])) { $sort = $this->request->get['sort']; } else { $sort = 'name'; } if (isset($this->request->get['order'])) { $order = $this->request->get['order']; } else { $order = 'ASC'; } if (isset($this->request->get['page'])) { $page = $this->request->get['page']; } else { $page = 1; } $url = ''; if (isset($this->request->get['sort'])) { $url .= '&sort=' . $this->request->get['sort']; } if (isset($this->request->get['order'])) { $url .= '&order=' . $this->request->get['order']; } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } $data['breadcrumbs'] = array(); $data['breadcrumbs'][] = array( 'text' => $this->language->get('text_home'), 'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], true) ); $data['breadcrumbs'][] = array( 'text' => $this->language->get('heading_title'), 'href' => $this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url, true) ); $data['add'] = $this->url->link('design/layout/add', 'token=' . $this->session->data['token'] . $url, true); $data['delete'] = $this->url->link('design/layout/delete', 'token=' . $this->session->data['token'] . $url, true); $data['layouts'] = array(); $filter_data = array( 'sort' => $sort, 'order' => $order, 'start' => ($page - 1) * $this->config->get('config_limit_admin'), 'limit' => $this->config->get('config_limit_admin') ); $layout_total = $this->model_design_layout->getTotalLayouts(); $results = $this->model_design_layout->getLayouts($filter_data); foreach ($results as $result) { $data['layouts'][] = array( 'layout_id' => $result['layout_id'], 'name' => $result['name'], 'edit' => $this->url->link('design/layout/edit', 'token=' . $this->session->data['token'] . '&layout_id=' . $result['layout_id'] . $url, true) ); } $data['heading_title'] = $this->language->get('heading_title'); $data['text_list'] = $this->language->get('text_list'); $data['text_no_results'] = $this->language->get('text_no_results'); $data['text_confirm'] = $this->language->get('text_confirm'); $data['column_name'] = $this->language->get('column_name'); $data['column_action'] = $this->language->get('column_action'); $data['button_add'] = $this->language->get('button_add'); $data['button_edit'] = $this->language->get('button_edit'); $data['button_delete'] = $this->language->get('button_delete'); if (isset($this->error['warning'])) { $data['error_warning'] = $this->error['warning']; } else { $data['error_warning'] = ''; } if (isset($this->session->data['success'])) { $data['success'] = $this->session->data['success']; unset($this->session->data['success']); } else { $data['success'] = ''; } if (isset($this->request->post['selected'])) { $data['selected'] = (array)$this->request->post['selected']; } else { $data['selected'] = array(); } $url = ''; if ($order == 'ASC') { $url .= '&order=DESC'; } else { $url .= '&order=ASC'; } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } $data['sort_name'] = $this->url->link('design/layout', 'token=' . $this->session->data['token'] . '&sort=name' . $url, true); $url = ''; if (isset($this->request->get['sort'])) { $url .= '&sort=' . $this->request->get['sort']; } if (isset($this->request->get['order'])) { $url .= '&order=' . $this->request->get['order']; } $pagination = new Pagination(); $pagination->total = $layout_total; $pagination->page = $page; $pagination->limit = $this->config->get('config_limit_admin'); $pagination->url = $this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url . '&page={page}', true); $data['pagination'] = $pagination->render(); $data['results'] = sprintf($this->language->get('text_pagination'), ($layout_total) ? (($page - 1) * $this->config->get('config_limit_admin')) + 1 : 0, ((($page - 1) * $this->config->get('config_limit_admin')) > ($layout_total - $this->config->get('config_limit_admin'))) ? $layout_total : ((($page - 1) * $this->config->get('config_limit_admin')) + $this->config->get('config_limit_admin')), $layout_total, ceil($layout_total / $this->config->get('config_limit_admin'))); $data['sort'] = $sort; $data['order'] = $order; $tmp_data = $this->load->controller('design/hyper_positions'); $data = array_merge($data, $tmp_data); $data['header'] = $this->load->controller('common/header'); $data['column_left'] = $this->load->controller('common/column_left'); $data['footer'] = $this->load->controller('common/footer'); $this->response->setOutput($this->load->view('design/layout_list', $data)); } protected function getForm() { $data['heading_title'] = $this->language->get('heading_title'); $data['text_form'] = !isset($this->request->get['layout_id']) ? $this->language->get('text_add') : $this->language->get('text_edit'); $data['text_route'] = $this->language->get('text_route'); $data['text_module'] = $this->language->get('text_module'); $data['text_default'] = $this->language->get('text_default'); $data['text_content_top'] = $this->language->get('text_content_top'); $data['text_content_bottom'] = $this->language->get('text_content_bottom'); $data['text_column_left'] = $this->language->get('text_column_left'); $data['text_column_right'] = $this->language->get('text_column_right'); $data['text_edit'] = $this->language->get('text_edit'); $data['text_remove'] = $this->language->get('text_remove'); $data['entry_name'] = $this->language->get('entry_name'); $data['entry_store'] = $this->language->get('entry_store'); $data['entry_route'] = $this->language->get('entry_route'); $data['entry_module'] = $this->language->get('entry_module'); $data['button_save'] = $this->language->get('button_save'); $data['button_cancel'] = $this->language->get('button_cancel'); $data['button_route_add'] = $this->language->get('button_route_add'); $data['button_module_add'] = $this->language->get('button_module_add'); $data['button_edit'] = $this->language->get('button_edit'); $data['button_remove'] = $this->language->get('button_remove'); if (isset($this->error['warning'])) { $data['error_warning'] = $this->error['warning']; } else { $data['error_warning'] = ''; } if (isset($this->error['name'])) { $data['error_name'] = $this->error['name']; } else { $data['error_name'] = ''; } $url = ''; if (isset($this->request->get['sort'])) { $url .= '&sort=' . $this->request->get['sort']; } if (isset($this->request->get['order'])) { $url .= '&order=' . $this->request->get['order']; } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } $data['breadcrumbs'] = array(); $data['breadcrumbs'][] = array( 'text' => $this->language->get('text_home'), 'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], true) ); $data['breadcrumbs'][] = array( 'text' => $this->language->get('heading_title'), 'href' => $this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url, true) ); if (!isset($this->request->get['layout_id'])) { $data['action'] = $this->url->link('design/layout/add', 'token=' . $this->session->data['token'] . $url, true); } else { $data['action'] = $this->url->link('design/layout/edit', 'token=' . $this->session->data['token'] . '&layout_id=' . $this->request->get['layout_id'] . $url, true); } $data['cancel'] = $this->url->link('design/layout', 'token=' . $this->session->data['token'] . $url, true); $data['token'] = $this->session->data['token']; if (isset($this->request->get['layout_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) { $layout_info = $this->model_design_layout->getLayout($this->request->get['layout_id']); } if (isset($this->request->post['name'])) { $data['name'] = $this->request->post['name']; } elseif (!empty($layout_info)) { $data['name'] = $layout_info['name']; } else { $data['name'] = ''; } $this->load->model('setting/store'); $data['stores'] = $this->model_setting_store->getStores(); if (isset($this->request->post['layout_route'])) { $data['layout_routes'] = $this->request->post['layout_route']; } elseif (isset($this->request->get['layout_id'])) { $data['layout_routes'] = $this->model_design_layout->getLayoutRoutes($this->request->get['layout_id']); } else { $data['layout_routes'] = array(); } $this->load->model('extension/extension'); $this->load->model('extension/module'); $data['extensions'] = array(); // Get a list of installed modules $extensions = $this->model_extension_extension->getInstalled('module'); // Add all the modules which have multiple settings for each module foreach ($extensions as $code) { $this->load->language('extension/module/' . $code); $module_data = array(); $modules = $this->model_extension_module->getModulesByCode($code); foreach ($modules as $module) { $module_data[] = array( 'name' => strip_tags($module['name']), 'code' => $code . '.' . $module['module_id'] ); } if ($this->config->has($code . '_status') || $module_data) { $data['extensions'][] = array( 'name' => strip_tags($this->language->get('heading_title')), 'code' => $code, 'module' => $module_data ); } } // Modules layout if (isset($this->request->post['layout_module'])) { $layout_modules = $this->request->post['layout_module']; } elseif (isset($this->request->get['layout_id'])) { $layout_modules = $this->model_design_layout->getLayoutModules($this->request->get['layout_id']); } else { $layout_modules = array(); } $data['layout_modules'] = array(); // Add all the modules which have multiple settings for each module foreach ($layout_modules as $layout_module) { $part = explode('.', $layout_module['code']); $this->load->language('extension/module/' . $part[0]); if (!isset($part[1])) { $data['layout_modules'][] = array( 'name' => strip_tags($this->language->get('heading_title')), 'code' => $layout_module['code'], 'edit' => $this->url->link('extension/module/' . $part[0], 'token=' . $this->session->data['token'], true), 'position' => $layout_module['position'], 'sort_order' => $layout_module['sort_order'] ); } else { $module_info = $this->model_extension_module->getModule($part[1]); if ($module_info) { $data['layout_modules'][] = array( 'name' => strip_tags($module_info['name']), 'code' => $layout_module['code'], 'edit' => $this->url->link('extension/module/' . $part[0], 'token=' . $this->session->data['token'] . '&module_id=' . $part[1], true), 'position' => $layout_module['position'], 'sort_order' => $layout_module['sort_order'] ); } } } $tmp_data = $this->load->controller('design/hyper_positions'); $data = array_merge($data, $tmp_data); $data['header'] = $this->load->controller('common/header'); $data['column_left'] = $this->load->controller('common/column_left'); $data['footer'] = $this->load->controller('common/footer'); $this->response->setOutput($this->load->view('design/layout_hp_form', $data)); } protected function validateForm() { if (!$this->user->hasPermission('modify', 'design/layout')) { $this->error['warning'] = $this->language->get('error_permission'); } if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) { $this->error['name'] = $this->language->get('error_name'); } return !$this->error; } protected function validateDelete() { if (!$this->user->hasPermission('modify', 'design/layout')) { $this->error['warning'] = $this->language->get('error_permission'); } $this->load->model('setting/store'); $this->load->model('catalog/product'); $this->load->model('catalog/category'); $this->load->model('catalog/information'); foreach ($this->request->post['selected'] as $layout_id) { if ($this->config->get('config_layout_id') == $layout_id) { $this->error['warning'] = $this->language->get('error_default'); } $store_total = $this->model_setting_store->getTotalStoresByLayoutId($layout_id); if ($store_total) { $this->error['warning'] = sprintf($this->language->get('error_store'), $store_total); } $product_total = $this->model_catalog_product->getTotalProductsByLayoutId($layout_id); if ($product_total) { $this->error['warning'] = sprintf($this->language->get('error_product'), $product_total); } $category_total = $this->model_catalog_category->getTotalCategoriesByLayoutId($layout_id); if ($category_total) { $this->error['warning'] = sprintf($this->language->get('error_category'), $category_total); } $information_total = $this->model_catalog_information->getTotalInformationsByLayoutId($layout_id); if ($information_total) { $this->error['warning'] = sprintf($this->language->get('error_information'), $information_total); } } return !$this->error; } } -
Нужна помощь, проблема изображена на скрине.