I have a validation loop in a class in an outdated but functional plugin that I need to keep (for now). It uses create_function twice.
if( is_array($s) ) {
$c = count($s);
$a = 0;
while( $a < $c ) {
if( isset($s[$a]['validate_callback']) ) {
$this->create_function[] = $s[$a]['id'];
$s[$a]['validate_callback'] = '';
$file= addslashes(WC_XSI_SETTINGS . 'validate-' . $s[$a]['id'] . '.php');
$s[$a]['validate_callback'] = create_function('$fields', 'do_action("wc_xsi_settings_validate",$fields); do_action("wc_xsi_settings_validate_' . $s[$a]['id'] . '",$fields);');
}
$a++;
}
}
There were several more instances - mainly in widget declations - that I have replaced, but this one stumped me. Is there a way to perform this validation without it? I'll be honest I haven't a notion how to start and really would appreciate a heads up.
$this->create_function[]pointing to in the Class? As you know, you'll have to replace thecreate_functiona few lines down from that, too.