Добрый день
Как можно вывести в админке - все заказы - заказ #Х, цифру, сколько товара есть в наличии на складе?
Это выводит контроллер orders.details. информацию вроде получает ф-я fn_get_order_info.
Если выводить весь массив order_info, там нет информации сколько товара всего на складе, выводит только кол-во товара в заказе
частичный вывод массива order_info
[product_id] => 23581
[product_code] => 29764
[product] => Колломак, р-р фл 10мл №1
[amount] => 1
Найти в функции место, где получается информация по товарам, там скорее всего есть цикл и хук. В этом хуке расширить информацию по товарам. Ну и вывести.
Нужно посмотреть плейлист, там первый модуль как раз выводит какую то дополнительную информацию:
http://www.youtube.com/playlist?list=PL4okpC0OV7TTa1iFmcPTL-outH4wEMJQW
Найти в функции место, где получается информация по товарам, там скорее всего есть цикл и хук. В этом хуке расширить информацию по товарам. Ну и вывести.
Нужно посмотреть плейлист, там первый модуль как раз выводит какую то дополнительную информацию:
http://www.youtube.com/playlist?list=PL4okpC0OV7TTa1iFmcPTL-outH4wEMJQW
Даниил, немного продвинулся вперед :-)
Создал в модуле:
func.php
function fn_cdl_admin_changes_get_qtt_product_in_admin($order)
{
$order_id = $order['order_id'];
foreach ($order['products'] as $v) {
$product_id= $v['product_id'];
$qtt_my=db_get_fields(' SELECT ?:products.amount from cscart_products
where ?:products.product_id in (?a)', $product_id);
$order['products']['qtt_my'] = $qtt_my;
}
}
и init.php
fn_register_hooks (
'get_qtt_product_in_admin'
);
и подключил свой хук в fn.cart.php, добавив туда
fn_set_hook('get_qtt_product_in_admin', $order);
Теперь, если вывести массив $order в func.php, выводит верное значение кол-ва продуктов в наличии.
Не получается 2 момента:
- записать кол-во товара для каждого товара в массиве $order
- вывести мою переменную в том месте, где формируется таблица с информацией о заказе. если выводить весь массив $order_info, там просто нет переменной qtt_my
Не получается 2 момента:
- записать кол-во товара для каждого товара в массиве $order
- вывести мою переменную в том месте, где формируется таблица с информацией о заказе. если выводить весь массив $order_info, там просто нет переменной qtt_my
function fn_cdl_admin_changes_get_qtt_product_in_admin($order)
Чтобы изменения наружу вышли, нужно
$order
ссылкой передавать ,
&$order
и подключил свой хук в fn.cart.php, добавив туда
fn_set_hook('get_qtt_product_in_admin', $order);
Вот этого я вообще не понял. Система хуков нужна, чтобы использовать существующие хуки, а не добавлять свои.
Вам нужно найти нужный хук и использовать его.
Даниил, спасибо. Все получилось
Подключились к существующему хуку и дописали свою информацию
function fn_cdl_admin_changes_get_order_items_info_post(&$order)
{
$order_id = $order['order_id'];
foreach ($order['products'] as $product) {
$product_id = $product['product_id'];
$qtt_my = db_get_field(' SELECT ?:products.amount from cscart_products
where ?:products.product_id in (?a)', $product_id);
$order['products'][$product['item_id']]['qtt_my'] = $qtt_my;
}
}