Redje

При включении SeoPro перестает работать QuickView

Рекомендуемые сообщения

Redje    5

В магазине реализованном на ocStore v1.5.5.1.1 при включении SeoPro перестает работать функция быстрого просмотра товара (QuickView).

Окно открывается как и положено, но вместо карточки товара в фрейме загружается весь сайт

Со стандартным чпу все работает нормально.
Буду признателен за подсказку.

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
chukcha    933

Вы бы сайт показали...

с включенным SeoPro

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Redje    5

Вы правы конечно.

Просто первый мой магазин на OpenCart. Дизайн шаблонный. К тому же, еще в стадии доработки...

Ну да ладно

 

Заранее спасибо за помощь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
chukcha    933

Покажите код, как вы формируете ссылку для quickview

т..е.

в коде шаблона

там где в выводите

<a class="quickview" href="h**p://****-systems.ru/bumajnik-mujskoi-dc-naturalnaya-koja-km-002.html" data-height="510" data-width="700">Просмотр</a>

дело в том, что эту ссылку нельзя "прогонять" через

$this->url->link(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Redje    5

Честно говоря я в php не особо.

В category.tpl насколько я смог разобраться quickview вызывается так:

 if (typeof(init_quickview) === 'function') {
      init_quickview();
    }

А сам quickview вроде тут.

 

дело в том, что эту ссылку нельзя "прогонять" через

$this->url->link(

 

Да но при включенном стандартном seo все работает.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
chukcha    933

Да я увидел

 

в том-то и дело, что в данном случае шаблон не подключается, а подключается шаблон продукта, потому что

 в коде прописан полный путь

<a class="quickview" href="h**tp://center-systems.ru/koshelek-toni-perotti-km-001.html" data-height="510" data-width="700">Просмотр</a>

а должен быть, скорей всего href=?route=module/quick_view ( я не знаю этого модуля, только предполагаю)

 

поэтому и прошу покажите код в шаблоне, где выводится

<a class="quickview" 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Redje    5

Тогда возможно вот это из файла product.tpl

<?php if (isset($this->request->get['boxer'])): ?>
<?php require_once DIR_TEMPLATE . '/journal/template/product/product_quick_view.tpl'; ?>
<?php else: ?>

Ничего более подходящего найти не удалось.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
chukcha    933

Это в tpl?

Все же это должно быть в контроллере..

Отключите seopro и посмотрите как выглядит ссылка на кнопке qickview

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Redje    5

Отключил

<a class="quickview" data-width="700" data-height="510" href="http://center-systems.ru/damskii-koshelek-iz-naturalnoi-koji-CANEVO-kw-003" style="z-index: 10005;">Просмотр</a>

В коде ничего особо не изменилось, помимо того, что  quickview заработал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
chukcha    933

практически ничего не изменилось, только добавился в запрос параметр boxer

 

на вскидку

найдите строку

$quickview.attr('href', href);
$quickview.attr('href', href+'?boxer=true');

и переключитесь в seopro

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Redje    5

Нашел указанную строку в header.tpl заменил. Ссылка теперь имеет вид:

<a class="quickview" href="h**p://****-systems.ru/bumajnik-mujskoi-dc-naturalnaya-koja-km-002.html?boxer=true" data-height="510" data-width="700">Просмотр</a>

Глюк некуда не исчез. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
chukcha    933

вот что происходит при включенном seopro

 

По какой-то причине страница получает редирект

А при редиректе уже параметр boxer отстутвует

 

1. нужно выяснить - почему редирект

 

2. Как избавиться? надо смотреть в код

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Vasily7    0

Поставьте вот это и все заработает.. Было тоже самое. https://opencartforum.com/topic/10270-%D0%B4%D1%83%D0%B1%D0%BB%D0%B8-%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86-seopro/

 Ставьте этот файлик.  seo_pro.php(ocStore1.5.5).zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Alexlife    2

вопрос актуален, предложение без танцев с бубном не работает. :-D

могу предложить даже ...легкое вознаграждение за решение данного вопроса

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Redje    5

Видимо, так никто и не нашел решения. А между тем все наиболее популярные западные шаблоны (от Lexus и PavoThemes, например) страдают этой болезнью.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
facetoash    0

В магазине реализованном на ocStore v1.5.5.1.1 при включении SeoPro перестает работать функция быстрого просмотра товара (QuickView).

Окно открывается как и положено, но вместо карточки товара в фрейме загружается весь сайт

 
Со стандартным чпу все работает нормально.
Буду признателен за подсказку.

 

 

вопрос актуален

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
AlexDW    822

ответ уже был подробно расписан chukcha

 

задавайте актуальный вопрос автору шаблона/модуля quickview

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
s3ven    0

В 2.1 такая же проблема с быстрым просмотром. Тема от themeforest.

Подскажите с кодом.

Product.tpl

Код кнопки быстрого просмотра

<div class="quickview">
<a href="index.php?route=product/quickview&product_id=<?php echo $product['product_id']; ?>" title="<?php echo $product['name']; ?>"><?php if($theme_options->get( 'quickview_text', $config->get( 'config_language_id' ) ) != '') { echo html_entity_decode($theme_options->get( 'quickview_text', $config->get( 'config_language_id' ) )); } else { echo 'QUICKVIEW'; } ?></a>
</div>

 

Т.е. ссылка формируется без учета SEO URL по типу index.php?route=product/quickview&product_id=  

В итоге в фрейме выводится вся страница товара целиком, а не quickview.tpl

 

Подскажите где копнуть код? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
chukcha    933

&product_id

 

заменить на prod_id

 

в контроллере $this->request->get['product_id']

заменить на $this->request->get['prod_id']

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
s3ven    0

Спасибо, заработал вывод в фрейме. :eek:

А добиться ЧПУ получится? Дубли ссылок не хочется делать. 

 

Смотрю в одном интернет магазине на таком же шаблоне работает с ЧПУ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
chukcha    933

самій правильный вариант,  делать post запрос.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
s3ven    0

самій правильный вариант,  делать post запрос.

Да. читал об этом. Опыта не сильно хватает весь php код перебрать. Хотя интерес берет свое.

Придется что-то внешнее лепить, а-ля fastorder вместо быстрого просмотра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
chukcha    933

та там делов на 100р.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Antonz174    0

Вопрос актуален для версии 2.1.0.2 тема Fastor, также при открытии фрейма быстрого просмотра выдает весь сайт. Правда модуль реализован в отдельном файле. 

controller/catalog/product/

class ControllerProductQuickview extends Controller {
private $error = array();

public function index() {
$this->load->language('product/product');

$data['breadcrumbs'] = array();

$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/home')
);

$this->load->model('catalog/category');

if (isset($this->request->get['path'])) {
$path = '';

$parts = explode('_', (string)$this->request->get['path']);

$category_id = (int)array_pop($parts);

foreach ($parts as $path_id) {
if (!$path) {
$path = $path_id;
} else {
$path .= '_' . $path_id;
}

$category_info = $this->model_catalog_category->getCategory($path_id);

if ($category_info) {
$data['breadcrumbs'][] = array(
'text' => $category_info['name'],
'href' => $this->url->link('product/category', 'path=' . $path)
);
}
}

// Set the last category breadcrumb
$category_info = $this->model_catalog_category->getCategory($category_id);

if ($category_info) {
$url = '';

if (isset($this->request->get['sort'])) {
$url .= '&sort=' . $this->request->get['sort'];
}

if (isset($this->request->get['order'])) {
$url .= '&order=' . $this->request->get['order'];
}

if (isset($this->request->get['page'])) {
$url .= '&page=' . $this->request->get['page'];
}

if (isset($this->request->get['limit'])) {
$url .= '&limit=' . $this->request->get['limit'];
}

$data['breadcrumbs'][] = array(
'text' => $category_info['name'],
'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . $url)
);
}
}

$this->load->model('catalog/manufacturer');

if (isset($this->request->get['manufacturer_id'])) {
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_brand'),
'href' => $this->url->link('product/manufacturer')
);

$url = '';

if (isset($this->request->get['sort'])) {
$url .= '&sort=' . $this->request->get['sort'];
}

if (isset($this->request->get['order'])) {
$url .= '&order=' . $this->request->get['order'];
}

if (isset($this->request->get['page'])) {
$url .= '&page=' . $this->request->get['page'];
}

if (isset($this->request->get['limit'])) {
$url .= '&limit=' . $this->request->get['limit'];
}

$manufacturer_info = $this->model_catalog_manufacturer->getManufacturer($this->request->get['manufacturer_id']);

if ($manufacturer_info) {
$data['breadcrumbs'][] = array(
'text' => $manufacturer_info['name'],
'href' => $this->url->link('product/manufacturer/info', 'manufacturer_id=' . $this->request->get['manufacturer_id'] . $url)
);
}
}

if (isset($this->request->get['search']) || isset($this->request->get['tag'])) {
$url = '';

if (isset($this->request->get['search'])) {
$url .= '&search=' . $this->request->get['search'];
}

if (isset($this->request->get['tag'])) {
$url .= '&tag=' . $this->request->get['tag'];
}

if (isset($this->request->get['description'])) {
$url .= '&description=' . $this->request->get['description'];
}

if (isset($this->request->get['category_id'])) {
$url .= '&category_id=' . $this->request->get['category_id'];
}

if (isset($this->request->get['sub_category'])) {
$url .= '&sub_category=' . $this->request->get['sub_category'];
}

if (isset($this->request->get['sort'])) {
$url .= '&sort=' . $this->request->get['sort'];
}

if (isset($this->request->get['order'])) {
$url .= '&order=' . $this->request->get['order'];
}

if (isset($this->request->get['page'])) {
$url .= '&page=' . $this->request->get['page'];
}

if (isset($this->request->get['limit'])) {
$url .= '&limit=' . $this->request->get['limit'];
}

$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_search'),
'href' => $this->url->link('product/search', $url)
);
}

if (isset($this->request->get['product_id'])) {
$product_id = (int)$this->request->get['product_id'];
} else {
$product_id = 0;
}

$this->load->model('catalog/product');

$product_info = $this->model_catalog_product->getProduct($product_id);

if ($product_info) {
$url = '';

if (isset($this->request->get['path'])) {
$url .= '&path=' . $this->request->get['path'];
}

if (isset($this->request->get['filter'])) {
$url .= '&filter=' . $this->request->get['filter'];
}

if (isset($this->request->get['manufacturer_id'])) {
$url .= '&manufacturer_id=' . $this->request->get['manufacturer_id'];
}

if (isset($this->request->get['search'])) {
$url .= '&search=' . $this->request->get['search'];
}

if (isset($this->request->get['tag'])) {
$url .= '&tag=' . $this->request->get['tag'];
}

if (isset($this->request->get['description'])) {
$url .= '&description=' . $this->request->get['description'];
}

if (isset($this->request->get['category_id'])) {
$url .= '&category_id=' . $this->request->get['category_id'];
}

if (isset($this->request->get['sub_category'])) {
$url .= '&sub_category=' . $this->request->get['sub_category'];
}

if (isset($this->request->get['sort'])) {
$url .= '&sort=' . $this->request->get['sort'];
}

if (isset($this->request->get['order'])) {
$url .= '&order=' . $this->request->get['order'];
}

if (isset($this->request->get['page'])) {
$url .= '&page=' . $this->request->get['page'];
}

if (isset($this->request->get['limit'])) {
$url .= '&limit=' . $this->request->get['limit'];
}

$data['breadcrumbs'][] = array(
'text' => $product_info['name'],
'href' => $this->url->link('product/product', $url . '&product_id=' . $this->request->get['product_id'])
);

$this->document->setTitle($product_info['meta_title']);
$this->document->setDescription($product_info['meta_description']);
$this->document->setKeywords($product_info['meta_keyword']);
$this->document->addLink($this->url->link('product/product', 'product_id=' . $this->request->get['product_id']), 'canonical');
$this->document->addScript('catalog/view/javascript/jquery/magnific/jquery.magnific-popup.min.js');
$this->document->addStyle('catalog/view/javascript/jquery/magnific/magnific-popup.css');
$this->document->addScript('catalog/view/javascript/jquery/datetimepicker/moment.js');
$this->document->addScript('catalog/view/javascript/jquery/datetimepicker/bootstrap-datetimepicker.min.js');
$this->document->addStyle('catalog/view/javascript/jquery/datetimepicker/bootstrap-datetimepicker.min.css');

$data['heading_title'] = $product_info['name'];

$data['text_select'] = $this->language->get('text_select');
$data['text_manufacturer'] = $this->language->get('text_manufacturer');
$data['text_model'] = $this->language->get('text_model');
$data['text_reward'] = $this->language->get('text_reward');
$data['text_points'] = $this->language->get('text_points');
$data['text_stock'] = $this->language->get('text_stock');
$data['text_discount'] = $this->language->get('text_discount');
$data['text_tax'] = $this->language->get('text_tax');
$data['text_option'] = $this->language->get('text_option');
$data['text_minimum'] = sprintf($this->language->get('text_minimum'), $product_info['minimum']);
$data['text_write'] = $this->language->get('text_write');
$data['text_login'] = sprintf($this->language->get('text_login'), $this->url->link('account/login', '', 'SSL'), $this->url->link('account/register', '', 'SSL'));
$data['text_note'] = $this->language->get('text_note');
$data['text_tags'] = $this->language->get('text_tags');
$data['text_related'] = $this->language->get('text_related');
$data['text_loading'] = $this->language->get('text_loading');

$data['entry_qty'] = $this->language->get('entry_qty');
$data['entry_name'] = $this->language->get('entry_name');
$data['entry_review'] = $this->language->get('entry_review');
$data['entry_rating'] = $this->language->get('entry_rating');
$data['entry_good'] = $this->language->get('entry_good');
$data['entry_bad'] = $this->language->get('entry_bad');
$data['entry_captcha'] = $this->language->get('entry_captcha');

$data['button_cart'] = $this->language->get('button_cart');
$data['button_wishlist'] = $this->language->get('button_wishlist');
$data['button_compare'] = $this->language->get('button_compare');
$data['button_upload'] = $this->language->get('button_upload');
$data['button_continue'] = $this->language->get('button_continue');

$this->load->model('catalog/review');

$data['tab_description'] = $this->language->get('tab_description');
$data['tab_attribute'] = $this->language->get('tab_attribute');
$data['tab_review'] = sprintf($this->language->get('tab_review'), $product_info['reviews']);

$data['product_id'] = (int)$this->request->get['product_id'];
$data['manufacturer'] = $product_info['manufacturer'];
$data['manufacturers'] = $this->url->link('product/manufacturer/info', 'manufacturer_id=' . $product_info['manufacturer_id']);
$data['model'] = $product_info['model'];
$data['reward'] = $product_info['reward'];
$data['points'] = $product_info['points'];

if ($product_info['quantity'] <= 0) {
$data['stock'] = $product_info['stock_status'];
} elseif ($this->config->get('config_stock_display')) {
$data['stock'] = $product_info['quantity'];
} else {
$data['stock'] = $this->language->get('text_instock');
}

$this->load->model('tool/image');

if ($product_info['image']) {
$data['popup'] = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_popup_width'), $this->config->get('config_image_popup_height'));
} else {
$data['popup'] = '';
}

if ($product_info['image']) {
$data['thumb'] = $this->model_tool_image->resize($product_info['image'], $this->config->get('config_image_thumb_width'), $this->config->get('config_image_thumb_height'));
} else {
$data['thumb'] = '';
}

$data['images'] = array();

$results = $this->model_catalog_product->getProductImages($this->request->get['product_id']);

foreach ($results as $result) {
$data['images'][] = array(
'popup' => $this->model_tool_image->resize($result['image'], $this->config->get('config_image_popup_width'), $this->config->get('config_image_popup_height')),
'thumb' => $this->model_tool_image->resize($result['image'], $this->config->get('config_image_additional_width'), $this->config->get('config_image_additional_height'))
);
}

if (($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) {
$data['price'] = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')));
} else {
$data['price'] = false;
}

if ((float)$product_info['special']) {
$data['special'] = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')));
} else {
$data['special'] = false;
}

if ($this->config->get('config_tax')) {
$data['tax'] = $this->currency->format((float)$product_info['special'] ? $product_info['special'] : $product_info['price']);
} else {
$data['tax'] = false;
}

$discounts = $this->model_catalog_product->getProductDiscounts($this->request->get['product_id']);

$data['discounts'] = array();

foreach ($discounts as $discount) {
$data['discounts'][] = array(
'quantity' => $discount['quantity'],
'price' => $this->currency->format($this->tax->calculate($discount['price'], $product_info['tax_class_id'], $this->config->get('config_tax')))
);
}

$data['options'] = array();

foreach ($this->model_catalog_product->getProductOptions($this->request->get['product_id']) as $option) {
$product_option_value_data = array();

foreach ($option['product_option_value'] as $option_value) {
if (!$option_value['subtract'] || ($option_value['quantity'] > 0)) {
if ((($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) && (float)$option_value['price']) {
$price = $this->currency->format($this->tax->calculate($option_value['price'], $product_info['tax_class_id'], $this->config->get('config_tax') ? 'P' : false));
} else {
$price = false;
}

$product_option_value_data[] = array(
'product_option_value_id' => $option_value['product_option_value_id'],
'option_value_id' => $option_value['option_value_id'],
'name' => $option_value['name'],
'image' => $this->model_tool_image->resize($option_value['image'], 50, 50),
'price' => $price,
'price_prefix' => $option_value['price_prefix']
);
}
}

$data['options'][] = array(
'product_option_id' => $option['product_option_id'],
'product_option_value' => $product_option_value_data,
'option_id' => $option['option_id'],
'name' => $option['name'],
'type' => $option['type'],
'value' => $option['value'],
'required' => $option['required']
);
}

if ($product_info['minimum']) {
$data['minimum'] = $product_info['minimum'];
} else {
$data['minimum'] = 1;
}

$data['review_status'] = $this->config->get('config_review_status');

if ($this->config->get('config_review_guest') || $this->customer->isLogged()) {
$data['review_guest'] = true;
} else {
$data['review_guest'] = false;
}

if ($this->customer->isLogged()) {
$data['customer_name'] = $this->customer->getFirstName() . ' ' . $this->customer->getLastName();
} else {
$data['customer_name'] = '';
}

$data['reviews'] = sprintf($this->language->get('text_reviews'), (int)$product_info['reviews']);
$data['rating'] = (int)$product_info['rating'];
$data['description'] = html_entity_decode($product_info['description'], ENT_QUOTES, 'UTF-8');
$data['attribute_groups'] = $this->model_catalog_product->getProductAttributes($this->request->get['product_id']);

$data['products'] = array();

$results = $this->model_catalog_product->getProductRelated($this->request->get['product_id']);

foreach ($results as $result) {
if ($result['image']) {
$image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_related_width'), $this->config->get('config_image_related_height'));
} else {
$image = $this->model_tool_image->resize('placeholder.png', $this->config->get('config_image_related_width'), $this->config->get('config_image_related_height'));
}

if (($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) {
$price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')));
} else {
$price = false;
}

if ((float)$result['special']) {
$special = $this->currency->format($this->tax->calculate($result['special'], $result['tax_class_id'], $this->config->get('config_tax')));
} else {
$special = false;
}

if ($this->config->get('config_tax')) {
$tax = $this->currency->format((float)$result['special'] ? $result['special'] : $result['price']);
} else {
$tax = false;
}

if ($this->config->get('config_review_status')) {
$rating = (int)$result['rating'];
} else {
$rating = false;
}

$data['products'][] = array(
'product_id' => $result['product_id'],
'thumb' => $image,
'name' => $result['name'],
'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get('config_product_description_length')) . '..',
'price' => $price,
'special' => $special,
'tax' => $tax,
'rating' => $rating,
'href' => $this->url->link('product/product', 'product_id=' . $result['product_id'])
);
}

$data['tags'] = array();

if ($product_info['tag']) {
$tags = explode(',', $product_info['tag']);

foreach ($tags as $tag) {
$data['tags'][] = array(
'tag' => trim($tag),
'href' => $this->url->link('product/search', 'tag=' . trim($tag))
);
}
}

$data['text_payment_recurring'] = $this->language->get('text_payment_recurring');
$data['recurrings'] = $this->model_catalog_product->getProfiles($this->request->get['product_id']);

$this->model_catalog_product->updateViewed($this->request->get['product_id']);

$data['column_left'] = $this->load->controller('common/column_left');
$data['column_right'] = $this->load->controller('common/column_right');
$data['content_top'] = $this->load->controller('common/content_top');
$data['content_bottom'] = $this->load->controller('common/content_bottom');
$data['footer'] = $this->load->controller('common/footer');
$data['header'] = $this->load->controller('common/header');

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/product/quickview.tpl')) {
$this->response->setOutput($this->load->view($this->config->get('config_template') . '/template/product/quickview.tpl', $data));
} else {
$this->response->setOutput($this->load->view('default/template/product/quickview.tpl', $data));
}
} else {
die('Product not found!');
}
}
}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
yaryar    1

Розархивируйте и скопируйте с заменой.

Перед заменой ОБЯЗАТЕЛЬНО сделайте бэкап оригинальных файлов.

Файлы для FASTOR 1.3.7

catalog.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Похожий контент

    • От shoputils

      Скачать/Купить дополнение


      Яндекс.Касса + Деньги
      Данный модуль из ocStore 2.3 для оригинального OpenCart 2.3 и его сборок (Opencart.Pro и других сборок). Только для 2.3.x.
      В ocStore данный модуль уже интегрирован, на ocStore его "ставить" НЕ НАДО!
       
      Установка крайне простая:
      1. Скопировать содержимое директории upload в корневую директорию сайта.
      2. Если требуется функционал отсроченной оплаты и/или отображать иконки "Оплатить заказ" в ЛК покупателя, если оплата заказа прервана, то для корректной работы данного функционала установите в установщике дополнений ocmod (Extension Installer) из директории ocmod дистрибутива модификатор ocstore_yk_laterpay.ocmod.xml. Не забудьте обновить кеш ocmod в менеджере дополнений (Modifications). На нестандартные темы, возможно, придется корректировать ocmod-файл.
      3. Чтобы "служебные" методы оплаты не мозолили глаза - рекомендую установить из директории ocmod дистрибутива модификатор ocstore_hide_permission.ocmod.xml (не забывайте про кеш ocmod после установки модификатора). Затем перейдите в "Система -> Пользователи -> Группы пользователей" (Settings -> Users -> Users Groups) и для нужной группы пользователя в 3-м блоке "Скрыть дополнения" установите галки на следующие модули:
      extension/payment/ocstore_yk_company_AB extension/payment/ocstore_yk_company_AC extension/payment/ocstore_yk_company_EP extension/payment/ocstore_yk_company_GP extension/payment/ocstore_yk_company_MA extension/payment/ocstore_yk_company_MC extension/payment/ocstore_yk_company_MP extension/payment/ocstore_yk_company_PB extension/payment/ocstore_yk_company_PC extension/payment/ocstore_yk_company_QW extension/payment/ocstore_yk_company_SB extension/payment/ocstore_yk_company_WM extension/payment/ocstore_yk_physical_AC extension/payment/ocstore_yk_physical_PC 4. Если используется стандартное оформление заказа - для того чтобы на предпоследнем шаге оформления заказа при выборе методов оплаты отображались платежные иконки, потребуется корректировка файла catalog/view/theme/{Ваша_Тема}/template/checkout/payment_method.tpl
      После строк
      <?php echo $payment_method['title']; ?> <?php if ($payment_method['terms']) { ?> (<?php echo $payment_method['terms']; ?>) <?php } ?> добавьте следующие строки:
      <?php if (isset($payment_method['description'])) { ?> <br /><small><?php echo $payment_method['description']; ?></small> <?php } ?> Если используется модуль "Регистрация и быстрый заказ Simple" (simplecheckout) - данную правку делать не надо.
       
      Настройка модуля:
      Перейдите в настройки модуля, предварительно его инсталлировав, если вы этого еще не сделали.
      Пробегитесь по вкладкам. Все должно быть интуитивно понятно. Обращу внимание, что методы оплаты данного модуля включаются во вкладке "Настройка платежей".
      Вкладка "Информация" содержит инфо о том, какие действия нужно выполнить на стороне платежной системы.
      Рекомендую включить журнал модуля (вкладка "Журнал") для логирования взаимодействия с платежной системой на время тестирования и обкатки.
      Добавил shoputils Добавлено 06.07.2017 Категория Платежные системы Системные требования Сайт разработчика https://opencart.market Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 2.3 ocStore Несовместим OpenCart.Pro, ocShop Opencart.pro 2.3  
    • От Mirosha
      Задача для опытного разработчика на OpenCart и ocStore и хорошо знакомого с модулем SEOpro уверенно знающего как реализовать данную задачу в кратчайшие сроки!

      Тестовый сайт http://test.abello.ru
      Разделы/подразделы нужно оставить все как есть сейчас например: http://test.abello.ru/katalog/torty/detskie-torty/malchikam/

      Нужно, чтобы у товара http://test.abello.ru/katalog/torty/detskie-torty/detskiy-tort-vypusknoy-jurnal.html был только один URL и был он расположен только здесь: http://test.abello.ru/produkt/detskiy-tort-vypusknoy-jurnal.html

      При нахождении пользователя в карточке товара в хлебных крошках должен быть пусть который пользователь фактически проделал на пути к этой карточке товара, т.е.
      Главная > Торты > Детские > Мальчикам > Детский торт "Выпускной журнал".
        Файлы модуля SEOpro вложены к заданию.   Готов рассмотреть Ваши предложения реализации данной задачи с указанием в ответном сообщении сроков и стоимости реализации данной задачи.

      Есть и другие задачи.
      seopro.zip
    • От MrNix21
      Добрый день, форумчане! Делаю мультимагазин на ocStore 2.3.0.2.3 на региональных поддоменах и возник такой вопрос - Как создать разные статьи одной тематики но с одинаковыми УРЛ? Допустим, надо сделать страницу "Контакты". Делаю несколько страниц для каждого региона, включаю статьи только в необходимых магазинах, и хочу чтобы у них был одинаковый адрес, не считая поддомена. Т.е. хочу чтобы было - https://msk.site.ru/kontakty, https://spb.site.ru/kontakty и т.д. ЧПУ делаю через SEO Менеджер, ставлю полные пути с поддоменами и протоколом https://, но не работает, выходит "Страница не найдена". Если ставлю обычный протокол http:// то работает. Как быть? Кто с этим уже сталкивался?
    • От AWARO

      Скачать/Купить дополнение


      Next Default 3
      Версия для опенкарт 3x будет как только набежит 10 покупок соответствующей услуги
      см. Дополнительные услуги - 499р это справа >
       
      ПРЕЖДЕ ВНИМАТЕЛЬНО ЧИТАЕМ ОПИСАНИЕ!
       
      НОВИНКА - HYPER LOYALTY +   Управление лояльностью клиента +
       
      Внедряем новый инструмент управления лояльностью клиента  HYPER LOYALTY + и используем свой магазин по максимуму, привлекая клиентов к новым и новым покупкам!
      --------------------------------------------------------------------------------------------------------------------------------------------------------
       
      Версия шаблона для ocStore 2.3х
      Установка: читаем внимательно!

      Сделайте свой сайт ещё более уникальным и презентабельным
      Используйте модуль HYPER POSITIONS - подробнее ТУТ
       
       
      Демо Админка demo\demo 
                ДЕМО 2.3х - тут                                             ДЕМО 2.3х - тут                                           ДЕМО 2.1 - тут 
        пример оформления модулем                                                 стандартное
              HYPER Positions                                                     оформление
              

      -------------------------------------------------------
      Описание к версии для ocStore 2.1.0.2.1
      ----------------------------------------------------------------------------
      99% модулей встанут как на дефолтный ocStore примерно 1% отношу к кривым модулям (могу ошибаться).
      Благодарность ваша это тыкнуть 5 звезд файлу если вам угодил! Это мотивирует нас на дальнейшее развитие шаблона.
      Вот сюда ваше спасибо вообще приятнее будет))
      Спасибо вам за спасибо!)
      Пользуйтесь на здоровье)
      Если необходимы - Доработки - Допилить - Перепилить и т.д. > пишите нам в ЛС - ПЛАТНО!
      Все прочие вопросы оставляем тут в теме!
      Лицензия:
      Свободное пользование / Не для продажи!
      Добавил AWARO Добавлено 05.05.2016 Категория Платные шаблоны Системные требования Прямые руки :) Сайт разработчика тут Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 3.0 ocStore 2.3
      2.1 OpenCart.Pro, ocShop Не проверялось  
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу