[ 'required' => false, 'type' => 'integer', ], 'term_id' => [ 'required' => false, 'type' => 'integer', ], 'user_id' => [ 'required' => false, 'type' => 'integer', ], 'comment_id' => [ 'required' => false, 'type' => 'integer', ], 'option_page' => [ 'required' => false, 'type' => 'string', ], 'box_name' => [ 'required' => true, 'type' => 'string', ], 'field_name' => [ 'required' => true, 'type' => 'string', ], 'value' => [ 'required' => true, 'type' => 'boolean|float|double|string|integer|array|object', ], ]; $validator = new ArgumentsArrayValidator(); if(!$validator->validate($mandatory_keys, $args)){ return false; } $meta_field_model = MetaRepository::getMetaFieldByName([ 'boxName' => $args['box_name'] ?? $args['boxName'], 'fieldName' => $args['field_name'] ?? $args['fieldName'] ]); if($meta_field_model === null){ return false; } // save data try { $command = new SaveMetaFieldValueCommand($meta_field_model, $args); return $command->execute(); } catch (\Exception $exception){ return false; } } catch (\Exception $exception){ return false; } } }