Сообщение #3 GolDen » 24.09.2023, 14:11
Аналогичный вопрос
В файле \design\okay_shop_1\html\product.tpl делаю следующие изменения
Код: Выделить всё
<h1 class="block__heading">
<span data-product="{$product->id}" itemprop="name">{$h1|escape}</span>
<span class="fn_variantname" data-product="{$product->id}" itemprop="variant">{$product->variant->name|escape}</span>
</h1>
В файле \design\okay_shop_1\js\okay.js делаю следующие изменения
Код: Выделить всё
* Смена варианта в превью товара и в карточке */
$(document).on("change", ".fn_variant", function () {
var selected = $(this).children(":selected"),
parent = selected.closest(".fn_product"),
price = parent.find(".fn_price"),
cprice = parent.find(".fn_old_price"),
sku = parent.find(".fn_sku"),
variantname = parent.find(".fn_variantname"),
stock = parseInt(selected.data("stock")),
amount = parent.find('input[name="amount"]'),
camoun = parseInt(amount.val()),
units = selected.data("units");
price.html(selected.data("price"));
amount.data("max", stock);
...................
/* Название варианта */
if (selected.data("name")) {
variantname.text(selected.data("name"));
parent.find(".fn_variantname").removeClass("hidden-xs-up");
} else {
variantname.text("");
parent.find(".fn_variantname").addClass("hidden-xs-up");
}
...........
Но это не работает. По идее еще нужно где-то подтягивать сами данные (из столбца name таблицы ok_variants или ok_lang_variants ), так как если тут
Код: Выделить всё
/* Название варианта */
if (selected.data("name")) {
variantname.text(selected.data("name"));
parent.find(".fn_variantname").removeClass("hidden-xs-up");
} else {
variantname.text("");
parent.find(".fn_variantname").addClass("hidden-xs-up");
}
сделать замену "name" на к примеру "sku" - то все замечательно работает
П.С. Уже после написания увидел что тема немного другая. Тут про свойства, а мне нужно добавить название варианта товара к названию товара.
Аналогичный вопрос
В файле \design\okay_shop_1\html\product.tpl делаю следующие изменения
[code] <h1 class="block__heading">
<span data-product="{$product->id}" itemprop="name">{$h1|escape}</span>
<span class="fn_variantname" data-product="{$product->id}" itemprop="variant">{$product->variant->name|escape}</span>
</h1>[/code]
В файле \design\okay_shop_1\js\okay.js делаю следующие изменения
[code]* Смена варианта в превью товара и в карточке */
$(document).on("change", ".fn_variant", function () {
var selected = $(this).children(":selected"),
parent = selected.closest(".fn_product"),
price = parent.find(".fn_price"),
cprice = parent.find(".fn_old_price"),
sku = parent.find(".fn_sku"),
variantname = parent.find(".fn_variantname"),
stock = parseInt(selected.data("stock")),
amount = parent.find('input[name="amount"]'),
camoun = parseInt(amount.val()),
units = selected.data("units");
price.html(selected.data("price"));
amount.data("max", stock);
...................
/* Название варианта */
if (selected.data("name")) {
variantname.text(selected.data("name"));
parent.find(".fn_variantname").removeClass("hidden-xs-up");
} else {
variantname.text("");
parent.find(".fn_variantname").addClass("hidden-xs-up");
}
...........[/code]
Но это не работает. По идее еще нужно где-то подтягивать сами данные (из столбца name таблицы ok_variants или ok_lang_variants ), так как если тут[code] /* Название варианта */
if (selected.data("name")) {
variantname.text(selected.data("name"));
parent.find(".fn_variantname").removeClass("hidden-xs-up");
} else {
variantname.text("");
parent.find(".fn_variantname").addClass("hidden-xs-up");
}[/code]
сделать замену "name" на к примеру "sku" - то все замечательно работает
П.С. Уже после написания увидел что тема немного другая. Тут про свойства, а мне нужно добавить название варианта товара к названию товара.