@@ 21-36 (lines=16) @@ | ||
18 | * @param string $field_name Field name |
|
19 | * @return mixed |
|
20 | */ |
|
21 | public static function get_value( $object_id, $container_type, $field_name ) { |
|
22 | $repository = \Carbon_Fields\Carbon_Fields::resolve( 'container_repository' ); |
|
23 | $field = $repository->get_field_in_containers( $field_name, $container_type ); |
|
24 | ||
25 | if ( ! $field ) { |
|
26 | return ''; |
|
27 | } |
|
28 | ||
29 | $clone = clone $field; |
|
30 | if ( $object_id !== null ) { |
|
31 | $clone->get_datastore()->set_object_id( $object_id ); |
|
32 | } |
|
33 | ||
34 | $clone->load(); |
|
35 | return $clone->get_formatted_value(); |
|
36 | } |
|
37 | ||
38 | /** |
|
39 | * Set value for a field |
|
@@ 46-62 (lines=17) @@ | ||
43 | * @param string $field_name Field name |
|
44 | * @param array $value Field expects a `value_set`; Complex_Field expects a `value_tree` - refer to DEVELOPMENT.md |
|
45 | */ |
|
46 | public static function set_value( $object_id, $container_type, $field_name, $value ) { |
|
47 | $repository = \Carbon_Fields\Carbon_Fields::resolve( 'container_repository' ); |
|
48 | $field = $repository->get_field_in_containers( $field_name, $container_type ); |
|
49 | ||
50 | if ( ! $field ) { |
|
51 | Incorrect_Syntax_Exception::raise( 'Could not find a field which satisfies the supplied pattern: ' . $field_name ); |
|
52 | return; |
|
53 | } |
|
54 | ||
55 | $clone = clone $field; |
|
56 | if ( $object_id !== null ) { |
|
57 | $clone->get_datastore()->set_object_id( $object_id ); |
|
58 | } |
|
59 | ||
60 | $clone->set_value( $value ); |
|
61 | $clone->save(); |
|
62 | } |
|
63 | ||
64 | /** |
|
65 | * Shorthand for get_post_meta(). |