-
Posts
91 -
Joined
-
Last visited
Content Type
Profiles
Forums
Marketplace
Articles
FAQ
Our New
Store
Blogs
module__dplus_manager
Everything posted by lakbor
-
В файле: /catalog/language/_ЯЗЫК_/product/product.php $_['tab_attribute'] PS pardon me, эт не те характеристики xD
- 11 replies
-
- opencart 1.5.
- верстка
-
(and 2 more)
Tagged with:
-
Не формируются автоматически ЧПУ
lakbor replied to biga's topic in Opencart 2.x: Setting and optimization
Посмотрите прописаны ли чпу в таблице url_alias. Например для OpenCart по умолчанию НЕ ПРОПИСАНЫ урлы для стандартных вещей типа корзины, оформления заказов, аккаунта и т.д. Это реализовано пока что только в СеоПро (добавление этого контента при установке) -
Насчёт дублей это скорее одному СЕОшнику известно) код писался под СЕО цели, и не вижу проблем с дублями, увы. Идея как раз и была в том, чтобы избавиться от дублей, при этом имея указанную выше вложенность. То есть, на примере тех же Ауди-БМВ: у нас есть страница /brands/audi (/product/manufacturer/info) - там инфо о бренде и все товары к нему привязанные; ещё у нас есть страница в каталоге /cataдogue/audi - на ней уже информация о запчастях, рассортированная по понятным категориям (кузов, подвеска и т.д.) а ещё добавим (для примера, так-то идея плохая)) /catalogue/akcii/audi - сюда разместим акции на товары для Ауди ну и ещё можно написать статьи по чему-либо, связанному с Ауди: /statii/audi По сути сейчас такая вложенность делается через прибавление циферок 1,2,3 и так до бесконечности) [ну или как в престашопе добавлением ID ко всему, что движется] Точнее не уникальная страница, а одна и та же, а вот в моем модуле как раз таки уникальная в зависимости от вложенности) хотя смотря что считать уникальным))) Решал конкретную задачу, и, как показала практика, решил) Насчёт понадобится - не понадобится. Ради этого вопроса пост и писался. Как я вижу проблему: по работе регулярно требуется реализовать подобную структуру, другое дело что большинство сайтов на другой CMS, у которой нет пунктика насчёт уникальности alias на всю систему. Пришёл магазин на OpenCart и вот пошло-поехало) Если действительно никому нафиг не будет нужно сиё творение, без вопросов закроем тему - буду кататься на велике сам Спасибо, приму к сведению
-
Эти пару строк я дёрнул из SeoPro, дабы не изобретать велосипед с перенаправлениями и не обратил внимания... Если я правильно понимаю, то можно просто заменить константу на HTTPS_SERVER, и тогда в случае если сайт на ssl, адрес получится с https, а если без ssl, то с обычным http. (у меня по-крайней мере в конфиге в обеих константах адрес с http:// забит => моя теория должна работать)) Спасибо за замечание, проверю как смогу и в след версии поправлю.
-
Приветствую вас, товарищи форумчане! У меня по рабочей необходимости родился сео-модуль, решающий важную, как мне кажется, задачу. Он позволяет создавать (отображать точнее) вложенности с одинаковыми alias. Например: Разные категории с одинаковыми alias: http://localhost/catalogue/audi/kapoty http://localhost/catalogue/bmw/kapoty http://localhost/catalogue/mercedes/kapoty Или вдобавок к ним страницы брендов: http://localhost/brands/audi http://localhost/brands/bmw http://localhost/brands/mercedes Почему я написал этот модуль? На момент работы над одним сайтом потребовались одинаковые подкатегории в разных родительских. Сначала думал подправить SeoPro, но посмотрел как в нём устроено кэширование и всё остальное, и решил, что переписывать придётся слишком много, я запутаюсь в коде, и ничем хорошим это не кончится. Итак, этот модуль выдаёт тот же результат, что и SeoPro при обычных обстоятельствах, а при наличии одинаковых alias - не очкует и показывает нужную страницу)) Работает с той же колонкой, что и SeoPro: main_category (для совместимости двух модулей решил не вводить ничего лишнего в БД) Алгоритм отличается как от SeoUrl, так и от SeoPro. В планах доработать следующие моменты: Хлебные крошки выводят, так сказать, канонический путь, а не тот по которому шёл клиент. Я считаю это неправильным, и исправлю в скором времени. У модуля нет установщика, а это ни разу не круто. Но модуль ещё сырой, простим ему это. Хочу сделать красивую админ.страницу для настроек модуля, а они обязательно понадобятся. Сейчас кэширование производится в одном файле, хочу сделать два, так будет правильнее. Не реализовано добавление / изменение чпушек с одинаковыми alias в админке, пока что только через БД. Скоро перепишу код проверки. Установка: 1. скопировать seo_bro.php в папку /content/controller/common/ 2. скопировать файл pagination.php в /system/modification/system/library/ * pagination.php это отредактированный родной файл - там убраны дубли первой страницы пагинации ( ?page=1 - когда находишься дальше первой страницы) - необязательный файл, просто тогда останутся несколько дублей Чтобы присвоить категориям одинаковые alias, сначала нужно их сохранить под разными, а потом в БД подправить на одинаковые. Знаю, пока просто не дописал эту часть. Не кидайте только в меня помидорками - я в процессе переработки фильтра полей при заполнении поля, идущего в url_alias. Потестить вы и так сможете, ну или подождите пока допишу (пишу во нерабочее время, поэтому долго). Активация: В той сборке, для которой изначально создавался модуль ( а он пока не тестировался на других:( ), он включался влоб, в index.php: // SEO URL's $controller->addPreAction(new Action('common/seo_bro')); Если же всё-таки версия ocStore, то там это дело вкл в БД, либо в контроллере админки надо приписать по аналогии с SeoPro *Ещё раз подчёркиваю, что версия сырая, на любителя) но если проявите интерес и подождёте, то я таки превращу эту штуковину в конфетку. Итак, чего я, собственно, тут хочу) Прошу камрадов потестить модуль, сказать нужен ли он вообще сообществу, стоит ли допиливать его до полноценного продукта, который не стыдно в раздел Дополнения запихнуть) К критике отношусь спокойно, просто будьте вежливыми. Сайт, на котором проводилось тестирование, к сожалению, работает на OpenCart 2.1._что-то-там_ (а не на ocStore). SeoPro был установлен владельцем сайта, соответственно в админке уже было поле "Главная категория" у продукта и столбец main_category в БД. Больше всего интересует нужно ли вообще это чудо сообществу (если да, то я впихну со временем туда кучу плюшек типа массового редактирования main_category, url_alias и некоторых настроек модуля типа кнопок сброса, вкл/откл кэша и т.д.) Ах да, совсем забыл! Модуль я назвал SeoBro)) Спасибо за внимание! pagination.php seo_bro.php
-
Обратный звонок с регистрацией в админке (callback)
lakbor reviewed vilija's file in Customer Support & Chat
-
- callback
- обратный звонок
-
(and 1 more)
Tagged with:
-
Footer сдвигается на статьях
lakbor replied to Serkap's topic in Шаблони, дизайн та оформлення магазину
мне иногда кажется, что я пишу в пустоту... ищите в браузере! там отображается вёрстка в готовом виде, собранная из всех модулей, шаблонов с применением всех актуальных стилей. ошибки ищут там, а когда понятно отчего летит вёрстка, становится понятно что править. -
Footer сдвигается на статьях
lakbor replied to Serkap's topic in Шаблони, дизайн та оформлення магазину
файл самый стандартный, проблема не в нём Советую всё же сначала поискать косяки в браузере. перелопачивать все файлы подряд плохая идея. ещё проверьте исходный код содержимого страницы на предмет чего-то лишнего (вырубите WYSIWYG нафиг) -
Footer сдвигается на статьях
lakbor replied to Serkap's topic in Шаблони, дизайн та оформлення магазину
для начала в браузере. для хрома и лисы - <Ctrl>+<Shift>+i затем на иконку: Здесь можно отследить куда, что и почему уехало. можно редактировать в режиме реального времени (только до перезагрузки страницы, разумеется) А вот когда станет ясна причина - можно править файлы. Шаблон статических страниц находится тут: /catalog/view/theme/_ваша_тема_/template/information/information.tpl если едут контакты, то т.к. это 2 файла, то либо там одинаковые ошибки, либо косяк где-то раньше. проверьте шаблон левого меню, например -
Footer сдвигается на статьях
lakbor replied to Serkap's topic in Шаблони, дизайн та оформлення магазину
Судя по скрину, у вас поехал не только футер, но и остальная вёрстка: хлебные крошки под левым меню, там же заголовок и текст статьи. Варианты такие: ошибка в вёрстке шаблона страниц (если бутстрэп, то могут быть классы не дописаны, несоблюдена вложенность <div>) , лишний и(или) незакрытый тэг типа <div>, наоборот лишний закрывающий <div> (тэги могут быть в тексте страницы например) Более подробно можно сказать только заглянув в исходный код -
Как сделать атрибуты с лева от картинки
lakbor replied to paullugin's topic in Opencart 2.x: General questions
В файлике: /catalog/view/theme/_название_темы_/template/product/product.tpl Нужно вырезать код: <?php if ($attribute_groups) { ?> <div class="tab-pane" id="tab-specification"> <table class="table table-bordered"> <?php foreach ($attribute_groups as $attribute_group) { ?> <thead> <tr> <td colspan="2"><strong><?php echo $attribute_group['name']; ?></strong></td> </tr> </thead> <tbody> <?php foreach ($attribute_group['attribute'] as $attribute) { ?> <tr> <td><?php echo $attribute['name']; ?></td> <td><?php echo $attribute['text']; ?></td> </tr> <?php } ?> </tbody> <?php } ?> </table> </div> <?php } ?> И вставить его в этом же файле в нужное место. например перед ценой: <h1><?php echo $heading_title; ?></h1> <ul class="list-unstyled"> <?php if ($manufacturer) { ?> <li><?php echo $text_manufacturer; ?> <a href="<?php echo $manufacturers; ?>"><?php echo $manufacturer; ?></a></li> <?php } ?> <li><?php echo $text_model; ?> <?php echo $model; ?></li> <?php if ($reward) { ?> <li><?php echo $text_reward; ?> <?php echo $reward; ?></li> <?php } ?> <li><?php echo $text_stock; ?> <?php echo $stock; ?></li> </ul> <?php if ($attribute_groups) { ?> <div class="tab-pane" id="tab-specification"> <table class="table table-bordered"> <?php foreach ($attribute_groups as $attribute_group) { ?> <thead> <tr> <td colspan="2"><strong><?php echo $attribute_group['name']; ?></strong></td> </tr> </thead> <tbody> <?php foreach ($attribute_group['attribute'] as $attribute) { ?> <tr> <td><?php echo $attribute['name']; ?></td> <td><?php echo $attribute['text']; ?></td> </tr> <?php } ?> </tbody> <?php } ?> </table> </div> <?php } ?> <?php if ($price) { ?> <ul class="list-unstyled"> <?php if (!$special) { ?> <li> <h2><?php echo $price; ?></h2> </li> <?php } else { ?> <li><span style="text-decoration: line-through;"><?php echo $price; ?></span></li> <li> <h2><?php echo $special; ?></h2> </li> <?php } ?> Затем убрать вот эти три строки: <?php if ($attribute_groups) { ?> <li><a href="#tab-specification" data-toggle="tab"><?php echo $tab_attribute; ?></a></li> <?php } ?> Выглядеть будет вот так: -
[Решено?..] Изменение функции кнопки "Купить"
lakbor replied to Avrel's topic in Шаблони, дизайн та оформлення магазину
Если проще, то: 1. Ищете шаблоны модулей и шаблон вывода категорий. Категории: /catalog/view/theme/ВАШ_ШАБЛОН/template/product/category.tpl Модули /catalog/view/theme/ВАШ_ШАБЛОН/template/module/ИМЯ_МОДУЛЯ 2. В строке похожей на эту: <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span></button> всё, что находится внутри двойных кавычек обработчика onClick заменяете на: location.href='<?php echo $product['href']; ?>'; Таким образом у меня получается строка: <button type="button" onclick="location.href='<?php echo $product['href']; ?>';"><i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span></button> У вас код может немного отличаться т.к. свою строку для примера я взял с версии ocStore 2.1 из шаблона default Отличаться могут какие-либо параметры, но суть всё равно остаётся та же самая. -
[Решено?..] Изменение функции кнопки "Купить"
lakbor replied to Avrel's topic in Шаблони, дизайн та оформлення магазину
В шаблоне модуля (для примера возьмём featured): <h3><?php echo $heading_title; ?></h3> <div class="row"> <?php foreach ($products as $product) { ?> <div class="product-layout col-lg-3 col-md-3 col-sm-6 col-xs-12"> <div class="product-thumb transition"> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" title="<?php echo $product['name']; ?>" class="img-responsive" /></a></div> <div class="caption"> <h4><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></h4> <p><?php echo $product['description']; ?></p> <?php if ($product['rating']) { ?> <div class="rating"> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($product['rating'] < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-2x"></i><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } ?> <?php } ?> </div> <?php } ?> <?php if ($product['price']) { ?> <p class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-new"><?php echo $product['special']; ?></span> <span class="price-old"><?php echo $product['price']; ?></span> <?php } ?> <?php if ($product['tax']) { ?> <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span> <?php } ?> </p> <?php } ?> </div> <div class="button-group"> <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span></button> <button type="button" data-toggle="tooltip" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-heart"></i></button> <button type="button" data-toggle="tooltip" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-exchange"></i></button> </div> </div> </div> <?php } ?> </div> конструкция <?php echo $product['href']; ?> выводит адрес карточки товара. Вот эту самую ссылку вам надо засунуть в конпку. Насколько я помню кнопкам ссылки не присваиваются, но можно заменить кнопку на ссылку, а ссылке задать ксс стиль, чтобы она выглядела как кнопка. Описано тут: http://htmlbook.ru/practical/ssylka-kak-knopka Соответственно ссылка будет выглядеть вот так: <a href="<?php echo $product['href']; ?>" class="my_button_class">КУПИТЬ</a> Имо, идеальный вариант. Если непременно нужно оставить кнопку, то на событие onClick нужно повесить переход по ссылке вместо отправки товара в корзину типа такого: <button type="button" onclick="location.href='<?php echo $product['href']; ?>';">KUPIT</button> -
[Решено?..] Изменение функции кнопки "Купить"
lakbor replied to Avrel's topic in Шаблони, дизайн та оформлення магазину
Можно поменять href кнопки на href с картинки как вариант upd. во всех шаблонах соответственно -
если нужна просто первая фотка, то можно сделать так (согласно приведённому коду, как в реальности не проверял) $imgs = $this->model_catalog_product->getProductImages($result['product_id']); $imgt = ['popup' => $this->model_tool_image->resize($imgs[0]['image'], $this->config->get('config_image_popup_width'), $this->config->get('config_image_popup_height')), 'thumb' => $this->model_tool_image->resize($imgs[0]['image'], $this->config->get('config_image_additional_width'), $this->config->get('config_image_additional_height')) ]; upd. Либо в шаблоне выводить только $imgt[0]
- 1 reply
-
- 1
-
-
тогда у человека не выполняется условие
-
Если я правильно понял, то действуем так: 1. в корне создаём папку glavnaya 2. заходим на сервер по SSH, переходим в каталог /glavnaya (понятия не имею как ещё можно создать символьную ссылку, может какие фтп клиенты умеют)) (upd. - можно попробовать через php функции exec(), system() или `` - если конечно сервер пропустит) 3. создаём символьные ссылки на index.php и config.php командами: ln -s ../index.php и ln -s ../config.php 4. дописываем в .htaccess, котрый в корне сайта: RewriteCond %{REQUEST_URI} ^/$ RewriteRule ^(.*)$ http://ВАШ_САЙТ/glavnaya/ [R=301,L] МЕЖДУ: RewriteBase / RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L] RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L] RewriteRule ^system/download/(.*) index.php?route=error/not_found [L] И: RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css) RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA] ТО есть после правок эта часть .хтаксесса будет такой: RewriteBase / RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L] RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L] RewriteRule ^system/download/(.*) index.php?route=error/not_found [L] RewriteCond %{REQUEST_URI} ^/$ RewriteRule ^(.*)$ http://ВАШ_САЙТ/glavnaya/ [R=301,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css) RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA] 5. ГОТОВО. P.S. Если что, браузеры кэшируют редиректы, поэтому пользуйтесь режимом ИНЕОГНИТО, если будете экспериментировать с редиректами
-
Залейте дамп БД на новое место, либо подключитесь к старой, если она поддерживает подключения извне. Вы же делали дамп БД перед переносом?
-
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
всегда пожалуйста, обращайтесь) -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
Прошу прощения, мой косяк. когда копировал код, прозевал первую строчку добавьте перед всем тем, что вставляли (но всё ещё в теле цикла): $my_product = array(); Должно быть вот так: foreach ($results as $result) { $my_product = array(); // вот её я проглядел $my_order_info = $this->model_sale_order->getOrder($result['order_id']); $my_products = $this->model_sale_order->getOrderProducts($result['order_id']); // и далее как надо -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
в тпл после (вверху, у меня это 17я строка) <div class="container-fluid"> вставьте: <div> <pre> <?php print_r($orders); ?> </pre> </div> обновите страницу и напишите сюда что выведется в серой табличке (достаточно будет части массива по одному заказу (если их несколько)) Предполагаю что админка тестовая, в противном случае замените непубличные данные чем-нибудь типа звездочек, когда будете сюда копировать -
[Решено] адрес клиента в order list
lakbor replied to cinema4d's topic in Допомога програмістам та розробникам
а, ну разумеется Должно быть вот так: foreach ($results as $result) { $my_order_info = $this->model_sale_order->getOrder($result['order_id']); $my_products = $this->model_sale_order->getOrderProducts($result['order_id']); foreach ($my_products as $product) { $my_product[] = array( 'order_product_id' => $product['order_product_id'], 'product_id' => $product['product_id'], 'name' => $product['name'], 'model' => $product['model'], 'quantity' => $product['quantity'], ); } а у вас это всё (строки 168 - 179 по вашему файлу) ПЕРЕД циклом внесите в цикл, и всё получится