Automattic\WooCommerce\Admin\RemoteSpecs\RuleProcessors
OptionRuleProcessor::get_option_value
Retrieves the option value and handles logging if necessary.
Method of the class: OptionRuleProcessor{}
No Hooks.
Returns
Mixed. The option value.
Usage
// private - for code of main (parent) class only $result = $this->get_option_value( $rule, $default_value, $is_contains );
- $rule(object) (required)
- The specific rule being processed.
- $default_value(mixed) (required)
- The default value.
- $is_contains(true|false) (required)
- Indicates whether the operation is "contains".
OptionRuleProcessor::get_option_value() OptionRuleProcessor::get option value code WC 10.4.3
private function get_option_value( $rule, $default_value, $is_contains ) {
$option_value = get_option( $rule->option_name, $default_value );
$is_contains_valid = $is_contains && ( is_array( $option_value ) || ( is_string( $option_value ) && is_string( $rule->value ) ) );
if ( $is_contains && ! $is_contains_valid ) {
$logger = wc_get_logger();
$logger->warning(
sprintf(
'ComparisonOperation "%s" option value "%s" is not an array, defaulting to empty array.',
$rule->operation,
$rule->option_name
),
array(
'option_value' => $option_value,
'rule' => $rule,
)
);
$option_value = array();
}
return $option_value;
}