PluginProbe
Yoast SEO – Advanced SEO with real-time guidance and built-in AI / trunk
Yoast SEO – Advanced SEO with real-time guidance and built-in AI vtrunk
28.5 28.4 28.3 28.2 28.1 28.0 27.9 27.8 27.7 27.6 27.5 trunk 18.0 18.1 18.2 18.3 18.4 18.4.1 18.5 18.5.1 18.6 18.7 18.8 18.9 19.0 All 129 releases
← All changes | src/abilities/infrastructure/post-seo-field-map.php +6 -5 28.2 → trunk View file →
@@ -10,12 +10,14 @@
10 10
11 11 /**
12 12 * Translates between the ability input, an indexable, and the post SEO data value object.
13 13 *
14 - * This is the single source of truth for the field contract shared by the read
15 - * (collector) and write (updater) abilities. The write path applies the input
16 - * onto an indexable; persistence to post meta is delegated to
17 - * Indexable_To_Postmeta_Helper so the encodings live in one place.
14 + * The read path (collector) maps every readable field onto the output array. The
15 + * write path (updater) applies whatever validated input it receives onto an
16 + * indexable; which fields are exposed for writing is decided by the ability's
17 + * input schema, so the writable set may be narrower than the fields known here.
18 + * Persistence to post meta is delegated to Indexable_To_Postmeta_Helper so the
19 + * encodings live in one place.
18 20 */
19 21 class Post_SEO_Field_Map {
20 22
21 23 /**
@@ -42,9 +44,8 @@
42 44 */
43 45 private const STRING_FIELDS = [
44 46 'seo_title' => 'title',
45 47 'meta_description' => 'description',
46 - 'focus_keyphrase' => 'primary_focus_keyword',
47 48 'canonical' => 'canonical',
48 49 'open_graph_title' => 'open_graph_title',
49 50 'open_graph_description' => 'open_graph_description',
50 51 'twitter_title' => 'twitter_title',