При обновлении ресурса очищает TV

При обновлении ресурса очищает TV.
Т.е. были заполнены все TV поля, при обновлении через этот скрипт, слетают все кроме новых.
$data = array(
					'id' => (int)$per,
					'parent' => $parent,
					'alias' => $kod_item,
					'tvs' => true,
					'tv129' => $width,
					'tv130' => $height,
					'tv131' => $long,
					'tv133' => $gar,
					'context_key' => 'web'
				);
				if(!empty($_GET['content'])){
				    $data2 = array(
					'content' => $desc
				    );
				    $data = array_merge($data, $data2);
				}
				
					$responses_update = $modx->runProcessor('resource/update', $data);
					if ($responses_update->isError())
					{
						echo 'Ошибка обновления товара:';
						print_r($modx->error->failure($responses_update->getMessage()));
					}
Evgenii
26 декабря 2016, 14:42
1
399
0

Комментарии: 3

Андрей
26 декабря 2016, 17:49
0
Их вроде бы каждый раз надо записывать, даже при обновлении. Сам когда сталкивался, нашел вот этот комментарий.

Андрей
26 декабря 2016, 17:55
0
Вот это, кстати
if(!empty($_GET['content'])){
	$data2 = array(
		'content' => $desc
	);
	$data = array_merge($data, $data2);
}

Можно заменить на
if(!empty($_GET['content'])){
	$data['content'] = $desc;
}
    Evgenii
    26 декабря 2016, 18:02
    0
    Спасибо