Profile picture for Admin

МодульViews Bulk Operation является полезным в тех случаях, когда нужно выполнить конкретную операцию в течение более чем одной строки в представлении. В стандартном наборе присутствуют операции удаления, публикации, смену автора содержания, отправлять электронную почту и т.д. (См. изображение ниже). Бывают случаи, когда нужно произвести определенные операции с нодами, но в списке их нет. Все решается написанием небольшого модуля.

Создаем свой модуль


function vbo_change_price_action_info() {
return array(
'vbo_change_price_action' => array(
'type' => 'node',
'label' => t('Change price to 0.0000 in field [sell price]'),
'configurable' => FALSE,
'pass rows' => TRUE,
),
);
}

function vbo_change_price_action(&$node, $context = array()) {
$query = db_update('uc_products')
->fields(array('sell_price' => '0'))
->condition('nid',$node->nid)
->execute();
}

vbo_change_price - имя модуля.

Функция данного модуля - массовое изменение цены в товарах Ubercart'а.

jack

пт, 12/26/2014 - 08:54

что то не понял как же модуль работает, он что устанавливает 0 на выбранные продукты ?
все верно. этот модуль был написан для того, чтоб убрать цену в товарах уберкарта через vbo. Это только для примера как добавить свою операцию в vbo. Сам по себе модуль ничего не делает. Он добавляет поле в Bulk Operations во views. В принципе, можно вывести textfield с ценой для каждого или один textfield на все товары и поменять их пачкой.

Артем

пн, 03/21/2016 - 17:53

Спасибо,автор)))

Добавить комментарий

Содержимое данного поля является приватным и не предназначено для показа.
 d8888b.   888888ba   dP     dP  dP    dP  888888ba  
`88 88 `8b 88 88 Y8. .8P 88 `8b
aaad8' a88aaaa8P' 88 .8P Y8aa8P 88 88
`88 88 `8b. 88 d8' 88 88 88
.88 88 .88 88 .d8P 88 88 88
d88888P 88888888P 888888' dP dP dP

Введите код, изображенный в стиле ASCII-арт.