belaon Опубліковано: 2 листопада 2014 Share Опубліковано: 2 листопада 2014 Кэш почистила, попробовала поставить статью, но увы всё так же. Ниже скриншот.Суть проблемы такова, что мне нужно чтобы текст был "шире", по ширине странице сайта, а не в длину... на скриншоте видно, аж целое свободное поле справа. Надіслати Поділитися на інших сайтах More sharing options...
belaon Опубліковано: 2 листопада 2014 Share Опубліковано: 2 листопада 2014 Кэш почистила, попробовала поставить статью, но увы всё так же. Ниже скриншот. Суть проблемы такова, что мне нужно чтобы текст был "шире", по ширине странице сайта, а не в длину... на скриншоте видно, аж целое свободное поле справа. Вообщем я сделала возврат резервной копии, старые новости вернулись, но ссылки на статьи теперь состоят из ключивиков в перемешку с %. Кто знает как это исправить? И еще проблема, захожу в статью для исправления статья не сохраняется а просто пропадает а если хочу добавить новую то не добавляется, выкидывает с админки((( Надіслати Поділитися на інших сайтах More sharing options...
6ep Опубліковано: 10 листопада 2014 Share Опубліковано: 10 листопада 2014 тыкните меня, пожалуйста, носом, в упор не могу найти, как исправить сео списка новостей index.php?route=information/news на news и как изменить размер изображений бокса новостей на главной (thumb'ы увеличить эти) :oops: Надіслати Поділитися на інших сайтах More sharing options...
Taran78 Опубліковано: 19 листопада 2014 Share Опубліковано: 19 листопада 2014 Добрый день! Все встало, но в самом блоке весь контент уехал влево, подскажите где править? Модуль устраивает на 100 процентов, но вот это... Надіслати Поділитися на інших сайтах More sharing options...
mania78 Опубліковано: 25 листопада 2014 Share Опубліковано: 25 листопада 2014 Спасибо, все работает. Надіслати Поділитися на інших сайтах More sharing options...
diejseloc Опубліковано: 27 листопада 2014 Share Опубліковано: 27 листопада 2014 Если кому нужно (в приложении измененный seo_pro.php - OpenCart 1.5.5). Меняет урлы таким образом - http://site.loc/news/new_2, по старому http://site.loc/new_2 - страница будет не найдена. Больше пригодится для СЕО. seo_pro.php Надіслати Поділитися на інших сайтах More sharing options...
shden Опубліковано: 1 грудня 2014 Share Опубліковано: 1 грудня 2014 Если кому нужно (в приложении измененный seo_pro.php - OpenCart 1.5.5). Меняет урлы таким образом - http://site.loc/news/new_2, по старому http://site.loc/new_2 - страница будет не найдена. Больше пригодится для СЕО. а можно ли выложить переделанные файлы модуля чтобы ссылки генерировались на site.loc/news/new а не на site.loc/new Надіслати Поділитися на інших сайтах More sharing options...
HyperLabTeam Опубліковано: 2 грудня 2014 Share Опубліковано: 2 грудня 2014 купил блог марка и не парюсь - бесплатно конечно хорошо, но...не настаиваю. каждому своё... прост поделился;) Надіслати Поділитися на інших сайтах More sharing options...
alferus Опубліковано: 6 грудня 2014 Share Опубліковано: 6 грудня 2014 У всех правильно работает пагинация? почему то всегда отображает 11 новостей при ограничении в 10. При этом если перейти на 2 страницу пагинации, то там тот же список из 11 новостей. Изменил только $limit: $url = ''; if (isset($this->request->get['page'])) { $page = $this->request->get['page']; $url .= '&page=' . $this->request->get['page']; } else { $page = 1; } //$limit = $this->config->get('config_catalog_limit'); $limit = 10; $data = array( 'page' => $page, 'limit' => $limit, 'start' => $limit * ($page - 1), ); $total = $this->model_catalog_news->getTotalNews(); $pagination = new Pagination(); $pagination->total = $total; $pagination->page = $page; $pagination->limit = $limit; $pagination->text = $this->language->get('text_pagination'); $pagination->url = $this->url->link('information/news', $url . '&page={page}', 'SSL'); $this->data['pagination'] = $pagination->render(); В чем может быть проблема? Надіслати Поділитися на інших сайтах More sharing options...
alferus Опубліковано: 7 грудня 2014 Share Опубліковано: 7 грудня 2014 У всех правильно работает пагинация? почему то всегда отображает 11 новостей при ограничении в 10. При этом если перейти на 2 страницу пагинации, то там тот же список из 11 новостей. В чем может быть проблема? оказалось, что были изменения в catalog/model/catalog/news.php - перезаписал стандартным и все заработало.. Надіслати Поділитися на інших сайтах More sharing options...
muha Опубліковано: 16 грудня 2014 Share Опубліковано: 16 грудня 2014 Доброго У всех работает url новости ? Выдает http://homeparfums.ru/news/?news_id=4, хотя при наведении ведет на http://homeparfums.ru/news/news_name, если вбить то редиректит на /?news_id=4 вспомогательные xml файлы добавил, в seo_pro строки с news_id и inrormation/news вставлял, по аналогии в seo_url добавил что не принесло изменений. Модуль SeoPro установлен, остальные страницы, товары открываются как надо, htaccess включен, непонятно в чем проблема. Надіслати Поділитися на інших сайтах More sharing options...
markimax Опубліковано: 16 грудня 2014 Share Опубліковано: 16 грудня 2014 Доброго У всех работает url новости ? Выдает http://homeparfums.ru/news/?news_id=4, хотя при наведении ведет на http://homeparfums.ru/news/news_name, если вбить то редиректит на /?news_id=4 вспомогательные xml файлы добавил, в seo_pro строки с news_id и inrormation/news вставлял, по аналогии в seo_url добавил что не принесло изменений. Модуль SeoPro установлен, остальные страницы, товары открываются как надо, htaccess включен, непонятно в чем проблема. У вас не уникальный ЧПУ где то дубль для этой новости Надіслати Поділитися на інших сайтах More sharing options... muha Опубліковано: 17 грудня 2014 Share Опубліковано: 17 грудня 2014 У вас не уникальный ЧПУ где то дубль для этой новости Создал еще несколько уникальных новостей с уникальным названием и чпу url, всеравно вроде ссылается на http://homeparfums.ru/news/n_test/, но редиректит на http://homeparfums.ru/news/?news_id=8 .. Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 17 грудня 2014 Share Опубліковано: 17 грудня 2014 Создал еше несколько уникальных новостей с уникальным названием и чпу url, всеравно вроде ссылается на http://homeparfums.ru/news/proverochnaya-novost/, но редиректит на http://homeparfums.ru/news/?news_id=8 .. Категория (ЧПУ) не уникальна :) Надіслати Поділитися на інших сайтах More sharing options... Helloween Опубліковано: 17 грудня 2014 Share Опубліковано: 17 грудня 2014 У меня вот тоже проблема с этим ЧПУ на новостях. Категория уникальна. Новость - тоже. А все равно параметры передает вместо ЧПУ. Надіслати Поділитися на інших сайтах More sharing options... muha Опубліковано: 17 грудня 2014 Share Опубліковано: 17 грудня 2014 При таком раскладе новость отображается корректно при условии очистки кэша (system/cache/ cache.seo_pro.1418996159) после создания новости Иначе видит как index.php?route=information/news&news_id=53 Есть идеи ? class ControllerCommonSeoPro extends Controller {private $cache_data = null;public function __construct($registry) {parent::__construct($registry);$this->cache_data = $this->cache->get('seo_pro');if (!$this->cache_data) {$query = $this->db->query("SELECT LOWER(`keyword`) as 'keyword', `query` FROM " . DB_PREFIX . "url_alias");$this->cache_data = array();foreach ($query->rows as $row) {$this->cache_data['keywords'][$row['keyword']] = $row['query'];$this->cache_data['queries'][$row['query']] = $row['keyword'];}$this->cache->set('seo_pro', $this->cache_data);}}public function index() {// Add rewrite to url classif ($this->config->get('config_seo_url')) {$this->url->addRewrite($this);} else {return;}// Decode URLif (!isset($this->request->get['_route_'])) {$this->validate();} else {$route_ = $route = $this->request->get['_route_'];unset($this->request->get['_route_']);$parts = explode('/', trim(utf8_strtolower($route), '/'));list($last_part) = explode('.', array_pop($parts));array_push($parts, $last_part);$rows = array();foreach ($parts as $keyword) {if (isset($this->cache_data['keywords'][$keyword])) {$rows[] = array('keyword' => $keyword, 'query' => $this->cache_data['keywords'][$keyword]);}}if (count($rows) == sizeof($parts)) {$queries = array();foreach ($rows as $row) {$queries[utf8_strtolower($row['keyword'])] = $row['query'];}reset($parts);foreach ($parts as $part) {$url = explode('=', $queries[$part], 2);if ($url[0] == 'category_id') {if (!isset($this->request->get['path'])) {$this->request->get['path'] = $url[1];} else {$this->request->get['path'] .= '_' . $url[1];}} elseif (count($url) > 1) {$this->request->get[$url[0]] = $url[1];}}} else {$this->request->get['route'] = 'error/not_found';}if (isset($this->request->get['product_id'])) {$this->request->get['route'] = 'product/product';if (!isset($this->request->get['path'])) {$path = $this->getPathByProduct($this->request->get['product_id']);if ($path) $this->request->get['path'] = $path;}} 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->cache_data['queries'][$route_])) {header($this->request->server['SERVER_PROTOCOL'] . ' 301 Moved Permanently');$this->response->redirect($this->cache_data['queries'][$route_]);} else {if (isset($queries[$parts[0]])) {$this->request->get['route'] = $queries[$parts[0]];}}$this->validate();if (isset($this->request->get['route'])) {return $this->forward($this->request->get['route']);}}}public function rewrite($link) {if (!$this->config->get('config_seo_url')) return $link;$seo_url = '';$component = parse_url(str_replace('&', '&', $link));$data = array();parse_str($component['query'], $data);$route = $data['route'];unset($data['route']);switch ($route) {case 'product/product':if (isset($data['product_id'])) {$tmp = $data;$data = array();if ($this->config->get('config_seo_url_include_path')) {$data['path'] = $this->getPathByProduct($tmp['product_id']);if (!$data['path']) return $link;}$data['product_id'] = $tmp['product_id'];if (isset($tmp['tracking'])) {$data['tracking'] = $tmp['tracking'];}}break;case 'product/category':if (isset($data['path'])) {$category = explode('_', $data['path']);$category = end($category);$data['path'] = $this->getPathByCategory($category);if (!$data['path']) return $link;}break;case 'product/product/review':case 'information/information/info':return $link;break;default:break;}if ($component['scheme'] == 'https') {$link = $this->config->get('config_ssl');} else {$link = $this->config->get('config_url');}$link .= 'index.php?route=' . $route;if (count($data)) {$link .= '&' . urldecode(http_build_query($data, '', '&'));}$queries = array();$is_news = false;foreach ($data as $key => $value) {switch ($key) {case 'product_id':case 'manufacturer_id':case 'category_id':case 'information_id':$queries[] = $key . '=' . $value;unset($data[$key]);$postfix = 1;break;case 'news_id':$queries[] = $key . '=' . $value;unset($data[$key]);$postfix = 1;$is_news = true;break;case 'path':$categories = explode('_', $value);foreach ($categories as $category) {$queries[] = 'category_id=' . $category;}unset($data[$key]);break;default:break;}}if(empty($queries)) {$queries[] = $route;}$rows = array();foreach($queries as $query) {if(isset($this->cache_data['queries'][$query])) {$rows[] = array('query' => $query, 'keyword' => $this->cache_data['queries'][$query]);}}if(count($rows) == count($queries)) {$aliases = array();foreach($rows as $row) {$aliases[$row['query']] = $row['keyword'];}foreach($queries as $query) {if ($is_news) {$seo_url .= '/news/' . rawurlencode($aliases[$query]);} else {$seo_url .= '/' . rawurlencode($aliases[$query]);}}}if ($seo_url == '') return $link;$seo_url = trim($seo_url, '/');if ($component['scheme'] == 'https') {$seo_url = $this->config->get('config_ssl') . $seo_url;} else {$seo_url = $this->config->get('config_url') . $seo_url;}if (isset($postfix)) {$seo_url .= trim($this->config->get('config_seo_url_postfix'));} else {$seo_url .= '/';}if(substr($seo_url, -2) == '//') {$seo_url = substr($seo_url, 0, -1);}if (count($data)) {$seo_url .= '?' . urldecode(http_build_query($data, '', '&'));}return $seo_url;}private function getPathByProduct($product_id) {$product_id = (int)$product_id;if ($product_id < 1) return false;static $path = null;if (!is_array($path)) {$path = $this->cache->get('product.seopath');if (!is_array($path)) $path = array();}if (!isset($path[$product_id])) {$query = $this->db->query("SELECT category_id FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . $product_id . "' ORDER BY main_category DESC LIMIT 1");$path[$product_id] = $this->getPathByCategory($query->num_rows ? (int)$query->row['category_id'] : 0);$this->cache->set('product.seopath', $path);}return $path[$product_id];}private function getPathByCategory($category_id) {$category_id = (int)$category_id;if ($category_id < 1) return false;static $path = null;if (!is_array($path)) {$path = $this->cache->get('category.seopath');if (!is_array($path)) $path = array();}if (!isset($path[$category_id])) {$max_level = 10;$sql = "SELECT CONCAT_WS('_'";for ($i = $max_level-1; $i >= 0; --$i) {$sql .= ",t$i.category_id";}$sql .= ") AS path FROM " . DB_PREFIX . "category t0";for ($i = 1; $i < $max_level; ++$i) {$sql .= " LEFT JOIN " . DB_PREFIX . "category t$i ON (t$i.category_id = t" . ($i-1) . ".parent_id)";}$sql .= " WHERE t0.category_id = '" . $category_id . "'";$query = $this->db->query($sql);$path[$category_id] = $query->num_rows ? $query->row['path'] : false;$this->cache->set('category.seopath', $path);}return $path[$category_id];}private function validate() {if (isset($this->request->get['route']) && $this->request->get['route'] == 'error/not_found') {return;}if(empty($this->request->get['route'])) {$this->request->get['route'] = 'common/home';}if (isset($this->request->server['HTTP_X_REQUESTED_WITH']) && strtolower($this->request->server['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {return;}if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) {$config_ssl = substr($this->config->get('config_ssl'), 0, $this->strpos_offset('/', $this->config->get('config_ssl'), 3) + 1);$url = str_replace('&', '&', $config_ssl . ltrim($this->request->server['REQUEST_URI'], '/'));$seo = str_replace('&', '&', $this->url->link($this->request->get['route'], $this->getQueryString(array('route')), 'SSL'));} else {$config_url = substr($this->config->get('config_url'), 0, $this->strpos_offset('/', $this->config->get('config_url'), 3) + 1);$url = str_replace('&', '&', $config_url . ltrim($this->request->server['REQUEST_URI'], '/'));$seo = str_replace('&', '&', $this->url->link($this->request->get['route'], $this->getQueryString(array('route')), 'NONSSL'));}if (rawurldecode($url) != rawurldecode($seo)) {header($this->request->server['SERVER_PROTOCOL'] . ' 301 Moved Permanently');$this->response->redirect($seo);}}private function strpos_offset($needle, $haystack, $occurrence) {// explode the haystack$arr = explode($needle, $haystack);// check the needle is not out of boundsswitch($occurrence) {case $occurrence == 0:return false;case $occurrence > max(array_keys($arr)):return false;default:return strlen(implode($needle, array_slice($arr, 0, $occurrence)));}}private function getQueryString($exclude = array()) {if (!is_array($exclude)) {$exclude = array();}return urldecode(http_build_query(array_diff_key($this->request->get, array_flip($exclude))));}}?> Надіслати Поділитися на інших сайтах More sharing options... Gylik Опубліковано: 21 грудня 2014 Share Опубліковано: 21 грудня 2014 Есть проблема, помогите решить. Делал все по инструкции. Изменил сео про и теперь генерирует сео и работает. Но! При нажатии на новость "читать далее" переходит на страницу с чпу all-news/valera-durak.html и пишет что она не найдена. ссылка all-news тож не находит. То и есть что ссылки поменялись на те что надо, но странички на самом деле остались под старым адресом. Где проблему искать. В базе может? Надіслати Поділитися на інших сайтах More sharing options... deposit Опубліковано: 23 грудня 2014 Share Опубліковано: 23 грудня 2014 Для тех, кто хотел добавить ссылку в футере (в подвале сайта), но не смог, думаю пригодится. 1) Для начала, заходим в: catalog/language/common/footer.php и добавляем: $_['text_news'] = 'Список новостей'; 2) Потом идем в: catalog/controller/common/footer.php в самом начале находим: <?php class ControllerCommonFooter extends Controller { protected function index() { $this->language->load('common/footer'); и после, ниже в списке, где-нибудь добавляем это: $this->data['text_news'] = $this->language->get('text_news'); 3) В зависимости от блока (где будет находиться ссылка на новости), у меня она в "Информации" Заходим в: catalog/view/theme/ВАША ТЕМА/template/common/footer.tpl Находим: <div id="footer"> <?php if ($informations) { ?> <div class="column"> <h3><?php echo $text_information; ?></h3> После добавляем: <ul> <li><a href="<?php echo $news; ?>"><?php echo $text_news; ?></a></li> На этом, вроде как всё. Если что-то упустил (в чем я очень сомневаюсь), допишу! ЗЫ: Автору, человеческое спасибо за модуль! Надіслати Поділитися на інших сайтах More sharing options... muha Опубліковано: 26 грудня 2014 Share Опубліковано: 26 грудня 2014 А вот пригодилась бы возможность делить новости на категории.. Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 26 грудня 2014 Share Опубліковано: 26 грудня 2014 А вот пригодилась бы возможность делить новости на категории.. Так есть же. Надіслати Поділитися на інших сайтах More sharing options... muha Опубліковано: 27 грудня 2014 Share Опубліковано: 27 грудня 2014 Так есть же. Что то не пойму, где же назначаются категории для новостей ? К примеру мне нужно на 1 странице выводить 1 список новостей, на 2 странице другой список новостей.. Надіслати Поділитися на інших сайтах More sharing options... Dart990 Опубліковано: 30 грудня 2014 Share Опубліковано: 30 грудня 2014 Что то не пойму, где же назначаются категории для новостей ? К примеру мне нужно на 1 странице выводить 1 список новостей, на 2 странице другой список новостей.. +1, тоже не вижу возможности добавлять категории. Такой функции нет ? Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 30 грудня 2014 Share Опубліковано: 30 грудня 2014 oops .. sorry, а категорий то действительно нету. Как так? какая разница с information тогда? Надіслати Поділитися на інших сайтах More sharing options... OldAine Опубліковано: 1 січня 2015 Автор Share Опубліковано: 1 січня 2015 +1, тоже не вижу возможности добавлять категории. Такой функции нет ? Нет. Надіслати Поділитися на інших сайтах More sharing options... Malinin Опубліковано: 8 січня 2015 Share Опубліковано: 8 січня 2015 можно ли установить этот модуть на Версия 1.5.6.4 ? Надіслати Поділитися на інших сайтах More sharing options... Назад 20 21 22 23 24 25 26 27 28 29 30 Вперед Сторінка 25 з 36 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Схожі публікації batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 472 перегляди Sha 15 березня 2017 batch [Поддержка] Універсальний масовий редактор товарів. MultiEdit AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 58 135 переглядів Sha 17 листопада Модуль Subscribe_pro - улучшенная подписка на новости [Поддержка] Автор: Sunser, 22 квітня 2020 подписка подписка на новости (і ще %d) Теги: подписка подписка на новости подписка на акции подписка на новости и акции подписка на рассылку опенкарт рассылка уведомления почта слежение email email информер email рассылка email уведомления форма opencart модуль расширение opencart2 opencart3 opencart2x opencart 3x ocstore ocstore2 1 відповідь 1 834 перегляди AlexMax13 19 листопада 2020 Модуль SP Telegram повідомлення FREE [Поддержка] Автор: spectre, 27 вересня telegram telegram уведомления покупателей (і ще %d) Теги: telegram telegram уведомления покупателей telegram уведомления уведомления о заказе telegram заказ телеграм заказ opencart все равно никто не читает теги бесплатно халява телеграм бесплатно 8 відповідей 641 перегляд spectre 14 листопада [Поддержка] 1 2 3 4 292 Автор: markimax, 24 березня 2015 новости статьи (і ще %d) Теги: новости статьи отзывы галерея формы 7 294 відповіді 539 615 переглядів nykivanvas В четвер в 06:45 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Модулі та розширення Блоги, новости, статьи [Поддержка] News 1.5.5 | Новости 1.5.5 (v.3.3.1) Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
muha Опубліковано: 17 грудня 2014 Share Опубліковано: 17 грудня 2014 У вас не уникальный ЧПУ где то дубль для этой новости Создал еще несколько уникальных новостей с уникальным названием и чпу url, всеравно вроде ссылается на http://homeparfums.ru/news/n_test/, но редиректит на http://homeparfums.ru/news/?news_id=8 .. Надіслати Поділитися на інших сайтах More sharing options...
markimax Опубліковано: 17 грудня 2014 Share Опубліковано: 17 грудня 2014 Создал еше несколько уникальных новостей с уникальным названием и чпу url, всеравно вроде ссылается на http://homeparfums.ru/news/proverochnaya-novost/, но редиректит на http://homeparfums.ru/news/?news_id=8 .. Категория (ЧПУ) не уникальна :) Надіслати Поділитися на інших сайтах More sharing options... Helloween Опубліковано: 17 грудня 2014 Share Опубліковано: 17 грудня 2014 У меня вот тоже проблема с этим ЧПУ на новостях. Категория уникальна. Новость - тоже. А все равно параметры передает вместо ЧПУ. Надіслати Поділитися на інших сайтах More sharing options... muha Опубліковано: 17 грудня 2014 Share Опубліковано: 17 грудня 2014 При таком раскладе новость отображается корректно при условии очистки кэша (system/cache/ cache.seo_pro.1418996159) после создания новости Иначе видит как index.php?route=information/news&news_id=53 Есть идеи ? class ControllerCommonSeoPro extends Controller {private $cache_data = null;public function __construct($registry) {parent::__construct($registry);$this->cache_data = $this->cache->get('seo_pro');if (!$this->cache_data) {$query = $this->db->query("SELECT LOWER(`keyword`) as 'keyword', `query` FROM " . DB_PREFIX . "url_alias");$this->cache_data = array();foreach ($query->rows as $row) {$this->cache_data['keywords'][$row['keyword']] = $row['query'];$this->cache_data['queries'][$row['query']] = $row['keyword'];}$this->cache->set('seo_pro', $this->cache_data);}}public function index() {// Add rewrite to url classif ($this->config->get('config_seo_url')) {$this->url->addRewrite($this);} else {return;}// Decode URLif (!isset($this->request->get['_route_'])) {$this->validate();} else {$route_ = $route = $this->request->get['_route_'];unset($this->request->get['_route_']);$parts = explode('/', trim(utf8_strtolower($route), '/'));list($last_part) = explode('.', array_pop($parts));array_push($parts, $last_part);$rows = array();foreach ($parts as $keyword) {if (isset($this->cache_data['keywords'][$keyword])) {$rows[] = array('keyword' => $keyword, 'query' => $this->cache_data['keywords'][$keyword]);}}if (count($rows) == sizeof($parts)) {$queries = array();foreach ($rows as $row) {$queries[utf8_strtolower($row['keyword'])] = $row['query'];}reset($parts);foreach ($parts as $part) {$url = explode('=', $queries[$part], 2);if ($url[0] == 'category_id') {if (!isset($this->request->get['path'])) {$this->request->get['path'] = $url[1];} else {$this->request->get['path'] .= '_' . $url[1];}} elseif (count($url) > 1) {$this->request->get[$url[0]] = $url[1];}}} else {$this->request->get['route'] = 'error/not_found';}if (isset($this->request->get['product_id'])) {$this->request->get['route'] = 'product/product';if (!isset($this->request->get['path'])) {$path = $this->getPathByProduct($this->request->get['product_id']);if ($path) $this->request->get['path'] = $path;}} 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->cache_data['queries'][$route_])) {header($this->request->server['SERVER_PROTOCOL'] . ' 301 Moved Permanently');$this->response->redirect($this->cache_data['queries'][$route_]);} else {if (isset($queries[$parts[0]])) {$this->request->get['route'] = $queries[$parts[0]];}}$this->validate();if (isset($this->request->get['route'])) {return $this->forward($this->request->get['route']);}}}public function rewrite($link) {if (!$this->config->get('config_seo_url')) return $link;$seo_url = '';$component = parse_url(str_replace('&', '&', $link));$data = array();parse_str($component['query'], $data);$route = $data['route'];unset($data['route']);switch ($route) {case 'product/product':if (isset($data['product_id'])) {$tmp = $data;$data = array();if ($this->config->get('config_seo_url_include_path')) {$data['path'] = $this->getPathByProduct($tmp['product_id']);if (!$data['path']) return $link;}$data['product_id'] = $tmp['product_id'];if (isset($tmp['tracking'])) {$data['tracking'] = $tmp['tracking'];}}break;case 'product/category':if (isset($data['path'])) {$category = explode('_', $data['path']);$category = end($category);$data['path'] = $this->getPathByCategory($category);if (!$data['path']) return $link;}break;case 'product/product/review':case 'information/information/info':return $link;break;default:break;}if ($component['scheme'] == 'https') {$link = $this->config->get('config_ssl');} else {$link = $this->config->get('config_url');}$link .= 'index.php?route=' . $route;if (count($data)) {$link .= '&' . urldecode(http_build_query($data, '', '&'));}$queries = array();$is_news = false;foreach ($data as $key => $value) {switch ($key) {case 'product_id':case 'manufacturer_id':case 'category_id':case 'information_id':$queries[] = $key . '=' . $value;unset($data[$key]);$postfix = 1;break;case 'news_id':$queries[] = $key . '=' . $value;unset($data[$key]);$postfix = 1;$is_news = true;break;case 'path':$categories = explode('_', $value);foreach ($categories as $category) {$queries[] = 'category_id=' . $category;}unset($data[$key]);break;default:break;}}if(empty($queries)) {$queries[] = $route;}$rows = array();foreach($queries as $query) {if(isset($this->cache_data['queries'][$query])) {$rows[] = array('query' => $query, 'keyword' => $this->cache_data['queries'][$query]);}}if(count($rows) == count($queries)) {$aliases = array();foreach($rows as $row) {$aliases[$row['query']] = $row['keyword'];}foreach($queries as $query) {if ($is_news) {$seo_url .= '/news/' . rawurlencode($aliases[$query]);} else {$seo_url .= '/' . rawurlencode($aliases[$query]);}}}if ($seo_url == '') return $link;$seo_url = trim($seo_url, '/');if ($component['scheme'] == 'https') {$seo_url = $this->config->get('config_ssl') . $seo_url;} else {$seo_url = $this->config->get('config_url') . $seo_url;}if (isset($postfix)) {$seo_url .= trim($this->config->get('config_seo_url_postfix'));} else {$seo_url .= '/';}if(substr($seo_url, -2) == '//') {$seo_url = substr($seo_url, 0, -1);}if (count($data)) {$seo_url .= '?' . urldecode(http_build_query($data, '', '&'));}return $seo_url;}private function getPathByProduct($product_id) {$product_id = (int)$product_id;if ($product_id < 1) return false;static $path = null;if (!is_array($path)) {$path = $this->cache->get('product.seopath');if (!is_array($path)) $path = array();}if (!isset($path[$product_id])) {$query = $this->db->query("SELECT category_id FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . $product_id . "' ORDER BY main_category DESC LIMIT 1");$path[$product_id] = $this->getPathByCategory($query->num_rows ? (int)$query->row['category_id'] : 0);$this->cache->set('product.seopath', $path);}return $path[$product_id];}private function getPathByCategory($category_id) {$category_id = (int)$category_id;if ($category_id < 1) return false;static $path = null;if (!is_array($path)) {$path = $this->cache->get('category.seopath');if (!is_array($path)) $path = array();}if (!isset($path[$category_id])) {$max_level = 10;$sql = "SELECT CONCAT_WS('_'";for ($i = $max_level-1; $i >= 0; --$i) {$sql .= ",t$i.category_id";}$sql .= ") AS path FROM " . DB_PREFIX . "category t0";for ($i = 1; $i < $max_level; ++$i) {$sql .= " LEFT JOIN " . DB_PREFIX . "category t$i ON (t$i.category_id = t" . ($i-1) . ".parent_id)";}$sql .= " WHERE t0.category_id = '" . $category_id . "'";$query = $this->db->query($sql);$path[$category_id] = $query->num_rows ? $query->row['path'] : false;$this->cache->set('category.seopath', $path);}return $path[$category_id];}private function validate() {if (isset($this->request->get['route']) && $this->request->get['route'] == 'error/not_found') {return;}if(empty($this->request->get['route'])) {$this->request->get['route'] = 'common/home';}if (isset($this->request->server['HTTP_X_REQUESTED_WITH']) && strtolower($this->request->server['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {return;}if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) {$config_ssl = substr($this->config->get('config_ssl'), 0, $this->strpos_offset('/', $this->config->get('config_ssl'), 3) + 1);$url = str_replace('&', '&', $config_ssl . ltrim($this->request->server['REQUEST_URI'], '/'));$seo = str_replace('&', '&', $this->url->link($this->request->get['route'], $this->getQueryString(array('route')), 'SSL'));} else {$config_url = substr($this->config->get('config_url'), 0, $this->strpos_offset('/', $this->config->get('config_url'), 3) + 1);$url = str_replace('&', '&', $config_url . ltrim($this->request->server['REQUEST_URI'], '/'));$seo = str_replace('&', '&', $this->url->link($this->request->get['route'], $this->getQueryString(array('route')), 'NONSSL'));}if (rawurldecode($url) != rawurldecode($seo)) {header($this->request->server['SERVER_PROTOCOL'] . ' 301 Moved Permanently');$this->response->redirect($seo);}}private function strpos_offset($needle, $haystack, $occurrence) {// explode the haystack$arr = explode($needle, $haystack);// check the needle is not out of boundsswitch($occurrence) {case $occurrence == 0:return false;case $occurrence > max(array_keys($arr)):return false;default:return strlen(implode($needle, array_slice($arr, 0, $occurrence)));}}private function getQueryString($exclude = array()) {if (!is_array($exclude)) {$exclude = array();}return urldecode(http_build_query(array_diff_key($this->request->get, array_flip($exclude))));}}?> Надіслати Поділитися на інших сайтах More sharing options... Gylik Опубліковано: 21 грудня 2014 Share Опубліковано: 21 грудня 2014 Есть проблема, помогите решить. Делал все по инструкции. Изменил сео про и теперь генерирует сео и работает. Но! При нажатии на новость "читать далее" переходит на страницу с чпу all-news/valera-durak.html и пишет что она не найдена. ссылка all-news тож не находит. То и есть что ссылки поменялись на те что надо, но странички на самом деле остались под старым адресом. Где проблему искать. В базе может? Надіслати Поділитися на інших сайтах More sharing options... deposit Опубліковано: 23 грудня 2014 Share Опубліковано: 23 грудня 2014 Для тех, кто хотел добавить ссылку в футере (в подвале сайта), но не смог, думаю пригодится. 1) Для начала, заходим в: catalog/language/common/footer.php и добавляем: $_['text_news'] = 'Список новостей'; 2) Потом идем в: catalog/controller/common/footer.php в самом начале находим: <?php class ControllerCommonFooter extends Controller { protected function index() { $this->language->load('common/footer'); и после, ниже в списке, где-нибудь добавляем это: $this->data['text_news'] = $this->language->get('text_news'); 3) В зависимости от блока (где будет находиться ссылка на новости), у меня она в "Информации" Заходим в: catalog/view/theme/ВАША ТЕМА/template/common/footer.tpl Находим: <div id="footer"> <?php if ($informations) { ?> <div class="column"> <h3><?php echo $text_information; ?></h3> После добавляем: <ul> <li><a href="<?php echo $news; ?>"><?php echo $text_news; ?></a></li> На этом, вроде как всё. Если что-то упустил (в чем я очень сомневаюсь), допишу! ЗЫ: Автору, человеческое спасибо за модуль! Надіслати Поділитися на інших сайтах More sharing options... muha Опубліковано: 26 грудня 2014 Share Опубліковано: 26 грудня 2014 А вот пригодилась бы возможность делить новости на категории.. Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 26 грудня 2014 Share Опубліковано: 26 грудня 2014 А вот пригодилась бы возможность делить новости на категории.. Так есть же. Надіслати Поділитися на інших сайтах More sharing options... muha Опубліковано: 27 грудня 2014 Share Опубліковано: 27 грудня 2014 Так есть же. Что то не пойму, где же назначаются категории для новостей ? К примеру мне нужно на 1 странице выводить 1 список новостей, на 2 странице другой список новостей.. Надіслати Поділитися на інших сайтах More sharing options... Dart990 Опубліковано: 30 грудня 2014 Share Опубліковано: 30 грудня 2014 Что то не пойму, где же назначаются категории для новостей ? К примеру мне нужно на 1 странице выводить 1 список новостей, на 2 странице другой список новостей.. +1, тоже не вижу возможности добавлять категории. Такой функции нет ? Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 30 грудня 2014 Share Опубліковано: 30 грудня 2014 oops .. sorry, а категорий то действительно нету. Как так? какая разница с information тогда? Надіслати Поділитися на інших сайтах More sharing options... OldAine Опубліковано: 1 січня 2015 Автор Share Опубліковано: 1 січня 2015 +1, тоже не вижу возможности добавлять категории. Такой функции нет ? Нет. Надіслати Поділитися на інших сайтах More sharing options... Malinin Опубліковано: 8 січня 2015 Share Опубліковано: 8 січня 2015 можно ли установить этот модуть на Версия 1.5.6.4 ? Надіслати Поділитися на інших сайтах More sharing options... Назад 20 21 22 23 24 25 26 27 28 29 30 Вперед Сторінка 25 з 36 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Схожі публікації batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 472 перегляди Sha 15 березня 2017 batch [Поддержка] Універсальний масовий редактор товарів. MultiEdit AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 58 135 переглядів Sha 17 листопада Модуль Subscribe_pro - улучшенная подписка на новости [Поддержка] Автор: Sunser, 22 квітня 2020 подписка подписка на новости (і ще %d) Теги: подписка подписка на новости подписка на акции подписка на новости и акции подписка на рассылку опенкарт рассылка уведомления почта слежение email email информер email рассылка email уведомления форма opencart модуль расширение opencart2 opencart3 opencart2x opencart 3x ocstore ocstore2 1 відповідь 1 834 перегляди AlexMax13 19 листопада 2020 Модуль SP Telegram повідомлення FREE [Поддержка] Автор: spectre, 27 вересня telegram telegram уведомления покупателей (і ще %d) Теги: telegram telegram уведомления покупателей telegram уведомления уведомления о заказе telegram заказ телеграм заказ opencart все равно никто не читает теги бесплатно халява телеграм бесплатно 8 відповідей 641 перегляд spectre 14 листопада [Поддержка] 1 2 3 4 292 Автор: markimax, 24 березня 2015 новости статьи (і ще %d) Теги: новости статьи отзывы галерея формы 7 294 відповіді 539 615 переглядів nykivanvas В четвер в 06:45 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Модулі та розширення Блоги, новости, статьи [Поддержка] News 1.5.5 | Новости 1.5.5 (v.3.3.1) Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich
Helloween Опубліковано: 17 грудня 2014 Share Опубліковано: 17 грудня 2014 У меня вот тоже проблема с этим ЧПУ на новостях. Категория уникальна. Новость - тоже. А все равно параметры передает вместо ЧПУ. Надіслати Поділитися на інших сайтах More sharing options...
muha Опубліковано: 17 грудня 2014 Share Опубліковано: 17 грудня 2014 При таком раскладе новость отображается корректно при условии очистки кэша (system/cache/ cache.seo_pro.1418996159) после создания новости Иначе видит как index.php?route=information/news&news_id=53 Есть идеи ? class ControllerCommonSeoPro extends Controller {private $cache_data = null;public function __construct($registry) {parent::__construct($registry);$this->cache_data = $this->cache->get('seo_pro');if (!$this->cache_data) {$query = $this->db->query("SELECT LOWER(`keyword`) as 'keyword', `query` FROM " . DB_PREFIX . "url_alias");$this->cache_data = array();foreach ($query->rows as $row) {$this->cache_data['keywords'][$row['keyword']] = $row['query'];$this->cache_data['queries'][$row['query']] = $row['keyword'];}$this->cache->set('seo_pro', $this->cache_data);}}public function index() {// Add rewrite to url classif ($this->config->get('config_seo_url')) {$this->url->addRewrite($this);} else {return;}// Decode URLif (!isset($this->request->get['_route_'])) {$this->validate();} else {$route_ = $route = $this->request->get['_route_'];unset($this->request->get['_route_']);$parts = explode('/', trim(utf8_strtolower($route), '/'));list($last_part) = explode('.', array_pop($parts));array_push($parts, $last_part);$rows = array();foreach ($parts as $keyword) {if (isset($this->cache_data['keywords'][$keyword])) {$rows[] = array('keyword' => $keyword, 'query' => $this->cache_data['keywords'][$keyword]);}}if (count($rows) == sizeof($parts)) {$queries = array();foreach ($rows as $row) {$queries[utf8_strtolower($row['keyword'])] = $row['query'];}reset($parts);foreach ($parts as $part) {$url = explode('=', $queries[$part], 2);if ($url[0] == 'category_id') {if (!isset($this->request->get['path'])) {$this->request->get['path'] = $url[1];} else {$this->request->get['path'] .= '_' . $url[1];}} elseif (count($url) > 1) {$this->request->get[$url[0]] = $url[1];}}} else {$this->request->get['route'] = 'error/not_found';}if (isset($this->request->get['product_id'])) {$this->request->get['route'] = 'product/product';if (!isset($this->request->get['path'])) {$path = $this->getPathByProduct($this->request->get['product_id']);if ($path) $this->request->get['path'] = $path;}} 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->cache_data['queries'][$route_])) {header($this->request->server['SERVER_PROTOCOL'] . ' 301 Moved Permanently');$this->response->redirect($this->cache_data['queries'][$route_]);} else {if (isset($queries[$parts[0]])) {$this->request->get['route'] = $queries[$parts[0]];}}$this->validate();if (isset($this->request->get['route'])) {return $this->forward($this->request->get['route']);}}}public function rewrite($link) {if (!$this->config->get('config_seo_url')) return $link;$seo_url = '';$component = parse_url(str_replace('&', '&', $link));$data = array();parse_str($component['query'], $data);$route = $data['route'];unset($data['route']);switch ($route) {case 'product/product':if (isset($data['product_id'])) {$tmp = $data;$data = array();if ($this->config->get('config_seo_url_include_path')) {$data['path'] = $this->getPathByProduct($tmp['product_id']);if (!$data['path']) return $link;}$data['product_id'] = $tmp['product_id'];if (isset($tmp['tracking'])) {$data['tracking'] = $tmp['tracking'];}}break;case 'product/category':if (isset($data['path'])) {$category = explode('_', $data['path']);$category = end($category);$data['path'] = $this->getPathByCategory($category);if (!$data['path']) return $link;}break;case 'product/product/review':case 'information/information/info':return $link;break;default:break;}if ($component['scheme'] == 'https') {$link = $this->config->get('config_ssl');} else {$link = $this->config->get('config_url');}$link .= 'index.php?route=' . $route;if (count($data)) {$link .= '&' . urldecode(http_build_query($data, '', '&'));}$queries = array();$is_news = false;foreach ($data as $key => $value) {switch ($key) {case 'product_id':case 'manufacturer_id':case 'category_id':case 'information_id':$queries[] = $key . '=' . $value;unset($data[$key]);$postfix = 1;break;case 'news_id':$queries[] = $key . '=' . $value;unset($data[$key]);$postfix = 1;$is_news = true;break;case 'path':$categories = explode('_', $value);foreach ($categories as $category) {$queries[] = 'category_id=' . $category;}unset($data[$key]);break;default:break;}}if(empty($queries)) {$queries[] = $route;}$rows = array();foreach($queries as $query) {if(isset($this->cache_data['queries'][$query])) {$rows[] = array('query' => $query, 'keyword' => $this->cache_data['queries'][$query]);}}if(count($rows) == count($queries)) {$aliases = array();foreach($rows as $row) {$aliases[$row['query']] = $row['keyword'];}foreach($queries as $query) {if ($is_news) {$seo_url .= '/news/' . rawurlencode($aliases[$query]);} else {$seo_url .= '/' . rawurlencode($aliases[$query]);}}}if ($seo_url == '') return $link;$seo_url = trim($seo_url, '/');if ($component['scheme'] == 'https') {$seo_url = $this->config->get('config_ssl') . $seo_url;} else {$seo_url = $this->config->get('config_url') . $seo_url;}if (isset($postfix)) {$seo_url .= trim($this->config->get('config_seo_url_postfix'));} else {$seo_url .= '/';}if(substr($seo_url, -2) == '//') {$seo_url = substr($seo_url, 0, -1);}if (count($data)) {$seo_url .= '?' . urldecode(http_build_query($data, '', '&'));}return $seo_url;}private function getPathByProduct($product_id) {$product_id = (int)$product_id;if ($product_id < 1) return false;static $path = null;if (!is_array($path)) {$path = $this->cache->get('product.seopath');if (!is_array($path)) $path = array();}if (!isset($path[$product_id])) {$query = $this->db->query("SELECT category_id FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . $product_id . "' ORDER BY main_category DESC LIMIT 1");$path[$product_id] = $this->getPathByCategory($query->num_rows ? (int)$query->row['category_id'] : 0);$this->cache->set('product.seopath', $path);}return $path[$product_id];}private function getPathByCategory($category_id) {$category_id = (int)$category_id;if ($category_id < 1) return false;static $path = null;if (!is_array($path)) {$path = $this->cache->get('category.seopath');if (!is_array($path)) $path = array();}if (!isset($path[$category_id])) {$max_level = 10;$sql = "SELECT CONCAT_WS('_'";for ($i = $max_level-1; $i >= 0; --$i) {$sql .= ",t$i.category_id";}$sql .= ") AS path FROM " . DB_PREFIX . "category t0";for ($i = 1; $i < $max_level; ++$i) {$sql .= " LEFT JOIN " . DB_PREFIX . "category t$i ON (t$i.category_id = t" . ($i-1) . ".parent_id)";}$sql .= " WHERE t0.category_id = '" . $category_id . "'";$query = $this->db->query($sql);$path[$category_id] = $query->num_rows ? $query->row['path'] : false;$this->cache->set('category.seopath', $path);}return $path[$category_id];}private function validate() {if (isset($this->request->get['route']) && $this->request->get['route'] == 'error/not_found') {return;}if(empty($this->request->get['route'])) {$this->request->get['route'] = 'common/home';}if (isset($this->request->server['HTTP_X_REQUESTED_WITH']) && strtolower($this->request->server['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {return;}if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) {$config_ssl = substr($this->config->get('config_ssl'), 0, $this->strpos_offset('/', $this->config->get('config_ssl'), 3) + 1);$url = str_replace('&', '&', $config_ssl . ltrim($this->request->server['REQUEST_URI'], '/'));$seo = str_replace('&', '&', $this->url->link($this->request->get['route'], $this->getQueryString(array('route')), 'SSL'));} else {$config_url = substr($this->config->get('config_url'), 0, $this->strpos_offset('/', $this->config->get('config_url'), 3) + 1);$url = str_replace('&', '&', $config_url . ltrim($this->request->server['REQUEST_URI'], '/'));$seo = str_replace('&', '&', $this->url->link($this->request->get['route'], $this->getQueryString(array('route')), 'NONSSL'));}if (rawurldecode($url) != rawurldecode($seo)) {header($this->request->server['SERVER_PROTOCOL'] . ' 301 Moved Permanently');$this->response->redirect($seo);}}private function strpos_offset($needle, $haystack, $occurrence) {// explode the haystack$arr = explode($needle, $haystack);// check the needle is not out of boundsswitch($occurrence) {case $occurrence == 0:return false;case $occurrence > max(array_keys($arr)):return false;default:return strlen(implode($needle, array_slice($arr, 0, $occurrence)));}}private function getQueryString($exclude = array()) {if (!is_array($exclude)) {$exclude = array();}return urldecode(http_build_query(array_diff_key($this->request->get, array_flip($exclude))));}}?> Надіслати Поділитися на інших сайтах More sharing options...
Gylik Опубліковано: 21 грудня 2014 Share Опубліковано: 21 грудня 2014 Есть проблема, помогите решить. Делал все по инструкции. Изменил сео про и теперь генерирует сео и работает. Но! При нажатии на новость "читать далее" переходит на страницу с чпу all-news/valera-durak.html и пишет что она не найдена. ссылка all-news тож не находит. То и есть что ссылки поменялись на те что надо, но странички на самом деле остались под старым адресом. Где проблему искать. В базе может? Надіслати Поділитися на інших сайтах More sharing options...
deposit Опубліковано: 23 грудня 2014 Share Опубліковано: 23 грудня 2014 Для тех, кто хотел добавить ссылку в футере (в подвале сайта), но не смог, думаю пригодится. 1) Для начала, заходим в: catalog/language/common/footer.php и добавляем: $_['text_news'] = 'Список новостей'; 2) Потом идем в: catalog/controller/common/footer.php в самом начале находим: <?php class ControllerCommonFooter extends Controller { protected function index() { $this->language->load('common/footer'); и после, ниже в списке, где-нибудь добавляем это: $this->data['text_news'] = $this->language->get('text_news'); 3) В зависимости от блока (где будет находиться ссылка на новости), у меня она в "Информации" Заходим в: catalog/view/theme/ВАША ТЕМА/template/common/footer.tpl Находим: <div id="footer"> <?php if ($informations) { ?> <div class="column"> <h3><?php echo $text_information; ?></h3> После добавляем: <ul> <li><a href="<?php echo $news; ?>"><?php echo $text_news; ?></a></li> На этом, вроде как всё. Если что-то упустил (в чем я очень сомневаюсь), допишу! ЗЫ: Автору, человеческое спасибо за модуль! Надіслати Поділитися на інших сайтах More sharing options...
muha Опубліковано: 26 грудня 2014 Share Опубліковано: 26 грудня 2014 А вот пригодилась бы возможность делить новости на категории.. Надіслати Поділитися на інших сайтах More sharing options...
markimax Опубліковано: 26 грудня 2014 Share Опубліковано: 26 грудня 2014 А вот пригодилась бы возможность делить новости на категории.. Так есть же. Надіслати Поділитися на інших сайтах More sharing options... muha Опубліковано: 27 грудня 2014 Share Опубліковано: 27 грудня 2014 Так есть же. Что то не пойму, где же назначаются категории для новостей ? К примеру мне нужно на 1 странице выводить 1 список новостей, на 2 странице другой список новостей.. Надіслати Поділитися на інших сайтах More sharing options... Dart990 Опубліковано: 30 грудня 2014 Share Опубліковано: 30 грудня 2014 Что то не пойму, где же назначаются категории для новостей ? К примеру мне нужно на 1 странице выводить 1 список новостей, на 2 странице другой список новостей.. +1, тоже не вижу возможности добавлять категории. Такой функции нет ? Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 30 грудня 2014 Share Опубліковано: 30 грудня 2014 oops .. sorry, а категорий то действительно нету. Как так? какая разница с information тогда? Надіслати Поділитися на інших сайтах More sharing options... OldAine Опубліковано: 1 січня 2015 Автор Share Опубліковано: 1 січня 2015 +1, тоже не вижу возможности добавлять категории. Такой функции нет ? Нет. Надіслати Поділитися на інших сайтах More sharing options... Malinin Опубліковано: 8 січня 2015 Share Опубліковано: 8 січня 2015 можно ли установить этот модуть на Версия 1.5.6.4 ? Надіслати Поділитися на інших сайтах More sharing options... Назад 20 21 22 23 24 25 26 27 28 29 30 Вперед Сторінка 25 з 36 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Схожі публікації batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 472 перегляди Sha 15 березня 2017 batch [Поддержка] Універсальний масовий редактор товарів. MultiEdit AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 58 135 переглядів Sha 17 листопада Модуль Subscribe_pro - улучшенная подписка на новости [Поддержка] Автор: Sunser, 22 квітня 2020 подписка подписка на новости (і ще %d) Теги: подписка подписка на новости подписка на акции подписка на новости и акции подписка на рассылку опенкарт рассылка уведомления почта слежение email email информер email рассылка email уведомления форма opencart модуль расширение opencart2 opencart3 opencart2x opencart 3x ocstore ocstore2 1 відповідь 1 834 перегляди AlexMax13 19 листопада 2020 Модуль SP Telegram повідомлення FREE [Поддержка] Автор: spectre, 27 вересня telegram telegram уведомления покупателей (і ще %d) Теги: telegram telegram уведомления покупателей telegram уведомления уведомления о заказе telegram заказ телеграм заказ opencart все равно никто не читает теги бесплатно халява телеграм бесплатно 8 відповідей 641 перегляд spectre 14 листопада [Поддержка] 1 2 3 4 292 Автор: markimax, 24 березня 2015 новости статьи (і ще %d) Теги: новости статьи отзывы галерея формы 7 294 відповіді 539 615 переглядів nykivanvas В четвер в 06:45 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Модулі та розширення Блоги, новости, статьи [Поддержка] News 1.5.5 | Новости 1.5.5 (v.3.3.1)
muha Опубліковано: 27 грудня 2014 Share Опубліковано: 27 грудня 2014 Так есть же. Что то не пойму, где же назначаются категории для новостей ? К примеру мне нужно на 1 странице выводить 1 список новостей, на 2 странице другой список новостей.. Надіслати Поділитися на інших сайтах More sharing options...
Dart990 Опубліковано: 30 грудня 2014 Share Опубліковано: 30 грудня 2014 Что то не пойму, где же назначаются категории для новостей ? К примеру мне нужно на 1 странице выводить 1 список новостей, на 2 странице другой список новостей.. +1, тоже не вижу возможности добавлять категории. Такой функции нет ? Надіслати Поділитися на інших сайтах More sharing options...
markimax Опубліковано: 30 грудня 2014 Share Опубліковано: 30 грудня 2014 oops .. sorry, а категорий то действительно нету. Как так? какая разница с information тогда? Надіслати Поділитися на інших сайтах More sharing options... OldAine Опубліковано: 1 січня 2015 Автор Share Опубліковано: 1 січня 2015 +1, тоже не вижу возможности добавлять категории. Такой функции нет ? Нет. Надіслати Поділитися на інших сайтах More sharing options... Malinin Опубліковано: 8 січня 2015 Share Опубліковано: 8 січня 2015 можно ли установить этот модуть на Версия 1.5.6.4 ? Надіслати Поділитися на інших сайтах More sharing options... Назад 20 21 22 23 24 25 26 27 28 29 30 Вперед Сторінка 25 з 36 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Схожі публікації batch Універсальний масовий редактор товарів. MultiEdit AI Автор: Sha, 15 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 0 коментарів 57 472 перегляди Sha 15 березня 2017 batch [Поддержка] Універсальний масовий редактор товарів. MultiEdit AI 1 2 3 4 11 Автор: Sha, 16 березня 2017 top sale (і ще %d) Теги: top sale chat gpt pro атрибуты опции массовое редактирование editor products скидки мета мета-теги пакетное редактирование товаров админка групповое массовое массовая продукты быстрое изменение добавление добавить цена цены опций акции управление статус обработка категорий премиум групповая скидка товар стоимость валюта прайс price акция категория корзина продажа продажи баллы отзывы статьи галерея заказ быстрый обновление цены ocmod atribute модели автодополнение снипеты скорость модуль блоки форма product наполнение интернетмагазина обновление товар опции в категории универсальный рекомендуем opencart фильтр filter регистрация опция изменить товары категории производители українською українська chatgpt chatbots multi multiedit search replace replacer find search and replace find and replace edit seo faq seo faq filter products filter opencart filter for brands filter for products filter pro filteroc ocfilter oc filter open openai opencart ai ai opencart new 253 відповіді 58 135 переглядів Sha 17 листопада Модуль Subscribe_pro - улучшенная подписка на новости [Поддержка] Автор: Sunser, 22 квітня 2020 подписка подписка на новости (і ще %d) Теги: подписка подписка на новости подписка на акции подписка на новости и акции подписка на рассылку опенкарт рассылка уведомления почта слежение email email информер email рассылка email уведомления форма opencart модуль расширение opencart2 opencart3 opencart2x opencart 3x ocstore ocstore2 1 відповідь 1 834 перегляди AlexMax13 19 листопада 2020 Модуль SP Telegram повідомлення FREE [Поддержка] Автор: spectre, 27 вересня telegram telegram уведомления покупателей (і ще %d) Теги: telegram telegram уведомления покупателей telegram уведомления уведомления о заказе telegram заказ телеграм заказ opencart все равно никто не читает теги бесплатно халява телеграм бесплатно 8 відповідей 641 перегляд spectre 14 листопада [Поддержка] 1 2 3 4 292 Автор: markimax, 24 березня 2015 новости статьи (і ще %d) Теги: новости статьи отзывы галерея формы 7 294 відповіді 539 615 переглядів nykivanvas В четвер в 06:45 Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
OldAine Опубліковано: 1 січня 2015 Автор Share Опубліковано: 1 січня 2015 +1, тоже не вижу возможности добавлять категории. Такой функции нет ? Нет. Надіслати Поділитися на інших сайтах More sharing options... Malinin Опубліковано: 8 січня 2015 Share Опубліковано: 8 січня 2015 можно ли установить этот модуть на Версия 1.5.6.4 ? Надіслати Поділитися на інших сайтах More sharing options... Назад 20 21 22 23 24 25 26 27 28 29 30 Вперед Сторінка 25 з 36 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0
Malinin Опубліковано: 8 січня 2015 Share Опубліковано: 8 січня 2015 можно ли установить этот модуть на Версия 1.5.6.4 ? Надіслати Поділитися на інших сайтах More sharing options...
Recommended Posts