-
Публікації
1 273 -
З нами
-
Відвідування
Тип публікації
Профілі
Форум
Маркетплейс
Статті
FAQ
Наші новини
Магазин
Блоги
module__dplus_manager
Повідомлення, опубліковані користувачем Raensul
-
-
добрый день!
стоит версия 4.18.7.2 на окстор 2.1
понадобилась мультиязычность.
1. в опциях фильтра она вроде есть, один момент непонятен. Если в фильтре на вкладке "значения" в поле для русского языка стоит, например, "3 месяца", то при вводе в поле для украинского языка "3 місяці" это значение тут же вводится и в поле для русского языка джаваскриптом по ходу. Это касается только значений, начинающихся с цифры.
2. нет мультиязычности в посадочных страницах. на демо смотрю она есть. это какая версия, как обновиться?
UPD. автор ответил в личку оперативно и емко, спасибо.
-
добрый день!
Купил модуль
отписался в личку
проверьте, плз
-
Это
и еще, модуль переводит уже набитые товары? сейчас включил украинский язык, проверил - в админке во вкладке "украинский" все данные уже заполнены на русском. Нужно сначала все удалить, а потом жать кнопку? Или модуль сам заменит содержимое?
-
Добрый день!
Совместим ли модуль с модулем марка?
-
Правильно ли я понимаю, что в ок1,5 корзина хранилась в сессиях, а в 2.1 - в БД?
-
Приветствую.
Пытаюсь тут портировать один модуль под версию 2.1, модуль давно куплен, поддержки его давно нет, автор код открыл.
вроде все сделал, осталась одна мелочь, на которой пока запнулся: в разделе "учитывать в заказе" устанавливаю его, включаю, сортирую. но на фронте в корзине этот тотал не отображается...
ошибок в логах не вижу, не могу понять куда смотреть.
Может уважаемое сообщество натолкнет на правильный путь?
-
а что делали на сайте? запрос почему-то похоже не отправляет данные в контроллер
-
Добрый день!
Можно ли стикер "популярный" выборочно убрать с некоторых товаров?
-
сделали копию модуля, но переименовали не все переменные. внимательнее проверьте, что где копировали.
-
6 минут назад, ArtemPitov сказал:
У вас попросту сжатия выключено, правильнее всего его там править http://php.net/manual/ru/zlib.configuration.php
Спасибо.
это локальный сервер.
на хостинге, наверное, я бы и не заметил, т.к. там обычно включено.
всем спасибо за пополнение копилки в голове!
-
@ArtemPitov это тоже сработало, спасибо.
4 минуты назад, ArtemPitov сказал:Заголовки ушли что контент кодируется а он не кодируется.
это можно исправить в контроллере, чтобы не трогать php.ini?
или все же тут вопрос в правильном использовании $setting в контроллере?
-
3 минуты назад, ArtemPitov сказал:
Уровень GZIP сжатия: 0 в настройках магазина
спасибо, это помогло.
можете подсказать, в чем была проблема?
там не так много данных для сжатия было... или дело в самом архиваторе?
и как избежать этого для магазинов, где включено сжатие?
-
6 минут назад, ibond сказал:
print_r($setting_info);
то же самое...
9 минут назад, ibond сказал:также в начале контролера можно включить вывод ошибок:
ini_set("display_errors",1);
error_reporting(E_ALL);включал тоже...
-
проблема в том, что ошибку пых не выдает, страница ложится с ошибкой:
НЕТ СВЯЗИ С САЙТОМ
ERR_CONTENT_DECODING_FAILED
Если бы пых выдал ошибку - хотя бы понятно было, откуда ноги растут...
а может я не правильно этот массив использовать пытаюсь?
-
3 минуты назад, ArtemPitov сказал:
Ну тогда покажите контролеры
Спойлер<?php class ControllerModuleCats extends Controller { public function index($setting) { $this->load->language('module/cats'); $this->document->addStyle('catalog/view/theme/default/stylesheet/cats.css'); $this->load->model('tool/image'); $data['heading_title'] = $this->language->get('heading_title'); if (isset($this->request->get['path'])) { $parts = explode('_', (string)$this->request->get['path']); } else { $parts = array(); } if (isset($parts[0])) { $data['category_id'] = $parts[0]; } else { $data['category_id'] = 0; } if (isset($parts[1])) { $data['child_id'] = $parts[1]; } else { $data['child_id'] = 0; } $this->load->model('catalog/category'); $this->load->model('catalog/cats'); $this->load->model('catalog/product'); $data['categories'] = array(); $categories = $this->model_catalog_cats->getHomeCategories(0); foreach ($categories as $category) { $filter_data = array( 'filter_category_id' => $category['category_id'], 'filter_sub_category' => true ); $category_info = $this->model_catalog_category->getCategory($category['category_id']); $data['categories'][] = array( 'category_id' => $category['category_id'], 'name' => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $category['category_id']), 'icon' => $category['keyword'], 'image' => $this->model_tool_image->resize($category_info['image'],$this->config->get('config_image_additional_width'), $this->config->get('config_image_additional_height')) ); } if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/cats.tpl')) { return $this->load->view($this->config->get('config_template') . '/template/module/cats.tpl', $data); } else { return $this->load->view('default/template/module/cats.tpl', $data); } } }
Спойлер<?php class ControllerModuleCats extends Controller { private $error = array(); public function index() { $this->load->language('module/cats'); $this->document->setTitle($this->language->get('heading_title')); $this->load->model('setting/setting'); $this->load->model('extension/module'); if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) { if (!isset($this->request->get['module_id'])) { $this->model_extension_module->addModule('cats', $this->request->post); } else { $this->model_extension_module->editModule($this->request->get['module_id'], $this->request->post); } $this->session->data['success'] = $this->language->get('text_success'); $this->response->redirect($this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL')); } $data['heading_title'] = $this->language->get('heading_title'); $data['text_edit'] = $this->language->get('text_edit'); $data['text_enabled'] = $this->language->get('text_enabled'); $data['text_disabled'] = $this->language->get('text_disabled'); $data['entry_status'] = $this->language->get('entry_status'); $data['button_save'] = $this->language->get('button_save'); $data['button_cancel'] = $this->language->get('button_cancel'); $data['entry_name'] = $this->language->get('entry_name'); $data['entry_limit'] = $this->language->get('entry_limit'); 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'] = ''; } $data['breadcrumbs'] = array(); $data['breadcrumbs'][] = array( 'text' => $this->language->get('text_home'), 'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], 'SSL') ); $data['breadcrumbs'][] = array( 'text' => $this->language->get('text_module'), 'href' => $this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL') ); $data['breadcrumbs'][] = array( 'text' => $this->language->get('heading_title'), 'href' => $this->url->link('module/cats', 'token=' . $this->session->data['token'], 'SSL') ); // if (!isset($this->request->get['module_id'])) { $data['action'] = $this->url->link('module/cats', 'token=' . $this->session->data['token'], 'SSL'); } else { $data['action'] = $this->url->link('module/cats', 'token=' . $this->session->data['token'] . '&module_id=' . $this->request->get['module_id'], 'SSL'); } $data['cancel'] = $this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL'); // if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) { $module_info = $this->model_extension_module->getModule($this->request->get['module_id']); } // if (isset($this->request->post['name'])) { $data['name'] = $this->request->post['name']; } elseif (!empty($module_info)) { $data['name'] = $module_info['name']; } else { $data['name'] = ''; } // if (isset($this->request->post['limit'])) { $data['limit'] = $this->request->post['limit']; } elseif (!empty($module_info)) { $data['limit'] = $module_info['limit']; } else { $data['limit'] = 5; } // if (isset($this->request->post['status'])) { $data['status'] = $this->request->post['status']; } elseif (!empty($module_info)) { $data['status'] = $module_info['status']; } else { $data['status'] = ''; } $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('module/cats.tpl', $data)); } protected function validate() { if (!$this->user->hasPermission('modify', 'module/cats')) { $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; } }
-
@ArtemPitov нет, на фронте... по аналогии как в latest
-
24 минуты назад, ibond сказал:
Туда setting от модуля приходит?
подскажите, плз, как посмотреть?
var_dump($setting_info);
тоже приводит к прекращению работы сайта...
@ArtemPitov в макете выведено. модуль ведь отображается как надо если не использовать $setting. Сайт перестает работать только при попытке обращения к этому массиву.
-
хм...
да собсно если в стоковых latest сделать var_dump($setting) - то все тоже летит к чертям... при этом ниже:
$filter_data = array( 'sort' => 'p.date_added', 'order' => 'DESC', 'start' => 0, 'limit' => $setting['limit'] );
и все работает....
но если попытаться написать хотя бы
echo $setting['limit']; - все тоже плохо
-
модуль включен, он отображается во фронте, если я не использую $setting.
но в этом массиве по идее у меня limit для ограничения кол-ва вывода, и вот при попытке получить этот массив ничего не получается.
а какие пути смотреть? я все делал по аналогии с latest, вроде все так же прописано, только вместо latest пишу свой модуль
-
Добрый день, уважаемые форумчане!
Пожалуйста, помогите понять, почему я не могу получить $setting в контроллере фронта:
public function index($setting) { var_dump($setting);
получаю ошибку...
в контроллере админки пытаюсь так:
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) { if (!isset($this->request->get['module_id'])) { $this->model_extension_module->addModule('cats', $this->request->post); } else { $this->model_extension_module->editModule($this->request->get['module_id'], $this->request->post); } $this->session->data['success'] = $this->language->get('text_success'); $this->response->redirect($this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL')); }
и так
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) { $this->model_setting_setting->editSetting('category', $this->request->post); $this->session->data['success'] = $this->language->get('text_success'); $this->response->redirect($this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL')); }
по примеру соседних контроллеров.
В админке модуль нормально устанавливается, выводится на фронте, если не пытаться достучаться до $setting. В таблице oc_module модуль записывается, где в поле setting - записаны настройки модуля.
не могу найти в инете, почему не получается. Вроде делаю по аналогии с соседними контроллерами, но не получается.
Может ли кто разъяснить, что я не правильно понимаю?
-
Цитата
http://site.ru/yandexbuy/cart наоборот перекинет на http://site.ru/index.php?route=yandexbuy/cart
ЦитатаRewriteRule ^yandexbuy/([^?]*)$ index.php?route=yandexbuy/$1 [L,QSA]
ну вроде все согласно правилу...
т.е. при попытке захода на страницу http://site.ru/yandexbuy/xxx посетителя перекинет на http://site.ru/index.php?route=yandexbuy/xxx - согласно правилу, что у вас прописано.
-
а как оценивается магазин?
вот допустим приносит он чистой прибыли 2к у.е. в мес.
и это еще не полный его потенциал использован.
как его оценить?
-
это бесполезно, кому надо - контент перетянут все равно.
картинки - ватермарками, только не в уголке, где срезать можно.
а тексты все равно спарсят, кому очень надо
-
в товаре проставьте вычитать со склада: нет
установите ему кол-во > 0
какие $ ?
какие проблемы?
OCFilter - Модуль фільтру товарів [Поддержка]
в Фильтры
Опубліковано:
Еще раз (в очередной) спасибо автору, что помог обновить модуль до последней версии и устранить некоторые несовместимости ввиду особенностей магазина.
Оперативно и качественно. Фильтр совершенствуется, поддержка отличная - хорошая связка