static function make_new_item($item, $args = array())
{
$class = get_called_class();
if (WPLib::get_constant('INSTANCE_CLASS', $class)) {
if (self::class_declares_method($class, 'make_new_item')) {
$item = $class::make_new_item($item, $args);
} else {
if (WPLib::is_development()) {
$err_msg = __('Cannot make new item. Class %s does not have make_new_item method', 'wplib');
WPLib::trigger_error(sprintf($err_msg, $class), E_USER_ERROR);
}
}
} else {
if (WPLib::is_development()) {
$err_msg = __('Cannot make new item. Class %s does not have INSTANCE_CLASS constant.', 'wplib');
WPLib::trigger_error(sprintf($err_msg, $class), E_USER_ERROR);
}
}
return $item;
}