Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Помогите с программированием файла для Яндекс Маркета


Recommended Posts

У меня в магазине полное наименование товаров генерируются из рахных полей: название, производитель, объём (в гр, капс, млл, кг...) кол-во порций.

Соответственно, когда я поставил модуль и выгрузил всё на яндекс маркет - название выгрузились вот так:

BCAA Capsules

вместо

BCAA Capsules 120 капс/24 порций от Be First

 

У меня стоит какой то самый простой модуль, для выгрузки в ЯМ, частично мне удалось сгенерировать заголовки вот такой конструкцией:

 

$data['name'] = (''.$product['name'].' '.round($product['weight'], 2).''.$weight_class.' '.$product['manufacturer'].'');

 

Но '.$weight_class.' - не работает, если выводить вот так '.$product['weight_class_id'].' - id выводится корректно!

 

'.$weight_class.' -- я пытаюсь вывести вот таким кодом :

 

if ($product['weight_class_id'] == 1){
$weight_class = 'кг';
}
if ($product['weight_class_id'] == 2){
$weight_class = 'гр';
}
if ($product['weight_class_id'] == 3){
$weight_class = 'мл';
}

 

Целый код генерации ЯМ ниже. Всё затрудняется ещё тем, что после каждой правки - изменения видны только спустя время... файл почему то обновляется не сразу. Я уже задолбался, помогите пожалуйста

 

Что нужно, чтобы '.$weight_class.'  выводил млл, капс и проч?  Опенкарт 1541

<?php
/**
 * Класс YML экспорта
 * YML (Yandex Market Language) - стандарт, разработанный "Яндексом"
 * для принятия и публикации информации в базе данных Яндекс.Маркет
 * YML основан на стандарте XML (Extensible Markup Language)
 * описание формата YML http://partner.market.yandex.ru/legal/tt/
 */
class ControllerFeedYandexMarket extends Controller {
	private $shop = array();
	private $currencies = array();
	private $categories = array();
	private $offers = array();
	private $from_charset = 'utf-8';
	private $eol = "\n";

	public function index() {
		if ($this->config->get('yandex_market_status')) {

			if (!($allowed_categories = $this->config->get('yandex_market_categories'))) exit();

			$this->response->addHeader('Content-Type: application/xml');
			
			$filename = DIR_DOWNLOAD . 'offers.yml';
			
			if (!is_file($filename) || time() - @filemtime($filename) > 60*30) { // one time per half of hour
				$fd = fopen($filename, 'w');
				
				$this->load->model('export/yandex_market');
				$this->load->model('localisation/currency');
				$this->load->model('tool/image');
				$this->load->model('catalog/product');

				// Магазин
				$this->setShop('name', $this->config->get('yandex_market_shopname'));
				$this->setShop('company', $this->config->get('yandex_market_company'));
				$this->setShop('url', HTTP_SERVER);
				$this->setShop('phone', $this->config->get('config_telephone'));
				$this->setShop('platform', 'ocStore');
				$this->setShop('version', VERSION);

				// Валюты
				// TODO: Добавить возможность настраивать проценты в админке.
				$offers_currency = $this->config->get('yandex_market_currency');
				if (!$this->currency->has($offers_currency)) exit();

				$decimal_place = $this->currency->getDecimalPlace($offers_currency);

				if (!$decimal_place) {
					$decimal_place = 2;
				}
if ($product['weight_class_id'] == 1){
$weight_class = 'кг';
}
if ($product['weight_class_id'] == 2){
$weight_class = 'гр';
}
if ($product['weight_class_id'] == 3){
$weight_class = 'мл';
}
if ($product['weight_class_id'] == 4){
$weight_class = 'капс';
}
if ($product['weight_class_id'] == 5){
$weight_class = табл ;
}
if ($product['weight_class_id'] == 6){
$weight_class = 'шт';
}
if ($product['weight_class_id'] == 7){
$weight_class = 'уп';
}
				$shop_currency = $this->config->get('config_currency');

				$this->setCurrency($offers_currency, 1);

				$currencies = $this->model_localisation_currency->getCurrencies();

				$supported_currencies = array('RUR', 'RUB', 'USD', 'BYR', 'KZT', 'EUR', 'UAH');

				$currencies = array_intersect_key($currencies, array_flip($supported_currencies));

				foreach ($currencies as $currency) {
					if ($currency['code'] != $offers_currency && $currency['status'] == 1) {
						$this->setCurrency($currency['code'], number_format(1/$this->currency->convert($currency['value'], $offers_currency, $shop_currency), 4, '.', ''));
					}
				}





				// Категории
				$categories = $this->model_export_yandex_market->getCategory();

				foreach ($categories as $category) {
					$this->setCategory($category['name'], $category['category_id'], $category['parent_id']);
				}

				// Товарные предложения
				$in_stock_id = $this->config->get('yandex_market_in_stock'); // id статуса товара "В наличии"
				$out_of_stock_id = $this->config->get('yandex_market_out_of_stock'); // id статуса товара "Нет на складе"
				$vendor_required = false; // true - только товары у которых задан производитель, необходимо для 'vendor.model' 
				$products = $this->model_export_yandex_market->getProduct($allowed_categories, $out_of_stock_id, $vendor_required);

				
				$yml  = '<?xml version="1.0" encoding="utf-8"?>' . $this->eol;
				$yml .= '<!DOCTYPE yml_catalog SYSTEM "shops.dtd">' . $this->eol;
				$yml .= '<yml_catalog date="' . date('Y-m-d H:i') . '">' . $this->eol;
				$yml .= '<shop>' . $this->eol;

				// информация о магазине
				$yml .= $this->array2Tag($this->shop);

				// валюты
				$yml .= '<currencies>' . $this->eol;
				foreach ($this->currencies as $currency) {
					$yml .= $this->getElement($currency, 'currency');
				}
				$yml .= '</currencies>' . $this->eol;

				// категории
				$yml .= '<categories>' . $this->eol;
				foreach ($this->categories as $category) {
					$category_name = $category['name'];
					unset($category['name'], $category['export']);
					$yml .= $this->getElement($category, 'category', $category_name);
				}
				$yml .= '</categories>' . $this->eol;

				$yml .= '<offers>' . $this->eol;
			
				fwrite($fd, $yml);

				$buffer = '';
				$buffer_size = 128*1024; // 128Kb




				foreach ($products as $product) {
					$data = array();

					// Атрибуты товарного предложения
					$data['id'] = $product['product_id'];
	//				$data['type'] = 'vendor.model';
					$data['available'] = ($product['quantity'] > 0 || $product['stock_status_id'] == $in_stock_id);
	//				$data['bid'] = 10;
	//				$data['cbid'] = 15;

					// Параметры товарного предложения
					$data['url'] = $this->url->link('product/product','path=' . $this->getPath($product['category_id']) . '&product_id=' . $product['product_id']);
					// USE THIS TO SPEED UP: $data['url'] = HTTP_SERVER . 'index.php?route=product/product&path=' . $this->getPath($product['category_id']) . '&product_id=' . $product['product_id'];
					$data['price'] = number_format($this->currency->convert($this->tax->calculate($product['price'], $product['tax_class_id']), $shop_currency, $offers_currency), $decimal_place, '.', '');
					$data['currencyId'] = $offers_currency;
					$data['categoryId'] = $product['category_id'];
					$data['delivery'] = 'true';
	//				$data['local_delivery_cost'] = 100;
					$data['name'] = (''.$product['name'].' '.round($product['weight'], 2).''.$weight_class.' '.$product['manufacturer'].'');
					$data['vendor'] = $product['manufacturer'];
					$data['vendorCode'] = $product['model'];
					$data['model'] = $product['name'];
					$data['description'] = $product['description'];
                                        $data['sales_notes'] = 'Необходима 100% предоплата заказа!';
	//				$data['manufacturer_warranty'] = 'true';
	//				$data['barcode'] = $product['sku'];
					if ($product['image']) {
						//$data['picture'] = $this->model_tool_image->resize($product['image'], 500, 500);
						
						$image_path = 'image/' . $product['image'];
					
						if (strpos($image_path, ' ') !== false) {
							$new_image_path = str_replace(' ', '__', $image_path);
							
							if (!file_exists($new_image_path)) {
								$new_image_dir = dirname($new_image_path);
								
								if (!is_dir($new_image_dir)) {
									mkdir($new_image_dir, 0777, true);
								}
								
								copy($image_path, $new_image_path);
							}
							
							$image_path = $new_image_path;
						}
						$data['picture'] = HTTP_SERVER . $image_path;
					}
					
					$attribute_groups = $this->model_catalog_product->getProductAttributes($product['product_id']);
					
					if (!empty($attribute_groups)) {
						$data['param'] = array();
						foreach ($attribute_groups as $attribute_group) {
							foreach ($attribute_group['attribute'] as $attribute) {
								$data['param'][] = array (
									'name'  => $attribute['name'],
									'value' => $attribute['text'],
								);
							}
						}
					}
	/*
					// пример структуры массива для вывода параметров
					$data['param'] = array(
						array(
							'name'=>'Wi-Fi',
							'value'=>'есть'
						), array(
							'name'=>'Размер экрана',
							'unit'=>'дюйм',
							'value'=>'20'
						), array(
							'name'=>'Вес',
							'unit'=>'кг',
							'value'=>'4.6'
						)
					);
	*/

					$offer = $this->setOffer($data);
					
					$tags = $this->array2Tag($offer['data']);
					unset($offer['data']);
					if (isset($offer['param'])) {
						$tags .= $this->array2Param($offer['param']);
						unset($offer['param']);
					}
					
					$buffer .= $this->getElement($offer, 'offer', $tags);
				
					if (strlen($buffer) >= $buffer_size) {
						fwrite($fd, $buffer);
						$buffer = '';
					}
				}

				if ($buffer != '') {
					fwrite($fd, $buffer);
				}
				
				$yml = '';
				$yml .= '</offers>' . $this->eol;

				$yml .= '</shop>';
				$yml .= '</yml_catalog>';
				
				fwrite($fd, $yml);
				fclose($fd);
			}
		
			readfile($filename);
			//
			//$this->categories = array_filter($this->categories, array($this, "filterCategory"));
		}
	}

	/**
	 * Методы формирования YML
	 */

	/**
	 * Формирование массива для элемента shop описывающего магазин
	 *
	 * @param string $name - Название элемента
	 * @param string $value - Значение элемента
	 */
	private function setShop($name, $value) {
		$allowed = array('name', 'company', 'url', 'phone', 'platform', 'version', 'agency', 'email');
		if (in_array($name, $allowed)) {
			$this->shop[$name] = $this->prepareField($value);
		}
	}

	/**
	 * Валюты
	 *
	 * @param string $id - код валюты (RUR, RUB, USD, BYR, KZT, EUR, UAH)
	 * @param float|string $rate - курс этой валюты к валюте, взятой за единицу.
	 *	Параметр rate может иметь так же следующие значения:
	 *		CBRF - курс по Центральному банку РФ.
	 *		NBU - курс по Национальному банку Украины.
	 *		NBK - курс по Национальному банку Казахстана.
	 *		СВ - курс по банку той страны, к которой относится интернет-магазин
	 * 		по Своему региону, указанному в Партнерском интерфейсе Яндекс.Маркета.
	 * @param float $plus - используется только в случае rate = CBRF, NBU, NBK или СВ
	 *		и означает на сколько увеличить курс в процентах от курса выбранного банка
	 * @return bool
	 */
	private function setCurrency($id, $rate = 'CBRF', $plus = 0) {
		$allow_id = array('RUR', 'RUB', 'USD', 'BYR', 'KZT', 'EUR', 'UAH');
		if (!in_array($id, $allow_id)) {
			return false;
		}
		$allow_rate = array('CBRF', 'NBU', 'NBK', 'CB');
		if (in_array($rate, $allow_rate)) {
			$plus = str_replace(',', '.', $plus);
			if (is_numeric($plus) && $plus > 0) {
				$this->currencies[] = array(
					'id'=>$this->prepareField(strtoupper($id)),
					'rate'=>$rate,
					'plus'=>(float)$plus
				);
			} else {
				$this->currencies[] = array(
					'id'=>$this->prepareField(strtoupper($id)),
					'rate'=>$rate
				);
			}
		} else {
			$rate = str_replace(',', '.', $rate);
			if (!(is_numeric($rate) && $rate > 0)) {
				return false;
			}
			$this->currencies[] = array(
				'id'=>$this->prepareField(strtoupper($id)),
				'rate'=>(float)$rate
			);
		}

		return true;
	}

	/**
	 * Категории товаров
	 *
	 * @param string $name - название рубрики
	 * @param int $id - id рубрики
	 * @param int $parent_id - id родительской рубрики
	 * @return bool
	 */
	private function setCategory($name, $id, $parent_id = 0) {
		$id = (int)$id;
		if ($id < 1 || trim($name) == '') {
			return false;
		}
		if ((int)$parent_id > 0) {
			$this->categories[$id] = array(
				'id'=>$id,
				'parentId'=>(int)$parent_id,
				'name'=>$this->prepareField($name)
			);
		} else {
			$this->categories[$id] = array(
				'id'=>$id,
				'name'=>$this->prepareField($name)
			);
		}

		return true;
	}

	/**
	 * Товарные предложения
	 *
	 * @param array $data - массив параметров товарного предложения
	 */
	private function setOffer($data) {
		$offer = array();

		$attributes = array('id', 'type', 'available', 'bid', 'cbid', 'param');
		$attributes = array_intersect_key($data, array_flip($attributes));

		foreach ($attributes as $key => $value) {
			switch ($key)
			{
				case 'id':
				case 'bid':
				case 'cbid':
					$value = (int)$value;
					if ($value > 0) {
						$offer[$key] = $value;
					}
					break;

				case 'type':
					if (in_array($value, array('vendor.model', 'book', 'audiobook', 'artist.title', 'tour', 'ticket', 'event-ticket'))) {
						$offer['type'] = $value;
					}
					break;

				case 'available':
					$offer['available'] = ($value ? 'true' : 'false');
					break;

				case 'param':
					if (is_array($value)) {
						$offer['param'] = $value;
					}
					break;

				default:
					break;
			}
		}

		$type = isset($offer['type']) ? $offer['type'] : '';

		$allowed_tags = array('url'=>0, 'buyurl'=>0, 'price'=>1, 'wprice'=>0, 'currencyId'=>1, 'xCategory'=>0, 'categoryId'=>1, 'picture'=>0, 'store'=>0, 'pickup'=>0, 'delivery'=>0, 'deliveryIncluded'=>0, 'local_delivery_cost'=>0, 'orderingTime'=>0);

		switch ($type) {
			case 'vendor.model':
				$allowed_tags = array_merge($allowed_tags, array('typePrefix'=>0, 'vendor'=>1, 'vendorCode'=>0, 'model'=>1, 'provider'=>0, 'tarifplan'=>0));
				break;

			case 'book':
				$allowed_tags = array_merge($allowed_tags, array('author'=>0, 'name'=>1, 'publisher'=>0, 'series'=>0, 'year'=>0, 'ISBN'=>0, 'volume'=>0, 'part'=>0, 'language'=>0, 'binding'=>0, 'page_extent'=>0, 'table_of_contents'=>0));
				break;

			case 'audiobook':
				$allowed_tags = array_merge($allowed_tags, array('author'=>0, 'name'=>1, 'publisher'=>0, 'series'=>0, 'year'=>0, 'ISBN'=>0, 'volume'=>0, 'part'=>0, 'language'=>0, 'table_of_contents'=>0, 'performed_by'=>0, 'performance_type'=>0, 'storage'=>0, 'format'=>0, 'recording_length'=>0));
				break;

			case 'artist.title':
				$allowed_tags = array_merge($allowed_tags, array('artist'=>0, 'title'=>1, 'year'=>0, 'media'=>0, 'starring'=>0, 'director'=>0, 'originalName'=>0, 'country'=>0));
				break;

			case 'tour':
				$allowed_tags = array_merge($allowed_tags, array('worldRegion'=>0, 'country'=>0, 'region'=>0, 'days'=>1, 'dataTour'=>0, 'name'=>1, 'hotel_stars'=>0, 'room'=>0, 'meal'=>0, 'included'=>1, 'transport'=>1, 'price_min'=>0, 'price_max'=>0, 'options'=>0));
				break;

			case 'event-ticket':
				$allowed_tags = array_merge($allowed_tags, array('name'=>1, 'place'=>1, 'hall'=>0, 'hall_part'=>0, 'date'=>1, 'is_premiere'=>0, 'is_kids'=>0));
				break;

			default:
				$allowed_tags = array_merge($allowed_tags, array('name'=>1, 'vendor'=>0, 'vendorCode'=>0));
				break;
		}

		$allowed_tags = array_merge($allowed_tags, array('aliases'=>0, 'additional'=>0, 'description'=>0, 'sales_notes'=>0, 'promo'=>0, 'manufacturer_warranty'=>0, 'country_of_origin'=>0, 'downloadable'=>0, 'adult'=>0, 'barcode'=>0));

		$required_tags = array_filter($allowed_tags);

		if (sizeof(array_intersect_key($data, $required_tags)) != sizeof($required_tags)) {
			return;
		}

		$data = array_intersect_key($data, $allowed_tags);
//		if (isset($data['tarifplan']) && !isset($data['provider'])) {
//			unset($data['tarifplan']);
//		}

		$allowed_tags = array_intersect_key($allowed_tags, $data);

		// Стандарт XML учитывает порядок следования элементов,
		// поэтому важно соблюдать его в соответствии с порядком описанным в DTD
		$offer['data'] = array();
		foreach ($allowed_tags as $key => $value) {
			$offer['data'][$key] = $this->prepareField($data[$key]);
		}

		//$this->offers[] = $offer;
		return $offer;
	}

	/**
	 * Фрмирование элемента
	 *
	 * @param array $attributes
	 * @param string $element_name
	 * @param string $element_value
	 * @return string
	 */
	private function getElement($attributes, $element_name, $element_value = '') {
		$retval = '<' . $element_name . ' ';
		foreach ($attributes as $key => $value) {
			$retval .= $key . '="' . $value . '" ';
		}
		$retval .= $element_value ? '>' . $this->eol . $element_value . '</' . $element_name . '>' : '/>';
		$retval .= $this->eol;

		return $retval;
	}

	/**
	 * Преобразование массива в теги
	 *
	 * @param array $tags
	 * @return string
	 */
	private function array2Tag($tags) {
		$retval = '';
		foreach ($tags as $key => $value) {
			$retval .= '<' . $key . '>' . $value . '</' . $key . '>' . $this->eol;
		}

		return $retval;
	}

	/**
	 * Преобразование массива в теги параметров
	 *
	 * @param array $params
	 * @return string
	 */
	private function array2Param($params) {
		$retval = '';
		foreach ($params as $param) {
			$retval .= '<param name="' . $this->prepareField($param['name']);
			if (isset($param['unit'])) {
				$retval .= '" unit="' . $this->prepareField($param['unit']);
			}
			$retval .= '">' . $this->prepareField($param['value']) . '</param>' . $this->eol;
		}

		return $retval;
	}

	/**
	 * Подготовка текстового поля в соответствии с требованиями Яндекса
	 * Запрещаем любые html-тэги, стандарт XML не допускает использования в текстовых данных
	 * непечатаемых символов с ASCII-кодами в диапазоне значений от 0 до 31 (за исключением
	 * символов с кодами 9, 10, 13 - табуляция, перевод строки, возврат каретки). Также этот
	 * стандарт требует обязательной замены некоторых символов на их символьные примитивы.
	 * @param string $text
	 * @return string
	 */
	private function prepareField($field) {
		$field = htmlspecialchars_decode($field);
		$field = strip_tags($field);
		$from = array('"', '&', '>', '<', '\'');
		$to = array('&quot;', '&amp;', '&gt;', '&lt;', '&apos;');
		$field = str_replace($from, $to, $field);
		//if ($this->from_charset != 'windows-1251') {
//			$field = iconv($this->from_charset, 'windows-1251//IGNORE', $field);
		//}
		$field = preg_replace('#[\x00-\x08\x0B-\x0C\x0E-\x1F]+#is', ' ', $field);

		return trim($field);
	}

	protected function getPath($category_id, $current_path = '') {
		if (isset($this->categories[$category_id])) {
			$this->categories[$category_id]['export'] = 1;

			if (!$current_path) {
				$new_path = $this->categories[$category_id]['id'];
			} else {
				$new_path = $this->categories[$category_id]['id'] . '_' . $current_path;
			}	

			if (isset($this->categories[$category_id]['parentId'])) {
				return $this->getPath($this->categories[$category_id]['parentId'], $new_path);
			} else {
				return $new_path;
			}

		}
	}

	function filterCategory($category) {
		return isset($category['export']);
	}
}
?>

 

Edited by DRONGO
Link to post
Share on other sites

1 час назад, DRONGO сказал:

У меня в магазине полное наименование товаров генерируются из рахных полей: название, производитель, объём (в гр, капс, млл, кг...) кол-во порций.

 

напишите еще код, который вот эту дурь делает.

Т.к. вы изначально пошли по неправильному пути, и теперь либо делать правильно, либо продолжать копировать

  • +1 2
Link to post
Share on other sites
3 часа назад, nikifalex сказал:

 

напишите еще код, который вот эту дурь делает.

Т.к. вы изначально пошли по неправильному пути, и теперь либо делать правильно, либо продолжать копировать

 

<h1><?php require_once(DIR_SYSTEM . 'library/user.php'); $this->registry->set('user', new User($this->registry)); if ($this->user->isLogged()) { $userLogged = true; } else { $userLogged = false;} if ($userLogged) { ?><a href="/admin/index.php?route=catalog/product/update&token=<?php echo $this->session->data['token']; ?>&product_id=<?php echo $product_id; ?>" target="_blank" ><?php } ?><span class="product-name"><?php echo $heading_title; ?></span> <?php echo round($weight, 2); ?>
<?php if ($weight_class_id==1) {?><?php echo ' кг'; ?><?php } ?>
<?php if ($weight_class_id==2) { echo " гр"; } ?>
<?php if ($weight_class_id==3) {?><?php echo " мл"; ?><?php } ?>
<?php if ($weight_class_id==4) {?><?php echo " капс"; ?><?php } ?>
<?php if ($weight_class_id==5) {?><?php echo " табл"; ?><?php } ?>
<?php if ($weight_class_id==6) {?><?php echo " шт"; ?><?php } ?>
<?php if ($weight_class_id==7) {?><?php echo " упаковка"; ?><?php } ?>
<?php if ($ean) { ?>/<?php echo $ean; ?> порций<?php } ?> 
<?php if ($manufacturer!=='Китай' && $manufacturer!=='Россия' && $manufacturer!=='Беларусь' && $manufacturer!=='Индонезия'){ ?>
от <?php echo $manufacturer; ?>
<?php } ?>
<?php require_once(DIR_SYSTEM . 'library/user.php'); $this->registry->set('user', new User($this->registry)); if ($this->user->isLogged()) { $userLogged = true; } else { $userLogged = false;} if ($userLogged) { ?></a><?php } ?></h1>

Ну это очень удобно из данных товара я могу генерировать что угодно и где угодно... сейчас и в последствии.

 

Хотелось бы что бы генерировалась такая же хрень и в модуле яндекс маркета. 

 

Там у меня ещё ссылка, которая активируется при авторизации от админа - для быстрого редактирования товара, как в вордпрессе

 

Edited by DRONGO
Link to post
Share on other sites

вот эту портянку и вставляйте в яндекс маркет без редактирования конечно

Link to post
Share on other sites
10 часов назад, nikifalex сказал:

вот эту портянку и вставляйте в яндекс маркет без редактирования конечно

 

Тык вот это у меня и не получается... портянка - из тпл  шаблон страницы товара, а яндекс маркет генерится в контроллере. 

Код наименования товара ЯМ - генерится вот этим кодом   (наименование, объём, производитель) -

$data['name'] = (''.$product['name'].' '.round($product['weight'], 2).' '.$product['manufacturer'].'');

А единицы измерения в тпл вывода страницы товара -

<?php if ($weight_class_id==4) {?><?php echo " капс"; ?><?php } ?>

И я не знаю как в код ЯМ - вставить такое условие, как его адаптировать...?

 

Link to post
Share on other sites

В 14.11.2018 в 14:44, DRONGO сказал:

У меня в магазине полное наименование товаров генерируются из рахных полей: название, производитель, объём (в гр, капс, млл, кг...) кол-во порций.

Соответственно, когда я поставил модуль и выгрузил всё на яндекс маркет - название выгрузились вот так:

BCAA Capsules

вместо

BCAA Capsules 120 капс/24 порций от Be First

 

У меня стоит какой то самый простой модуль, для выгрузки в ЯМ, частично мне удалось сгенерировать заголовки вот такой конструкцией:

 

$data['name'] = (''.$product['name'].' '.round($product['weight'], 2).''.$weight_class.' '.$product['manufacturer'].'');

 

Но '.$weight_class.' - не работает, если выводить вот так '.$product['weight_class_id'].' - id выводится корректно!

 

'.$weight_class.' -- я пытаюсь вывести вот таким кодом :

 

if ($product['weight_class_id'] == 1){
$weight_class = 'кг';
}
if ($product['weight_class_id'] == 2){
$weight_class = 'гр';
}
if ($product['weight_class_id'] == 3){
$weight_class = 'мл';
}

 

Целый код генерации ЯМ ниже. Всё затрудняется ещё тем, что после каждой правки - изменения видны только спустя время... файл почему то обновляется не сразу. Я уже задолбался, помогите пожалуйста

 

Что нужно, чтобы '.$weight_class.'  выводил млл, капс и проч?  Опенкарт 1541

 

Но '.$weight_class.' - не работает, если выводить вот так '.$product['weight_class_id'].' - id выводится корректно!

 

 

Ну так $weight_class вы пытаетесь добавить в проверках Массива $product, а откуда ему в том месте где вы проверяете взяться? Он у вас еще не получен. 

 

Edited by niger
Link to post
Share on other sites

Перенесите вот эту вашу проверку с того места, где она у вас сейчас

 

if ($product['weight_class_id'] == 1){
$weight_class = 'кг';
}
if ($product['weight_class_id'] == 2){
$weight_class = 'гр';
}
if ($product['weight_class_id'] == 3){
$weight_class = 'мл';
}
if ($product['weight_class_id'] == 4){
$weight_class = 'капс';
}
if ($product['weight_class_id'] == 5){
$weight_class = табл ;
}
if ($product['weight_class_id'] == 6){
$weight_class = 'шт';
}
if ($product['weight_class_id'] == 7){
$weight_class = 'уп';
}

вот после этой строчки, когда вы разбираете массив $product

foreach ($products as $product) {

 

Edited by niger
  • +1 1
Link to post
Share on other sites

В 16.11.2018 в 11:00, niger сказал:

Перенесите вот эту вашу проверку с того места, где она у вас сейчас

 


if ($product['weight_class_id'] == 1){
$weight_class = 'кг';
}
if ($product['weight_class_id'] == 2){
$weight_class = 'гр';
}
if ($product['weight_class_id'] == 3){
$weight_class = 'мл';
}
if ($product['weight_class_id'] == 4){
$weight_class = 'капс';
}
if ($product['weight_class_id'] == 5){
$weight_class = табл ;
}
if ($product['weight_class_id'] == 6){
$weight_class = 'шт';
}
if ($product['weight_class_id'] == 7){
$weight_class = 'уп';
}

вот после этой строчки, когда вы разбираете массив $product


foreach ($products as $product) {

 

Большое спасибо!

Link to post
Share on other sites

2 минуты назад, DRONGO сказал:

Большое спасибо!

Пожалуйста. Просто вы пытаетесь проверять то, чего нет, или что вы еще не получили. Если бы у вас стоял вывод ошибок, или запись ошибок в лог, то вам бы об этом сказали.

  • +1 1
Link to post
Share on other sites

  • 2 years later...

та же проблема, Яндекс Turbo

у меня в модуле: 

82 строчка, поле $output .= '<price>'  - не может сделать так что бы выводилась цена которая умножается на &курс валюты  (обычно у валютах стоит значение 1.00000, а у меня 1.27000 ) вот и подтягивает цены по тарифу 1.0... 

как быть? 

yandex_turbo.php

Edited by alternativea
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Similar Content

    • By owner1
      Здравствуйте. Ищу специалиста, который настроит интеграцию магазина на ocstore 2.3 (https://xn----8sbpjmcj7aog5i.xn--p1ai/) с Яндекс.Маркетом (для работы по DBS модели), чтобы в последующем все получаемые заказы отображались в CRM Битрикс 24.
       
      Выгрузка товаров YML для работы по ADV модели если что есть, но если использовать её, то нужно добавить как минимум значение налога в теге <vat> и остаток товара <count> (возможно еще чего-то не хватает)
       
      Желательно обойтись без интеграции с Ocstore, чтобы заказы сразу попадали в Битрикс 24, а заказы подтверждались в личном кабинете Яндекс.Маркета, если это возможно.
       
      Жду всевозможные идеи, открыт к сотрудничеству
    • By legioner26
      799
      Скачать/Купить дополнение


      Подарки на сайте
      Разработан модификатор подарков для магазинов построенных на CMS Opencart
      Установка и работа в целом очень просты.
      В товаре просто указываете список подарков и устанавливаете вариант при котором он сработает, либо от количества покупаемого товара, либо от суммы заказа в целом.
      Также подарки можно вычесть со склада.
      В БД созданы отдельные таблицы для работы.
       
      Модификатор подарков сделан под требования подарков яндекс маркета, может быть адаптирован с любым модулем яндекс маркета с помощью разработчиков.
       
      Интеграция с модулем произведена.
       
      Адаптирован с модулем Simple Упрощенное оформление заказа.
      http://mvc-cart.ru/desktops/ ДЕМО
       
      РЕКОМЕНДУЕМЫЕ МОДУЛИ
       
      Смс авторизация и регистрация 
      Конструктор форм обратной связи
      Модуль Зумма
      СЕО генератор мета тегов
      Добавил legioner26 Добавлено 29.03.2020 Категория Цены, скидки, акции, подарки Системные требования Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      2.3 ocStore 3.0
      2.3 OpenCart.Pro, ocShop Opencart.pro 2.3 Обращение к серверу разработчика Нет  
    • By legioner26
      Разработан модификатор подарков для магазинов построенных на CMS Opencart
      Установка и работа в целом очень просты.
      В товаре просто указываете список подарков и устанавливаете вариант при котором он сработает, либо от количества покупаемого товара, либо от суммы заказа в целом.
      Также подарки можно вычесть со склада.
      В БД созданы отдельные таблицы для работы.
       
      Модификатор подарков сделан под требования подарков яндекс маркета, может быть адаптирован с любым модулем яндекс маркета с помощью разработчиков.
       
      Интеграция с модулем произведена.
       
      Адаптирован с модулем Simple Упрощенное оформление заказа.
      http://mvc-cart.ru/desktops/ ДЕМО
       
      РЕКОМЕНДУЕМЫЕ МОДУЛИ
       
      Смс авторизация и регистрация 
      Конструктор форм обратной связи
      Модуль Зумма
      СЕО генератор мета тегов
    • By invays
      В связи с обновлением маркетплейса Яндекс Маркет и закрытию ADV системы. Модуль находиться на стадии доработок под системы DBS, FBS, FBY. А так же интеграции товарного обмена по OZON.

      Время окончания работ: неизвестно.
      Продажи приостановлены. Если вам нужно для других систем то пишите в личку, я буду активировать модуль для оплаты.
       
      Описание обязательно к прочтению! Ознакомьтесь со всеми возможностями модуля и условиями установки на сайт! Это LITE версия программы – вы так же можете ознакомиться и с PRO версией.
       
      Universal Marketplace Manager – это мощный инструмент выгрузки XML и YML прайс-листов на разные торговые площадки. Модуль имеет профильную систему, где в каждом профиле задаются универсальные настройки для выгрузки. В большинстве площадок на территории Украины, Российской Федерации, Республики Беларусь, Казахстана, используется стандарт YML выгрузки. Это означает, что модуль в очень редких случаях нуждается в добавлении отдельного каталога прайс-листов. Так же в модуле есть синхронизация по API с сервисом Яндекс Маркет (для всех магазинов на маркете). Особенностью подключения по API является обновление цен в обход общей загрузки прайса – т.е ассортимент товаров в виде прайс-листа обязателен, но цены будут обновляться напрямую в течении 5-10 минут (Общий обход прайса Яндекс Маркетом– занимает 30-40 минут). Данное решение поможет опережать конкурентов при обновлении цен и занимать хорошие позиции. Список каталогов представлен в модуле в разделе основные - Тип каталога.
       
      Модуль прост в использовании. Для клиентов написана инструкция которую вы можете найти в модуле после установки и так же в архиве. Инструкция без каких-либо сложных для понятия терминов, простая, понятная. Если вы затрудняетесь в настройке, но поджимают сроки, закажите услугу по настройке. Гарантируем, что с помощью модуля любые площадки примут ваши фиды (с учетом если вы ознакомились с инструкцией и без посторонних доработок). 
       
      Демонстрация модуля: Перейти по ссылке
      Логин и пароль: demo
      Расположение модуля: дополнения - модули - каналы продвижения
      Версии Opencart и его сборок: 2.3, 3.0.2 Ocstore
       
      В модуле уже заданы шаблоны настроек. Вы можете использовать их и в проектах и делать более гибкими. Новый XML каталог создается Бесплатно !
      Модуль не передается клиенту. Установкой и техническим обслуживанием занимается автор и его команда. Мы уменьшаем нагрузку на клиентов, чтобы они занимались своим делом не беспокоясь о работе модуля. При установке модуля мы так же на свое усмотрение и в зависимости от нагрузки помогаем клиентам если возникают какие-либо ошибки при работе интернет-магазина не связанные с работой модуля. Стоимость установки входит в стоимость модуля.
      Все сведения отправленные Вами строго конфиденциальны и не передаются 3 лицам.
       
      Интеграции с модулями в PRO версии:
      P.S. - ссылки на страницу модулей на форуме. Если нет ссылки, значит человека нет на форуме. Пометка LITE означает, модификация не входит в PRO сборку и входит в стоимость LITE версии.
      - Подарки с товарам - @legioner26
      - Закупочная цена - @AlexDW
      - Валюта плюс - @louise170
      - Разные цены для групп клиентов - @sv2109
      - DKA импорт – экспорт - автор Dream K & A
      - Option Image Change - Изменение картинки товара в зависимости от опции - @sv2109
      - Связанные опции 2х и 3х - @19th
      - Яндекс Поиск по API - @NastjaGorelova
      - Обновление цены при выборе опции, без AJAX (OC1.5, OC2) - @mpn2005 - Входит в сборку LITE
       
      Ведутся работы с модулями:
      - Изображения опций PRO
       
      Ведутся работы на интеграциями с сервисами:
      - BERU – беру интеграции для обоих систем - ожидаем изменения
      - Ozon Маркетплейс  - разработка после директа
      - Yandex Direct API -  подходит к завершению
      -  Google Merchant API  - нет приоритета
       
      Обслуживание по времени МСК:
      10:00 - 18:00 (работа с клиентами) Все клиенты обслуживаются в порядке очереди.
      Сайт обслуживания - opencartmodul.ru - здесь вы только оставляете заявку в случае проблем (общаться лучше в месенджерах)
      Телеграм: - @opencartmodul
      email: admin@opencartmodul.ru - если долго не отвечаем значит письмо попало в спам. Просьба отписать по этому адресу.
       
      Покупая модуль, вы можете его использовать не более, чем на одном сайте и одном домене. Автор оставляет за собой право отказать в технической поддержке тем, кто использует купленный один раз модуль на нескольких сайтах. Купив данный модуль отпишите в личное сообщение автору или на почту.
       
      Важная информация:
      Модуль работает в двух режимах: автоматическая генерация и по планировщику задач. При автоматической генерации прайс-листа вам необходимо проверить корректность работы планировщика задач(для магазинов от 20к товаров), так как при генерации огромного количества товара, модуль будет нагружать CPU и расходовать Оперативную память.
      Обновление модуля по планировщику происходит по отдельной ссылке.
      Модуль предназначен только для одного языка. Если вы используете программы для автоматического обновления цен, то этот модуль как раз для вас. Присутствует отправка запросов по API по средствам планировщика задач с версии программы 2.5.0.
      Основные настройки! Внимательно изучите их и выберите нужную версию модуля. Напоминаю есть LITE и PRO версия. В них есть различия! Вы можете так же расширить LITE версию. Условия написаны выше! Ниже представлен список всех возможностей модуля которые он имеет, а так же указана версия в которой она включена.
       
       
      Общие характеристики - в текстовом формате (выше демонстрация всех возможностей)
      - Обновление цены товарных позиций по средствам API Яндекс.Маркет(только для Яндекс.Маркет). Теперь не нужно ждать по 30-50 минут пока обновятся цены на Яндекс.Маркет. Теперь как только вы измените цену в Яндекс.Маркет сразу поступит информация о обновлении цены. Примерное ожидание ~5-10 минут. В фото можете посмотреть скриншот действующего магазина. Отправка данных осуществляется через стандартную карточку товара. Если вы используете другой модуль редактирования товара, то вам надо приобрести расширение: Отправка данных из базы данных по API (Включен в LITE версии)
      - Многопрофильность - создавайте сколько угодно профилей с разными прайс-листами и каталогами, вы имеете возможность разбивать прайс-листы, так же отправлять в разные торговые площадки! Количество профилей не ограничено. В каждом профиле задаются индивидуальные настройки. (Включен в LITE версии)
      - Теперь вы сами выбираете нужный вам каталог для публикации. Новый маркет-плейс может добавляться по запросу.(Включен в LITE версии)
      - Получение списка товаров по API и сброс цен без WGET .(Включен в LITE версии)
      - Работает фильтр тегов в правом верхнем углу. Фильтр колонок. (Включен в LITE версии)
      - Работает фильтр по производителям товаров. (Включен в LITE версии)
      - Данный модуль работает в связке с модулем "Валюта плюс" - Валюта плюс модуль для синхронизации валют по ЦБ РФ в автоматическом режиме. (Включен в PRO версии)
      - Тег <manufacturer_warranty> - данный тег указывает имеется ли гарантия производителя на товаре или нет. Можно использовать как массово так и в индивидуальном порядке.  (Включен в LITE версии)
      - Тег <country_of_origin> - данный тег указывает в какой стране произведен товар. (Включен в LITE версии)
      - order-before - недавно на Яндекс.Маркет ввели систему в которой вы можете указать возможности своей доставки, т.е до какого времени ваша служба доставки может доставить в указанный срок, далее идет перескок на 1 день.(Включен в LITE версии)
      - Тег <oldprice> - тег для расчета скидок. Внимание! При использовании данного модуля стоимость перехода больше! По умолчанию выключено! (Включен в LITE версии)
      - Возможность модуля огромны, вы можете использовать так же условие "на заказ", как массово так и в индивидуальном порядке, что очень подходит для предприятий которые тесно связаны с доставкой и складами.(Включен в LITE версии)
      - Тег <delivery> - данный тег указывает о возможности доставки товара, берет данные из карточки товара. Если указано, в карточке товара, что есть возможность доставки, то модуль покажет ее в прайсе. Можно изменять массово и индивидуально.(Включен в LITE версии)
      - Индивидуальная стоимость доставки каждого товара или же массовая цена товара. Так же одна из особенностей данного модуля. Внимание для этого купите модуль "x-shipping pro" где задается индивидуальная цена товара в корзине, ведь иначе если в YML указана цена 350, а в корзине 450, вы получите штраф от службы контроля качества. С ним вы можете ознакомиться в демо версии по той же ссылке. Если вы закажете модуль доставки и его настройку у нас (сумма 3000 рублей), то в комплекте вы получаете услугу “Настройка фидов(стоимость 1000 рублей)” бесплатно!
      - Возможность создавать несколько вариантов доставки!  (Включен в LITE версии)
      - Тег <barcode> - штрихкоды производителя, для быстрого нахождения товарных позиций в Яндекс маркет. Указывается для нахождения товарных позиций в маркете. (Включен в LITE версии)
      - Тег <pickup> - этот тег указывает о наличии товара на пункте самовывоза. Вы можете индивидуально изменять в товарных предложениях или массово.  (Включен в LITE версии)
      - Для товаров с опциями, отвечающими за "цвет" и "размер" в экспорте формируются несколько товарных предложений.(Включен в LITE версии)
      - Добавлена размерная сетка для размеров товарных предложений. Для раздела Одежда. (Включен в LITE версии)
      - Модуль так же не публикует товары с количеством 0 на складе при включенном статусе. (Включен в LITE версии)
      - Тег <adult> - данный тег предназначен для товара имеющего отношение к удовлетворению сексуальных потребностей, либо иным образом эксплуатирующего интерес к сексу. (Включен в LITE версии)
      - Добавлен тег <typeprefix> - тип или категория товара, вы сами прописываете его. Прописываете индивидуально для того, чтобы улучшить выдачу своих товарных предложений. Напоминаю, название не должно быть обобщенным. Для примера вы можете посмотреть в документации от Яндекс.Маркет. Вы редактировать это массово или индивидуально.
      - <sales_note> - данный тег размещает короткую заметку. К примеру о безналичной оплате или предоплате товара. Индивидуальна для каждого товарного предложения и массова. (Включен в LITE версии)
      - Экспорт Характеристик товара. (Включен в LITE версии)
      - Добавлен запуск по планировщику задач. (Включен в LITE версии)
      - Добавлена возможность массово указывать теги pickup, store, adult, manufacturer_warranty, delivery.
      - Добавлена возможность создавать произвольный контент для тегов подарков promos! Новинка! Ссылка на источник - https://yandex.ru/support/partnermarket/elements/promos.html. Использовать строго формат который указан в источнике. Иначе ваш фид будет заблокирован Яндексом. (Включен в LITE версии)
      - Добавлена возможность Атрибутам приписывать unit. (Включен в LITE версии)
      - Добавлена возможность Атрибутам приписывать свой тег. (Включен в LITE версии)
      - Добавлена возможность создавать отдельные товарные предложения с помощью Атрибутов. Новинка! (Включен в PRO версии)
      - Кастомные категории - вы можете переименовывать категории сайта в категории торговой площадки для 100% совпадения прямо в вашем прайс-листе.(Включен в PRO версии)
      - Кастомные теги - вы можете использовать все поля товаров и создавать и дополнять своими тегами.(Включен в LITE версии)
      - Синхронизация с Разные цены для групп покупателей. (Включен в PRO версии)
      - Добавлены UTM-метки по профильно. (Включен в LITE версии)
      - Добавлен фильтр по цене в категорий. (Включен в LITE версии)
      - Опции как отдельные теги - отлично подходит для Google Merchant. (Включен в LITE версии)
      - Запрос о обновлении прайс листа. (Включен в PRO версии)
      -  Добавлена возможность работы с дополнительным описанием товара. Добавляется возможность выгрузить другое описание в торговые площадки. (Включен в LITE версии)
      -  Встроенный конвертер валют. Вы выбираете какую валюту используете в магазине и какую валюту нужно выгружать. Обязательно нужно обновлять сведения о валютах в настройках магазина.
      - Выгрузка оригиналов фото. Подходит для тех кому нужно передавать фото в оригинальном разрешении.
      - Отправка в ссылках параметра добавления товара в корзину (при переходе с торговой площадки срабатывает скрипт который добавляет товар в корзину).
      - Автоматическая транслитерация в UTM метках – модуль в автоматическом режиме переведет категорию и товарную позицию на латинские символы
      - Временная зона – иногда в выгрузке возможны сбои связанные с работой сервера – в Universal Marketplace Manager вы можете указать вашу временную зону. Это нужно, чтобы понимать когда обновился прайс-лист.
      - Отключение и включение атрибутов – вы можете отключать тот или иной атрибут в выгрузке
       
    • By invays
      1800 25
      Скачать/Купить дополнение


      Universal Marketplace Manager
      Описание обязательно к прочтению! Ознакомьтесь со всеми возможностями модуля и условиями установки на сайт! Это LITE версия программы – вы так же можете ознакомиться и с PRO версией.
       
      Universal Marketplace Manager – это мощный инструмент выгрузки XML и YML прайс-листов на разные торговые площадки. Модуль имеет профильную систему, где в каждом профиле задаются универсальные настройки для выгрузки. В большинстве площадок на территории Украины, Российской Федерации, Республики Беларусь, Казахстана, используется стандарт YML выгрузки. Это означает, что модуль в очень редких случаях нуждается в добавлении отдельного каталога прайс-листов. Так же в модуле есть синхронизация по API с сервисом Яндекс Маркет (для всех магазинов на маркете). Особенностью подключения по API является обновление цен в обход общей загрузки прайса – т.е ассортимент товаров в виде прайс-листа обязателен, но цены будут обновляться напрямую в течении 5-10 минут (Общий обход прайса Яндекс Маркетом– занимает 30-40 минут). Данное решение поможет опережать конкурентов при обновлении цен и занимать хорошие позиции. Список каталогов представлен в модуле в разделе основные - Тип каталога.
       
      Модуль прост в использовании. Для клиентов написана инструкция которую вы можете найти в модуле после установки и так же в архиве. Инструкция без каких-либо сложных для понятия терминов, простая, понятная. Если вы затрудняетесь в настройке, но поджимают сроки, закажите услугу по настройке. Гарантируем, что с помощью модуля любые площадки примут ваши фиды (с учетом если вы ознакомились с инструкцией и без посторонних доработок). 
       
      Демонстрация модуля: Перейти по ссылке
      Логин и пароль: demo
      Расположение модуля: дополнения - модули - каналы продвижения
      Версии Opencart и его сборок: 2.3, 3.0.2 Ocstore
       
      В модуле уже заданы шаблоны настроек. Вы можете использовать их и в проектах и делать более гибкими. Новый XML каталог создается Бесплатно !
      Модуль не передается клиенту. Установкой и техническим обслуживанием занимается автор и его команда. Мы уменьшаем нагрузку на клиентов, чтобы они занимались своим делом не беспокоясь о работе модуля. При установке модуля мы так же на свое усмотрение и в зависимости от нагрузки помогаем клиентам если возникают какие-либо ошибки при работе интернет-магазина не связанные с работой модуля. Стоимость установки входит в стоимость модуля.
      Все сведения отправленные Вами строго конфиденциальны и не передаются 3 лицам.
       
      Интеграции с модулями в PRO версии:
      P.S. - ссылки на страницу модулей на форуме. Если нет ссылки, значит человека нет на форуме. Пометка LITE означает, модификация не входит в PRO сборку и входит в стоимость LITE версии.
      - Подарки с товарам - @legioner26
      - Закупочная цена - @AlexDW
      - Валюта плюс - @louise170
      - Разные цены для групп клиентов - @sv2109
      - DKA импорт – экспорт - автор Dream K & A
      - Option Image Change - Изменение картинки товара в зависимости от опции - @sv2109
      - Связанные опции 2х и 3х - @19th
      - Яндекс Поиск по API - @NastjaGorelova
      - Обновление цены при выборе опции, без AJAX (OC1.5, OC2) - @mpn2005 - Входит в сборку LITE
       
      Ведутся работы с модулями:
      - Изображения опций PRO
       
      Ведутся работы на интеграциями с сервисами:
      - BERU – беру интеграции для обоих систем - ожидаем изменения
      - Ozon Маркетплейс  - разработка после директа
      - Yandex Direct API -  подходит к завершению
      -  Google Merchant API  - нет приоритета
       
      Обслуживание по времени МСК:
      10:00 - 18:00 (работа с клиентами) Все клиенты обслуживаются в порядке очереди.
      Сайт обслуживания - opencartmodul.ru - здесь вы только оставляете заявку в случае проблем (общаться лучше в месенджерах)
      Телеграм: - @opencartmodul
      email: admin@opencartmodul.ru - если долго не отвечаем значит письмо попало в спам. Просьба отписать по этому адресу.
       
      Покупая модуль, вы можете его использовать не более, чем на одном сайте и одном домене. Автор оставляет за собой право отказать в технической поддержке тем, кто использует купленный один раз модуль на нескольких сайтах. Купив данный модуль отпишите в личное сообщение автору или на почту.
       
      Важная информация:
      Модуль работает в двух режимах: автоматическая генерация и по планировщику задач. При автоматической генерации прайс-листа вам необходимо проверить корректность работы планировщика задач(для магазинов от 20к товаров), так как при генерации огромного количества товара, модуль будет нагружать CPU и расходовать Оперативную память.
      Обновление модуля по планировщику происходит по отдельной ссылке.
      Модуль предназначен только для одного языка. Если вы используете программы для автоматического обновления цен, то этот модуль как раз для вас. Присутствует отправка запросов по API по средствам планировщика задач с версии программы 2.5.0.
      Основные настройки! Внимательно изучите их и выберите нужную версию модуля. Напоминаю есть LITE и PRO версия. В них есть различия! Вы можете так же расширить LITE версию. Условия написаны выше! Ниже представлен список всех возможностей модуля которые он имеет, а так же указана версия в которой она включена.
       
       
      Общие характеристики - в текстовом формате (выше демонстрация всех возможностей)
      - Обновление цены товарных позиций по средствам API Яндекс.Маркет(только для Яндекс.Маркет). Теперь не нужно ждать по 30-50 минут пока обновятся цены на Яндекс.Маркет. Теперь как только вы измените цену в Яндекс.Маркет сразу поступит информация о обновлении цены. Примерное ожидание ~5-10 минут. В фото можете посмотреть скриншот действующего магазина. Отправка данных осуществляется через стандартную карточку товара. Если вы используете другой модуль редактирования товара, то вам надо приобрести расширение: Отправка данных из базы данных по API (Включен в LITE версии)
      - Многопрофильность - создавайте сколько угодно профилей с разными прайс-листами и каталогами, вы имеете возможность разбивать прайс-листы, так же отправлять в разные торговые площадки! Количество профилей не ограничено. В каждом профиле задаются индивидуальные настройки. (Включен в LITE версии)
      - Теперь вы сами выбираете нужный вам каталог для публикации. Новый маркет-плейс может добавляться по запросу.(Включен в LITE версии)
      - Получение списка товаров по API и сброс цен без WGET .(Включен в LITE версии)
      - Работает фильтр тегов в правом верхнем углу. Фильтр колонок. (Включен в LITE версии)
      - Работает фильтр по производителям товаров. (Включен в LITE версии)
      - Данный модуль работает в связке с модулем "Валюта плюс" - Валюта плюс модуль для синхронизации валют по ЦБ РФ в автоматическом режиме. (Включен в PRO версии)
      - Тег <manufacturer_warranty> - данный тег указывает имеется ли гарантия производителя на товаре или нет. Можно использовать как массово так и в индивидуальном порядке.  (Включен в LITE версии)
      - Тег <country_of_origin> - данный тег указывает в какой стране произведен товар. (Включен в LITE версии)
      - order-before - недавно на Яндекс.Маркет ввели систему в которой вы можете указать возможности своей доставки, т.е до какого времени ваша служба доставки может доставить в указанный срок, далее идет перескок на 1 день.(Включен в LITE версии)
      - Тег <oldprice> - тег для расчета скидок. Внимание! При использовании данного модуля стоимость перехода больше! По умолчанию выключено! (Включен в LITE версии)
      - Возможность модуля огромны, вы можете использовать так же условие "на заказ", как массово так и в индивидуальном порядке, что очень подходит для предприятий которые тесно связаны с доставкой и складами.(Включен в LITE версии)
      - Тег <delivery> - данный тег указывает о возможности доставки товара, берет данные из карточки товара. Если указано, в карточке товара, что есть возможность доставки, то модуль покажет ее в прайсе. Можно изменять массово и индивидуально.(Включен в LITE версии)
      - Индивидуальная стоимость доставки каждого товара или же массовая цена товара. Так же одна из особенностей данного модуля. Внимание для этого купите модуль "x-shipping pro" где задается индивидуальная цена товара в корзине, ведь иначе если в YML указана цена 350, а в корзине 450, вы получите штраф от службы контроля качества. С ним вы можете ознакомиться в демо версии по той же ссылке. Если вы закажете модуль доставки и его настройку у нас (сумма 3000 рублей), то в комплекте вы получаете услугу “Настройка фидов(стоимость 1000 рублей)” бесплатно!
      - Возможность создавать несколько вариантов доставки!  (Включен в LITE версии)
      - Тег <barcode> - штрихкоды производителя, для быстрого нахождения товарных позиций в Яндекс маркет. Указывается для нахождения товарных позиций в маркете. (Включен в LITE версии)
      - Тег <pickup> - этот тег указывает о наличии товара на пункте самовывоза. Вы можете индивидуально изменять в товарных предложениях или массово.  (Включен в LITE версии)
      - Для товаров с опциями, отвечающими за "цвет" и "размер" в экспорте формируются несколько товарных предложений.(Включен в LITE версии)
      - Добавлена размерная сетка для размеров товарных предложений. Для раздела Одежда. (Включен в LITE версии)
      - Модуль так же не публикует товары с количеством 0 на складе при включенном статусе. (Включен в LITE версии)
      - Тег <adult> - данный тег предназначен для товара имеющего отношение к удовлетворению сексуальных потребностей, либо иным образом эксплуатирующего интерес к сексу. (Включен в LITE версии)
      - Добавлен тег <typeprefix> - тип или категория товара, вы сами прописываете его. Прописываете индивидуально для того, чтобы улучшить выдачу своих товарных предложений. Напоминаю, название не должно быть обобщенным. Для примера вы можете посмотреть в документации от Яндекс.Маркет. Вы редактировать это массово или индивидуально.
      - <sales_note> - данный тег размещает короткую заметку. К примеру о безналичной оплате или предоплате товара. Индивидуальна для каждого товарного предложения и массова. (Включен в LITE версии)
      - Экспорт Характеристик товара. (Включен в LITE версии)
      - Добавлен запуск по планировщику задач. (Включен в LITE версии)
      - Добавлена возможность массово указывать теги pickup, store, adult, manufacturer_warranty, delivery.
      - Добавлена возможность создавать произвольный контент для тегов подарков promos! Новинка! Ссылка на источник - https://yandex.ru/support/partnermarket/elements/promos.html. Использовать строго формат который указан в источнике. Иначе ваш фид будет заблокирован Яндексом. (Включен в LITE версии)
      - Добавлена возможность Атрибутам приписывать unit. (Включен в LITE версии)
      - Добавлена возможность Атрибутам приписывать свой тег. (Включен в LITE версии)
      - Добавлена возможность создавать отдельные товарные предложения с помощью Атрибутов. Новинка! (Включен в PRO версии)
      - Кастомные категории - вы можете переименовывать категории сайта в категории торговой площадки для 100% совпадения прямо в вашем прайс-листе.(Включен в PRO версии)
      - Кастомные теги - вы можете использовать все поля товаров и создавать и дополнять своими тегами.(Включен в LITE версии)
      - Синхронизация с Разные цены для групп покупателей. (Включен в PRO версии)
      - Добавлены UTM-метки по профильно. (Включен в LITE версии)
      - Добавлен фильтр по цене в категорий. (Включен в LITE версии)
      - Опции как отдельные теги - отлично подходит для Google Merchant. (Включен в LITE версии)
      - Запрос о обновлении прайс листа. (Включен в PRO версии)
      -  Добавлена возможность работы с дополнительным описанием товара. Добавляется возможность выгрузить другое описание в торговые площадки. (Включен в LITE версии)
      -  Встроенный конвертер валют. Вы выбираете какую валюту используете в магазине и какую валюту нужно выгружать. Обязательно нужно обновлять сведения о валютах в настройках магазина.
      - Выгрузка оригиналов фото. Подходит для тех кому нужно передавать фото в оригинальном разрешении.
      - Отправка в ссылках параметра добавления товара в корзину (при переходе с торговой площадки срабатывает скрипт который добавляет товар в корзину).
      - Автоматическая транслитерация в UTM метках – модуль в автоматическом режиме переведет категорию и товарную позицию на латинские символы
      - Временная зона – иногда в выгрузке возможны сбои связанные с работой сервера – в Universal Marketplace Manager вы можете указать вашу временную зону. Это нужно, чтобы понимать когда обновился прайс-лист.
      - Отключение и включение атрибутов – вы можете отключать тот или иной атрибут в выгрузке
       
      Добавил invays Добавлено 31.05.2018 Категория Обмен данными Системные требования версия php не ниже 5.6 Метод активации Через официальный сайт дополнения Ioncube Loader Нет OpenCart 3.0
      2.3 ocStore 3.0
      2.3 OpenCart.Pro, ocShop Opencart.pro 2.3 Обращение к серверу разработчика Нет  
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.