Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

dmonco

Користувачі
  
  • Публікації

    72
  • З нами

  • Відвідування

Усі публікації користувача dmonco

  1. Всем привет! Добрался я до русскоязычных просторов. Модуль продажи серийных ключей доделан для 1.5.6. Выложил здесь Модуль продажи серийных ключей и пин-кодов Демо выставил здесь: demo.appslabstudio.com
  2. Требуется программист для доработки модуля. Цену обсудим. Задание в личку. Наличие скайпа обязательно.
  3. Кому я не отвечал? Сделали скрипт по продаже ключей. Он работает здесь: zoolasoft.co.il
  4. Не могу найти контроллер для письма, которое отправляется после успешного оформления заказа. Сам шаблон находится здесь: catalog/view/theme/default/template/mail/order.tpl Нужно дописать некоторые переменные. Отдельного контроллера mail/order.php нет. Куда зашили, не знаю.
  5. Заканчиваю с модулем по продаже ключей к программам. Работает так: 1. Создаем товар (страница модифицирована) 2. Ставим галочку, что будем продавать ключи 3. Вставляем ключи по одному в строку (если софт имеет два ключа, вставляем два ключа в одну строку) 4. Клиент покупает товар, первый ключ (проданный) удаляется отсюда и т.д. 5. Проданные ключи владелец может посмотреть в статистике продаж в админке (дорабатывается) 6. В личном аккаунте для пользователя добавлена страница: купленные ключи 7. В шаблон письма (после заказа), и на success page добавлена ссылка на серийный ключи. Кого интересует скрипт, обращаемся на [email protected] P.S. Для знающих. Не могу найти контроллер для письма, которое отправляется после успешного оформления заказа. Сам шаблон находится здесь: catalog/view/theme/default/template/mail/order.tpl Нужно дописать некоторый кусок кода. Кто знает где, напишите.
  6. У меня та же фигня. Как решили вопрос? Если не решили, даю подсказку, это не в верстке. Если присмотреться в исходный код в английской версии (где всё нормально) идёт так: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en" xml:lang="en"> А когда переключаю на другой язык, уже выглядит так: <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="ru" xml:lang="ru"> <head></head> <body> "" <!--?xml version="1.0" encoding="UTF-8"?--> Этот код в Google инструментах разработчиках. Если смотреть полностью исходный код, он выглядит правильно.А так через инструменты, если удалить сами ковычки перед <!--?xml version="1.0" encoding="UTF-8"?--> белая строка сверху пропадает. Какие мысли по этому поводу? Где эти ковычки искать? Откуда они там появляются? Уже все файлы template просмотрел.
  7. На какой сайт Вы вбили? Использую последнюю версию опенкарта, имеется три модуля PayPal, ни в одном нет возможности прописатьAPI Username, API Password и Signature. Может кто знает, нужно другой модуль ставить?
  8. Так времени доделать не было, пришлось заказать. Сделали мне под 1.4.9 Также в импорт/экспорт добавил, поэтому теперь есть 3 цены: cost, wholesale и просто price. Очень удобный функционал. Но нужно всегда следить, чтобы обязательно была цена оптовая и простая. Также, специальные теперь не будут работать. Путаница выйдет.
  9. Всем спасибо за обширную тему особенно разработчику фильтра. Установил, фильтр работает нормально. Однако возникла кое-какая проблема, которой здесь в теме не нашел. У меня стоит 1.4.9 Имеется модуль: Next and Previous Product Links v2.2 Этот модуль добавляет ссылки на странице товара следующий - предыдущий, чтобы не выходить обратно в категорию. После установки фильтра этот модуль перестал работать. Он не видит id категорий и товаров. Вот ошибка: Notice: Undefined offset: 1 in /catalog/model/catalog/product.php on line 22 Notice: Undefined variable: products_np_ids in /catalog/controller/GooberMods/NextPrevLinks/mod_part1.inc.php on line 122 Warning: array_search() [function.array-search]: Wrong datatype for second argument in /catalog/controller/GooberMods/NextPrevLinks/mod_part1.inc.php on line 122 Notice: Undefined variable: products_np_multi in /catalog/controller/GooberMods/NextPrevLinks/mod_part1.inc.php on line 127 Notice: Undefined variable: products_np_multi in /catalog/controller/GooberMods/NextPrevLinks/mod_part1.inc.php on line 130 Notice: Undefined variable: products_np_multi in /catalog/controller/GooberMods/NextPrevLinks/mod_part1.inc.php on line 145 Есть мысли как исправить?В дополнение вот рабочая ссылка: mysite.com/товары/товар-1111 Когда делаю переход на следующий товар, ссылка должна была быть такая: mysite.com/товары/товар-2222 а она вместо этого имеет такой вид mysite.com/товары?product_id= Естественно пишет, что товар не найдет
  10. А почему-бы не развить тему. Это выход -1 помог balama, а вопрос, как допилить свою страницу остается открытый. На форумах вопросы встречаются, ответов ноль. Единственное, знаю, что можно добавить контроллер, модуль оставить тот же, сделать своё view и всё готово. Но как-то сложновато. Может есть проще решение? Задача в том, что мне нужно вывести абсолютно пустую страницу на которой будет выводится один из модулей, к примеру последние товары. Например, чтоб к странице путь был mysite.com/novayastranitsa.html Какие варианты?
  11. Всем добрый день. Пытаюсь освоить Яндекс Маркет. Тем много прочитал, но столкнулся с проблемой, которую не получается решить самостоятельно. При проверке Яндекс Маркетом моего файла yml выдает сообщение: При проверке выявлены некритичные ошибки. При этом проверил уже все варианты, от чего возникает такая ошибка. Некритичные ошибки касаются загрузки изображений. Пробелов в адресе к фото нет, но на всякий случай дописал $data['picture'] = str_replace(' ', '%20', $data['picture']); Пришел к тому, что некоторые изображения имею в адресе русские символы. Скорее всего это и есть ошибка.Примеры: Предупреждение: Некорректный URL адрес картинки предложения: сайт/image/cache/data/autumn/047-1-3_черный_фас-500x500.jpg (строка 164, столбец 119) Предупреждение: Некорректный URL адрес картинки предложения: сайт/image/cache/data/autumn/1045-3-1_белый_фас-500x500.jpg (строка 179, столбец 119) Вручную переписывать с русских символов на латинские символы займет кучу времени. Может какую-то функцию дописать что-то типа translit Как исправить?
  12. Нашел решение. Всё работает. Вот инструкция. SEO URLs To add support for SEO URLs, use the following instructions:– In "catalog/controller/common/seo_url.php", add the following:– if ($url[0] == 'news_id') { $this->request->get['news_id'] = $url[1]; } after if ($url[0] == 'information_id') { $this->request->get['information_id'] = $url[1]; } Then insert } elseif (isset($this->request->get['news_id'])) { $this->request->get['route'] = 'information/news'; before the closing "}" in the block that reads if (isset($this->request->get['product_id'])) { $this->request->get['route'] = 'product/product'; } elseif (isset($this->request->get['path'])) { $this->request->get['route'] = 'product/category'; } elseif (isset($this->request->get['manufacturer_id'])) { $this->request->get['route'] = 'product/manufacturer'; } elseif (isset($this->request->get['information_id'])) { $this->request->get['route'] = 'information/information'; } Then in "catalog/model/tool/seo_url.php", insert " || ($key == 'news_id')" into line 14 so that it reads something like: if (($key == 'product_id') || ($key == 'manufacturer_id') || ($key == 'information_id') || ($key == 'news_id')) { Единственный вопрос остался, как именно для версии 0.1.7 (1.4.9) сделать SEO URL для ссылки все новости: /index.php?route=information/news
  13. Я создал отдельно тему по настройке SEO URL для Oprncart 1.4.9 Присоединяйтесь к обсуждению https://opencartforum.com/topic/7443-%D0%BF%D0%BE%D0%BC%D0%BE%D0%B3%D0%B8%D1%82%D0%B5-%D1%81-%D1%87%D0%BF%D1%83-%D0%B4%D0%BB%D1%8F-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8F-%D0%BD%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D0%B5%D0%B9-oc-149/
  14. Читаю здесь советы по настройке СЕО ЧПУ для модуля новостей. У меня всё заканчивается вот этим if (($data['route'] == 'product/product' && $key == 'product_id') || (($data['route'] == 'product/manufacturer/product' || $data['route'] == 'product/product') && $key == 'manufacturer_id') || ($data['route'] == 'information/information' && $key == 'information_id')) { Версия ОС 1.4.9 В файле catalog/controller/common/seo_url.php нет выше приведенной строчки, чтобы её заменить на if (($data['route'] == 'product/product' && $key == 'product_id') || (($data['route'] == 'product/manufacturer/product' || $data['route'] == 'product/product') && $key == 'manufacturer_id') || ($data['route'] == 'information/news' && $key == 'news_id') || ($data['route'] == 'information/information' && $key == 'information_id')) { Что делать? Кто подскажет?
  15. Помогите настроить ЧПУ для модуля новостей в Opencart 1.4.9 Использую модуль deadcow SEO Везде SEO url работаю, в модуле новостей нет. Вот пример работающих ссылок http://glostore.com....%BC%D0%BA%D0%B8 Вот пример, где не работает http://glostore.com..../news&news_id=1 Вот файл catalog/controller/common/seo_url.php <?php class ControllerCommonSeoUrl extends Controller { public function index() { if (isset($this->request->get['_route_'])) { $parts = explode('/', $this->request->get['_route_']); foreach ($parts as $part) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "url_alias WHERE keyword = '" . $this->db->escape($part) . "'"); if ($query->num_rows) { $url = explode('=', $query->row['query']); if ($url[0] == 'product_id') { $this->request->get['product_id'] = $url[1]; } if ($url[0] == 'category_id') { if (!isset($this->request->get['path'])) { $this->request->get['path'] = $url[1]; } else { $this->request->get['path'] .= '_' . $url[1]; } } if ($url[0] == 'manufacturer_id') { $this->request->get['manufacturer_id'] = $url[1]; } if ($url[0] == 'information_id') { $this->request->get['information_id'] = $url[1]; } } else { $this->request->get['route'] = 'error/not_found'; } } if (isset($this->request->get['product_id'])) { $this->request->get['route'] = 'product/product'; } elseif (isset($this->request->get['path'])) { $this->request->get['route'] = 'product/category'; } elseif (isset($this->request->get['manufacturer_id'])) { $this->request->get['route'] = 'product/manufacturer'; } elseif (isset($this->request->get['information_id'])) { $this->request->get['route'] = 'information/information'; } if (isset($this->request->get['route'])) { return $this->forward($this->request->get['route']); } } } } ?> Вот файл admin/controller/module/deadcow_seo.php <?php class ControllerModuleDeadcowSEO extends Controller { private $error = array(); public function install() { // enable the module and set default settings $this->load->model('setting/setting'); $this->model_setting_setting->editSetting('deadcow_seo', array('deadcow_seo_status' => 1, 'deadcow_seo_categories_template' => '[category_name]', 'deadcow_seo_products_template' => '[product_name]-[model_name]', 'deadcow_seo_manufacturers_template' => '[manufacturer_name]', 'deadcow_seo_meta_template' => '[product_name], [model_name], [manufacturer_name], [categories_names]', 'deadcow_seo_yahoo_id' => '', 'deadcow_seo_yahoo_checkbox' => 0 )); } public function index() { $this->load->language('module/deadcow_seo'); $this->document->title = $this->language->get('heading_title'); $this->load->model('setting/setting'); $this->load->model('module/deadcow_seo'); if (($this->request->server['REQUEST_METHOD'] == 'POST') && ($this->validate())) { if (isset($this->request->post['categories'])) { $this->model_module_deadcow_seo->generateCategories($this->request->post['categories_template']); } if (isset($this->request->post['products'])) { $this->model_module_deadcow_seo->generateProducts($this->request->post['products_template']); } if (isset($this->request->post['manufacturers'])) { $this->model_module_deadcow_seo->generateManufacturers($this->request->post['manufacturers_template']); } if (isset($this->request->post['meta_keywords'])) { if (!isset($this->request->post['yahoo_checkbox'])) { $this->model_module_deadcow_seo->generateMetaKeywords($this->request->post['meta_template']); } else if (trim($this->request->post['yahoo_id']) != '') { $this->model_module_deadcow_seo->generateMetaKeywords($this->request->post['meta_template'], trim($this->request->post['yahoo_id'])); } else { $this->error['warning'] = $this->language->get('enter_yahoo_id'); } } $this->model_setting_setting->editSetting('deadcow_seo', array('deadcow_seo_categories_template' => $this->request->post['categories_template'], 'deadcow_seo_products_template' => $this->request->post['products_template'], 'deadcow_seo_manufacturers_template' => $this->request->post['manufacturers_template'], 'deadcow_seo_meta_template' => $this->request->post['meta_template'], 'deadcow_seo_yahoo_id' => $this->request->post['yahoo_id'], 'deadcow_seo_yahoo_checkbox' => isset($this->request->post['yahoo_checkbox']) ? 1 : 0 )); if (isset($this->error['warning'])) { $this->data['error_warning'] = $this->error['warning']; } else { $this->data['success'] = $this->language->get('text_success'); } } $this->data['warning_clear'] = $this->language->get('warning_clear'); $this->data['back'] = $this->language->get('back'); $this->data['categories'] = $this->language->get('categories'); $this->data['products'] = $this->language->get('products'); $this->data['manufacturers'] = $this->language->get('manufacturers'); $this->data['meta_keywords'] = $this->language->get('meta_keywords'); $this->data['generate'] = $this->language->get('generate'); $this->data['append_model'] = $this->language->get('append_model'); $this->data['template'] = $this->language->get('template'); $this->data['available_category_tags'] = $this->language->get('available_category_tags'); $this->data['available_product_tags'] = $this->language->get('available_product_tags'); $this->data['available_manufacturer_tags'] = $this->language->get('available_manufacturer_tags'); $this->data['available_meta_tags'] = $this->language->get('available_meta_tags'); $this->data['your_yahoo_id'] = $this->language->get('your_yahoo_id'); $this->data['get_yahoo_id'] = $this->language->get('get_yahoo_id'); $this->data['add_from_yahoo'] = $this->language->get('add_from_yahoo'); $this->data['curl_not_enabled'] = $this->language->get('curl_not_enabled'); if (isset($this->request->post['categories_template'])) { $this->data['categories_template'] = $this->request->post['categories_template']; } else { $this->data['categories_template'] = $this->config->get('deadcow_seo_categories_template'); } if (isset($this->request->post['products_template'])) { $this->data['products_template'] = $this->request->post['products_template']; } else { $this->data['products_template'] = $this->config->get('deadcow_seo_products_template'); } if (isset($this->request->post['manufacturers_template'])) { $this->data['manufacturers_template'] = $this->request->post['manufacturers_template']; } else { $this->data['manufacturers_template'] = $this->config->get('deadcow_seo_manufacturers_template'); } if (isset($this->request->post['meta_template'])) { $this->data['meta_template'] = $this->request->post['meta_template']; } else { $this->data['meta_template'] = $this->config->get('deadcow_seo_meta_template'); } if (isset($this->request->post['yahoo_id'])) { $this->data['yahoo_id'] = $this->request->post['yahoo_id']; } else { $this->data['yahoo_id'] = $this->config->get('deadcow_seo_yahoo_id'); } $this->data['yahoo_checkbox'] = isset($this->request->post['yahoo_checkbox']) ? 1 : 0; $this->document->breadcrumbs = array(); $this->document->breadcrumbs[] = array('href' => HTTPS_SERVER . 'index.php?route=common/home&token=' . $this->session->data['token'], 'text' => $this->language->get('text_home'), 'separator' => FALSE); $this->document->breadcrumbs[] = array('href' => HTTPS_SERVER . 'index.php?route=extension/module&token=' . $this->session->data['token'], 'text' => $this->language->get('text_module'), 'separator' => ' :: '); $this->document->breadcrumbs[] = array('href' => HTTPS_SERVER . 'index.php?route=module/deadcow_seo&token=' . $this->session->data['token'], 'text' => $this->language->get('heading_title'), 'separator' => ' :: '); $this->data['action'] = HTTPS_SERVER . 'index.php?route=module/deadcow_seo&token=' . $this->session->data['token']; $this->data['cancel'] = HTTPS_SERVER . 'index.php?route=extension/module&token=' . $this->session->data['token']; $this->data['heading_title'] = $this->language->get('heading_title'); $this->template = 'module/deadcow_seo.tpl'; $this->children = array('common/header', 'common/footer'); $this->response->setOutput($this->render(TRUE), $this->config->get('config_compression')); } private function validate() { if (!$this->user->hasPermission('modify', 'module/deadcow_seo')) { $this->error['warning'] = $this->language->get('error_permission'); } if (!$this->error) { return true; } else { return false; } } } Я так думаю, надо что-то прописать в последнем файле.Что-то добавить типа news_id if ($url[0] == 'news_id') { $this->request->get['news_id'] = $url[1]; } И ещё что-то. Буду рад за помощь. Решение нашел только для opencart 1.5 http://opencartforum...-opencart-v151/ Думаю, код можно оттуда, но как вставить сюда не знаю.
  16. Вообще есть мысли усовершенствовать модуль. Предлагаю скинутся. Как Вы думаете, такой модуль будет интересен публике? Сейчас модуль выводит категории второй вложенности и третьей (можно первой и второй). В админке можно выбрать первый уровень категории, т.е. при выборе категории первого уровня, будут выводится на сайт 2-й и 3-й уровень категорий в виде блоков, как сейчас у меня на сайте: http://technolife.net.ua Минусы в том, что в админке можно выбрать только одну категорию. Задача. Переделать выбор категорий в админке на чекбоксы, чтобы можно было выбирать несколько разных и разной вложенности. Я предлагаю сделать в виде блоков. По умолчанию будет один. Я отмечаю чекбоксом, что будет в первом блоке. Потом, к примеру, мне нужен второй блок, нажимаю добавить второй блок, появляются снова все категории и подкатегории, выбираю, отображается второй блок и так далее до бесконечности. В самом блоке кроме выбора категорий хочу сделать пустую строчку и чекбокс внизу, где можно будет прописать текст ссылки и второе поле, где можно будет вставить урл ссылки, даже если это будет внешняя ссылка. Ещё плюс такого модуля в том, что блоки заполняются слева направо по очереди. То есть если в админке я добавлю 7 модулей, к примеру, 5 выстроятся в первый ряд, остальные 2 слева во вторую строку. Кое-что нарисовал, прилагаю. Что скажет народ? Сейчас После - изображение 1 После- изображение 2 После - изображение 3
  17. Спасибо. Тема интересная, но я вопрос уже решил по другому. К стилям шаблона добавил новый див, в который уже вошли все остальные: контент, left, right. Пришлось также поправить все файлы папки template, то есть в моем случае я добавил $contentwrapper во все файлы между $header и $content. Всё работает, получилось. Теперь у меня есть целый блок в длину шаблона между header и content. Если я добавляю колонку слева или справа, она появляется только под этим $contentwrapper
  18. Может данные сохраняются где-то в каком-то массиве и там зависли? Кто хорошо знаком с opencart?
  19. В opencart соображаю хорошо. Тему ту редактирую. Я даже на всякий случай к примеру тот же header.tpl в default теме переименовал в !_header.tplИнтересно ещё то, что если файл header.tpl или другой файл, home.tpl переименовать, то выдает ошибку, файл не найден. А когда в этом файле вносишь изменения, ничего не происходит.
  20. Странно. Удалил. Папка пуста. Не помогло. А какие ещё могут быть причины? Вот сам сайт: http://glostore.com.ua/
  21. Пытаюсь доработать модуль вывода категорий на главной странице. С первым решением помогли. Теперь выводятся не только категории, но и подкатегории. Проблема в том, что в некоторых категориях больше 20 подкатегорий, и естественно вид сего этого не очень. Поэтому хочу ограничить вывод подкатегорий к примеру до 10. Думаю, надо использовать array_slice а куда его и как вместить хрен его знает. Знания на этом заканчиваются. Буду рад за помощь. Пример вывода категорий и подкатегорий сейчас: Вот сам файл

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.