Добавить свою операция в Views Bulk Operation

Profile picture for user admin_romcom

Модуль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

что то не понял как же модуль работает, он что устанавливает 0 на выбранные продукты ?

Admin

Profile picture for user admin_romcom

In reply to by jack

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

Артем

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

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

The content of this field is kept private and will not be shown publicly.

Plain text

  • No HTML tags allowed.
 o--o   o---o    o    o  o  o   o 
| | / / | | |\ /|
O--o -O- O--o O--O | O |
| / o | | | | |
o o---o o-o o o o o

Enter the code depicted in ASCII art style.