Перейти к содержанию

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

Добрый день!

Стоит задача поставить изображения в каждый раздел, категорию и подкатегорию , в виде баннера, через стандартное присвоение изображения в админке во вкладке "Данные".

В шаблоне "Категория" разметил как 

<img src="<?php echo $category['thumb']; ?>" alt="<?php echo $category['name']; ?>" />

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

<?php
class ControllerProductCategory extends Controller {
	public function index() {
		$this->load->language('product/category');

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

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

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

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

		if (isset($this->request->get['sort'])) {
			$sort = $this->request->get['sort'];
		} else {
			$sort = 'p.sort_order';
		}

		if (isset($this->request->get['order'])) {
			$order = $this->request->get['order'];
		} else {
			$order = 'ASC';
		}

		if (isset($this->request->get['page'])) {
			$page = $this->request->get['page'];
		} else {
			$page = 1;
		}

		if (isset($this->request->get['limit'])) {
			$limit = (int)$this->request->get['limit'];
		} else {
			$limit = $this->config->get($this->config->get('config_theme') . '_product_limit');
		}

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

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

		if (isset($this->request->get['path'])) {
			$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['limit'])) {
				$url .= '&limit=' . $this->request->get['limit'];
			}

			$path = '';

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

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

			foreach ($parts as $path_id) {
				if (!$path) {
					$path = (int)$path_id;
				} else {
					$path .= '_' . (int)$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 . $url)
					);
				}
			}
		} else {
			$category_id = 0;
		}

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

		if ($category_info) {
			if ($category_info['meta_title']) {
				if ($page > 1) {
				$this->document->setTitle($category_info['meta_h1']. ' – cтраница ' .$page );
				}
				else {
				$this->document->setTitle($category_info['meta_title']);
				}
			} else {
				$this->document->setTitle($category_info['name']);
			}

			$this->document->setDescription($category_info['meta_description']);
			$this->document->setKeywords($category_info['meta_keyword']);

			if ($category_info['meta_h1']) {
				$data['heading_title'] = $category_info['meta_h1'];
			} else {
				$data['heading_title'] = $category_info['name'];
			}

			$data['text_refine'] = $this->language->get('text_refine');
			$data['text_empty'] = $this->language->get('text_empty');
			$data['text_quantity'] = $this->language->get('text_quantity');
			$data['text_manufacturer'] = $this->language->get('text_manufacturer');
			$data['text_model'] = $this->language->get('text_model');
			$data['text_price'] = $this->language->get('text_price');
			$data['text_tax'] = $this->language->get('text_tax');
			$data['text_points'] = $this->language->get('text_points');
			$data['text_compare'] = sprintf($this->language->get('text_compare'), (isset($this->session->data['compare']) ? count($this->session->data['compare']) : 0));
			$data['text_sort'] = $this->language->get('text_sort');
			$data['text_limit'] = $this->language->get('text_limit');
			$data['text_catalog'] = $this->language->get('text_catalog');
			$data['text_instock'] = $this->language->get('text_instock');
			$data['text_out_stock'] = $this->language->get('text_out_stock');
			$data['text_discontinued'] = $this->language->get('text_discontinued');
			$data['text_limited_quantity'] = $this->language->get('text_limited_quantity');
			$data['text_list'] = $this->language->get('text_list');

			$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_continue'] = $this->language->get('button_continue');
			$data['button_list'] = $this->language->get('button_list');
			$data['button_grid'] = $this->language->get('button_grid');

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

			$prod_categories = '';

			if (is_array($prod_categories) ) {

				foreach ($prod_categories as $category_id) {

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

					$data['prod_categories'][] = array(
						'category_id' => $category_info['category_id'],
						'name'     => $category_info['name'],
						'href'     => $this->url->link('product/category', 'path=' . ($category_info['parent_id'] ? $category_info['parent_id'] . '_' . $category_info['category_id'] : $category_info['category_id']))
						
					);
				}
			}

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

			if ($category_info['image']) {
				$data['thumb'] = $this->model_tool_image->resize($category_info['image'], $this->config->get($this->config->get('config_theme') . '_image_category_width'), $this->config->get($this->config->get('config_theme') . '_image_category_height'));
				$this->document->setOgImage($data['thumb']);
			} else {
				$data['thumb'] = '';
			}

			$data['shortdescription'] = html_entity_decode($category_info['shortdescription'], ENT_QUOTES, 'UTF-8');
			if ($page == 1) {
			$data['description'] = html_entity_decode($category_info['description'], ENT_QUOTES, 'UTF-8');
			} else {
			$data['description'] = "";
			}
			$data['compare'] = $this->url->link('product/compare');
			$data['home'] = $this->url->link('common/home');
			$data['audi'] = '/audi/';
			$data['bmw'] = '/bmw/';
			$data['vw'] = '/volkswagen/';
			$data['parts'] = '/zapchasti/';
			$data['og_url'] = (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1')) ? HTTPS_SERVER : HTTP_SERVER) . substr($this->request->server['REQUEST_URI'], 1, (strlen($this->request->server['REQUEST_URI'])-1));

			$url = '';

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

			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['limit'])) {
				$url .= '&limit=' . $this->request->get['limit'];
			}

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

			$categories = $this->model_catalog_category->getCategories(0);

			foreach ($categories as $category) {
            // Level 2
				$children_data = array();

				$children = $this->model_catalog_category->getCategories($category['category_id']);

				foreach ($children as $child) {
                // Level 3
					$grandchildren_data = array();

					$grandchildren = $this->model_catalog_category->getCategories($child['category_id']);

					foreach ($grandchildren as $grandchild) {

						$grandchild_filter_data = array(
							'filter_category_id'  => $grandchild['category_id'],
							'filter_sub_category' => true
						);

						$grandchildren_data[] = array(
							'name'  => $grandchild['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($grandchild_filter_data) . ')' : ''),
							'href'  => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $grandchild['category_id'])
						);
					}

					$filter_data = array(
						'filter_category_id'  => $child['category_id'],
						'filter_sub_category' => true
					);

					$children_data[] = array(
						'name'  => $child['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''),
						'href'  => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id']),
						'children' => $grandchildren_data,
					);
				}

            // Level 1
				$data['categories'][] = array(
					'name'     => $category['name'],
					'children' => $children_data,
					'column'   => $category['column'] ? $category['column'] : 1,
					'href'     => $this->url->link('product/category', 'path=' . $category['category_id'])
				);
			}

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

			$childrens_results = $this->model_catalog_category->getCategories($category_id);

			foreach ($childrens_results as $children_result) {
				$filter_data = array(
					'filter_category_id'  => $children_result['category_id'],
					'filter_sub_category' => true
				);

				$data['childrens'][] = array(
					'name' => $children_result['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''),
					'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $children_result['category_id'] . $url)
				);
			}

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

			$filter_data = array(
				'filter_category_id' => $category_id,
				'filter_sub_category'=> true,
				'filter_filter'      => $filter,
				'sort'               => $sort,
				'order'              => $order,
				'start'              => ($page - 1) * $limit,
				'limit'              => $limit
			);

			$product_total = $this->model_catalog_product->getTotalProducts($filter_data);

			$results = $this->model_catalog_product->getProducts($filter_data);

			$ntcd_ids = array();
			foreach ($results as $result) {
				$ntcd_ids[] = $result['product_id'];
			}
			$this->load->model('extension/module/neat_countdown');
			$ntcd_specials = $this->model_extension_module_neat_countdown->getSpecials($ntcd_ids);
			$ntcd_args = array( 'category_id' => $category_id, 'specials' => $ntcd_specials );
			$ntcd_results = $this->load->controller('extension/module/neat_countdown/category', $ntcd_args);

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

				if ($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')), $this->session->data['currency']);
				} 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')), $this->session->data['currency']);
				} else {
					$special = false;
				}

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

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

				$cat = $this->model_catalog_product->getMainCategory($result['product_id']);

				$options = $this->model_catalog_product->getProductOptions($result['product_id']);


				$data['products'][] = array(
					'neat_countdown' => @$ntcd_results[$result['product_id']],
					'product_id'  => $result['product_id'],
					'cat' 			  => $cat['name'],
					'cath'      	=> $this->url->link('product/category', 'path=' . $cat['category_id']),
					'thumb'       => $image,
					'name'        => $result['name'],
					'quantity'    => $result['quantity'],
					'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get($this->config->get('config_theme') . '_product_description_length')),
					'price'       => $price,
					'special'     => $special,
					'tax'         => $tax,
					'minimum'     => ($result['minimum'] > 0) ? $result['minimum'] : 1,
					'rating'      => $rating,
					'stock_id'    => $result['stock_status_id'],
					'options'     => $options,
					'href'        => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url)
				);
			}

			$url = '';

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

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

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

			$data['sorts'][] = array(
				'text'  => $this->language->get('text_default'),
				'value' => 'p.sort_order-ASC',
				'href'  => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=p.sort_order&order=ASC' . $url)
			);

			$data['sorts'][] = array(
				'text'  => $this->language->get('text_name_asc'),
				'value' => 'pd.name-ASC',
				'href'  => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=pd.name&order=ASC' . $url)
			);

			$data['sorts'][] = array(
				'text'  => $this->language->get('text_name_desc'),
				'value' => 'pd.name-DESC',
				'href'  => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=pd.name&order=DESC' . $url)
			);

			$data['sorts'][] = array(
				'text'  => $this->language->get('text_price_asc'),
				'value' => 'p.price-ASC',
				'href'  => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=p.price&order=ASC' . $url)
			);

			$data['sorts'][] = array(
				'text'  => $this->language->get('text_price_desc'),
				'value' => 'p.price-DESC',
				'href'  => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=p.price&order=DESC' . $url)
			);

			if ($this->config->get('config_review_status')) {
				$data['sorts'][] = array(
					'text'  => $this->language->get('text_rating_desc'),
					'value' => 'rating-DESC',
					'href'  => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=rating&order=DESC' . $url)
				);

				$data['sorts'][] = array(
					'text'  => $this->language->get('text_rating_asc'),
					'value' => 'rating-ASC',
					'href'  => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=rating&order=ASC' . $url)
				);
			}

			$data['sorts'][] = array(
				'text'  => $this->language->get('text_model_asc'),
				'value' => 'p.model-ASC',
				'href'  => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=p.model&order=ASC' . $url)
			);

			$data['sorts'][] = array(
				'text'  => $this->language->get('text_model_desc'),
				'value' => 'p.model-DESC',
				'href'  => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '&sort=p.model&order=DESC' . $url)
			);

			$url = '';

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

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

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

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

			$limits = array_unique(array($this->config->get($this->config->get('config_theme') . '_product_limit'), 25, 50, 75, 100));

			sort($limits);

			foreach($limits as $value) {
				$data['limits'][] = array(
					'text'  => $value,
					'value' => $value,
					'href'  => $this->url->link('product/category', 'path=' . $this->request->get['path'] . $url . '&limit=' . $value)
				);
			}

			$url = '';

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

			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['limit'])) {
				$url .= '&limit=' . $this->request->get['limit'];
			}

			$pagination = new Pagination();
			$pagination->total = $product_total;
			$pagination->page = $page;
			$pagination->limit = $limit;
			$pagination->url = $this->url->link('product/category', 'path=' . $this->request->get['path'] . $url . '&page={page}');

			$data['pagination'] = $pagination->render();

			$data['results'] = sprintf($this->language->get('text_pagination'), ($product_total) ? (($page - 1) * $limit) + 1 : 0, ((($page - 1) * $limit) > ($product_total - $limit)) ? $product_total : ((($page - 1) * $limit) + $limit), $product_total, ceil($product_total / $limit));

			// http://googlewebmastercentral.blogspot.com/2011/09/pagination-with-relnext-and-relprev.html
			if ($page == 1) {
				$this->document->addLink($this->url->link('product/category', 'path=' . $category_info['category_id'], true), 'canonical');
			} elseif ($page == 2) {
				$this->document->addLink($this->url->link('product/category', 'path=' . $category_info['category_id'], true), 'prev');
			} else {
				$this->document->addLink($this->url->link('product/category', 'path=' . $category_info['category_id'] . '&page='. ($page - 1), true), 'prev');
			}

			if ($limit && ceil($product_total / $limit) > $page) {
				$this->document->addLink($this->url->link('product/category', 'path=' . $category_info['category_id'] . '&page='. ($page + 1), true), 'next');
			}

			$data['sort'] = $sort;
			$data['order'] = $order;
			$data['limit'] = $limit;

			$data['continue'] = $this->url->link('common/home');

			$data['column_left'] = $this->load->controller('common/column_left');
			$data['column_right'] = $this->load->controller('common/column_right');
			$data['content_menu'] = $this->load->controller('common/content_menu');
			$data['short_top'] = $this->load->controller('common/short_top');
			$data['content_category'] = $this->load->controller('common/content_category');
			$data['content_tbanner'] = $this->load->controller('common/content_tbanner');
			$data['content_rbanner'] = $this->load->controller('common/content_rbanner');
			$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');

			$this->response->setOutput($this->load->view('product/category', $data));
		} else {
			$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['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_error'),
				'href' => $this->url->link('product/category', $url)
			);

			$this->document->setTitle($this->language->get('text_error'));

			$data['heading_title'] = $this->language->get('text_error');

			$data['text_error'] = $this->language->get('text_error');

			$data['button_continue'] = $this->language->get('button_continue');

			$data['continue'] = $this->url->link('common/home');

			$this->response->addHeader($this->request->server['SERVER_PROTOCOL'] . ' 404 Not Found');

			$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');

			$this->response->setOutput($this->load->view('error/not_found', $data));
		}
	}
}

Прикрепил пример расположения вывода изображения

ц45.jpg

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


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

а что мешает, разместить баннер в разделе? 

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


Ссылка на сообщение
Поделиться на другие сайты
В 11.06.2018 в 09:42, anboza сказал:

а что мешает, разместить баннер в разделе? 

Каким образом? Допустим если надо разместить 300 баннеров (под каждый раздел и подраздел).

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


Ссылка на сообщение
Поделиться на другие сайты
В 11.06.2018 в 08:31, Tom сказал:

Я совсем ничего не понял. Мне без модуля нужно решить этот вопрос.

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


Ссылка на сообщение
Поделиться на другие сайты
В 11.06.2018 в 01:17, alex1990 сказал:

через стандартное присвоение изображения в админке во вкладке "Данные".

 

вы определитесь, что вам нужно, внятно задайте вопрос. Сначала "штатным присвоением", а потом "мне 300 категорий автоматом". 

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


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, anboza сказал:

 

вы определитесь, что вам нужно, внятно задайте вопрос. Сначала "штатным присвоением", а потом "мне 300 категорий автоматом". 

Через штатное присвоение на все категории (около 300). Все внятно и понятно.

Цитата

 а потом "мне 300 категорий автоматом"

читайте внимательно, я про 300 автоматом не писал.

Изменено пользователем alex1990

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


Ссылка на сообщение
Поделиться на другие сайты
7 часов назад, alex1990 сказал:

Каким образом? Допустим если надо разместить 300 баннеров (под каждый раздел и подраздел).

тогда не понятно, чем решение не подходит, если не автоматом.

очень штатно, так же картинка прикрепляется и выводится, что не понятно?

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


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, anboza сказал:

тогда не понятно, чем решение не подходит, если не автоматом.

очень штатно, так же картинка прикрепляется и выводится, что не понятно?

Я не разработчик. Спасибо за помощь.
В тексте поста был задан конкретный вопрос.

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


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

В опенкарт всё это есть по-умолчанию

http://nimb.ws/cA0pPd

DEMO

 

Изображение категории контроллер

			if ($category_info['image']) {
				$data['thumb'] = $this->model_tool_image->resize($category_info['image'], $this->config->get($this->config->get('config_theme') . '_image_category_width'), $this->config->get($this->config->get('config_theme') . '_image_category_height'));
				$this->document->setOgImage($data['thumb']);
			} else {
				$data['thumb'] = '';
			}

 

шаблон
 

<?php if ($thumb) { ?>
        <div class="col-sm-2"><img src="<?php echo $thumb; ?>" alt="<?php echo $heading_title; ?>" title="<?php echo $heading_title; ?>" class="img-thumbnail" /></div>
        <?php } ?>

 

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


Ссылка на сообщение
Поделиться на другие сайты
7 часов назад, Tom сказал:

В опенкарт всё это есть по-умолчанию

http://nimb.ws/cA0pPd

DEMO

 

Изображение категории контроллер


			if ($category_info['image']) {
				$data['thumb'] = $this->model_tool_image->resize($category_info['image'], $this->config->get($this->config->get('config_theme') . '_image_category_width'), $this->config->get($this->config->get('config_theme') . '_image_category_height'));
				$this->document->setOgImage($data['thumb']);
			} else {
				$data['thumb'] = '';
			}

 

шаблон
 


<?php if ($thumb) { ?>
        <div class="col-sm-2"><img src="<?php echo $thumb; ?>" alt="<?php echo $heading_title; ?>" title="<?php echo $heading_title; ?>" class="img-thumbnail" /></div>
        <?php } ?>

 

Спасибо. Все получилось.

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


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

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

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

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

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

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

Войти

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

Войти

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

    • От ashap
      1 400.00 руб
      Скачать/Купить дополнение


      Сбербанк Эквайринг
      Прием к оплате банковских карт. Сбербанк России – крупнейший в России банк-эквайер, с многолетним опытом работы на рынке эквайринговых услуг, собственный процессинговым центром, и командой высококвалифицированных специалистов, что позволяет обеспечить высокий уровень предоставления услуг Эквайринга при минимальной стоимости, а также исключить возможность утечки конфиденциальной информации.
      Внимание! для использования эквайринга не обязательно иметь расчетный счет в Сбербанке, достаточно иметь расчетный счет в любом другом банке!
      Работа модуля по протоколу одностадийный платежей.
      Работа модуля по протоколу двухстадийных платежей по ссылке
      Работа модуля для магазинов 1.5 с отложенной оплатой по ссылке
      Работа модуля для магазинов 2.х с отложенной оплатой и двухстадийными платежами по ссылке
       
      Особенности модуля:
      ++++ Адаптивный дизайн платежной страницы
      - Возможность задать картинку для метода оплаты
      - Получение уведомлений от сбербанка о совершении оплаты
      - Автоматическая смена статуса при получении оплаты(возможность отправить письмо автоматически покупателю и админу при поступлении)
      - Возможность использования для электронных товаров.
      - Шифрование пароля API, как в админ панели так и в базе данных.
      - Возможность задать комиссию для покупателя
      - Просмотр успешных платежей в админ панели магазина
      - Если пользователь прервал оплату, заказ все равно создастся
      - Возможность оплаты из личного кабинета
      - Возможность получение ссылки на оплату в письме
      - Возможность использования инструкции к оплате при оформлении заказа (использование переменных таких как «номер заказа», «ссылка на оплату», «сумма заказа», «комиссия» и html тегов)
      - Возможность использования инструкции к оплате в письме о заказе (использование переменных таких как «номер заказа», «ссылка на оплату», «сумма заказа», «комиссия» и html тегов)
      - Уведомление администратора при получении оплаты
      - Уведомление покупателя при получении оплаты магазином
      - Возможность добавления комментария для дальнейших действий в письмо о успешной оплате(использование переменных таких как «номер заказа», «сумма заказа», «комиссия» и html тегов)
      - Возможность повторно выслать ссылку на оплату из админ панели
      - Возможность добавить кнопку «Оплатить позже» при оформлении заказа
      - На странице успешной оплаты, если платеж уже поступил вывод текста об успешной оплате, если платеж не поступил или отказ от оплаты вывод “После того как деньги поступят на наш счет, статус Вашего Заказа # изменится” или возможно в настройках задать Ваш текст.
      - Возможность изменить текст на странице успешной оплаты (использование переменных таких как «номер заказа», «сумма заказа», «комиссия» и html тегов)
      - При оплате сразу после оформления заказа на страницах успешной и ожидаемой оплаты вывод текста, что заказ создан.
      - На страницах успешной и неуспешной оплаты зарегистрированным пользователям выводятся ссылки на личный кабинет.
      - Возможность задания максимальной суммы заказа при котором метод не будет выводиться.
      - Возможность задания минимальной суммы заказа при которой метод не будет выводиться.
      - Возможность изменения названия метода оплаты.
      - Возможность использования html тегов в названии метода оплаты (например вставлять картинки)
      - Возможность изменить текст на странице не удачной оплаты (использование переменных таких как «номер заказа», «ссылка на оплату», «сумма заказа», «комиссия» и html тегов)
      - Возможность совершать предоплату от суммы заказа или фиксированную стоимость
      - Поддержка Мульти-языка
      - Поддержка Мульти-магазина
      - Возможность создавать заказ до оплаты, или создавать только после оплаты (задается в настройках модуля)
      - Выбор в настройках валюты магазина
      - Выбор в настройках валюты счета банка
      - Выбор серверов оплаты (тестовый, реальный, свой)
      - Два режима работы модуля curl или filegetcontents (альтернатива для не полноценного хостинга)
      - Возможность менять статус без callback делая запрос от своего сайта на странице удачной оплаты (опция в настройках)
      Адаптивная страница оплаты

      Демо
      http://dev45.pe-art.ru/
      админ панель http://dev45.pe-art.ru/admin/index.php?route=payment/sbacquiring
      логин demo
      пароль demo
      Совместимость с версией магазина:
      Opencart 2.3.x
      Opencart 2.2.x
      Opencart 2.1.x
      Opencart 2.0.x
      Opencart 1.5.3 - 1.5.6.x
      Opencart 1.4.x - 1.5.2 (требуется доработка магазина)
      OcStore 2.3.x
      OcStore 2.1.x
      OcStore 1.5.3 - 1.5.5.1.2
      OcStore 0.2.x - 1.5.2 (требуется доработка магазина)
      Заявка на подключение к услуге и все вопросы тут http://www.sberbank.ru/ru/s_m_business/bankingservice/internet_acquiring
      Техническое подключение под ключ в кратчайшие сроки (1 рабочий день) - 2900р (Минимум Вашего участия, от Вас доступ ФТП и данные от банка, у меня ПОЛНЫЙ контакт с тех поддержкой банка, У Вас качественное и быстрое решение по внедрению эквайринга и свободное время)
       
      Смотрите также другие модули по ссылке
      Добавил ashap Добавлено 03.04.2015 Категория Платежные системы Системные требования Сайт разработчика https://store.pe-art.ru/ Старая цена Метод активации Автоматическая активация Ioncube Loader Нет OpenCart 2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.4.1
      1.5.3.1 ocStore 2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х  
    • От ashap
      2 800.00 руб
      Скачать/Купить дополнение


      Сбербанк Эквайринг - Двухстадийные платежи
      Прием к оплате банковских карт с помощью двухстадийных платежей (также бонусом вы получаете возможность использовать одностадийные).
      Сбербанк России – крупнейший в России банк-эквайер, с многолетним опытом работы на рынке эквайринговых услуг, собственный процессинговым центром, и командой высококвалифицированных специалистов, что позволяет обеспечить высокий уровень предоставления услуг Эквайринга при минимальной стоимости, а также исключить возможность утечки конфиденциальной информации.
       
      Одностадийный платеж - операция по оплате товаров/услуг, совершенная через Интернет с использованием банковских карт,
      которая не требует дополнительного подтверждения.
       
      Двухстадийный платеж – операция по оплате товаров/услуг, совершенная через Интернет с использованием банковских карт,
      требующая дополнительного подтверждения. Двухстадийный механизм работы позволяет разделить процесс проверки
      платежеспособности банковской карты (авторизация) и снятие денег (финансовое подтверждение). На первой стадии
      двустадийного платежа происходит блокирование средств на счету клиента, а на второй списание. Возможность проводить как часть суммы так и целиком, также с отменами и возвратами.
       
      Отложенная оплата (возможность оплаты только после подтверждения администратором) по ссылке
       
      Внимание! для использования эквайринга не обязательно иметь расчетный счет в Сбербанке, достаточно иметь расчетный счет в любом другом банке!
       
      Особенности модуля:
      - Двухстадийная и одностадийная система оплаты на выбор
      - Возможность задать картинку для метода оплаты
      - Адаптивный дизайн платежной страницы на стороне банка
      - Возможность проводить как часть суммы так и целиком, также с отменами и возвратами.
      - Получение уведомлений от сбербанка о совершении оплаты
      - Автоматическая смена статуса при получении оплаты(возможность отправить письмо автоматически покупателю и админу при поступлении)
      - Возможность использования для электронных товаров.
      - Шифрование пароля API, как в админ панели так и в базе данных.
      - Возможность задать комиссию для покупателя
      - Просмотр успешных платежей в админ панели магазина
      - Если пользователь прервал оплату, заказ все равно создастся (опция в настройках)
      - Возможность оплаты из личного кабинета
      - Возможность получение ссылки на оплату в письме
      - Возможность использования инструкции к оплате при оформлении заказа (использование переменных таких как «номер заказа», «ссылка на оплату», «сумма заказа», «комиссия» и html тегов)
      - Возможность использования инструкции к оплате в письме о заказе (использование переменных таких как «номер заказа», «ссылка на оплату», «сумма заказа», «комиссия» и html тегов)
      - Уведомление администратора при получении оплаты
      - Уведомление покупателя при получении оплаты магазином
      - Возможность добавления комментария для дальнейших действий в письмо о успешной оплате(использование переменных таких как «номер заказа», «сумма заказа», «комиссия» и html тегов)
      - Возможность повторно выслать ссылку на оплату из админ панели
      - Возможность добавить кнопку «Оплатить позже» при оформлении заказа
      - На странице успешной оплаты, если платеж уже поступил вывод текста об успешной оплате, если платеж не поступил или отказ от оплаты вывод “После того как деньги поступят на наш счет, статус Вашего Заказа # изменится” или возможно в настройках задать Ваш текст.
      - Возможность изменить текст на странице успешной оплаты (использование переменных таких как «номер заказа», «сумма заказа», «комиссия» и html тегов)
      - При оплате сразу после оформления заказа на страницах успешной и ожидаемой оплаты вывод текста, что заказ создан.
      - На страницах успешной и неуспешной оплаты зарегистрированным пользователям выводятся ссылки на личный кабинет.
      - Возможность задания максимальной суммы заказа при котором метод не будет выводиться.
      - Возможность задания минимальной суммы заказа при которой метод не будет выводиться.
      - Возможность изменения названия метода оплаты.
      - Возможность использования html тегов в названии метода оплаты (например вставлять картинки)
      - Возможность изменить текст на странице не удачной оплаты (использование переменных таких как «номер заказа», «ссылка на оплату», «сумма заказа», «комиссия» и html тегов)
      - Возможность совершать предоплату от суммы заказа или фиксированную стоимость
      - Поддержка Мульти-языка
      - Поддержка Мульти-магазина
      - Возможность создавать заказ до оплаты, или создавать только после оплаты (задается в настройках модуля)
      - Выбор в настройках валюты магазина
      - Выбор в настройках валюты счета банка
      - Выбор серверов оплаты (тестовый, реальный, свой)
      - Два режима работы модуля curl или filegetcontents (альтернатива для не полноценного хостинга)
      - Возможность менять статус без callback делая запрос от своего сайта на странице удачной оплаты (опция в настройках)
      - Адаптивный дизайн платежной страницы
       
      Демо
      http://dev45.pe-art.ru/
      админ панель http://dev45.pe-art.ru/admin/index.php?route=payment/sbacquiring
      логин demo
      пароль demo
      Совместимость с версией магазина:
      Opencart 2.3.x
      Opencart 2.2.x
      Opencart 2.1.x
      Opencart 2.0.x
      Opencart 1.5.x - 1.5.6.x
      Opencart 1.4.x (требуется доработка магазина)
      OcStore 2.3.x
      OcStore 2.1.x
      OcStore 1.5.x - 1.5.5.1.2
      OcStore 0.2.x (требуется доработка магазина)
       
      Заявка на подключение к услуге тут http://www.sberbank.ru/ru/s_m_business/bankingservice/internet_acquiring
       
      Техническое подключение под ключ в кратчайшие сроки (1 рабочий день) - 2900р (Минимум Вашего участия, от Вас доступ ФТП и данные от банка, у меня ПОЛНЫЙ контакт с тех поддержкой банка, У Вас качественное и быстрое решение по внедрению эквайринга и свободное время)
       
      Смотрите также другие модули по ссылке
      Добавил ashap Добавлено 19.10.2016 Категория Платежные системы Системные требования Сайт разработчика https://store.pe-art.ru/ Старая цена Метод активации Автоматическая активация Ioncube Loader Нет OpenCart 2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.4.1
      1.5.3.1 ocStore 2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х  
    • От ashap
      2 800.00 руб
      Скачать/Купить дополнение


      Альфа Банк Эквайринг - Двухстадийные платежи
      Прием к оплате банковских карт с помощью двухстадийных платежей (также бонусом вы получаете возможность использовать одностадийные). Прием платежей в интернете (интернет-эквайринг) — проведение и обработка операций, проводимых с использованием банковских карт VISA и MasterCard на сайте компании
      Почему Альфа-Банк?
      Много лет предоставляет компаниям услуги по приему оплаты картами в интернете и является лидером на рынке России один из лучших на рынке показателей противодействия мошенничеству (группа мониторинга онлайн-платежей) гибко настраиваемая система фрод-мониторинга использование технологий 3D-Secure от VISA и SecureCode от MasterCard доступ сотрудника компании в систему отчетности интернет-эквайринг для Call-центра компании, оплата товаров (услуг) по телефону и IVR Настройка автоплатежей Наши клиенты : Аэрофлот, S7, Яндекс, Beeline, Одноклассники.ру, ВКонтакте, Евросеть, Мосэнергосбыт и др
      Одностадийный платеж - операция по оплате товаров/услуг, совершенная через Интернет с использованием банковских карт,
      которая не требует дополнительного подтверждения.
      Двухстадийный платеж – операция по оплате товаров/услуг, совершенная через Интернет с использованием банковских карт,
      требующая дополнительного подтверждения. Двухстадийный механизм работы позволяет разделить процесс проверки
      платежеспособности банковской карты (авторизация) и снятие денег (финансовое подтверждение). На первой стадии
      двухстадийного платежа происходит блокирование средств на счету клиента, а на второй списание. Возможность проводить как часть суммы так и целиком, также с отменами и возвратами.
      Особенности модуля:
      - Двухстадийная и одностадийная система оплаты на выбор
      - Возможность проводить как часть суммы так и целиком, также с отменами и возвратами.
      - Получение уведомлений от альфа банка о совершении оплаты
      - Автоматическая смена статуса при получении оплаты(возможность отправить письмо автоматически покупателю и админу при поступлении)
      - Возможность использования для электронных товаров.
      - Шифрование пароля API, как в админ панели так и в базе данных.
      - Возможность задать комиссию для покупателя
      - Просмотр успешных платежей в админ панели магазина
      - Если пользователь прервал оплату, заказ все равно создастся (опция в настройках)
      - Возможность оплаты из личного кабинета
      - Возможность получение ссылки на оплату в письме
      - Возможность использования инструкции к оплате при оформлении заказа (использование переменных таких как «номер заказа», «ссылка на оплату», «сумма заказа», «комиссия» и html тегов)
      - Возможность использования инструкции к оплате в письме о заказе (использование переменных таких как «номер заказа», «ссылка на оплату», «сумма заказа», «комиссия» и html тегов)
      - Уведомление администратора при получении оплаты
      - Уведомление покупателя при получении оплаты магазином
      - Возможность добавления комментария для дальнейших действий в письмо о успешной оплате(использование переменных таких как «номер заказа», «сумма заказа», «комиссия» и html тегов)
      - Возможность повторно выслать ссылку на оплату из админ панели
      - Возможность добавить кнопку «Оплатить позже» при оформлении заказа
      - На странице успешной оплаты, если платеж уже поступил вывод текста об успешной оплате, если платеж не поступил или отказ от оплаты вывод “После того как деньги поступят на наш счет, статус Вашего Заказа # изменится” или возможно в настройках задать Ваш текст.
      - Возможность изменить текст на странице успешной оплаты (использование переменных таких как «номер заказа», «сумма заказа», «комиссия» и html тегов)
      - При оплате сразу после оформления заказа на страницах успешной и ожидаемой оплаты вывод текста, что заказ создан.
      - На страницах успешной и неуспешной оплаты зарегистрированным пользователям выводятся ссылки на личный кабинет.
      - Возможность задания максимальной суммы заказа при котором метод не будет выводиться.
      - Возможность задания минимальной суммы заказа при которой метод не будет выводиться.
      - Возможность изменения названия метода оплаты.
      - Возможность использования html тегов в названии метода оплаты (например вставлять картинки)
      - Возможность изменить текст на странице не удачной оплаты (использование переменных таких как «номер заказа», «ссылка на оплату», «сумма заказа», «комиссия» и html тегов)
      - Возможность совершать предоплату от суммы заказа или фиксированную стоимость
      - Поддержка Мульти-языка
      - Поддержка Мульти-магазина
      - Возможность создавать заказ до оплаты, или создавать только после оплаты (задается в настройках модуля)
      - Выбор в настройках валюты магазина
      - Выбор в настройках валюты счета банка
      - Выбор серверов оплаты (тестовый, реальный, свой)
      - Два режима работы модуля curl или filegetcontents (альтернатива для не полноценного хостинга)
      - Возможность менять статус без callback делая запрос от своего сайта на странице удачной оплаты (опция в настройках)




      Совместимость с версией магазина:
      Opencart 2.3.x
      Opencart 2.2.x
      Opencart 2.1.x
      Opencart 2.0.x
      Opencart 1.5.x - 1.5.6.x
      Opencart 1.4.x (требуется доработка магазина)
      OcStore 2.3.x
      OcStore 2.1.x
      OcStore 1.5.x - 1.5.5.1.2
      OcStore 0.2.x (требуется доработка магазина)
      Демо
      http://dev45.pe-art.ru/
      админ панель http://dev45.pe-art....ent/abacquiring
      логин demo
      пароль demo
      Заявка на подключение к услуге тут https://alfabank.ru/ecom/site_payments/site/
      Техническое подключение под ключ в кратчайшие сроки (1 рабочий день) - 2900р (Минимум Вашего участия, от Вас доступ ФТП и данные от банка, у меня ПОЛНЫЙ контакт с тех поддержкой банка, У Вас качественное и быстрое решение по внедрению эквайринга и свободное время)
       
      Смотрите также другие модули по ссылке
      Добавил ashap Добавлено 31.10.2016 Категория Платежные системы Системные требования Сайт разработчика https://store.pe-art.ru/ Старая цена Метод активации Автоматическая активация Ioncube Loader Нет OpenCart 2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.4.1
      1.5.3.1 ocStore 2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х  
    • От ashap
      Прием к оплате банковских карт с помощью двухстадийных платежей (также бонусом вы получаете возможность использовать одностадийные). Прием платежей в интернете (интернет-эквайринг) — проведение и обработка операций, проводимых с использованием банковских карт VISA и MasterCard на сайте компании
      Почему Альфа-Банк?
      Много лет предоставляет компаниям услуги по приему оплаты картами в интернете и является лидером на рынке России один из лучших на рынке показателей противодействия мошенничеству (группа мониторинга онлайн-платежей) гибко настраиваемая система фрод-мониторинга использование технологий 3D-Secure от VISA и SecureCode от MasterCard доступ сотрудника компании в систему отчетности интернет-эквайринг для Call-центра компании, оплата товаров (услуг) по телефону и IVR Настройка автоплатежей Наши клиенты : Аэрофлот, S7, Яндекс, Beeline, Одноклассники.ру, ВКонтакте, Евросеть, Мосэнергосбыт и др
      Одностадийный платеж - операция по оплате товаров/услуг, совершенная через Интернет с использованием банковских карт,
      которая не требует дополнительного подтверждения.
      Двухстадийный платеж – операция по оплате товаров/услуг, совершенная через Интернет с использованием банковских карт,
      требующая дополнительного подтверждения. Двухстадийный механизм работы позволяет разделить процесс проверки
      платежеспособности банковской карты (авторизация) и снятие денег (финансовое подтверждение). На первой стадии
      двухстадийного платежа происходит блокирование средств на счету клиента, а на второй списание. Возможность проводить как часть суммы так и целиком, также с отменами и возвратами.
      Особенности модуля:
      - Двухстадийная и одностадийная система оплаты на выбор
      - Возможность проводить как часть суммы так и целиком, также с отменами и возвратами.
      - Получение уведомлений от альфа банка о совершении оплаты
      - Автоматическая смена статуса при получении оплаты(возможность отправить письмо автоматически покупателю и админу при поступлении)
      - Возможность использования для электронных товаров.
      - Шифрование пароля API, как в админ панели так и в базе данных.
      - Возможность задать комиссию для покупателя
      - Просмотр успешных платежей в админ панели магазина
      - Если пользователь прервал оплату, заказ все равно создастся (опция в настройках)
      - Возможность оплаты из личного кабинета
      - Возможность получение ссылки на оплату в письме
      - Возможность использования инструкции к оплате при оформлении заказа (использование переменных таких как «номер заказа», «ссылка на оплату», «сумма заказа», «комиссия» и html тегов)
      - Возможность использования инструкции к оплате в письме о заказе (использование переменных таких как «номер заказа», «ссылка на оплату», «сумма заказа», «комиссия» и html тегов)
      - Уведомление администратора при получении оплаты
      - Уведомление покупателя при получении оплаты магазином
      - Возможность добавления комментария для дальнейших действий в письмо о успешной оплате(использование переменных таких как «номер заказа», «сумма заказа», «комиссия» и html тегов)
      - Возможность повторно выслать ссылку на оплату из админ панели
      - Возможность добавить кнопку «Оплатить позже» при оформлении заказа
      - На странице успешной оплаты, если платеж уже поступил вывод текста об успешной оплате, если платеж не поступил или отказ от оплаты вывод “После того как деньги поступят на наш счет, статус Вашего Заказа # изменится” или возможно в настройках задать Ваш текст.
      - Возможность изменить текст на странице успешной оплаты (использование переменных таких как «номер заказа», «сумма заказа», «комиссия» и html тегов)
      - При оплате сразу после оформления заказа на страницах успешной и ожидаемой оплаты вывод текста, что заказ создан.
      - На страницах успешной и неуспешной оплаты зарегистрированным пользователям выводятся ссылки на личный кабинет.
      - Возможность задания максимальной суммы заказа при котором метод не будет выводиться.
      - Возможность задания минимальной суммы заказа при которой метод не будет выводиться.
      - Возможность изменения названия метода оплаты.
      - Возможность использования html тегов в названии метода оплаты (например вставлять картинки)
      - Возможность изменить текст на странице не удачной оплаты (использование переменных таких как «номер заказа», «ссылка на оплату», «сумма заказа», «комиссия» и html тегов)
      - Возможность совершать предоплату от суммы заказа или фиксированную стоимость
      - Поддержка Мульти-языка
      - Поддержка Мульти-магазина
      - Возможность создавать заказ до оплаты, или создавать только после оплаты (задается в настройках модуля)
      - Выбор в настройках валюты магазина
      - Выбор в настройках валюты счета банка
      - Выбор серверов оплаты (тестовый, реальный, свой)
      - Два режима работы модуля curl или filegetcontents (альтернатива для не полноценного хостинга)
      - Возможность менять статус без callback делая запрос от своего сайта на странице удачной оплаты (опция в настройках)




      Совместимость с версией магазина:
      Opencart 2.3.x
      Opencart 2.2.x
      Opencart 2.1.x
      Opencart 2.0.x
      Opencart 1.5.x - 1.5.6.x
      Opencart 1.4.x (требуется доработка магазина)
      OcStore 2.3.x
      OcStore 2.1.x
      OcStore 1.5.x - 1.5.5.1.2
      OcStore 0.2.x (требуется доработка магазина)
      Демо
      http://dev45.pe-art.ru/
      админ панель http://dev45.pe-art....ent/abacquiring
      логин demo
      пароль demo
      Заявка на подключение к услуге тут https://alfabank.ru/ecom/site_payments/site/
      Техническое подключение под ключ в кратчайшие сроки (1 рабочий день) - 2900р (Минимум Вашего участия, от Вас доступ ФТП и данные от банка, у меня ПОЛНЫЙ контакт с тех поддержкой банка, У Вас качественное и быстрое решение по внедрению эквайринга и свободное время)
       
      Смотрите также другие модули по ссылке
    • От alex1990
      Добрый день!
      Требуется убрать поддомены с ИМ с сохранением структуры дизайна и логики. Сейчас ИМ имеет субподдомены (3шт) для каждого бренда. Товаров около 6тыс, все они находятся в общей базе но разбиты в админке под каждый поддомен.
      Более подробная информация и ссылка сайт в ЛС.
  • Последние посетители   0 пользователей онлайн

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

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.