Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

markimax

Users
  • Posts

    20,062
  • Joined

  • Last visited

Everything posted by markimax

  1. Да ошибка связана с тем что магазин поместили в папку вида http:/ / мой_магазин.com/store Так лучше не делать, так как это очень плохо влияет на seo, (так как любая ссылка становиться автоматически второстепенной, вида http:/ / мой_магазин.com/store/news), плюс не будет корректно работать seo_pro (если захотите установить) Лучше сделать так http:/ / store.мой_магазин.com Проблему конечно решили быстро, но лучше переопределить пути магазина.
  2. Видел я и такие "темы" которые на главной не имеют "Содержание шапки" :) Кстати меню не обязательно вешать на "Содержание шапки" можно повесить на подвал или куда угодно.
  3. Плохо было бы если вообще не выводилось (а вы повесили только для схемы home?, а выводиться везде ... рассмешило :) , если везде повесили, а только на home не выводится, проверьте в настройках схемы, что там прописано, или файл отвечающий за seo (там может быть какой нибудь глупый "допил" :) ) Тяжело сказать что там с этими пользовательскими темами, что там намудрили, я такое иногда нахожу, что поверить не могу в такую глупость. Тот кто так делает темы, наверняка может начудить прилично в ней, иногда путают схемы, путают лево с право и т.п. :) Поэтому напомню: На будущее другим. Прошу вас, не вредите сами себе и не ищите проблем на голову, перед покупкой шаблонов (когда просматриваете демо, просмотрите Firebug - ом), не смотрите на красоты, а посмотрите хотя бы сетку верстки, классы и id темы, чтобы они соответствовали стандартам opencart. И остерегайтесь тех модулей которые заменяют системные файлы opencart (даже посредством vqmod) Практически любой модуль (99,9%) на сегодняшний день можно сделать без замены системных файлов opencart и без vqmod. Любая замена - признак "плохого тона" и слабой архитектуры модуля.
  4. А ничего кардинально допиливать не придется. Вы даже не заметите, просто архитектура поменяется, станут гибче настройки, вывод списка записей будет виджетом, как и комментарии, сама запись тоже виджетом и т.п. шаблоны можно будет выбирать из списка. Это усовершенствования скорее для разработчиков, они смогут сами делать виджеты на основе имеющихся, если вдруг захотят конкретно что-то изменить в контроллерах. Это скорее будет настоящая MVC модульная CMS в opencart. (joomla и т.п. можно отправлять в мусорку уже сейчас (и 4.* неплохо заменяет))
  5. <div id="categories"> на <div id="menu"> Я вообще не понимаю, зачем верстальщик изменил id блока меню
  6. Вышла версия 4.17 Добавлен выбор "главной" категории (раньше "главная" категория автоматом бралась от последней созданной)
  7. Да просто начинаете писать имя товара, и должен появиться список
  8. Если вам надо чтобы сразу выводилась "простыня" подкатегорий тогда в шаблоне .../template/module/blog.tpl - замените echo 'display:none;' на echo '' сохраняете его как blog_my.tpl и прописываете в виджете
  9. Давайте, с одним уже разобрался, читали? https://opencartforum.com/topic/13781-%d0%bc%d0%be%d0%b4%d1%83%d0%bb%d1%8c-%d0%b1%d0%bb%d0%be%d0%b3-%d0%bd%d0%be%d0%b2%d0%be%d1%81%d1%82%d0%b8-%d0%be%d1%82%d0%b7%d1%8b%d0%b2%d1%8b-%d0%b3%d0%b0%d0%bb%d0%b5%d1%80%d0%b5%d1%8f-faq/page__view__findpost__p__133818
  10. На будущее другим. Прошу вас, не вредите сами себе и не ищите проблем на голову, перед покупкой шаблонов (когда просматриваете демо, просмотрите Firebug - ом), не смотрите на красоты, а посмотрите хотя бы сетку верстки, классы и id темы, чтобы они соответствовали стандартам opencart. И остерегайтесь тех модулей которые заменяют системные файлы opencart (даже посредством vqmod) Практически любой модуль (99,9%) на сегодняшний день можно сделать без замены системных файлов opencart и без vqmod. Любая замена - признак "плохого тона" и слабой архитектуры модуля.
  11. Разобрались, пользовательская тема-сборка, и какой-то горе-"разработчик" сборки убрал вообще все упоминания про seo контроллеры ! (и в index.php тоже) и... втулил seo обработчик вместо стандартной библиотеки /system/library/url.php (просто заменил файл, он наверно не знает что такое контроллеры) это же додуматься надо было! Такого идиотизма я еще не встречал. Теперь пользователь имеет проблемы практически со всеми модулями. Вот привожу вам файл url.php замененный, просто обалдеть. Я даже знаю откуда эта глупость, обратите внимание на упоминания information/article, даже копирайты не поставлены ни где в модуле, горе-"разработчику" стыдно наверно подписываться под "этим" чудом. (а вы спрашиваете почему в моем модуле много моих копирайтов (это наоборот признак хорошего тона), да потому что не стыдно за свой модуль, и пользователи, которые купили, должны знать кто написал модуль, чтобы потом было кому вопросы задавать) Внизу следует "верх" идиотизма (как можно было заменить системный класс Url этим бредом) <?php class Url { public $args = array(); public $ignore = array(); private $url; private $ssl; private $keywords; private $links = array(); private $rewrite = array( 'product/product', 'product/manufacturer/info', 'product/category', 'information/information', 'information/article' ); public function __construct($registry, $url, $ssl = '') { $this->db = $registry->get('db'); $this->config = $registry->get('config'); $this->request = $registry->get('request'); $this->url = $url; $this->ssl = $ssl; if (isset($this->request->get['_route_'])) { $this->decode($this->request->get['_route_']); } } public function link($route, $args = '', $gets = false, $connection = 'NONSSL', $hash = '') { if ($connection == 'NONSSL') { $url = $this->url; } else { $url = $this->ssl; } $url .= 'index.php?route=' . $route; if ($this->args && $gets === true) { foreach ($this->args as $key => $value) { if (isset($this->request->get[$key]) && $this->request->get[$key] != $value && !in_array($key, $this->ignore)) { $args .= '&' . $key . '=' . urlencode(html_entity_decode($this->request->get[$key], ENT_QUOTES, 'UTF-8')); } } } if ($args) { $url .= str_replace('&', '&', '&' . ltrim($args, '&')); } if (in_array($route, $this->rewrite) && $this->config->get('config_seo_url')) { $url = $this->rewrite($url); } if ($hash) { $url .= '#' . $hash; } return $url; } private function rewrite($link) { $url_data = parse_url(str_replace('&', '&', $link)); $url = ''; $data = array(); parse_str($url_data['query'], $data); foreach ($data as $key => $value) { if (isset($data['route'])) { if ( ($data['route'] == 'product/product' && $key == 'product_id') || (($data['route'] == 'product/manufacturer/info' || $data['route'] == 'product/product') && $key == 'manufacturer_id') || ($data['route'] == 'information/information' && $key == 'information_id') || ($data['route'] == 'information/article' && ($key == 'article_id' || $key == 'article_category_id')) ) { $index = md5($key . $value); if (!isset($this->keywords[$index])) { $query = $this->db->query("SELECT keyword FROM " . DB_PREFIX . "url_alias WHERE `query` = '" . $this->db->escape($key . '=' . (int)$value) . "'"); if ($query->num_rows) { $url .= '/' . $query->row['keyword']; $this->keywords[$index]['keyword'] = $query->row['keyword']; $this->keywords[$index]['num_rows'] = true; unset($data[$key]); } else { $this->keywords[$index]['num_rows'] = false; } } else { if ($this->keywords[$index]['num_rows']) { $url .= '/' . $this->keywords[$index]['keyword']; unset($data[$key]); } } } elseif ($key == 'path') { $categories = explode('_', $value); foreach ($categories as $category) { $index = md5($key . $category); if (!isset($this->keywords[$index]['keyword'])) { $query = $this->db->query("SELECT keyword FROM " . DB_PREFIX . "url_alias WHERE `query` = 'category_id=" . (int)$category . "'"); if ($query->num_rows) { $url .= '/' . $query->row['keyword']; $this->keywords[$index]['keyword'] = $query->row['keyword']; $this->keywords[$index]['num_rows'] = true; unset($data[$key]); } else { $this->keywords[$index]['num_rows'] = false; } } else { if ($this->keywords[$index]['num_rows']) { $url .= '/' . $this->keywords[$index]['keyword']; unset($data[$key]); } } } } } } if ($url) { unset($data['route']); $query = ''; if ($data) { foreach ($data as $key => $value) { $query .= '&' . $key . '=' . $value; } if ($query) { $query = '?' . trim($query, '&'); } } return $url_data['scheme'] . '://' . $url_data['host'] . (isset($url_data['port']) ? ':' . $url_data['port'] : '') . str_replace('/index.php', '', $url_data['path']) . $url . $query; } else { return $link; } } private function decode($_route_) { $parts = explode('/', $_route_); $sql = array(); foreach ($parts as $part) $sql[] = "'" . $this->db->escape($part) . "'"; $query = $this->db->query("SELECT keyword, query FROM " . DB_PREFIX . "url_alias WHERE keyword IN(" . implode(',', $sql) . ")"); $queries = array(); if ($query->num_rows && $query->num_rows == count($parts)) { foreach ($query->rows as $row) { $queries[md5($row['keyword'])] = $row['query']; } } if ($queries) { foreach ($parts as $part) { $url = explode('=', $queries[md5($part)]); 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]; } if ($url[0] == 'article_category_id') { $this->request->get['article_category_id'] = $url[1]; } if ($url[0] == 'article_id') { $this->request->get['article_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/info'; } elseif (isset($this->request->get['information_id'])) { $this->request->get['route'] = 'information/information'; } elseif (isset($this->request->get['article_id']) || isset($this->request->get['article_category_id'])) { $this->request->get['route'] = 'information/article'; } } } ?>
  12. Тогда какой-то сторонний модуль, прочитайте выше мой пост, отредактированный. Пишите в ЛС разберемся.
  13. Может alias blog прописан еще в другом модуле (проходили, один буржуйский новостной модуль за 70 у.е. (который к тому же требует vqmod или изменений файлов) по идиотски зарезервировал для себя все url типа /blog/*, ну идиотизм полный), товаре, категории и seo_url или seo pro начинают его пихать туда сюда, или в seo_pro seo_url какие-то левые "допилы" топором (проверьте на упоминания blog_id, record_id их там быть не должно). (особенно актуально для сборки maxystore, там стоят глупые "допилы") Т.е. я так понял, если категорию блога назвать не /blog а например /myblog то все работает? Если нет, проверяйте seo_pro и seo_url на предмет упоминаний blog_id и record_id, в оригинальных упоминаний быть не должно. Если есть - это уже "допилы" топором.
  14. Честно сказать, ошибка совсем не понятная более 200 человек купило, не у кого такой не было. Какая тема, версия opencart. Да вообще бред какой-то. Какие модули стоят? Отключайте по очереди другие, скорее всего конфликт вышел. Смотрите /system/library/url.php <?php class Url { private $url; private $ssl; private $hook = array(); public function __construct($url, $ssl) { $this->url = $url; $this->ssl = $ssl; } ....... public function addRewrite($hook) { $this->hook[] = $hook; } public function rewrite($url) { foreach ($this->hook as $hook) { $url = $hook->rewrite($url); } return $url; } } ?> Ну а теперь скажите как это он может быть не определен? if ($this->config->get('config_seo_url')) { $this->url->addRewrite($this); } Это стандартная конструкция! 1:1 как у seo_url и seo_pro. Там не может быть ошибки. Ищите в других модулях конфликт.
  15. А у вас тема пользовательская? Опять наверно верстальщик id=menu переименовал :) Должна быть такая конструкция <div id="menu"> <ul> <li> <a href="...">....</a> <div style=""> </li> ..... Посмотрите как на сайте демо сделано http://opencartadmin...u/?record_id=12
  16. 5-ю? Нет не трудно. Про Mijoshop не слышал. Joomla не пользуюсь. Зачем joomla нужна если есть модуль ;)?
  17. Пока, да. установить переменную в языковом файле /catalog/language/russian/module/blog.php. А остальные ссылки - это ссылки редактирования записи из front, поправлю в следующей версии.
  18. Да, конечно обращайтесь, на то и тех. поддержка. Но совет: завязывайте с шопикой, если не хотите и в будущем проблем. Лучше переверстайте default шаблон под шопику, тем более есть навыки в верстке (только согласно сетки, id и классов default темы). Разве можно доверять шопоразработчикам которые путают "лево" с "право".
  19. Скажу честно - не знаю, знаю адаптировали, знаю работает у кого-то, в папке темы модуля лежит архив с шаблонами для Shoppica, но как они адаптированы - не знаю, если у вас нет навыков верстки - то будет тяжело, потому что .... Гордым пользователям темы Shoppica посвящается: эта тема красива, но сделана ужасно с точки зрения программирования и архитектуры, верстки, бесплатный совет - смените её, иначе у вас и далее какие-то модули будут работать некорректно.
  20. Никогда не знаешь, что можно встретить в интернете .... Не, ну видели такую наглость. Своровать, а потом от своего имени еще и продавать. Не знаете, что за умник, может с форума, телефон даже оставил урод: +380954436944 : http://market.msg2me.ru/blog.4.11
  21. Вышла версия 4.15.9 Добавлена сортировка комментариев по дате (важно для отзывов о магазине, привет тем, кто сам отзывы пишет, очень поможет ;) ), оценке, рейтингу. (кстати, кто-то просил реализовать, просили - получите)
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.