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

Клонирование товара

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

У меня однотипные товары различающиеся только фотографиями артикулами и ценой. Существует ли механизм клонирования товаров или возможность создания шаблона товара?

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


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

кнопочка наверху "копировать" есть

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


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

У меня нет. Только добавить и удалить.

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


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

ну на 1.4.7 она есть точно.Если в ближайшем будущем обновляться не собираешься, то можно в ручную добавить в 1.4.0, как это сделать подскажу

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


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

Да я бы и обновился, но не владею материалом. Не знаю как это сделать да и на форуме нелестные отзывы о новых версиях. Поэтому был бы благодарен за информацию о том как это сделать в 1.4.0.

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


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

ну тогда ближе к вечеру поставлю себе 1.4.0, гляну что да как и отпишу)

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


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

Большое спасибо!И ещё вопрос, стоит ли уже переходить на 1.4.7?

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


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

подожди месяцок, там и версия стабильная должна появиться и нормальный апдейтер обещают. Сейчас безболезненно на 1.4.7 врядли перейдешь)

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


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

Понятно, спасибо. Тогда жду информации по 1.4.0

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


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

начнем:

в файле ..adminviewtemplatecatalogproduct_list.tpl находим строчку:

<a onclick="location='<?php echo $insert; ?>'" class="button"><span><?php echo $button_insert; ?></span></a>
сразу же после нее вставляем

<a onclick="$('#form').attr('action', '<?php echo $copy; ?>'); $('#form').submit();" class="button"><span>Копировать</span></a>

в файле ..adminmodelcatalogproduct.php в районе 218 строки вставить:

public function copyProduct($product_id) {		$query = $this->db->query("SELECT DISTINCT *, (SELECT keyword FROM " . DB_PREFIX . "url_alias WHERE query = 'product_id=" . (int)$product_id . "') AS keyword FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "'");				if ($query->num_rows) {			$data = array();						$data = $query->row;						$data = array_merge($data, array('product_description' => $this->getProductDescriptions($product_id)));			$data = array_merge($data, array('product_option' => $this->getProductOptions($product_id)));						$data['product_image'] = array();						$results = $this->getProductImages($product_id);						foreach ($results as $result) {				$data['product_image'][] = $result['image'];			}						$data = array_merge($data, array('product_discount' => $this->getProductDiscounts($product_id)));			$data = array_merge($data, array('product_special' => $this->getProductSpecials($product_id)));			$data = array_merge($data, array('product_download' => $this->getProductDownloads($product_id)));			$data = array_merge($data, array('product_category' => $this->getProductCategories($product_id)));			$data = array_merge($data, array('product_related' => $this->getProductRelated($product_id)));						$this->addProduct($data);		}	}

в файле ..admincontrollercatalogproduct.php в районе 160 строки вставить:

public function copy() {    	$this->load->language('catalog/product');    	$this->document->title = $this->language->get('heading_title');				$this->load->model('catalog/product');				if (isset($this->request->post['selected'])) {			foreach ($this->request->post['selected'] as $product_id) {				$this->model_catalog_product->copyProduct($product_id);	  		}			$this->session->data['success'] = $this->language->get('text_success');						$url = '';						if (isset($this->request->get['filter_name'])) {				$url .= '&filter_name=' . $this->request->get['filter_name'];			}					if (isset($this->request->get['filter_model'])) {				$url .= '&filter_model=' . $this->request->get['filter_model'];			}						if (isset($this->request->get['filter_quantity'])) {				$url .= '&filter_quantity=' . $this->request->get['filter_quantity'];			}						if (isset($this->request->get['filter_status'])) {				$url .= '&filter_status=' . $this->request->get['filter_status'];			}								if (isset($this->request->get['page'])) {				$url .= '&page=' . $this->request->get['page'];			}			if (isset($this->request->get['sort'])) {				$url .= '&sort=' . $this->request->get['sort'];			}			if (isset($this->request->get['order'])) {				$url .= '&order=' . $this->request->get['order'];			}						$this->redirect(HTTPS_SERVER . 'index.php?route=catalog/product' . $url);		}    	$this->getList();  	}

в районе 299 вставить:

$this->data['copy'] = HTTPS_SERVER . 'index.php?route=catalog/product/copy' . $url;

вроде работает, но все же проверять будешь, не забудь сделать бекап БД)

п.с. сделано по образу и подобию 1.4.7 версии.

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


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

Да! Работает!Доктор, Вы волшебник!Большое спасибо!

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


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

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

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

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

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

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

Войти

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

Войти

  • Последние посетители   0 пользователей онлайн

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

×

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

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