Quote from: Int at Feb 15, 2010, 02:52 AM
отдельная ячейка
Постараюсь объяснить. В данной версии процесс добавления ТВ немного запутанный, но планируется упростить этот процесс в одной из следующих версий.
Но а пока вот как. Советую вначале попробовать сделать это на тестовом МОДх, чтобы в случае ошибки можно было легко все исправить.
Допустим, вам нужно добавить ТВ color. Для этого в чанке товара (в стандартном варианте это чанк product) нужно вывести значение этого ТВ в какой-либо тег, но присвоить этому тегу ID. Например так:
<input type="hidden" id="color[+id+]" value="[+color+]">
или
<div id="color[+id+]">[+color+]</div>
Главное, чтобы у этого тега был ID + ИД документа, по которому далее мы будем получать значение.
Далее в функции AddToCart сразу после
iNumberOrdered = GetCookie("NumberOrdered");
Добавляем
if (document.getElementById('color' + ID_NUM) == null) {
var strColor = "";
} else {
var strColor = document.getElementById('color' + ID_NUM).value
}
SetCookie('color' + ID_NUM, strColor, null, "/");
Далее в функции ManageCart сразу после строки
strShipping = moneyFormat(fShipping);
добавляем
var color = GetCookie("color"+fields[0]);
if (color == null) color = "";
То же самое проделываем и в функции CheckoutCart
Теперь у вас появляется переменная color, которую вы можете вывести куда угодно в скрипте. Например, в функции ManageCart при формировании таблицы.
Точно такой принцип используется для добавления других ТВ, только вместо color пишете другое название.
Да, это немного неудобно, но первоначально в сниппете не планировалось вводить дополнительные ТВ. Но теперь в одной из следующих версий мы сделаем удобное добавление ТВ без лишнего гемора.