Подскажите, пожалуйста, в каком файле и как мне передать обязательные товары в массив $product на странице категории товаров… мне нужно вывести там обязательный товар и его цену рядом с товаром, но у меня никак не получается… Пытаюсь сделать это в app/controllers/frontend/categories.php
но получаю ошибку что неопределено что такое $product_id… Подскажите как это сделать правильно, пожалуйста…
$products_in_category = fn_get_products(array(
‘category_id’ => $_REQUEST[‘category_id’],
‘status’ => ‘A’,
));
$required_products_data = array();
foreach ($products_in_category as $product) {
$product_id = $product['product_id'];
$required_products = fn_get_required_products($product_id);
$required_products_data[$product_id] = $required_products;
}
Tygh::$app['view']->assign('required_products_data', $required_products_data);
Хочу добиться такого вот результата
foreach ($products as $product) {
$product = reset($products);
$product_id = $product[‘product_id’];
$required_products = db_get_fields('SELECT required_id FROM ?:product_required_products WHERE product_id = ?i', $product_id);
}
Tygh::$app['view']->assign('required_products', $required_products);</code>
Так я получаю id обязательного товара, но теперь не знаю как мне получить его данные…
Попробуйте после
$required_products = db_get_fields('SELECT required_id FROM ?:product_required_products WHERE product_id = ?i', $product_id);
добавить
list($required_products, ) = fn_get_products([
'pid' => $required_products
]);
fn_gather_additional_products_data($required_products, array(
'get_icon' => true,
'get_detailed' => true,
'get_additional' => true,
'get_options'=> true
));
2 лайка
а как вывести цену правильно для обязательных товаров ? пробовал сделать так но пустота
{if !empty($product.required_products)}
{foreach from=$product.required_products item="required_product"}
{* {$required_product.price}
*}
{assign var="rq_obj_id" value=$required_product.product_id}
{$price="price_`$rq_obj_id`"}
{$smarty.capture.$price}
{/foreach}
{/if}
common/product_data.tpl используете?
1 лайк
да, в начале моей таблицы используется {include file=“common/product_data.tpl” product=$product show_labels_in_title=$show_labels_in_title}
я так понимаю нужно как-то так сделать
{include file=“common/product_data.tpl” product=$required_product show_labels_in_title=$show_labels_in_title}
{$price=“price_$obj_id
”}
{$smarty.capture.$price nofilter} ?
Примерно так
{assign var="obj_id" value=$required_product.product_id}
{include file=“common/product_data.tpl” product=$required_product}
{$price="price_`$obj_id`"}
{$smarty.capture.$price nofilter}
2 лайка
Добрый день) а подскажите, пожалуйста, возможно ли через пост контроллер категории дополнять массив продукта, а не перезаписывать его ?
Вы про витрину?
Тогда так
$products = Tygh::$app['view']->getTemplateVars('products');
...
дополняем
...
Tygh::$app['view']->assign('products', $products);
1 лайк