1

Тема: Фильтры, хуки, add_filter, wpcc_result_filter

С версии 3.6.1 для результата калькулятора был дописан фильтр под названием: wpcc_result_filter

Срабатывает после того как выполнено арифметическое выражение указанное в настройках "Управление результатами расчета" но до того как применяется округление результата если оно применено.

Фильтр передает 3 параметра:

1. Результат
2. ID калькулятора
3. Порядковый номер результата

У всех калькуляторов всегда есть первый результат, который нельзя удалить. Остальными результатами управляет администратор. Подробнее о результатах тут: http://zetrider.ru/forum/viewtopic.php?id=72

Пример использования:

добавим к результату 1, калькулятора 5 значение поля 33 из этого же калькулятора:

add_filter( 'wpcc_result_filter', 'add_wpcc_result_filter', 1, 3);
function add_wpcc_result_filter($wpcc_sum, $wpcc_id, $wpcc_sum_id) {
    $return     = $wpcc_sum;
    $session     = is_array($_SESSION['wpcc_'.$wpcc_id]) ? $_SESSION['wpcc_'.$wpcc_id] : array();
    if($wpcc_id == 5 AND $wpcc_sum_id == 1)
    {
        $return = $wpcc_sum + $session[33];
    }
    return $return;
}

Примечание:
Данные в $_SESSION занесены до того как срабатывает фильтр кроме данных о результатах расчета калькулятора.