Yoast SEO - Version 17.7

Version Description

Release Date: November 30th, 2021

Meet Yoast SEO 17.7! This release introduces a new configuration workout to help you set up the Yoast SEO plugin properly from the get-go. Get the basic settings right in Yoast SEO and create a solid foundation for your SEO! Read more about what's new in Yoast SEO 17.7 in our release post in English or our release post in Spanish!

Enhancements:

  • Replaces the configuration wizard with a configuration workout, which makes it easier to configure Yoast SEO for your website.
  • Adds a link to the archive page for the content types in the Search Appearance settings. Props to felipelousantos.
  • Adds a few more French transition words to be recognised by the transition words assessment. Props to Cellophile.

Bugfixes:

  • Fixes a bug where non-passive Greek words ending in - or - were previously recognized as passive. Props to artemidaspatanews.
  • Fixes a bug where some post types would cause a PHP warning about custom fields.
  • Fixes a bug where memory issues could occur when indexing a site with large amounts of terms assigned to many posts.
Download this release

Release Info

Developer Yoast
Plugin Icon 128x128 Yoast SEO
Version 17.7
Comparing to
See all releases

Code changes from version 17.6 to 17.7

Files changed (98) hide show
  1. admin/ajax.php +6 -6
  2. admin/class-admin-asset-manager.php +31 -0
  3. admin/class-admin.php +0 -6
  4. admin/class-bulk-editor-list-table.php +4 -4
  5. admin/class-config.php +1 -1
  6. admin/class-gutenberg-compatibility.php +2 -2
  7. admin/class-option-tab.php +4 -4
  8. admin/class-yoast-form.php +119 -119
  9. admin/class-yoast-network-settings-api.php +6 -6
  10. admin/config-ui/class-configuration-page.php +3 -7
  11. admin/metabox/class-metabox.php +5 -0
  12. admin/views/partial-notifications-template.php +4 -4
  13. admin/views/tabs/dashboard/dashboard.php +0 -8
  14. admin/views/tabs/metas/paper-content/post-type-content.php +5 -3
  15. admin/views/tabs/tool/import-seo.php +2 -2
  16. admin/views/workouts.php +0 -177
  17. css/dist/{admin-global-1760-rtl.css → admin-global-1770-rtl.css} +0 -0
  18. css/dist/{admin-global-1760.css → admin-global-1770.css} +0 -0
  19. css/dist/{adminbar-1760-rtl.css → adminbar-1770-rtl.css} +0 -0
  20. css/dist/{adminbar-1760.css → adminbar-1770.css} +0 -0
  21. css/dist/{alerts-1760-rtl.css → alerts-1770-rtl.css} +0 -0
  22. css/dist/{alerts-1760.css → alerts-1770.css} +0 -0
  23. css/dist/{dashboard-1760-rtl.css → dashboard-1770-rtl.css} +0 -0
  24. css/dist/{dashboard-1760.css → dashboard-1770.css} +0 -0
  25. css/dist/{edit-page-1760-rtl.css → edit-page-1770-rtl.css} +0 -0
  26. css/dist/{edit-page-1760.css → edit-page-1770.css} +0 -0
  27. css/dist/{elementor-1760-rtl.css → elementor-1770-rtl.css} +0 -0
  28. css/dist/{elementor-1760.css → elementor-1770.css} +0 -0
  29. css/dist/{featured-image-1760-rtl.css → featured-image-1770-rtl.css} +0 -0
  30. css/dist/{featured-image-1760.css → featured-image-1770.css} +0 -0
  31. css/dist/{filter-explanation-1760-rtl.css → filter-explanation-1770-rtl.css} +0 -0
  32. css/dist/{filter-explanation-1760.css → filter-explanation-1770.css} +0 -0
  33. css/dist/{icons-1760-rtl.css → icons-1770-rtl.css} +0 -0
  34. css/dist/{icons-1760.css → icons-1770.css} +0 -0
  35. css/dist/{inside-editor-1760-rtl.css → inside-editor-1770-rtl.css} +0 -0
  36. css/dist/{inside-editor-1760.css → inside-editor-1770.css} +0 -0
  37. css/dist/{metabox-1760-rtl.css → metabox-1770-rtl.css} +0 -0
  38. css/dist/{metabox-1760.css → metabox-1770.css} +0 -0
  39. css/dist/{metabox-primary-category-1760-rtl.css → metabox-primary-category-1770-rtl.css} +0 -0
  40. css/dist/{metabox-primary-category-1760.css → metabox-primary-category-1770.css} +0 -0
  41. css/dist/{modal-1760-rtl.css → modal-1770-rtl.css} +0 -0
  42. css/dist/{modal-1760.css → modal-1770.css} +0 -0
  43. css/dist/{monorepo-1760-rtl.css → monorepo-1770-rtl.css} +0 -0
  44. css/dist/{monorepo-1760.css → monorepo-1770.css} +0 -0
  45. css/dist/{notifications-1760-rtl.css → notifications-1770-rtl.css} +1 -1
  46. css/dist/{notifications-1760.css → notifications-1770.css} +1 -1
  47. css/dist/{schema-blocks-1760-rtl.css → schema-blocks-1770-rtl.css} +0 -0
  48. css/dist/{schema-blocks-1760.css → schema-blocks-1770.css} +0 -0
  49. css/dist/{score_icon-1760-rtl.css → score_icon-1770-rtl.css} +0 -0
  50. css/dist/{score_icon-1760.css → score_icon-1770.css} +0 -0
  51. css/dist/{search-appearance-1760-rtl.css → search-appearance-1770-rtl.css} +0 -0
  52. css/dist/{search-appearance-1760.css → search-appearance-1770.css} +0 -0
  53. css/dist/{structured-data-blocks-1760-rtl.css → structured-data-blocks-1770-rtl.css} +0 -0
  54. css/dist/{structured-data-blocks-1760.css → structured-data-blocks-1770.css} +0 -0
  55. css/dist/{toggle-switch-1760-rtl.css → toggle-switch-1770-rtl.css} +0 -0
  56. css/dist/{toggle-switch-1760.css → toggle-switch-1770.css} +0 -0
  57. css/dist/workouts-1760-rtl.css +0 -1
  58. css/dist/workouts-1760.css +0 -1
  59. css/dist/workouts-1770-rtl.css +1 -0
  60. css/dist/workouts-1770.css +1 -0
  61. css/dist/{wpseo-dismissible-1760-rtl.css → wpseo-dismissible-1770-rtl.css} +0 -0
  62. css/dist/{wpseo-dismissible-1760.css → wpseo-dismissible-1770.css} +0 -0
  63. css/dist/{yoast-components-1760-rtl.css → yoast-components-1770-rtl.css} +0 -0
  64. css/dist/{yoast-components-1760.css → yoast-components-1770.css} +0 -0
  65. css/dist/{yoast-extensions-1760-rtl.css → yoast-extensions-1770-rtl.css} +0 -0
  66. css/dist/{yoast-extensions-1760.css → yoast-extensions-1770.css} +0 -0
  67. css/dist/{yst_plugin_tools-1760-rtl.css → yst_plugin_tools-1770-rtl.css} +0 -0
  68. css/dist/{yst_plugin_tools-1760.css → yst_plugin_tools-1770.css} +0 -0
  69. css/dist/{yst_seo_score-1760-rtl.css → yst_seo_score-1770-rtl.css} +0 -0
  70. css/dist/{yst_seo_score-1760.css → yst_seo_score-1770.css} +0 -0
  71. css/main-sitemap.xsl +2 -2
  72. images/Assistent_Time_bubble_500x570.png +0 -0
  73. images/Yoast_Academy_video.png +0 -0
  74. images/mirrored_fit_bubble_man_1_optim.svg +1 -0
  75. images/mirrored_fit_bubble_woman_1_optim.svg +1 -0
  76. images/mirrored_fit_bubble_woman_2_optim.svg +1 -0
  77. images/newsletter-collage.png +0 -0
  78. images/profile-social-fields.png +0 -0
  79. inc/class-wpseo-admin-bar-menu.php +0 -10
  80. inc/class-wpseo-replace-vars.php +49 -49
  81. inc/class-wpseo-utils.php +16 -16
  82. inc/options/class-wpseo-option-wpseo.php +6 -0
  83. inc/options/class-wpseo-options.php +9 -9
  84. inc/sitemaps/class-sitemap-image-parser.php +3 -3
  85. inc/sitemaps/class-sitemaps.php +13 -13
  86. js/dist/addon-installation-1760.js +0 -5
  87. js/dist/addon-installation-1770.js +5 -0
  88. js/dist/{admin-global-1760.js → admin-global-1770.js} +1 -1
  89. js/dist/admin-modules-1770.js +4 -0
  90. js/dist/{analysis-worker-1760.js → analysis-worker-1770.js} +1 -1
  91. js/dist/{api-client-1760.js → api-client-1770.js} +1 -1
  92. js/dist/block-editor-1760.js +0 -73
  93. js/dist/block-editor-1770.js +73 -0
  94. js/dist/{bulk-editor-1760.js → bulk-editor-1770.js} +1 -1
  95. js/dist/classic-editor-1760.js +0 -73
  96. js/dist/classic-editor-1770.js +73 -0
  97. js/dist/configuration-wizard-1760.js +0 -5
  98. js/dist/configuration-wizard-1770.js +3 -0
admin/ajax.php CHANGED
@@ -232,17 +232,17 @@ function wpseo_save_all( $what ) {
232
  /**
233
  * Insert a new value.
234
  *
235
- * @param string $what Item type (such as title).
236
- * @param int $post_id Post ID.
237
- * @param string $new New value to record.
238
- * @param string $original Original value.
239
  *
240
  * @return string
241
  */
242
- function wpseo_upsert_new( $what, $post_id, $new, $original ) {
243
  $meta_key = WPSEO_Meta::$meta_prefix . $what;
244
 
245
- return wpseo_upsert_meta( $post_id, $new, $original, $meta_key, $what );
246
  }
247
 
248
  /**
232
  /**
233
  * Insert a new value.
234
  *
235
+ * @param string $what Item type (such as title).
236
+ * @param int $post_id Post ID.
237
+ * @param string $new_value New value to record.
238
+ * @param string $original Original value.
239
  *
240
  * @return string
241
  */
242
+ function wpseo_upsert_new( $what, $post_id, $new_value, $original ) {
243
  $meta_key = WPSEO_Meta::$meta_prefix . $what;
244
 
245
+ return wpseo_upsert_meta( $post_id, $new_value, $original, $meta_key, $what );
246
  }
247
 
248
  /**
admin/class-admin-asset-manager.php CHANGED
@@ -149,6 +149,17 @@ class WPSEO_Admin_Asset_Manager {
149
  \wp_localize_script( $this->prefix . $handle, $object_name, $data );
150
  }
151
 
 
 
 
 
 
 
 
 
 
 
 
152
  /**
153
  * A list of styles that shouldn't be registered but are needed in other locations in the plugin.
154
  *
@@ -310,6 +321,26 @@ class WPSEO_Admin_Asset_Manager {
310
  'in_footer' => ! in_array( 'post-edit-classic', $header_scripts, true ),
311
  ];
312
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
313
  // Add the current language to every script that requires the analysis package.
314
  foreach ( $scripts as $name => $script ) {
315
  if ( substr( $name, -8 ) === 'language' ) {
149
  \wp_localize_script( $this->prefix . $handle, $object_name, $data );
150
  }
151
 
152
+ /**
153
+ * Adds an inline script.
154
+ *
155
+ * @param string $handle The script handle.
156
+ * @param string $data The l10n data.
157
+ * @param string $position Optional. Whether to add the inline script before the handle or after.
158
+ */
159
+ public function add_inline_script( $handle, $data, $position = 'after' ) {
160
+ \wp_add_inline_script( $this->prefix . $handle, $data, $position );
161
+ }
162
+
163
  /**
164
  * A list of styles that shouldn't be registered but are needed in other locations in the plugin.
165
  *
321
  'in_footer' => ! in_array( 'post-edit-classic', $header_scripts, true ),
322
  ];
323
 
324
+ $scripts['workouts'] = [
325
+ 'name' => 'workouts',
326
+ 'src' => 'workouts-' . $flat_version . '.js',
327
+ 'deps' => [
328
+ 'clipboard',
329
+ 'lodash',
330
+ 'wp-api-fetch',
331
+ 'wp-a11y',
332
+ 'wp-components',
333
+ 'wp-compose',
334
+ 'wp-data',
335
+ 'wp-dom-ready',
336
+ 'wp-element',
337
+ 'wp-i18n',
338
+ self::PREFIX . 'analysis',
339
+ self::PREFIX . 'react-select',
340
+ self::PREFIX . 'yoast-components',
341
+ ],
342
+ ];
343
+
344
  // Add the current language to every script that requires the analysis package.
345
  foreach ( $scripts as $name => $script ) {
346
  if ( substr( $name, -8 ) === 'language' ) {
admin/class-admin.php CHANGED
@@ -75,12 +75,6 @@ class WPSEO_Admin {
75
  add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_assets' ] );
76
  }
77
 
78
- if ( WPSEO_Utils::is_api_available() ) {
79
- $configuration = new WPSEO_Configuration_Page();
80
- $configuration->set_hooks();
81
- $configuration->catch_configuration_request();
82
- }
83
-
84
  $this->set_upsell_notice();
85
 
86
  $this->initialize_cornerstone_content();
75
  add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_assets' ] );
76
  }
77
 
 
 
 
 
 
 
78
  $this->set_upsell_notice();
79
 
80
  $this->initialize_cornerstone_content();
admin/class-bulk-editor-list-table.php CHANGED
@@ -720,9 +720,9 @@ class WPSEO_Bulk_List_Table extends WP_List_Table {
720
 
721
  if ( ( is_array( $records ) && $records !== [] ) && ( is_array( $columns ) && $columns !== [] ) ) {
722
 
723
- foreach ( $records as $rec ) {
724
 
725
- echo '<tr id="', esc_attr( 'record_' . $rec->ID ), '">';
726
 
727
  foreach ( $columns as $column_name => $column_display_name ) {
728
 
@@ -733,10 +733,10 @@ class WPSEO_Bulk_List_Table extends WP_List_Table {
733
 
734
  $attributes = $this->column_attributes( $column_name, $hidden, $classes, $column_display_name );
735
 
736
- $column_value = $this->parse_column( $column_name, $rec );
737
 
738
  if ( method_exists( $this, 'parse_page_specific_column' ) && empty( $column_value ) ) {
739
- $column_value = $this->parse_page_specific_column( $column_name, $rec, $attributes );
740
  }
741
 
742
  if ( ! empty( $column_value ) ) {
720
 
721
  if ( ( is_array( $records ) && $records !== [] ) && ( is_array( $columns ) && $columns !== [] ) ) {
722
 
723
+ foreach ( $records as $record ) {
724
 
725
+ echo '<tr id="', esc_attr( 'record_' . $record->ID ), '">';
726
 
727
  foreach ( $columns as $column_name => $column_display_name ) {
728
 
733
 
734
  $attributes = $this->column_attributes( $column_name, $hidden, $classes, $column_display_name );
735
 
736
+ $column_value = $this->parse_column( $column_name, $record );
737
 
738
  if ( method_exists( $this, 'parse_page_specific_column' ) && empty( $column_value ) ) {
739
+ $column_value = $this->parse_page_specific_column( $column_name, $record, $attributes );
740
  }
741
 
742
  if ( ! empty( $column_value ) ) {
admin/class-config.php CHANGED
@@ -119,7 +119,7 @@ class WPSEO_Admin_Pages {
119
  $yoast_components_l10n->localize_script( 'settings' );
120
  }
121
 
122
- if ( in_array( $page, [ 'wpseo_social', WPSEO_Admin::PAGE_IDENTIFIER, 'wpseo_titles' ], true ) ) {
123
  wp_enqueue_media();
124
 
125
  $script_data['media'] = [
119
  $yoast_components_l10n->localize_script( 'settings' );
120
  }
121
 
122
+ if ( in_array( $page, [ 'wpseo_social', WPSEO_Admin::PAGE_IDENTIFIER, 'wpseo_titles', 'wpseo_workouts' ], true ) ) {
123
  wp_enqueue_media();
124
 
125
  $script_data['media'] = [
admin/class-gutenberg-compatibility.php CHANGED
@@ -15,14 +15,14 @@ class WPSEO_Gutenberg_Compatibility {
15
  *
16
  * @var string
17
  */
18
- const CURRENT_RELEASE = '11.8.1';
19
 
20
  /**
21
  * The minimally supported version of Gutenberg by the plugin.
22
  *
23
  * @var string
24
  */
25
- const MINIMUM_SUPPORTED = '11.8.1';
26
 
27
  /**
28
  * Holds the current version.
15
  *
16
  * @var string
17
  */
18
+ const CURRENT_RELEASE = '12.0.1';
19
 
20
  /**
21
  * The minimally supported version of Gutenberg by the plugin.
22
  *
23
  * @var string
24
  */
25
+ const MINIMUM_SUPPORTED = '12.0.1';
26
 
27
  /**
28
  * Holds the current version.
admin/class-option-tab.php CHANGED
@@ -83,12 +83,12 @@ class WPSEO_Option_Tab {
83
  /**
84
  * Retrieves the variable from the supplied arguments.
85
  *
86
- * @param string $variable Variable to retrieve.
87
- * @param string|mixed $default Default to use when variable not found.
88
  *
89
  * @return mixed|string The retrieved variable.
90
  */
91
- protected function get_argument( $variable, $default = '' ) {
92
- return array_key_exists( $variable, $this->arguments ) ? $this->arguments[ $variable ] : $default;
93
  }
94
  }
83
  /**
84
  * Retrieves the variable from the supplied arguments.
85
  *
86
+ * @param string $variable Variable to retrieve.
87
+ * @param string|mixed $default_value Default to use when variable not found.
88
  *
89
  * @return mixed|string The retrieved variable.
90
  */
91
+ protected function get_argument( $variable, $default_value = '' ) {
92
+ return array_key_exists( $variable, $this->arguments ) ? $this->arguments[ $variable ] : $default_value;
93
  }
94
  }
admin/class-yoast-form.php CHANGED
@@ -243,13 +243,13 @@ class Yoast_Form {
243
  *
244
  * @since 2.0
245
  *
246
- * @param string $var The variable within the option to create the checkbox for.
247
  * @param string $label The label to show for the variable.
248
  * @param bool $label_left Whether the label should be left (true) or right (false).
249
  * @param array $attr Extra attributes to add to the checkbox.
250
  */
251
- public function checkbox( $var, $label, $label_left = false, $attr = [] ) {
252
- $val = $this->get_field_value( $var, false );
253
 
254
  $defaults = [
255
  'disabled' => false,
@@ -262,19 +262,19 @@ class Yoast_Form {
262
 
263
  $class = '';
264
  if ( $label_left !== false ) {
265
- $this->label( $label_left, [ 'for' => $var ] );
266
  }
267
  else {
268
  $class = 'double';
269
  }
270
 
271
- $disabled_attribute = $this->get_disabled_attribute( $var, $attr );
272
 
273
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
274
- echo '<input class="checkbox ', esc_attr( $class ), '" type="checkbox" id="', esc_attr( $var ), '" name="', esc_attr( $this->option_name ), '[', esc_attr( $var ), ']" value="on"', checked( $val, 'on', false ), $disabled_attribute, '/>';
275
 
276
  if ( ! empty( $label ) ) {
277
- $this->label( $label, [ 'for' => $var ] );
278
  }
279
 
280
  echo '<br class="clear" />';
@@ -321,17 +321,17 @@ class Yoast_Form {
321
  *
322
  * @since 3.1
323
  *
324
- * @param string $var The variable within the option to create the checkbox for.
325
- * @param string $label The visual label text for the toggle.
326
- * @param array $buttons Array of two visual labels for the buttons (defaults Disabled/Enabled).
327
- * @param bool $reverse Reverse order of buttons (default true).
328
- * @param string $help Inline Help that will be printed out before the toggle.
329
- * @param bool $strong Whether the visual label is displayed in strong text. Default is false.
330
- * Starting from Yoast SEO 16.5, the visual label is forced to bold via CSS.
331
- * @param array $attr Extra attributes to add to the light switch.
332
  */
333
- public function light_switch( $var, $label, $buttons = [], $reverse = true, $help = '', $strong = false, $attr = [] ) {
334
- $val = $this->get_field_value( $var, false );
335
 
336
  $defaults = [
337
  'disabled' => false,
@@ -342,13 +342,13 @@ class Yoast_Form {
342
  $val = 'on';
343
  }
344
 
345
- $disabled_attribute = $this->get_disabled_attribute( $var, $attr );
346
 
347
  $output = new Light_Switch_Presenter(
348
- $var,
349
  $label,
350
  $buttons,
351
- $this->option_name . '[' . $var . ']',
352
  $val,
353
  $reverse,
354
  $help,
@@ -366,11 +366,11 @@ class Yoast_Form {
366
  * @since 2.0
367
  * @since 2.1 Introduced the `$attr` parameter.
368
  *
369
- * @param string $var The variable within the option to create the text input field for.
370
  * @param string $label The label to show for the variable.
371
  * @param array|string $attr Extra attributes to add to the input field. Can be class, disabled, autocomplete.
372
  */
373
- public function textinput( $var, $label, $attr = [] ) {
374
  $type = 'text';
375
  if ( ! is_array( $attr ) ) {
376
  $attr = [
@@ -384,7 +384,7 @@ class Yoast_Form {
384
  'class' => '',
385
  ];
386
  $attr = wp_parse_args( $attr, $defaults );
387
- $val = $this->get_field_value( $var, '' );
388
  if ( isset( $attr['type'] ) && $attr['type'] === 'url' ) {
389
  $val = urldecode( $val );
390
  $type = 'url';
@@ -394,34 +394,34 @@ class Yoast_Form {
394
  $this->label(
395
  $label,
396
  [
397
- 'for' => $var,
398
  'class' => 'textinput',
399
  ]
400
  );
401
 
402
- $has_input_error = Yoast_Input_Validation::yoast_form_control_has_error( $var );
403
- $aria_attributes = Yoast_Input_Validation::get_the_aria_invalid_attribute( $var );
404
 
405
  Yoast_Input_Validation::set_error_descriptions();
406
- $aria_attributes .= Yoast_Input_Validation::get_the_aria_describedby_attribute( $var );
407
 
408
- $disabled_attribute = $this->get_disabled_attribute( $var, $attr );
409
 
410
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
411
- echo '<input' . $attributes . $aria_attributes . ' class="textinput ' . esc_attr( $attr['class'] ) . '" placeholder="' . esc_attr( $attr['placeholder'] ) . '" type="' . $type . '" id="', esc_attr( $var ), '" name="', esc_attr( $this->option_name ), '[', esc_attr( $var ), ']" value="', esc_attr( $val ), '"', $disabled_attribute, '/>', '<br class="clear" />';
412
- echo Yoast_Input_Validation::get_the_error_description( $var );
413
  }
414
 
415
  /**
416
  * Creates a text input field with with the ability to add content after the label.
417
  *
418
- * @param string $var The variable within the option to create the text input field for.
419
- * @param string $label The label to show for the variable.
420
- * @param array $attr Extra attributes to add to the input field.
421
  *
422
  * @return void
423
  */
424
- public function textinput_extra_content( $var, $label, $attr = [] ) {
425
  $type = 'text';
426
 
427
  $defaults = [
@@ -430,7 +430,7 @@ class Yoast_Form {
430
  ];
431
 
432
  $attr = \wp_parse_args( $attr, $defaults );
433
- $val = $this->get_field_value( $var, '' );
434
 
435
  if ( isset( $attr['type'] ) && $attr['type'] === 'url' ) {
436
  $val = urldecode( $val );
@@ -441,7 +441,7 @@ class Yoast_Form {
441
  $this->label(
442
  $label,
443
  [
444
- 'for' => $var,
445
  'class' => $attr['class'] . '--label',
446
  ]
447
  );
@@ -452,28 +452,28 @@ class Yoast_Form {
452
  }
453
  echo '</div>';
454
 
455
- $has_input_error = Yoast_Input_Validation::yoast_form_control_has_error( $var );
456
- $aria_attributes = Yoast_Input_Validation::get_the_aria_invalid_attribute( $var );
457
 
458
  Yoast_Input_Validation::set_error_descriptions();
459
- $aria_attributes .= Yoast_Input_Validation::get_the_aria_describedby_attribute( $var );
460
 
461
  // phpcs:disable WordPress.Security.EscapeOutput -- Reason: output is properly escaped or hardcoded.
462
  printf(
463
  '<input type="%1$s" name="%2$s" id="%3$s" class="%4$s"%5$s%6$s%7$s value="%8$s"%9$s>',
464
  $type,
465
- \esc_attr( $this->option_name ) . '[' . \esc_attr( $var ) . ']',
466
- \esc_attr( $var ),
467
  \esc_attr( $attr['class'] ),
468
  isset( $attr['placeholder'] ) ? ' placeholder="' . \esc_attr( $attr['placeholder'] ) . '"' : '',
469
  isset( $attr['autocomplete'] ) ? ' autocomplete="' . \esc_attr( $attr['autocomplete'] ) . '"' : '',
470
  $aria_attributes,
471
  \esc_attr( $val ),
472
- $this->get_disabled_attribute( $var, $attr )
473
  );
474
  // phpcs:enable
475
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: output is properly escaped.
476
- echo Yoast_Input_Validation::get_the_error_description( $var );
477
  }
478
 
479
  /**
@@ -481,11 +481,11 @@ class Yoast_Form {
481
  *
482
  * @since 2.0
483
  *
484
- * @param string $var The variable within the option to create the textarea for.
485
  * @param string $label The label to show for the variable.
486
  * @param string|array $attr The CSS class or an array of attributes to assign to the textarea.
487
  */
488
- public function textarea( $var, $label, $attr = [] ) {
489
  if ( ! is_array( $attr ) ) {
490
  $attr = [
491
  'class' => $attr,
@@ -499,20 +499,20 @@ class Yoast_Form {
499
  'disabled' => false,
500
  ];
501
  $attr = wp_parse_args( $attr, $defaults );
502
- $val = $this->get_field_value( $var, '' );
503
 
504
  $this->label(
505
  $label,
506
  [
507
- 'for' => $var,
508
  'class' => 'textinput',
509
  ]
510
  );
511
 
512
- $disabled_attribute = $this->get_disabled_attribute( $var, $attr );
513
 
514
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
515
- echo '<textarea cols="' . esc_attr( $attr['cols'] ) . '" rows="' . esc_attr( $attr['rows'] ) . '" class="textinput ' . esc_attr( $attr['class'] ) . '" id="' . esc_attr( $var ) . '" name="' . esc_attr( $this->option_name ) . '[' . esc_attr( $var ) . ']"', $disabled_attribute, '>' . esc_textarea( $val ) . '</textarea><br class="clear" />';
516
  }
517
 
518
  /**
@@ -520,13 +520,13 @@ class Yoast_Form {
520
  *
521
  * @since 2.0
522
  *
523
- * @param string $var The variable within the option to create the hidden input for.
524
- * @param string $id The ID of the element.
525
- * @param mixed $val Optional. The value to set in the input field. Otherwise the value from the options will be used.
526
  */
527
- public function hidden( $var, $id = '', $val = null ) {
528
  if ( is_null( $val ) ) {
529
- $val = $this->get_field_value( $var, '' );
530
  }
531
 
532
  if ( is_bool( $val ) ) {
@@ -534,10 +534,10 @@ class Yoast_Form {
534
  }
535
 
536
  if ( $id === '' ) {
537
- $id = 'hidden_' . $var;
538
  }
539
 
540
- echo '<input type="hidden" id="' . esc_attr( $id ) . '" name="' . esc_attr( $this->option_name ) . '[' . esc_attr( $var ) . ']" value="' . esc_attr( $val ) . '"/>';
541
  }
542
 
543
  /**
@@ -545,7 +545,7 @@ class Yoast_Form {
545
  *
546
  * @since 2.0
547
  *
548
- * @param string $var The variable within the option to create the select for.
549
  * @param string $label The label to show for the variable.
550
  * @param array $select_options The select options to choose from.
551
  * @param string $styled The select style. Use 'styled' to get a styled select. Default 'unstyled'.
@@ -553,7 +553,7 @@ class Yoast_Form {
553
  * @param array $attr Extra attributes to add to the select.
554
  * @param string $help Optional. Inline Help HTML that will be printed after the label. Default is empty.
555
  */
556
- public function select( $var, $label, array $select_options, $styled = 'unstyled', $show_label = true, $attr = [], $help = '' ) {
557
  if ( empty( $select_options ) ) {
558
  return;
559
  }
@@ -567,22 +567,22 @@ class Yoast_Form {
567
  $this->label(
568
  $label,
569
  [
570
- 'for' => $var,
571
  'class' => 'select',
572
  ]
573
  );
574
  echo $help; // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: The help contains HTML.
575
  }
576
 
577
- $select_name = esc_attr( $this->option_name ) . '[' . esc_attr( $var ) . ']';
578
- $active_option = $this->get_field_value( $var, '' );
579
  $wrapper_start_tag = '';
580
  $wrapper_end_tag = '';
581
 
582
- $select = new Yoast_Input_Select( $var, $select_name, $select_options, $active_option );
583
  $select->add_attribute( 'class', 'select' );
584
 
585
- if ( $this->is_control_disabled( $var )
586
  || ( isset( $attr['disabled'] ) && $attr['disabled'] ) ) {
587
  $select->add_attribute( 'disabled', 'disabled' );
588
  }
@@ -607,12 +607,12 @@ class Yoast_Form {
607
  *
608
  * @since 2.0
609
  *
610
- * @param string $var The variable within the option to create the file upload field for.
611
- * @param string $label The label to show for the variable.
612
- * @param array $attr Extra attributes to add to the file upload input.
613
  */
614
- public function file_upload( $var, $label, $attr = [] ) {
615
- $val = $this->get_field_value( $var, '' );
616
  if ( is_array( $val ) ) {
617
  $val = $val['url'];
618
  }
@@ -622,16 +622,16 @@ class Yoast_Form {
622
  ];
623
  $attr = wp_parse_args( $attr, $defaults );
624
 
625
- $var_esc = esc_attr( $var );
626
  $this->label(
627
  $label,
628
  [
629
- 'for' => $var,
630
  'class' => 'select',
631
  ]
632
  );
633
 
634
- $disabled_attribute = $this->get_disabled_attribute( $var, $attr );
635
 
636
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
637
  echo '<input type="file" value="' . esc_attr( $val ) . '" class="textinput" name="' . esc_attr( $this->option_name ) . '[' . $var_esc . ']" id="' . $var_esc . '"', $disabled_attribute, '/>';
@@ -650,15 +650,15 @@ class Yoast_Form {
650
  *
651
  * @since 2.0
652
  *
653
- * @param string $var Option name.
654
- * @param string $label Label message.
655
- * @param array $attr Extra attributes to add to the media input and buttons.
656
  */
657
- public function media_input( $var, $label, $attr = [] ) {
658
- $val = $this->get_field_value( $var, '' );
659
- $id_value = $this->get_field_value( $var . '_id', '' );
660
 
661
- $var_esc = esc_attr( $var );
662
 
663
  $defaults = [
664
  'disabled' => false,
@@ -668,14 +668,14 @@ class Yoast_Form {
668
  $this->label(
669
  $label,
670
  [
671
- 'for' => 'wpseo_' . $var,
672
  'class' => 'select',
673
  ]
674
  );
675
 
676
  $id_field_id = 'wpseo_' . $var_esc . '_id';
677
 
678
- $disabled_attribute = $this->get_disabled_attribute( $var, $attr );
679
 
680
  echo '<span>';
681
  echo '<input',
@@ -717,19 +717,19 @@ class Yoast_Form {
717
  *
718
  * @since 2.0
719
  *
720
- * @param string $var The variable within the option to create the radio button for.
721
  * @param array $values The radio options to choose from.
722
  * @param string $legend Optional. The legend to show for the field set, if any.
723
  * @param array $legend_attr Optional. The attributes for the legend, if any.
724
  * @param array $attr Extra attributes to add to the radio button.
725
  */
726
- public function radio( $var, $values, $legend = '', $legend_attr = [], $attr = [] ) {
727
  if ( ! is_array( $values ) || $values === [] ) {
728
  return;
729
  }
730
- $val = $this->get_field_value( $var, false );
731
 
732
- $var_esc = esc_attr( $var );
733
 
734
  $defaults = [
735
  'disabled' => false,
@@ -761,7 +761,7 @@ class Yoast_Form {
761
 
762
  $key_esc = esc_attr( $key );
763
 
764
- $disabled_attribute = $this->get_disabled_attribute( $var, $attr );
765
 
766
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
767
  echo '<input type="radio" class="radio" id="' . $var_esc . '-' . $key_esc . '" name="' . esc_attr( $this->option_name ) . '[' . $var_esc . ']" value="' . $key_esc . '" ' . checked( $val, $key_esc, false ) . $disabled_attribute . ' />';
@@ -782,15 +782,15 @@ class Yoast_Form {
782
  *
783
  * @since 3.1
784
  *
785
- * @param string $var The variable within the option to create the radio buttons for.
786
- * @param array $values Associative array of on/off keys and their values to be used as
787
- * the label elements text for the radio buttons. Optionally, each
788
- * value can be an array of visible label text and screen reader text.
789
- * @param string $label The visual label for the radio buttons group, used as the fieldset legend.
790
- * @param string $help Inline Help that will be printed out before the visible toggles text.
791
- * @param array $attr Extra attributes to add to the toggle switch.
792
  */
793
- public function toggle_switch( $var, $values, $label, $help = '', $attr = [] ) {
794
  if ( ! is_array( $values ) || $values === [] ) {
795
  return;
796
  }
@@ -800,7 +800,7 @@ class Yoast_Form {
800
  ];
801
  $attr = wp_parse_args( $attr, $defaults );
802
 
803
- $val = $this->get_field_value( $var, false );
804
  if ( $val === true ) {
805
  $val = 'on';
806
  }
@@ -810,12 +810,12 @@ class Yoast_Form {
810
 
811
  $help_class = ! empty( $help ) ? ' switch-container__has-help' : '';
812
 
813
- $var_esc = esc_attr( $var );
814
 
815
  printf( '<div class="%s">', esc_attr( 'switch-container' . $help_class ) );
816
  echo '<fieldset id="', $var_esc, '" class="fieldset-switch-toggle"><legend>', $label, '</legend>', $help;
817
 
818
- echo $this->get_disabled_note( $var );
819
  echo '<div class="switch-toggle switch-candy switch-yoast-seo">';
820
 
821
  foreach ( $values as $key => $value ) {
@@ -829,7 +829,7 @@ class Yoast_Form {
829
 
830
  $key_esc = esc_attr( $key );
831
  $for = $var_esc . '-' . $key_esc;
832
- $disabled_attribute = $this->get_disabled_attribute( $var, $attr );
833
 
834
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
835
  echo '<input type="radio" id="' . $for . '" name="' . esc_attr( $this->option_name ) . '[' . $var_esc . ']" value="' . $key_esc . '" ' . checked( $val, $key_esc, false ) . $disabled_attribute . ' />',
@@ -842,14 +842,14 @@ class Yoast_Form {
842
  /**
843
  * Creates a toggle switch to define whether an indexable should be indexed or not.
844
  *
845
- * @param string $var The variable within the option to create the radio buttons for.
846
- * @param string $label The visual label for the radio buttons group, used as the fieldset legend.
847
- * @param string $help Inline Help that will be printed out before the visible toggles text.
848
- * @param array $attr Extra attributes to add to the index switch.
849
  *
850
  * @return void
851
  */
852
- public function index_switch( $var, $label, $help = '', $attr = [] ) {
853
  $defaults = [
854
  'disabled' => false,
855
  ];
@@ -863,12 +863,12 @@ class Yoast_Form {
863
  $is_disabled = ( isset( $attr['disabled'] ) && $attr['disabled'] );
864
 
865
  $this->toggle_switch(
866
- $var,
867
  $index_switch_values,
868
  sprintf(
869
  /* translators: %s expands to an indexable object's name, like a post type or taxonomy */
870
  esc_html__( 'Show %s in search results?', 'wordpress-seo' ),
871
- esc_html( $label )
872
  ),
873
  $help,
874
  [ 'disabled' => $is_disabled ]
@@ -878,7 +878,7 @@ class Yoast_Form {
878
  /**
879
  * Creates a toggle switch to show hide certain options.
880
  *
881
- * @param string $var The variable within the option to create the radio buttons for.
882
  * @param string $label The visual label for the radio buttons group, used as the fieldset legend.
883
  * @param bool $inverse_keys Whether or not the option keys need to be inverted to support older functions.
884
  * @param string $help Inline Help that will be printed out before the visible toggles text.
@@ -886,7 +886,7 @@ class Yoast_Form {
886
  *
887
  * @return void
888
  */
889
- public function show_hide_switch( $var, $label, $inverse_keys = false, $help = '', $attr = [] ) {
890
  $defaults = [
891
  'disabled' => false,
892
  ];
@@ -903,7 +903,7 @@ class Yoast_Form {
903
  $is_disabled = ( isset( $attr['disabled'] ) && $attr['disabled'] );
904
 
905
  $this->toggle_switch(
906
- $var,
907
  $show_hide_switch,
908
  $label,
909
  $help,
@@ -931,39 +931,39 @@ class Yoast_Form {
931
  /**
932
  * Checks whether a given control should be disabled.
933
  *
934
- * @param string $var The variable within the option to check whether its control should be disabled.
935
  *
936
  * @return bool True if control should be disabled, false otherwise.
937
  */
938
- protected function is_control_disabled( $var ) {
939
  if ( $this->option_instance === null ) {
940
  return false;
941
  }
942
 
943
  // Disable the Usage tracking feature for multisite subsites.
944
- if ( $this->is_tracking_on_subsite( $var ) ) {
945
  return true;
946
  }
947
 
948
- return $this->option_instance->is_disabled( $var );
949
  }
950
 
951
  /**
952
  * Gets the explanation note to print if a given control is disabled.
953
  *
954
- * @param string $var The variable within the option to print a disabled note for.
955
  *
956
  * @return string Explanation note HTML string, or empty string if no note necessary.
957
  */
958
- protected function get_disabled_note( $var ) {
959
- if ( ! $this->is_control_disabled( $var ) ) {
960
  return '';
961
  }
962
 
963
  $disabled_message = esc_html__( 'This feature has been disabled by the network admin.', 'wordpress-seo' );
964
 
965
  // The explanation to show when disabling the Usage tracking feature for multisite subsites.
966
- if ( $this->is_tracking_on_subsite( $var ) ) {
967
  $disabled_message = esc_html__( 'This feature has been disabled since subsites never send tracking data.', 'wordpress-seo' );
968
  }
969
  return '<p class="disabled-note">' . $disabled_message . '</p>';
@@ -984,13 +984,13 @@ class Yoast_Form {
984
  /**
985
  * Returns the disabled attribute HTML.
986
  *
987
- * @param string $var The variable within the option of the related form element.
988
- * @param array $attr Extra attributes added to the form element.
989
  *
990
  * @return string The disabled attribute HTML.
991
  */
992
- protected function get_disabled_attribute( $var, $attr ) {
993
- if ( $this->is_control_disabled( $var ) || ( isset( $attr['disabled'] ) && $attr['disabled'] ) ) {
994
  return ' disabled';
995
  }
996
 
243
  *
244
  * @since 2.0
245
  *
246
+ * @param string $variable The variable within the option to create the checkbox for.
247
  * @param string $label The label to show for the variable.
248
  * @param bool $label_left Whether the label should be left (true) or right (false).
249
  * @param array $attr Extra attributes to add to the checkbox.
250
  */
251
+ public function checkbox( $variable, $label, $label_left = false, $attr = [] ) {
252
+ $val = $this->get_field_value( $variable, false );
253
 
254
  $defaults = [
255
  'disabled' => false,
262
 
263
  $class = '';
264
  if ( $label_left !== false ) {
265
+ $this->label( $label_left, [ 'for' => $variable ] );
266
  }
267
  else {
268
  $class = 'double';
269
  }
270
 
271
+ $disabled_attribute = $this->get_disabled_attribute( $variable, $attr );
272
 
273
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
274
+ echo '<input class="checkbox ', esc_attr( $class ), '" type="checkbox" id="', esc_attr( $variable ), '" name="', esc_attr( $this->option_name ), '[', esc_attr( $variable ), ']" value="on"', checked( $val, 'on', false ), $disabled_attribute, '/>';
275
 
276
  if ( ! empty( $label ) ) {
277
+ $this->label( $label, [ 'for' => $variable ] );
278
  }
279
 
280
  echo '<br class="clear" />';
321
  *
322
  * @since 3.1
323
  *
324
+ * @param string $variable The variable within the option to create the checkbox for.
325
+ * @param string $label The visual label text for the toggle.
326
+ * @param array $buttons Array of two visual labels for the buttons (defaults Disabled/Enabled).
327
+ * @param bool $reverse Reverse order of buttons (default true).
328
+ * @param string $help Inline Help that will be printed out before the toggle.
329
+ * @param bool $strong Whether the visual label is displayed in strong text. Default is false.
330
+ * Starting from Yoast SEO 16.5, the visual label is forced to bold via CSS.
331
+ * @param array $attr Extra attributes to add to the light switch.
332
  */
333
+ public function light_switch( $variable, $label, $buttons = [], $reverse = true, $help = '', $strong = false, $attr = [] ) {
334
+ $val = $this->get_field_value( $variable, false );
335
 
336
  $defaults = [
337
  'disabled' => false,
342
  $val = 'on';
343
  }
344
 
345
+ $disabled_attribute = $this->get_disabled_attribute( $variable, $attr );
346
 
347
  $output = new Light_Switch_Presenter(
348
+ $variable,
349
  $label,
350
  $buttons,
351
+ $this->option_name . '[' . $variable . ']',
352
  $val,
353
  $reverse,
354
  $help,
366
  * @since 2.0
367
  * @since 2.1 Introduced the `$attr` parameter.
368
  *
369
+ * @param string $variable The variable within the option to create the text input field for.
370
  * @param string $label The label to show for the variable.
371
  * @param array|string $attr Extra attributes to add to the input field. Can be class, disabled, autocomplete.
372
  */
373
+ public function textinput( $variable, $label, $attr = [] ) {
374
  $type = 'text';
375
  if ( ! is_array( $attr ) ) {
376
  $attr = [
384
  'class' => '',
385
  ];
386
  $attr = wp_parse_args( $attr, $defaults );
387
+ $val = $this->get_field_value( $variable, '' );
388
  if ( isset( $attr['type'] ) && $attr['type'] === 'url' ) {
389
  $val = urldecode( $val );
390
  $type = 'url';
394
  $this->label(
395
  $label,
396
  [
397
+ 'for' => $variable,
398
  'class' => 'textinput',
399
  ]
400
  );
401
 
402
+ $has_input_error = Yoast_Input_Validation::yoast_form_control_has_error( $variable );
403
+ $aria_attributes = Yoast_Input_Validation::get_the_aria_invalid_attribute( $variable );
404
 
405
  Yoast_Input_Validation::set_error_descriptions();
406
+ $aria_attributes .= Yoast_Input_Validation::get_the_aria_describedby_attribute( $variable );
407
 
408
+ $disabled_attribute = $this->get_disabled_attribute( $variable, $attr );
409
 
410
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
411
+ echo '<input' . $attributes . $aria_attributes . ' class="textinput ' . esc_attr( $attr['class'] ) . '" placeholder="' . esc_attr( $attr['placeholder'] ) . '" type="' . $type . '" id="', esc_attr( $variable ), '" name="', esc_attr( $this->option_name ), '[', esc_attr( $variable ), ']" value="', esc_attr( $val ), '"', $disabled_attribute, '/>', '<br class="clear" />';
412
+ echo Yoast_Input_Validation::get_the_error_description( $variable );
413
  }
414
 
415
  /**
416
  * Creates a text input field with with the ability to add content after the label.
417
  *
418
+ * @param string $variable The variable within the option to create the text input field for.
419
+ * @param string $label The label to show for the variable.
420
+ * @param array $attr Extra attributes to add to the input field.
421
  *
422
  * @return void
423
  */
424
+ public function textinput_extra_content( $variable, $label, $attr = [] ) {
425
  $type = 'text';
426
 
427
  $defaults = [
430
  ];
431
 
432
  $attr = \wp_parse_args( $attr, $defaults );
433
+ $val = $this->get_field_value( $variable, '' );
434
 
435
  if ( isset( $attr['type'] ) && $attr['type'] === 'url' ) {
436
  $val = urldecode( $val );
441
  $this->label(
442
  $label,
443
  [
444
+ 'for' => $variable,
445
  'class' => $attr['class'] . '--label',
446
  ]
447
  );
452
  }
453
  echo '</div>';
454
 
455
+ $has_input_error = Yoast_Input_Validation::yoast_form_control_has_error( $variable );
456
+ $aria_attributes = Yoast_Input_Validation::get_the_aria_invalid_attribute( $variable );
457
 
458
  Yoast_Input_Validation::set_error_descriptions();
459
+ $aria_attributes .= Yoast_Input_Validation::get_the_aria_describedby_attribute( $variable );
460
 
461
  // phpcs:disable WordPress.Security.EscapeOutput -- Reason: output is properly escaped or hardcoded.
462
  printf(
463
  '<input type="%1$s" name="%2$s" id="%3$s" class="%4$s"%5$s%6$s%7$s value="%8$s"%9$s>',
464
  $type,
465
+ \esc_attr( $this->option_name ) . '[' . \esc_attr( $variable ) . ']',
466
+ \esc_attr( $variable ),
467
  \esc_attr( $attr['class'] ),
468
  isset( $attr['placeholder'] ) ? ' placeholder="' . \esc_attr( $attr['placeholder'] ) . '"' : '',
469
  isset( $attr['autocomplete'] ) ? ' autocomplete="' . \esc_attr( $attr['autocomplete'] ) . '"' : '',
470
  $aria_attributes,
471
  \esc_attr( $val ),
472
+ $this->get_disabled_attribute( $variable, $attr )
473
  );
474
  // phpcs:enable
475
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: output is properly escaped.
476
+ echo Yoast_Input_Validation::get_the_error_description( $variable );
477
  }
478
 
479
  /**
481
  *
482
  * @since 2.0
483
  *
484
+ * @param string $variable The variable within the option to create the textarea for.
485
  * @param string $label The label to show for the variable.
486
  * @param string|array $attr The CSS class or an array of attributes to assign to the textarea.
487
  */
488
+ public function textarea( $variable, $label, $attr = [] ) {
489
  if ( ! is_array( $attr ) ) {
490
  $attr = [
491
  'class' => $attr,
499
  'disabled' => false,
500
  ];
501
  $attr = wp_parse_args( $attr, $defaults );
502
+ $val = $this->get_field_value( $variable, '' );
503
 
504
  $this->label(
505
  $label,
506
  [
507
+ 'for' => $variable,
508
  'class' => 'textinput',
509
  ]
510
  );
511
 
512
+ $disabled_attribute = $this->get_disabled_attribute( $variable, $attr );
513
 
514
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
515
+ echo '<textarea cols="' . esc_attr( $attr['cols'] ) . '" rows="' . esc_attr( $attr['rows'] ) . '" class="textinput ' . esc_attr( $attr['class'] ) . '" id="' . esc_attr( $variable ) . '" name="' . esc_attr( $this->option_name ) . '[' . esc_attr( $variable ) . ']"', $disabled_attribute, '>' . esc_textarea( $val ) . '</textarea><br class="clear" />';
516
  }
517
 
518
  /**
520
  *
521
  * @since 2.0
522
  *
523
+ * @param string $variable The variable within the option to create the hidden input for.
524
+ * @param string $id The ID of the element.
525
+ * @param mixed $val Optional. The value to set in the input field. Otherwise the value from the options will be used.
526
  */
527
+ public function hidden( $variable, $id = '', $val = null ) {
528
  if ( is_null( $val ) ) {
529
+ $val = $this->get_field_value( $variable, '' );
530
  }
531
 
532
  if ( is_bool( $val ) ) {
534
  }
535
 
536
  if ( $id === '' ) {
537
+ $id = 'hidden_' . $variable;
538
  }
539
 
540
+ echo '<input type="hidden" id="' . esc_attr( $id ) . '" name="' . esc_attr( $this->option_name ) . '[' . esc_attr( $variable ) . ']" value="' . esc_attr( $val ) . '"/>';
541
  }
542
 
543
  /**
545
  *
546
  * @since 2.0
547
  *
548
+ * @param string $variable The variable within the option to create the select for.
549
  * @param string $label The label to show for the variable.
550
  * @param array $select_options The select options to choose from.
551
  * @param string $styled The select style. Use 'styled' to get a styled select. Default 'unstyled'.
553
  * @param array $attr Extra attributes to add to the select.
554
  * @param string $help Optional. Inline Help HTML that will be printed after the label. Default is empty.
555
  */
556
+ public function select( $variable, $label, array $select_options, $styled = 'unstyled', $show_label = true, $attr = [], $help = '' ) {
557
  if ( empty( $select_options ) ) {
558
  return;
559
  }
567
  $this->label(
568
  $label,
569
  [
570
+ 'for' => $variable,
571
  'class' => 'select',
572
  ]
573
  );
574
  echo $help; // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: The help contains HTML.
575
  }
576
 
577
+ $select_name = esc_attr( $this->option_name ) . '[' . esc_attr( $variable ) . ']';
578
+ $active_option = $this->get_field_value( $variable, '' );
579
  $wrapper_start_tag = '';
580
  $wrapper_end_tag = '';
581
 
582
+ $select = new Yoast_Input_Select( $variable, $select_name, $select_options, $active_option );
583
  $select->add_attribute( 'class', 'select' );
584
 
585
+ if ( $this->is_control_disabled( $variable )
586
  || ( isset( $attr['disabled'] ) && $attr['disabled'] ) ) {
587
  $select->add_attribute( 'disabled', 'disabled' );
588
  }
607
  *
608
  * @since 2.0
609
  *
610
+ * @param string $variable The variable within the option to create the file upload field for.
611
+ * @param string $label The label to show for the variable.
612
+ * @param array $attr Extra attributes to add to the file upload input.
613
  */
614
+ public function file_upload( $variable, $label, $attr = [] ) {
615
+ $val = $this->get_field_value( $variable, '' );
616
  if ( is_array( $val ) ) {
617
  $val = $val['url'];
618
  }
622
  ];
623
  $attr = wp_parse_args( $attr, $defaults );
624
 
625
+ $var_esc = esc_attr( $variable );
626
  $this->label(
627
  $label,
628
  [
629
+ 'for' => $variable,
630
  'class' => 'select',
631
  ]
632
  );
633
 
634
+ $disabled_attribute = $this->get_disabled_attribute( $variable, $attr );
635
 
636
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
637
  echo '<input type="file" value="' . esc_attr( $val ) . '" class="textinput" name="' . esc_attr( $this->option_name ) . '[' . $var_esc . ']" id="' . $var_esc . '"', $disabled_attribute, '/>';
650
  *
651
  * @since 2.0
652
  *
653
+ * @param string $variable Option name.
654
+ * @param string $label Label message.
655
+ * @param array $attr Extra attributes to add to the media input and buttons.
656
  */
657
+ public function media_input( $variable, $label, $attr = [] ) {
658
+ $val = $this->get_field_value( $variable, '' );
659
+ $id_value = $this->get_field_value( $variable . '_id', '' );
660
 
661
+ $var_esc = esc_attr( $variable );
662
 
663
  $defaults = [
664
  'disabled' => false,
668
  $this->label(
669
  $label,
670
  [
671
+ 'for' => 'wpseo_' . $variable,
672
  'class' => 'select',
673
  ]
674
  );
675
 
676
  $id_field_id = 'wpseo_' . $var_esc . '_id';
677
 
678
+ $disabled_attribute = $this->get_disabled_attribute( $variable, $attr );
679
 
680
  echo '<span>';
681
  echo '<input',
717
  *
718
  * @since 2.0
719
  *
720
+ * @param string $variable The variable within the option to create the radio button for.
721
  * @param array $values The radio options to choose from.
722
  * @param string $legend Optional. The legend to show for the field set, if any.
723
  * @param array $legend_attr Optional. The attributes for the legend, if any.
724
  * @param array $attr Extra attributes to add to the radio button.
725
  */
726
+ public function radio( $variable, $values, $legend = '', $legend_attr = [], $attr = [] ) {
727
  if ( ! is_array( $values ) || $values === [] ) {
728
  return;
729
  }
730
+ $val = $this->get_field_value( $variable, false );
731
 
732
+ $var_esc = esc_attr( $variable );
733
 
734
  $defaults = [
735
  'disabled' => false,
761
 
762
  $key_esc = esc_attr( $key );
763
 
764
+ $disabled_attribute = $this->get_disabled_attribute( $variable, $attr );
765
 
766
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
767
  echo '<input type="radio" class="radio" id="' . $var_esc . '-' . $key_esc . '" name="' . esc_attr( $this->option_name ) . '[' . $var_esc . ']" value="' . $key_esc . '" ' . checked( $val, $key_esc, false ) . $disabled_attribute . ' />';
782
  *
783
  * @since 3.1
784
  *
785
+ * @param string $variable The variable within the option to create the radio buttons for.
786
+ * @param array $values Associative array of on/off keys and their values to be used as
787
+ * the label elements text for the radio buttons. Optionally, each
788
+ * value can be an array of visible label text and screen reader text.
789
+ * @param string $label The visual label for the radio buttons group, used as the fieldset legend.
790
+ * @param string $help Inline Help that will be printed out before the visible toggles text.
791
+ * @param array $attr Extra attributes to add to the toggle switch.
792
  */
793
+ public function toggle_switch( $variable, $values, $label, $help = '', $attr = [] ) {
794
  if ( ! is_array( $values ) || $values === [] ) {
795
  return;
796
  }
800
  ];
801
  $attr = wp_parse_args( $attr, $defaults );
802
 
803
+ $val = $this->get_field_value( $variable, false );
804
  if ( $val === true ) {
805
  $val = 'on';
806
  }
810
 
811
  $help_class = ! empty( $help ) ? ' switch-container__has-help' : '';
812
 
813
+ $var_esc = esc_attr( $variable );
814
 
815
  printf( '<div class="%s">', esc_attr( 'switch-container' . $help_class ) );
816
  echo '<fieldset id="', $var_esc, '" class="fieldset-switch-toggle"><legend>', $label, '</legend>', $help;
817
 
818
+ echo $this->get_disabled_note( $variable );
819
  echo '<div class="switch-toggle switch-candy switch-yoast-seo">';
820
 
821
  foreach ( $values as $key => $value ) {
829
 
830
  $key_esc = esc_attr( $key );
831
  $for = $var_esc . '-' . $key_esc;
832
+ $disabled_attribute = $this->get_disabled_attribute( $variable, $attr );
833
 
834
  // phpcs:ignore WordPress.Security.EscapeOutput -- Reason: $disabled_attribute output is hardcoded and all other output is properly escaped.
835
  echo '<input type="radio" id="' . $for . '" name="' . esc_attr( $this->option_name ) . '[' . $var_esc . ']" value="' . $key_esc . '" ' . checked( $val, $key_esc, false ) . $disabled_attribute . ' />',
842
  /**
843
  * Creates a toggle switch to define whether an indexable should be indexed or not.
844
  *
845
+ * @param string $variable The variable within the option to create the radio buttons for.
846
+ * @param string $label The visual label for the radio buttons group, used as the fieldset legend.
847
+ * @param string $help Inline Help that will be printed out before the visible toggles text.
848
+ * @param array $attr Extra attributes to add to the index switch.
849
  *
850
  * @return void
851
  */
852
+ public function index_switch( $variable, $label, $help = '', $attr = [] ) {
853
  $defaults = [
854
  'disabled' => false,
855
  ];
863
  $is_disabled = ( isset( $attr['disabled'] ) && $attr['disabled'] );
864
 
865
  $this->toggle_switch(
866
+ $variable,
867
  $index_switch_values,
868
  sprintf(
869
  /* translators: %s expands to an indexable object's name, like a post type or taxonomy */
870
  esc_html__( 'Show %s in search results?', 'wordpress-seo' ),
871
+ $label
872
  ),
873
  $help,
874
  [ 'disabled' => $is_disabled ]
878
  /**
879
  * Creates a toggle switch to show hide certain options.
880
  *
881
+ * @param string $variable The variable within the option to create the radio buttons for.
882
  * @param string $label The visual label for the radio buttons group, used as the fieldset legend.
883
  * @param bool $inverse_keys Whether or not the option keys need to be inverted to support older functions.
884
  * @param string $help Inline Help that will be printed out before the visible toggles text.
886
  *
887
  * @return void
888
  */
889
+ public function show_hide_switch( $variable, $label, $inverse_keys = false, $help = '', $attr = [] ) {
890
  $defaults = [
891
  'disabled' => false,
892
  ];
903
  $is_disabled = ( isset( $attr['disabled'] ) && $attr['disabled'] );
904
 
905
  $this->toggle_switch(
906
+ $variable,
907
  $show_hide_switch,
908
  $label,
909
  $help,
931
  /**
932
  * Checks whether a given control should be disabled.
933
  *
934
+ * @param string $variable The variable within the option to check whether its control should be disabled.
935
  *
936
  * @return bool True if control should be disabled, false otherwise.
937
  */
938
+ protected function is_control_disabled( $variable ) {
939
  if ( $this->option_instance === null ) {
940
  return false;
941
  }
942
 
943
  // Disable the Usage tracking feature for multisite subsites.
944
+ if ( $this->is_tracking_on_subsite( $variable ) ) {
945
  return true;
946
  }
947
 
948
+ return $this->option_instance->is_disabled( $variable );
949
  }
950
 
951
  /**
952
  * Gets the explanation note to print if a given control is disabled.
953
  *
954
+ * @param string $variable The variable within the option to print a disabled note for.
955
  *
956
  * @return string Explanation note HTML string, or empty string if no note necessary.
957
  */
958
+ protected function get_disabled_note( $variable ) {
959
+ if ( ! $this->is_control_disabled( $variable ) ) {
960
  return '';
961
  }
962
 
963
  $disabled_message = esc_html__( 'This feature has been disabled by the network admin.', 'wordpress-seo' );
964
 
965
  // The explanation to show when disabling the Usage tracking feature for multisite subsites.
966
+ if ( $this->is_tracking_on_subsite( $variable ) ) {
967
  $disabled_message = esc_html__( 'This feature has been disabled since subsites never send tracking data.', 'wordpress-seo' );
968
  }
969
  return '<p class="disabled-note">' . $disabled_message . '</p>';
984
  /**
985
  * Returns the disabled attribute HTML.
986
  *
987
+ * @param string $variable The variable within the option of the related form element.
988
+ * @param array $attr Extra attributes added to the form element.
989
  *
990
  * @return string The disabled attribute HTML.
991
  */
992
+ protected function get_disabled_attribute( $variable, $attr ) {
993
+ if ( $this->is_control_disabled( $variable ) || ( isset( $attr['disabled'] ) && $attr['disabled'] ) ) {
994
  return ' disabled';
995
  }
996
 
admin/class-yoast-network-settings-api.php CHANGED
@@ -120,20 +120,20 @@ class Yoast_Network_Settings_API {
120
  * This function is added as a filter to `default_site_option_{$option}` for network options that
121
  * are registered with a default.
122
  *
123
- * @param mixed $default Existing default value to return.
124
- * @param string $option The option name.
125
  *
126
  * @return mixed The filtered default value.
127
  */
128
- public function filter_default_option( $default, $option ) {
129
 
130
  // If a default value was manually passed to the function, allow it to override.
131
- if ( $default !== false ) {
132
- return $default;
133
  }
134
 
135
  if ( empty( $this->registered_settings[ $option ] ) ) {
136
- return $default;
137
  }
138
 
139
  return $this->registered_settings[ $option ]['default'];
120
  * This function is added as a filter to `default_site_option_{$option}` for network options that
121
  * are registered with a default.
122
  *
123
+ * @param mixed $default_value Existing default value to return.
124
+ * @param string $option The option name.
125
  *
126
  * @return mixed The filtered default value.
127
  */
128
+ public function filter_default_option( $default_value, $option ) {
129
 
130
  // If a default value was manually passed to the function, allow it to override.
131
+ if ( $default_value !== false ) {
132
+ return $default_value;
133
  }
134
 
135
  if ( empty( $this->registered_settings[ $option ] ) ) {
136
+ return $default_value;
137
  }
138
 
139
  return $this->registered_settings[ $option ]['default'];
admin/config-ui/class-configuration-page.php CHANGED
@@ -25,10 +25,6 @@ class WPSEO_Configuration_Page {
25
  return;
26
  }
27
 
28
- if ( $this->should_add_notification() ) {
29
- $this->add_notification();
30
- }
31
-
32
  // Register the page for the wizard.
33
  add_action( 'admin_menu', [ $this, 'add_wizard_page' ] );
34
  add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_assets' ] );
@@ -42,13 +38,13 @@ class WPSEO_Configuration_Page {
42
  $configuration_page = filter_input( INPUT_GET, 'configuration' );
43
  $page = filter_input( INPUT_GET, 'page' );
44
 
 
 
 
45
  if ( ! ( $configuration_page === 'finished' && ( $page === WPSEO_Admin::PAGE_IDENTIFIER ) ) ) {
46
  return;
47
  }
48
 
49
- $this->remove_notification();
50
- $this->remove_notification_option();
51
-
52
  wp_safe_redirect( admin_url( 'admin.php?page=' . WPSEO_Admin::PAGE_IDENTIFIER ) );
53
  exit;
54
  }
25
  return;
26
  }
27
 
 
 
 
 
28
  // Register the page for the wizard.
29
  add_action( 'admin_menu', [ $this, 'add_wizard_page' ] );
30
  add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_assets' ] );
38
  $configuration_page = filter_input( INPUT_GET, 'configuration' );
39
  $page = filter_input( INPUT_GET, 'page' );
40
 
41
+ $this->remove_notification();
42
+ $this->remove_notification_option();
43
+
44
  if ( ! ( $configuration_page === 'finished' && ( $page === WPSEO_Admin::PAGE_IDENTIFIER ) ) ) {
45
  return;
46
  }
47
 
 
 
 
48
  wp_safe_redirect( admin_url( 'admin.php?page=' . WPSEO_Admin::PAGE_IDENTIFIER ) );
49
  exit;
50
  }
admin/metabox/class-metabox.php CHANGED
@@ -1088,6 +1088,11 @@ class WPSEO_Metabox extends WPSEO_Meta {
1088
 
1089
  $custom_fields = get_post_custom( $post->ID );
1090
 
 
 
 
 
 
1091
  foreach ( $custom_fields as $custom_field_name => $custom_field ) {
1092
  // Skip private custom fields.
1093
  if ( substr( $custom_field_name, 0, 1 ) === '_' ) {
1088
 
1089
  $custom_fields = get_post_custom( $post->ID );
1090
 
1091
+ // If $custom_fields is an empty string or generally not an array, return early.
1092
+ if ( ! is_array( $custom_fields ) ) {
1093
+ return $custom_replace_vars;
1094
+ }
1095
+
1096
  foreach ( $custom_fields as $custom_field_name => $custom_field ) {
1097
  // Skip private custom fields.
1098
  if ( substr( $custom_field_name, 0, 1 ) === '_' ) {
admin/views/partial-notifications-template.php CHANGED
@@ -21,15 +21,15 @@ if ( ! function_exists( '_yoast_display_notifications' ) ) {
21
  /**
22
  * Create the notifications HTML with restore/dismiss button.
23
  *
24
- * @param array $list List of notifications.
25
- * @param string $status Status of the notifications (active/dismissed).
26
  *
27
  * @return string The output to render.
28
  */
29
- function _yoast_display_notifications( $list, $status ) {
30
  $notifications = '';
31
 
32
- foreach ( $list as $notification ) {
33
 
34
  switch ( $status ) {
35
  case 'active':
21
  /**
22
  * Create the notifications HTML with restore/dismiss button.
23
  *
24
+ * @param array $notifications_list List of notifications.
25
+ * @param string $status Status of the notifications (active/dismissed).
26
  *
27
  * @return string The output to render.
28
  */
29
+ function _yoast_display_notifications( $notifications_list, $status ) {
30
  $notifications = '';
31
 
32
+ foreach ( $notifications_list as $notification ) {
33
 
34
  switch ( $status ) {
35
  case 'active':
admin/views/tabs/dashboard/dashboard.php CHANGED
@@ -14,9 +14,6 @@
14
  */
15
  $notifications_data = Yoast_Notifications::get_template_variables();
16
 
17
- $notifier = new WPSEO_Configuration_Notifier();
18
- $notifier->listen();
19
-
20
  $wpseo_contributors_phrase = sprintf(
21
  /* translators: %1$s expands to Yoast SEO */
22
  __( 'See who contributed to %1$s.', 'wordpress-seo' ),
@@ -28,11 +25,6 @@ $wpseo_contributors_phrase = sprintf(
28
  <div class="tab-block">
29
  <div class="yoast-notifications">
30
 
31
- <?php
32
- // phpcs:ignore WordPress.Security.EscapeOutput -- WPSEO_Configuration_Notifier::notify() escapes correctly.
33
- echo $notifier->notify();
34
- ?>
35
-
36
  <div class="yoast-container yoast-container__error">
37
  <?php require WPSEO_PATH . 'admin/views/partial-notifications-errors.php'; ?>
38
  </div>
14
  */
15
  $notifications_data = Yoast_Notifications::get_template_variables();
16
 
 
 
 
17
  $wpseo_contributors_phrase = sprintf(
18
  /* translators: %1$s expands to Yoast SEO */
19
  __( 'See who contributed to %1$s.', 'wordpress-seo' ),
25
  <div class="tab-block">
26
  <div class="yoast-notifications">
27
 
 
 
 
 
 
28
  <div class="yoast-container yoast-container__error">
29
  <?php require WPSEO_PATH . 'admin/views/partial-notifications-errors.php'; ?>
30
  </div>
admin/views/tabs/metas/paper-content/post-type-content.php CHANGED
@@ -35,6 +35,8 @@ if ( $wpseo_post_type->name === 'product' && YoastSEO()->helpers->woocommerce->i
35
 
36
  if ( WPSEO_Post_Type::has_archive( $wpseo_post_type ) ) {
37
  $plural_label = $wpseo_post_type->labels->name;
 
 
38
 
39
  /* translators: %s is the plural version of the post type's name. */
40
  echo '<h3>' . esc_html( sprintf( __( '%s archive settings', 'wordpress-seo' ), $plural_label ) ) . '</h3>';
@@ -46,9 +48,9 @@ if ( WPSEO_Post_Type::has_archive( $wpseo_post_type ) ) {
46
  $yform->index_switch(
47
  'noindex-ptarchive-' . $wpseo_post_type->name,
48
  sprintf(
49
- /* translators: %s expands to the post type's name. */
50
- __( 'the archive for %s', 'wordpress-seo' ),
51
- $plural_label
52
  ),
53
  $custom_post_type_archive_help->get_button_html() . $custom_post_type_archive_help->get_panel_html()
54
  );
35
 
36
  if ( WPSEO_Post_Type::has_archive( $wpseo_post_type ) ) {
37
  $plural_label = $wpseo_post_type->labels->name;
38
+ $archive_url = get_post_type_archive_link( $wpseo_post_type->name );
39
+ $label = '<a href="' . esc_url( $archive_url ) . '">' . esc_html( $plural_label ) . '</a>';
40
 
41
  /* translators: %s is the plural version of the post type's name. */
42
  echo '<h3>' . esc_html( sprintf( __( '%s archive settings', 'wordpress-seo' ), $plural_label ) ) . '</h3>';
48
  $yform->index_switch(
49
  'noindex-ptarchive-' . $wpseo_post_type->name,
50
  sprintf(
51
+ /* translators: %s expands to the post type's name with a link to the archive. */
52
+ esc_html__( 'the archive for %s', 'wordpress-seo' ),
53
+ $label
54
  ),
55
  $custom_post_type_archive_help->get_button_html() . $custom_post_type_archive_help->get_panel_html()
56
  );
admin/views/tabs/tool/import-seo.php CHANGED
@@ -91,11 +91,11 @@ function wpseo_import_external_select( $name, $plugins ) {
91
  </div>
92
 
93
  <div class="tab-block">
94
- <h3><?php esc_html_e( 'Step 4: Run the configuration wizard', 'wordpress-seo' ); ?></h3>
95
  <p>
96
  <?php
97
  printf(
98
- esc_html__( 'You should run the configuration wizard, from the SEO &rarr; General &rarr; Dashboard page, to make sure all the settings for your site are correct.', 'wordpress-seo' ),
99
  '<a href="' . esc_url( admin_url( 'admin.php?page=wpseo_dashboard' ) ) . '">',
100
  '</a>'
101
  );
91
  </div>
92
 
93
  <div class="tab-block">
94
+ <h3><?php esc_html_e( 'Step 4: Do the configuration workout', 'wordpress-seo' ); ?></h3>
95
  <p>
96
  <?php
97
  printf(
98
+ esc_html__( 'You should complete the configuration workout, from the SEO &rarr; Workouts page, to make sure the most important settings for your site are correct and your SEO data has been optimized.', 'wordpress-seo' ),
99
  '<a href="' . esc_url( admin_url( 'admin.php?page=wpseo_dashboard' ) ) . '">',
100
  '</a>'
101
  );
admin/views/workouts.php DELETED
@@ -1,177 +0,0 @@
1
- <?php
2
- /**
3
- * WPSEO plugin file.
4
- *
5
- * @package WPSEO\Admin\Views
6
- *
7
- * @uses string $cornerstone_guide The link to the cornerstone guide.
8
- * @uses string $cornerstone_upsell The link to buy premium from the cornerstone workout.
9
- */
10
-
11
- if ( ! defined( 'WPSEO_VERSION' ) ) {
12
- header( 'Status: 403 Forbidden' );
13
- header( 'HTTP/1.1 403 Forbidden' );
14
- exit();
15
- }
16
-
17
- $button_copy = __( 'Finish this step', 'wordpress-seo' );
18
- $finished_button_copy = __( 'Revise this step', 'wordpress-seo' );
19
-
20
- ?>
21
-
22
- <div id='wpseo-workouts-container'>
23
- <div>
24
- <h1>
25
- <?php esc_html_e( 'SEO Workouts', 'wordpress-seo' ); ?>
26
- </h1>
27
- <p>
28
- <?php
29
- esc_html_e(
30
- 'Getting your site in shape and keeping it SEO fit can be challenging. Let us help you get started by taking on the most common SEO challenges, with these step by step SEO workouts.',
31
- 'wordpress-seo'
32
- );
33
- ?>
34
- </p>
35
- <div class='card'>
36
- <h2><?php esc_html_e( 'The cornerstone approach', 'wordpress-seo' ); ?></h2>
37
- <h3><?php esc_html_e( 'Rank with articles you want to rank with', 'wordpress-seo' ); ?></h3>
38
- <p>
39
- <?php
40
- printf(
41
- esc_attr(
42
- /* translators: %1$s expands to <em>, %2$s expands to </em>. */
43
- __(
44
- 'On your site you have a few articles that are %1$sthe%2$s most important. You want to rank highest in Google with these articles. At Yoast, we call these articles cornerstone articles. Take the following 6 steps in order to start ranking with your cornerstone articles!',
45
- 'wordpress-seo'
46
- )
47
- ),
48
- '<em>',
49
- '</em>'
50
- );
51
- ?>
52
- </p>
53
- <p>
54
- <?php
55
- printf(
56
- esc_attr(
57
- /* translators: %1$s expands to <em>, %2$s expands to <a>, %3$s expands to </a>, %4$s expands to </em>. */
58
- __(
59
- '%1$sNeed more guidance? We\'ve covered every step in more detail in our %2$sCornerstone practical guide%3$s%4$s.',
60
- 'wordpress-seo'
61
- )
62
- ),
63
- '<em>',
64
- '<a href="' . esc_url( $cornerstone_guide ) . '" target="_blank">',
65
- '</a>',
66
- '</em>'
67
- );
68
- ?>
69
- </p>
70
- <hr />
71
- <ol class='workflow yoast'>
72
- <li>
73
- <h4><?php esc_html_e( 'Start: Choose your cornerstones!', 'wordpress-seo' ); ?></h4>
74
- <div class='workflow__grid'>
75
- <div>
76
- <p>
77
- <?php
78
- esc_html_e(
79
- 'Your site might not feel that SEO fit just yet. But that\'s just a matter of time. Let\'s start this workout by choosing your cornerstones.',
80
- 'wordpress-seo'
81
- );
82
- ?>
83
- </p>
84
- <p>
85
- <?php
86
- printf(
87
- esc_attr(
88
- /* translators: %1$s expands to <em>, %2$s expands to </em>. */
89
- __(
90
- 'With which articles do you want to rank highest? Which are the most complete, which are the best explainers, which are %1$sthe%2$s most important? Check out your own website and choose the pages and posts you want to be your cornerstone articles!',
91
- 'wordpress-seo'
92
- )
93
- ),
94
- '<em>',
95
- '</em>'
96
- );
97
- ?>
98
- </p>
99
- </div>
100
- <div>
101
- <img
102
- class="workflow__image"
103
- src="<?php echo esc_url( plugin_dir_url( WPSEO_FILE ) . 'images/seo_fitness_assistants_unfit.svg' ); ?>"
104
- width="100px"
105
- height="100px"
106
- alt="">
107
- </div>
108
- </div>
109
- <button class='yoast-button'><?php echo esc_html( $button_copy ); ?></button>
110
- </li>
111
- <li>
112
- <h4><?php esc_html_e( 'Mark these articles as cornerstone content', 'wordpress-seo' ); ?></h4>
113
- <p>
114
- <?php
115
- printf(
116
- esc_attr(
117
- /* translators: %1$s expands to <em>, %2$s expands to </em>. */
118
- __(
119
- 'Surf to each one of your cornerstones on your own website. Hit %1$sedit post%2$s and go to the WordPress Backend. Mark them as cornerstones in the SEO tab of the metabox or the sidebar of Yoast SEO.',
120
- 'wordpress-seo'
121
- )
122
- ),
123
- '<em>',
124
- '</em>'
125
- );
126
- ?>
127
- </p>
128
- <p>
129
- <img
130
- src="<?php echo esc_url( plugin_dir_url( WPSEO_FILE ) . 'images/stale-cornerstone-content-in-yoast-seo.png' ); ?>"
131
- width="504px"
132
- height="120px"
133
- alt="The cornerstone toggle as shown in the Yoast SEO metabox."
134
- style="border: 1px solid rgb(204, 204, 204);"
135
- >
136
- </p>
137
- <button class='yoast-button'><?php echo esc_html( $button_copy ); ?></button>
138
- </li>
139
- <li class="yoast-fadeout">
140
- <h4><?php esc_html_e( 'Want to continue?', 'wordpress-seo' ); ?></h4>
141
- <div class='workflow__grid'>
142
- <div>
143
- <p>
144
- <?php
145
- esc_html_e(
146
- 'Finish this workout and make sure the right pages are ranking with Yoast SEO Premium.',
147
- 'wordpress-seo'
148
- );
149
- ?>
150
- </p>
151
- <a class='yoast-button-upsell' href='<?php echo esc_url( $cornerstone_upsell ); ?>'>
152
- <?php esc_html_e( 'Get Yoast SEO Premium', 'wordpress-seo' ); ?>
153
- </a>
154
- </div>
155
- <div>
156
- <img
157
- class="workflow__image"
158
- src="<?php echo esc_url( plugin_dir_url( WPSEO_FILE ) . 'images/seo_fitness_assistants_fit.svg' ); ?>"
159
- width="100px"
160
- height="100px"
161
- alt="">
162
- </div>
163
- </div>
164
- </li>
165
- </ol>
166
- </div>
167
- </div>
168
- </div>
169
-
170
- <script type="text/javascript">
171
- jQuery( 'li > button' ).click( function() {
172
- jQuery( this ).parent( 'li' ).toggleClass( 'finished' );
173
- jQuery( this ).text(
174
- jQuery( this ).text() === '<?php echo esc_html( $button_copy ); ?>' ? '<?php echo esc_html( $finished_button_copy ); ?>' : '<?php echo esc_html( $button_copy ); ?>'
175
- );
176
- } );
177
- </script>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
css/dist/{admin-global-1760-rtl.css → admin-global-1770-rtl.css} RENAMED
File without changes
css/dist/{admin-global-1760.css → admin-global-1770.css} RENAMED
File without changes
css/dist/{adminbar-1760-rtl.css → adminbar-1770-rtl.css} RENAMED
File without changes
css/dist/{adminbar-1760.css → adminbar-1770.css} RENAMED
File without changes
css/dist/{alerts-1760-rtl.css → alerts-1770-rtl.css} RENAMED
File without changes
css/dist/{alerts-1760.css → alerts-1770.css} RENAMED
File without changes
css/dist/{dashboard-1760-rtl.css → dashboard-1770-rtl.css} RENAMED
File without changes
css/dist/{dashboard-1760.css → dashboard-1770.css} RENAMED
File without changes
css/dist/{edit-page-1760-rtl.css → edit-page-1770-rtl.css} RENAMED
File without changes
css/dist/{edit-page-1760.css → edit-page-1770.css} RENAMED
File without changes
css/dist/{elementor-1760-rtl.css → elementor-1770-rtl.css} RENAMED
File without changes
css/dist/{elementor-1760.css → elementor-1770.css} RENAMED
File without changes
css/dist/{featured-image-1760-rtl.css → featured-image-1770-rtl.css} RENAMED
File without changes
css/dist/{featured-image-1760.css → featured-image-1770.css} RENAMED
File without changes
css/dist/{filter-explanation-1760-rtl.css → filter-explanation-1770-rtl.css} RENAMED
File without changes
css/dist/{filter-explanation-1760.css → filter-explanation-1770.css} RENAMED
File without changes
css/dist/{icons-1760-rtl.css → icons-1770-rtl.css} RENAMED
File without changes
css/dist/{icons-1760.css → icons-1770.css} RENAMED
File without changes
css/dist/{inside-editor-1760-rtl.css → inside-editor-1770-rtl.css} RENAMED
File without changes
css/dist/{inside-editor-1760.css → inside-editor-1770.css} RENAMED
File without changes
css/dist/{metabox-1760-rtl.css → metabox-1770-rtl.css} RENAMED
File without changes
css/dist/{metabox-1760.css → metabox-1770.css} RENAMED
File without changes
css/dist/{metabox-primary-category-1760-rtl.css → metabox-primary-category-1770-rtl.css} RENAMED
File without changes
css/dist/{metabox-primary-category-1760.css → metabox-primary-category-1770.css} RENAMED
File without changes
css/dist/{modal-1760-rtl.css → modal-1770-rtl.css} RENAMED
File without changes
css/dist/{modal-1760.css → modal-1770.css} RENAMED
File without changes
css/dist/{monorepo-1760-rtl.css → monorepo-1770-rtl.css} RENAMED
File without changes
css/dist/{monorepo-1760.css → monorepo-1770.css} RENAMED
File without changes
css/dist/{notifications-1760-rtl.css → notifications-1770-rtl.css} RENAMED
@@ -1 +1 @@
1
- :root{--yoast-svg-icon-info:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23A4286A' d='M1152 1376v-160q0-14-9-23t-23-9h-96V672q0-14-9-23t-23-9H672q-14 0-23 9t-9 23v160q0 14 9 23t23 9h96v320h-96q-14 0-23 9t-9 23v160q0 14 9 23t23 9h448q14 0 23-9t9-23zm-128-896V320q0-14-9-23t-23-9H800q-14 0-23 9t-9 23v160q0 14 9 23t23 9h192q14 0 23-9t9-23zm640 416q0 209-103 385.5T1281.5 1561 896 1664t-385.5-103T231 1281.5 128 896t103-385.5T510.5 231 896 128t385.5 103T1561 510.5 1664 896z'/%3E%3C/svg%3E");--yoast-svg-icon-check:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%2377B227' d='M1671 566q0 40-28 68l-724 724-136 136q-28 28-68 28t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28 68-28t68 28l294 295 656-657q28-28 68-28t68 28l136 136q28 28 28 68z'/%3E%3C/svg%3E");--yoast-svg-icon-check-ok:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%2377B227' d='M1671 566q0 40-28 68l-724 724-136 136q-28 28-68 28t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28 68-28t68 28l294 295 656-657q28-28 68-28t68 28l136 136q28 28 28 68z'/%3E%3C/svg%3E");--yoast-svg-icon-caret-right:url("data:image/svg+xml;charset=utf-8,%3Csvg width='16' height='16' viewBox='0 0 192 512' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M0 384.662V127.338c0-17.818 21.543-26.741 34.142-14.142l128.662 128.662c7.81 7.81 7.81 20.474 0 28.284L34.142 398.804C21.543 411.404 0 402.48 0 384.662z'/%3E%3C/svg%3E");--yoast-svg-icon-caret-left:url("data:image/svg+xml;charset=utf-8,%3Csvg width='16' height='16' viewBox='0 0 192 512' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M192 127.338v257.324c0 17.818-21.543 26.741-34.142 14.142L29.196 270.142c-7.81-7.81-7.81-20.474 0-28.284l128.662-128.662c12.599-12.6 34.142-3.676 34.142 14.142z'/%3E%3C/svg%3E");--yoast-svg-icon-eye:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M1664 960q-152-236-381-353 61 104 61 225 0 185-131.5 316.5T896 1280t-316.5-131.5T448 832q0-121 61-225-229 117-381 353 133 205 333.5 326.5T896 1408t434.5-121.5T1664 960zM944 576q0-20-14-34t-34-14q-125 0-214.5 89.5T592 832q0 20 14 34t34 14 34-14 14-34q0-86 61-147t147-61q20 0 34-14t14-34zm848 384q0 34-20 69-140 230-376.5 368.5T896 1536t-499.5-139T20 1029Q0 994 0 960t20-69q140-229 376.5-368T896 384t499.5 139T1772 891q20 35 20 69z'/%3E%3C/svg%3E");--yoast-svg-icon-list:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M384 1408q0 80-56 136t-136 56-136-56-56-136 56-136 136-56 136 56 56 136zm0-512q0 80-56 136t-136 56-136-56T0 896t56-136 136-56 136 56 56 136zm1408 416v192q0 13-9.5 22.5t-22.5 9.5H544q-13 0-22.5-9.5T512 1504v-192q0-13 9.5-22.5t22.5-9.5h1216q13 0 22.5 9.5t9.5 22.5zM384 384q0 80-56 136t-136 56-136-56T0 384t56-136 136-56 136 56 56 136zm1408 416v192q0 13-9.5 22.5t-22.5 9.5H544q-13 0-22.5-9.5T512 992V800q0-13 9.5-22.5T544 768h1216q13 0 22.5 9.5t9.5 22.5zm0-512v192q0 13-9.5 22.5T1760 512H544q-13 0-22.5-9.5T512 480V288q0-13 9.5-22.5T544 256h1216q13 0 22.5 9.5t9.5 22.5z'/%3E%3C/svg%3E");--yoast-svg-icon-key:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M832 512q0-80-56-136t-136-56-136 56-56 136q0 42 19 83-41-19-83-19-80 0-136 56t-56 136 56 136 136 56 136-56 56-136q0-42-19-83 41 19 83 19 80 0 136-56t56-136zm851 704q0 17-49 66t-66 49q-9 0-28.5-16t-36.5-33-38.5-40-24.5-26l-96 96 220 220q28 28 28 68 0 42-39 81t-81 39q-40 0-68-28l-671-671q-176 131-365 131-163 0-265.5-102.5T0 784q0-160 95-313t248-248 313-95q163 0 265.5 102.5T1024 496q0 189-131 365l355 355 96-96q-3-3-26-24.5t-40-38.5-33-36.5-16-28.5q0-17 49-66t66-49q13 0 23 10 6 6 46 44.5t82 79.5 86.5 86 73 78 28.5 41z'/%3E%3C/svg%3E");--yoast-svg-icon-edit:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832H128v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23999' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-good:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%237ad03a' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-ok:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23ee7c1b' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-bad:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23dc3232' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-noindex:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%231e8cbe' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E")}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;border:0;padding:0;overflow:hidden;word-wrap:normal!important}.yoast-notification{padding:0 12px;border-right:4px solid #fff;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2)}.yoast-container{position:relative;max-width:1280px;margin:20px 0 1px;padding:20px 20px 0;border:1px solid #e5e5e5;background-color:#fdfdfd;box-shadow:0 1px 1px rgba(0,0,0,.04)}.yoast-notifications>h2:first-child{margin:0;padding:9px 0 4px;font-size:23px;font-weight:400;line-height:29px}.yoast-notifications .yoast-container h3{margin:-20px -20px 0;padding:1em;border-bottom:1px solid #ccc;background-color:#fdfdfd;font-size:1.4em}.yoast-container .container{max-width:980px}.yoast-container .yoast-notification-holder{display:flex;position:relative}.dismiss .dashicons,.restore .dashicons{font-size:20px;width:20px;height:20px}.yoast-bottom-spacing{margin-bottom:20px}.yoast-notifications .button.dismiss,.yoast-notifications .button.restore{position:absolute;left:0;width:52px;height:100%;line-height:inherit;padding:0;outline:none;cursor:pointer;background:transparent;border:none;box-shadow:none;border-radius:0}.yoast-notifications .button.dismiss:focus,.yoast-notifications .button.dismiss:hover,.yoast-notifications .button.restore:focus,.yoast-notifications .button.restore:hover{background:transparent}.yoast-notifications .button.dismiss:focus:before,.yoast-notifications .button.restore:focus:before{content:"";display:block;width:32px;height:32px;border-radius:50%;position:absolute;top:50%;right:50%;transform:translate(50%,-50%);box-shadow:0 0 0 1px #007cba;outline:2px solid transparent}.yoast-notifications .button.dismiss.yoast-container__configuration-wizard--dismiss:before{top:0;transform:translate(50%,6px)}.yoast-container .separator{margin-top:1em;margin-bottom:1em;border-top:1px solid #ddd}.yoast-container .dashicons-yes{color:#77b227}.yoast-container-disabled{display:table-cell;position:absolute;top:0;left:0;bottom:0;right:0;border-radius:4px;background-color:hsla(0,0%,91%,.7)}.yoast-no-issues{padding:1em 16px 1em 1em;color:#666}.yoast-muted-title{overflow:hidden;font-weight:600;font-style:italic}.yoast-muted-title:after{content:"";display:inline-block;height:.5em;vertical-align:bottom;width:100%;margin-left:-100%;margin-right:10px;border-top:1px solid #ddd}.yoast-notifications-active .yoast-notification,.yoast-notifications-dismissed .yoast-notification{padding-left:52px;flex:1}.yoast-notifications-active .yoast-notification-holder{margin-bottom:20px}.yoast-notifications-dismissed.paper.tab-block{margin:20px 0}.yoast-notifications-dismissed.paper.tab-block .paper-container.toggleable-container{padding:0}.yoast-notifications-dismissed.paper.tab-block .paper-container.toggleable-container .yoast-notification-holder:nth-child(odd){background-color:#f7f7f7}.yoast-notifications-dismissed.paper.tab-block .paper-container.toggleable-container .yoast-notification-holder:nth-child(odd) .yoast-notification{background-color:initial}.yoast-notifications-dismissed .yoast-svg-icon-eye{background:transparent var(--yoast-svg-icon-eye) no-repeat 100% 0;background-size:20px}#yoast-errors-header .dashicons{color:#dc3232}#yoast-errors-active .yoast-notification{border-right-color:#dc3232}#yoast-errors-dismissed .yoast-notification{border-right-color:#d93f69}#yoast-warnings-header .dashicons{color:#5d237a}#yoast-warnings-active .yoast-notification{border-right-color:#5d237a}#yoast-warnings-dismissed .yoast-notification{border-right-color:#0075b3}.yoast-notifications .yoast-container__configuration-wizard{display:flex;align-items:center;box-shadow:0 1px 2px rgba(0,0,0,.2);background-color:#fff;min-height:0;padding-bottom:20px;margin-bottom:15px}@media screen and (max-width:768px){.yoast-notifications .yoast-container__configuration-wizard img{display:none}}.yoast-notifications .yoast-container__configuration-wizard--content{flex:1 1 auto;margin:12px;padding:0}.yoast-notifications .yoast-container__configuration-wizard--content h3{border-bottom:0;font-size:1.4em;line-height:1;margin:0 0 4px;padding:0;background:transparent}.yoast-notifications .yoast-container__configuration-wizard--content p{margin:1em 0 0}.yoast-notifications .yoast-container__configuration-wizard--content p:last-child{margin:0}@media screen and (max-width:768px){.yoast-notifications .yoast-container__configuration-wizard--content{display:block;position:relative;padding:16px}}.yoast-notifications .yoast-container__configuration-wizard--dismiss{text-align:center}@media screen and (max-width:768px){.yoast-notifications .yoast-container__configuration-wizard--dismiss{width:40px;position:absolute;top:5px;left:5px;margin:0}}.yoast-notifications .yoast-container__configuration-wizard--dismiss .dashicons{text-decoration:none;margin-top:12px}
1
+ :root{--yoast-svg-icon-info:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23A4286A' d='M1152 1376v-160q0-14-9-23t-23-9h-96V672q0-14-9-23t-23-9H672q-14 0-23 9t-9 23v160q0 14 9 23t23 9h96v320h-96q-14 0-23 9t-9 23v160q0 14 9 23t23 9h448q14 0 23-9t9-23zm-128-896V320q0-14-9-23t-23-9H800q-14 0-23 9t-9 23v160q0 14 9 23t23 9h192q14 0 23-9t9-23zm640 416q0 209-103 385.5T1281.5 1561 896 1664t-385.5-103T231 1281.5 128 896t103-385.5T510.5 231 896 128t385.5 103T1561 510.5 1664 896z'/%3E%3C/svg%3E");--yoast-svg-icon-check:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%2377B227' d='M1671 566q0 40-28 68l-724 724-136 136q-28 28-68 28t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28 68-28t68 28l294 295 656-657q28-28 68-28t68 28l136 136q28 28 28 68z'/%3E%3C/svg%3E");--yoast-svg-icon-check-ok:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%2377B227' d='M1671 566q0 40-28 68l-724 724-136 136q-28 28-68 28t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28 68-28t68 28l294 295 656-657q28-28 68-28t68 28l136 136q28 28 28 68z'/%3E%3C/svg%3E");--yoast-svg-icon-caret-right:url("data:image/svg+xml;charset=utf-8,%3Csvg width='16' height='16' viewBox='0 0 192 512' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M0 384.662V127.338c0-17.818 21.543-26.741 34.142-14.142l128.662 128.662c7.81 7.81 7.81 20.474 0 28.284L34.142 398.804C21.543 411.404 0 402.48 0 384.662z'/%3E%3C/svg%3E");--yoast-svg-icon-caret-left:url("data:image/svg+xml;charset=utf-8,%3Csvg width='16' height='16' viewBox='0 0 192 512' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M192 127.338v257.324c0 17.818-21.543 26.741-34.142 14.142L29.196 270.142c-7.81-7.81-7.81-20.474 0-28.284l128.662-128.662c12.599-12.6 34.142-3.676 34.142 14.142z'/%3E%3C/svg%3E");--yoast-svg-icon-eye:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M1664 960q-152-236-381-353 61 104 61 225 0 185-131.5 316.5T896 1280t-316.5-131.5T448 832q0-121 61-225-229 117-381 353 133 205 333.5 326.5T896 1408t434.5-121.5T1664 960zM944 576q0-20-14-34t-34-14q-125 0-214.5 89.5T592 832q0 20 14 34t34 14 34-14 14-34q0-86 61-147t147-61q20 0 34-14t14-34zm848 384q0 34-20 69-140 230-376.5 368.5T896 1536t-499.5-139T20 1029Q0 994 0 960t20-69q140-229 376.5-368T896 384t499.5 139T1772 891q20 35 20 69z'/%3E%3C/svg%3E");--yoast-svg-icon-list:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M384 1408q0 80-56 136t-136 56-136-56-56-136 56-136 136-56 136 56 56 136zm0-512q0 80-56 136t-136 56-136-56T0 896t56-136 136-56 136 56 56 136zm1408 416v192q0 13-9.5 22.5t-22.5 9.5H544q-13 0-22.5-9.5T512 1504v-192q0-13 9.5-22.5t22.5-9.5h1216q13 0 22.5 9.5t9.5 22.5zM384 384q0 80-56 136t-136 56-136-56T0 384t56-136 136-56 136 56 56 136zm1408 416v192q0 13-9.5 22.5t-22.5 9.5H544q-13 0-22.5-9.5T512 992V800q0-13 9.5-22.5T544 768h1216q13 0 22.5 9.5t9.5 22.5zm0-512v192q0 13-9.5 22.5T1760 512H544q-13 0-22.5-9.5T512 480V288q0-13 9.5-22.5T544 256h1216q13 0 22.5 9.5t9.5 22.5z'/%3E%3C/svg%3E");--yoast-svg-icon-key:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M832 512q0-80-56-136t-136-56-136 56-56 136q0 42 19 83-41-19-83-19-80 0-136 56t-56 136 56 136 136 56 136-56 56-136q0-42-19-83 41 19 83 19 80 0 136-56t56-136zm851 704q0 17-49 66t-66 49q-9 0-28.5-16t-36.5-33-38.5-40-24.5-26l-96 96 220 220q28 28 28 68 0 42-39 81t-81 39q-40 0-68-28l-671-671q-176 131-365 131-163 0-265.5-102.5T0 784q0-160 95-313t248-248 313-95q163 0 265.5 102.5T1024 496q0 189-131 365l355 355 96-96q-3-3-26-24.5t-40-38.5-33-36.5-16-28.5q0-17 49-66t66-49q13 0 23 10 6 6 46 44.5t82 79.5 86.5 86 73 78 28.5 41z'/%3E%3C/svg%3E");--yoast-svg-icon-edit:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832H128v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23999' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-good:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%237ad03a' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-ok:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23ee7c1b' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-bad:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23dc3232' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-noindex:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%231e8cbe' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E")}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;border:0;padding:0;overflow:hidden;word-wrap:normal!important}.yoast-notification{padding:0 12px;border-right:4px solid #fff;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2)}.yoast-container{position:relative;max-width:1280px;margin:20px 0 1px;padding:20px 20px 0;border:1px solid #e5e5e5;background-color:#fdfdfd;box-shadow:0 1px 1px rgba(0,0,0,.04)}.yoast-notifications>h2:first-child{margin:0;padding:9px 0 4px;font-size:23px;font-weight:400;line-height:29px}.yoast-notifications .yoast-container h3{margin:-20px -20px 0;padding:1em;border-bottom:1px solid #ccc;background-color:#fdfdfd;font-size:1.4em}.yoast-container .container{max-width:980px}.yoast-container .yoast-notification-holder{display:flex;position:relative}.dismiss .dashicons,.restore .dashicons{font-size:20px;width:20px;height:20px}.yoast-bottom-spacing{margin-bottom:20px}.yoast-notifications .button.dismiss,.yoast-notifications .button.restore{position:absolute;left:0;width:52px;height:100%;line-height:inherit;padding:0;outline:none;cursor:pointer;background:transparent;border:none;box-shadow:none;border-radius:0}.yoast-notifications .button.dismiss:focus,.yoast-notifications .button.dismiss:hover,.yoast-notifications .button.restore:focus,.yoast-notifications .button.restore:hover{background:transparent}.yoast-notifications .button.dismiss:focus:before,.yoast-notifications .button.restore:focus:before{content:"";display:block;width:32px;height:32px;border-radius:50%;position:absolute;top:50%;right:50%;transform:translate(50%,-50%);box-shadow:0 0 0 1px #007cba;outline:2px solid transparent}.yoast-notifications .button.dismiss.yoast-container__configuration-wizard--dismiss:before{top:0;transform:translate(50%,6px)}.yoast-container .separator{margin-top:1em;margin-bottom:1em;border-top:1px solid #ddd}.yoast-container .dashicons-yes{color:#77b227}.yoast-container-disabled{display:table-cell;position:absolute;top:0;left:0;bottom:0;right:0;border-radius:4px;background-color:hsla(0,0%,91%,.7)}.yoast-no-issues{padding:1em 16px 1em 1em;color:#666}.yoast-muted-title{overflow:hidden;font-weight:600;font-style:italic}.yoast-muted-title:after{content:"";display:inline-block;height:.5em;vertical-align:bottom;width:100%;margin-left:-100%;margin-right:10px;border-top:1px solid #ddd}.yoast-notifications-active .yoast-notification,.yoast-notifications-dismissed .yoast-notification{padding-left:52px;flex:1}.yoast-notifications-active .yoast-notification-holder{margin-bottom:20px}.yoast-notifications-dismissed.paper.tab-block{margin:20px 0}.yoast-notifications-dismissed.paper.tab-block .paper-container.toggleable-container{padding:0}.yoast-notifications-dismissed.paper.tab-block .paper-container.toggleable-container .yoast-notification-holder:nth-child(odd){background-color:#f7f7f7}.yoast-notifications-dismissed.paper.tab-block .paper-container.toggleable-container .yoast-notification-holder:nth-child(odd) .yoast-notification{background-color:initial}.yoast-notifications-dismissed .yoast-svg-icon-eye{background:transparent var(--yoast-svg-icon-eye) no-repeat 100% 0;background-size:20px}#yoast-errors-header .dashicons{color:#dc3232}#yoast-errors-active .yoast-notification{border-right-color:#dc3232}#yoast-errors-dismissed .yoast-notification{border-right-color:#d93f69}#yoast-warnings-header .dashicons{color:#5d237a}#yoast-warnings-active .yoast-notification{border-right-color:#5d237a}#yoast-warnings-dismissed .yoast-notification{border-right-color:#0075b3}.yoast-notifications .yoast-container__configuration-wizard{display:flex;align-items:center;box-shadow:0 1px 2px rgba(0,0,0,.2);background-color:#fff;min-height:0;padding-bottom:20px;margin-bottom:15px}@media screen and (max-width:768px){.yoast-notifications .yoast-container__configuration-wizard img{display:none}}.yoast-notifications .yoast-container__configuration-wizard--content{flex:1 1 auto;margin:12px;padding:0}.yoast-notifications .yoast-container__configuration-wizard--content h3{border-bottom:0;font-size:1.4em;line-height:1;margin:0 0 4px;padding:0;background:transparent}.yoast-notifications .yoast-container__configuration-wizard--content p{margin:1em 0 0}.yoast-notifications .yoast-container__configuration-wizard--content p:last-child{margin:0}@media screen and (max-width:768px){.yoast-notifications .yoast-container__configuration-wizard--content{display:block;position:relative;padding:16px}}.yoast-notifications .yoast-container__configuration-wizard--dismiss{text-align:center}@media screen and (max-width:768px){.yoast-notifications .yoast-container__configuration-wizard--dismiss{width:40px;position:absolute;top:5px;left:5px;margin:0}}.yoast-notifications .yoast-container__configuration-wizard--dismiss .dashicons{text-decoration:none;margin-top:12px}.notice-yoast{border-right-color:var(--yoast-color-primary);margin-right:0;margin-top:20px}.notice-yoast__container{padding:10px 0 5px;display:flex;flex-direction:row;align-items:center}.notice-yoast__header{padding:0;box-sizing:border-box;display:flex;flex-direction:row;justify-content:left;align-items:center;width:100%}.notice-yoast__header .notice-yoast__header-heading{line-height:1.2;margin:0;padding:0}.notice-yoast__header h1{font-size:14px;font-weight:600;color:var(--yoast-color-primary);line-height:1;margin:0}.notice-yoast__header .yoast-icon{background-color:var(--yoast-color-primary);mask-image:var(--yoast-svg-icon-yoast);-webkit-mask-image:var(--yoast-svg-icon-yoast);mask-size:100% 100%;-webkit-mask-size:100% 100%;display:inline-block;width:14px;height:14px;margin-left:8px}.notice-yoast__content{padding:0;display:flex}.notice-yoast img{line-height:1;margin-right:10px;height:60px;width:auto}.notice-yoast p{font-size:13px;font-weight:400;max-width:600px;line-height:19px}.notice-yoast .yoast-button--small{min-height:unset}
css/dist/{notifications-1760.css → notifications-1770.css} RENAMED
@@ -1 +1 @@
1
- :root{--yoast-svg-icon-info:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23A4286A' d='M1152 1376v-160q0-14-9-23t-23-9h-96V672q0-14-9-23t-23-9H672q-14 0-23 9t-9 23v160q0 14 9 23t23 9h96v320h-96q-14 0-23 9t-9 23v160q0 14 9 23t23 9h448q14 0 23-9t9-23zm-128-896V320q0-14-9-23t-23-9H800q-14 0-23 9t-9 23v160q0 14 9 23t23 9h192q14 0 23-9t9-23zm640 416q0 209-103 385.5T1281.5 1561 896 1664t-385.5-103T231 1281.5 128 896t103-385.5T510.5 231 896 128t385.5 103T1561 510.5 1664 896z'/%3E%3C/svg%3E");--yoast-svg-icon-check:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%2377B227' d='M1671 566q0 40-28 68l-724 724-136 136q-28 28-68 28t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28 68-28t68 28l294 295 656-657q28-28 68-28t68 28l136 136q28 28 28 68z'/%3E%3C/svg%3E");--yoast-svg-icon-check-ok:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%2377B227' d='M1671 566q0 40-28 68l-724 724-136 136q-28 28-68 28t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28 68-28t68 28l294 295 656-657q28-28 68-28t68 28l136 136q28 28 28 68z'/%3E%3C/svg%3E");--yoast-svg-icon-caret-right:url("data:image/svg+xml;charset=utf-8,%3Csvg width='16' height='16' viewBox='0 0 192 512' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M0 384.662V127.338c0-17.818 21.543-26.741 34.142-14.142l128.662 128.662c7.81 7.81 7.81 20.474 0 28.284L34.142 398.804C21.543 411.404 0 402.48 0 384.662z'/%3E%3C/svg%3E");--yoast-svg-icon-caret-left:url("data:image/svg+xml;charset=utf-8,%3Csvg width='16' height='16' viewBox='0 0 192 512' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M192 127.338v257.324c0 17.818-21.543 26.741-34.142 14.142L29.196 270.142c-7.81-7.81-7.81-20.474 0-28.284l128.662-128.662c12.599-12.6 34.142-3.676 34.142 14.142z'/%3E%3C/svg%3E");--yoast-svg-icon-eye:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M1664 960q-152-236-381-353 61 104 61 225 0 185-131.5 316.5T896 1280t-316.5-131.5T448 832q0-121 61-225-229 117-381 353 133 205 333.5 326.5T896 1408t434.5-121.5T1664 960zM944 576q0-20-14-34t-34-14q-125 0-214.5 89.5T592 832q0 20 14 34t34 14 34-14 14-34q0-86 61-147t147-61q20 0 34-14t14-34zm848 384q0 34-20 69-140 230-376.5 368.5T896 1536t-499.5-139T20 1029Q0 994 0 960t20-69q140-229 376.5-368T896 384t499.5 139T1772 891q20 35 20 69z'/%3E%3C/svg%3E");--yoast-svg-icon-list:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M384 1408q0 80-56 136t-136 56-136-56-56-136 56-136 136-56 136 56 56 136zm0-512q0 80-56 136t-136 56-136-56T0 896t56-136 136-56 136 56 56 136zm1408 416v192q0 13-9.5 22.5t-22.5 9.5H544q-13 0-22.5-9.5T512 1504v-192q0-13 9.5-22.5t22.5-9.5h1216q13 0 22.5 9.5t9.5 22.5zM384 384q0 80-56 136t-136 56-136-56T0 384t56-136 136-56 136 56 56 136zm1408 416v192q0 13-9.5 22.5t-22.5 9.5H544q-13 0-22.5-9.5T512 992V800q0-13 9.5-22.5T544 768h1216q13 0 22.5 9.5t9.5 22.5zm0-512v192q0 13-9.5 22.5T1760 512H544q-13 0-22.5-9.5T512 480V288q0-13 9.5-22.5T544 256h1216q13 0 22.5 9.5t9.5 22.5z'/%3E%3C/svg%3E");--yoast-svg-icon-key:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M832 512q0-80-56-136t-136-56-136 56-56 136q0 42 19 83-41-19-83-19-80 0-136 56t-56 136 56 136 136 56 136-56 56-136q0-42-19-83 41 19 83 19 80 0 136-56t56-136zm851 704q0 17-49 66t-66 49q-9 0-28.5-16t-36.5-33-38.5-40-24.5-26l-96 96 220 220q28 28 28 68 0 42-39 81t-81 39q-40 0-68-28l-671-671q-176 131-365 131-163 0-265.5-102.5T0 784q0-160 95-313t248-248 313-95q163 0 265.5 102.5T1024 496q0 189-131 365l355 355 96-96q-3-3-26-24.5t-40-38.5-33-36.5-16-28.5q0-17 49-66t66-49q13 0 23 10 6 6 46 44.5t82 79.5 86.5 86 73 78 28.5 41z'/%3E%3C/svg%3E");--yoast-svg-icon-edit:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832H128v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23999' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-good:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%237ad03a' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-ok:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23ee7c1b' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-bad:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23dc3232' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-noindex:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%231e8cbe' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E")}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;border:0;padding:0;overflow:hidden;word-wrap:normal!important}.yoast-notification{padding:0 12px;border-left:4px solid #fff;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2)}.yoast-container{position:relative;max-width:1280px;margin:20px 0 1px;padding:20px 20px 0;border:1px solid #e5e5e5;background-color:#fdfdfd;box-shadow:0 1px 1px rgba(0,0,0,.04)}.yoast-notifications>h2:first-child{margin:0;padding:9px 0 4px;font-size:23px;font-weight:400;line-height:29px}.yoast-notifications .yoast-container h3{margin:-20px -20px 0;padding:1em;border-bottom:1px solid #ccc;background-color:#fdfdfd;font-size:1.4em}.yoast-container .container{max-width:980px}.yoast-container .yoast-notification-holder{display:flex;position:relative}.dismiss .dashicons,.restore .dashicons{font-size:20px;width:20px;height:20px}.yoast-bottom-spacing{margin-bottom:20px}.yoast-notifications .button.dismiss,.yoast-notifications .button.restore{position:absolute;right:0;width:52px;height:100%;line-height:inherit;padding:0;outline:none;cursor:pointer;background:transparent;border:none;box-shadow:none;border-radius:0}.yoast-notifications .button.dismiss:focus,.yoast-notifications .button.dismiss:hover,.yoast-notifications .button.restore:focus,.yoast-notifications .button.restore:hover{background:transparent}.yoast-notifications .button.dismiss:focus:before,.yoast-notifications .button.restore:focus:before{content:"";display:block;width:32px;height:32px;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #007cba;outline:2px solid transparent}.yoast-notifications .button.dismiss.yoast-container__configuration-wizard--dismiss:before{top:0;transform:translate(-50%,6px)}.yoast-container .separator{margin-top:1em;margin-bottom:1em;border-top:1px solid #ddd}.yoast-container .dashicons-yes{color:#77b227}.yoast-container-disabled{display:table-cell;position:absolute;top:0;right:0;bottom:0;left:0;border-radius:4px;background-color:hsla(0,0%,91%,.7)}.yoast-no-issues{padding:1em 1em 1em 16px;color:#666}.yoast-muted-title{overflow:hidden;font-weight:600;font-style:italic}.yoast-muted-title:after{content:"";display:inline-block;height:.5em;vertical-align:bottom;width:100%;margin-right:-100%;margin-left:10px;border-top:1px solid #ddd}.yoast-notifications-active .yoast-notification,.yoast-notifications-dismissed .yoast-notification{padding-right:52px;flex:1}.yoast-notifications-active .yoast-notification-holder{margin-bottom:20px}.yoast-notifications-dismissed.paper.tab-block{margin:20px 0}.yoast-notifications-dismissed.paper.tab-block .paper-container.toggleable-container{padding:0}.yoast-notifications-dismissed.paper.tab-block .paper-container.toggleable-container .yoast-notification-holder:nth-child(odd){background-color:#f7f7f7}.yoast-notifications-dismissed.paper.tab-block .paper-container.toggleable-container .yoast-notification-holder:nth-child(odd) .yoast-notification{background-color:initial}.yoast-notifications-dismissed .yoast-svg-icon-eye{background:transparent var(--yoast-svg-icon-eye) no-repeat 0 0;background-size:20px}#yoast-errors-header .dashicons{color:#dc3232}#yoast-errors-active .yoast-notification{border-left-color:#dc3232}#yoast-errors-dismissed .yoast-notification{border-left-color:#d93f69}#yoast-warnings-header .dashicons{color:#5d237a}#yoast-warnings-active .yoast-notification{border-left-color:#5d237a}#yoast-warnings-dismissed .yoast-notification{border-left-color:#0075b3}.yoast-notifications .yoast-container__configuration-wizard{display:flex;align-items:center;box-shadow:0 1px 2px rgba(0,0,0,.2);background-color:#fff;min-height:0;padding-bottom:20px;margin-bottom:15px}@media screen and (max-width:768px){.yoast-notifications .yoast-container__configuration-wizard img{display:none}}.yoast-notifications .yoast-container__configuration-wizard--content{flex:1 1 auto;margin:12px;padding:0}.yoast-notifications .yoast-container__configuration-wizard--content h3{border-bottom:0;font-size:1.4em;line-height:1;margin:0 0 4px;padding:0;background:transparent}.yoast-notifications .yoast-container__configuration-wizard--content p{margin:1em 0 0}.yoast-notifications .yoast-container__configuration-wizard--content p:last-child{margin:0}@media screen and (max-width:768px){.yoast-notifications .yoast-container__configuration-wizard--content{display:block;position:relative;padding:16px}}.yoast-notifications .yoast-container__configuration-wizard--dismiss{text-align:center}@media screen and (max-width:768px){.yoast-notifications .yoast-container__configuration-wizard--dismiss{width:40px;position:absolute;top:5px;right:5px;margin:0}}.yoast-notifications .yoast-container__configuration-wizard--dismiss .dashicons{text-decoration:none;margin-top:12px}
1
+ :root{--yoast-svg-icon-info:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23A4286A' d='M1152 1376v-160q0-14-9-23t-23-9h-96V672q0-14-9-23t-23-9H672q-14 0-23 9t-9 23v160q0 14 9 23t23 9h96v320h-96q-14 0-23 9t-9 23v160q0 14 9 23t23 9h448q14 0 23-9t9-23zm-128-896V320q0-14-9-23t-23-9H800q-14 0-23 9t-9 23v160q0 14 9 23t23 9h192q14 0 23-9t9-23zm640 416q0 209-103 385.5T1281.5 1561 896 1664t-385.5-103T231 1281.5 128 896t103-385.5T510.5 231 896 128t385.5 103T1561 510.5 1664 896z'/%3E%3C/svg%3E");--yoast-svg-icon-check:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%2377B227' d='M1671 566q0 40-28 68l-724 724-136 136q-28 28-68 28t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28 68-28t68 28l294 295 656-657q28-28 68-28t68 28l136 136q28 28 28 68z'/%3E%3C/svg%3E");--yoast-svg-icon-check-ok:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%2377B227' d='M1671 566q0 40-28 68l-724 724-136 136q-28 28-68 28t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28 68-28t68 28l294 295 656-657q28-28 68-28t68 28l136 136q28 28 28 68z'/%3E%3C/svg%3E");--yoast-svg-icon-caret-right:url("data:image/svg+xml;charset=utf-8,%3Csvg width='16' height='16' viewBox='0 0 192 512' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M0 384.662V127.338c0-17.818 21.543-26.741 34.142-14.142l128.662 128.662c7.81 7.81 7.81 20.474 0 28.284L34.142 398.804C21.543 411.404 0 402.48 0 384.662z'/%3E%3C/svg%3E");--yoast-svg-icon-caret-left:url("data:image/svg+xml;charset=utf-8,%3Csvg width='16' height='16' viewBox='0 0 192 512' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M192 127.338v257.324c0 17.818-21.543 26.741-34.142 14.142L29.196 270.142c-7.81-7.81-7.81-20.474 0-28.284l128.662-128.662c12.599-12.6 34.142-3.676 34.142 14.142z'/%3E%3C/svg%3E");--yoast-svg-icon-eye:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M1664 960q-152-236-381-353 61 104 61 225 0 185-131.5 316.5T896 1280t-316.5-131.5T448 832q0-121 61-225-229 117-381 353 133 205 333.5 326.5T896 1408t434.5-121.5T1664 960zM944 576q0-20-14-34t-34-14q-125 0-214.5 89.5T592 832q0 20 14 34t34 14 34-14 14-34q0-86 61-147t147-61q20 0 34-14t14-34zm848 384q0 34-20 69-140 230-376.5 368.5T896 1536t-499.5-139T20 1029Q0 994 0 960t20-69q140-229 376.5-368T896 384t499.5 139T1772 891q20 35 20 69z'/%3E%3C/svg%3E");--yoast-svg-icon-list:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M384 1408q0 80-56 136t-136 56-136-56-56-136 56-136 136-56 136 56 56 136zm0-512q0 80-56 136t-136 56-136-56T0 896t56-136 136-56 136 56 56 136zm1408 416v192q0 13-9.5 22.5t-22.5 9.5H544q-13 0-22.5-9.5T512 1504v-192q0-13 9.5-22.5t22.5-9.5h1216q13 0 22.5 9.5t9.5 22.5zM384 384q0 80-56 136t-136 56-136-56T0 384t56-136 136-56 136 56 56 136zm1408 416v192q0 13-9.5 22.5t-22.5 9.5H544q-13 0-22.5-9.5T512 992V800q0-13 9.5-22.5T544 768h1216q13 0 22.5 9.5t9.5 22.5zm0-512v192q0 13-9.5 22.5T1760 512H544q-13 0-22.5-9.5T512 480V288q0-13 9.5-22.5T544 256h1216q13 0 22.5 9.5t9.5 22.5z'/%3E%3C/svg%3E");--yoast-svg-icon-key:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M832 512q0-80-56-136t-136-56-136 56-56 136q0 42 19 83-41-19-83-19-80 0-136 56t-56 136 56 136 136 56 136-56 56-136q0-42-19-83 41 19 83 19 80 0 136-56t56-136zm851 704q0 17-49 66t-66 49q-9 0-28.5-16t-36.5-33-38.5-40-24.5-26l-96 96 220 220q28 28 28 68 0 42-39 81t-81 39q-40 0-68-28l-671-671q-176 131-365 131-163 0-265.5-102.5T0 784q0-160 95-313t248-248 313-95q163 0 265.5 102.5T1024 496q0 189-131 365l355 355 96-96q-3-3-26-24.5t-40-38.5-33-36.5-16-28.5q0-17 49-66t66-49q13 0 23 10 6 6 46 44.5t82 79.5 86.5 86 73 78 28.5 41z'/%3E%3C/svg%3E");--yoast-svg-icon-edit:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23555' d='M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832H128v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23999' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-good:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%237ad03a' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-ok:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23ee7c1b' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-bad:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%23dc3232' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E");--yoast-svg-icon-yoast-noindex:url("data:image/svg+xml;charset=utf-8,%3Csvg width='1792' height='1792' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath fill='%231e8cbe' d='M403 218h691l-26 72H403q-110 0-188.5 79T136 558v771q0 95 60.5 169.5T350 1592q23 5 98 5v72h-45q-140 0-239.5-100T64 1329V558q0-140 99.5-240T403 218zM1254 0h247l-482 1294q-23 61-40.5 103.5t-45 98-54 93.5-64.5 78.5-79.5 65-95.5 41-116 18.5v-195q163-26 220-182 20-52 20-105 0-54-20-106L459 471h228l187 585zm474 558v1111H933q37-55 45-73h678V558q0-85-49.5-155T1477 304l25-67q101 34 163.5 123.5T1728 558z'/%3E%3C/svg%3E")}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;border:0;padding:0;overflow:hidden;word-wrap:normal!important}.yoast-notification{padding:0 12px;border-left:4px solid #fff;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2)}.yoast-container{position:relative;max-width:1280px;margin:20px 0 1px;padding:20px 20px 0;border:1px solid #e5e5e5;background-color:#fdfdfd;box-shadow:0 1px 1px rgba(0,0,0,.04)}.yoast-notifications>h2:first-child{margin:0;padding:9px 0 4px;font-size:23px;font-weight:400;line-height:29px}.yoast-notifications .yoast-container h3{margin:-20px -20px 0;padding:1em;border-bottom:1px solid #ccc;background-color:#fdfdfd;font-size:1.4em}.yoast-container .container{max-width:980px}.yoast-container .yoast-notification-holder{display:flex;position:relative}.dismiss .dashicons,.restore .dashicons{font-size:20px;width:20px;height:20px}.yoast-bottom-spacing{margin-bottom:20px}.yoast-notifications .button.dismiss,.yoast-notifications .button.restore{position:absolute;right:0;width:52px;height:100%;line-height:inherit;padding:0;outline:none;cursor:pointer;background:transparent;border:none;box-shadow:none;border-radius:0}.yoast-notifications .button.dismiss:focus,.yoast-notifications .button.dismiss:hover,.yoast-notifications .button.restore:focus,.yoast-notifications .button.restore:hover{background:transparent}.yoast-notifications .button.dismiss:focus:before,.yoast-notifications .button.restore:focus:before{content:"";display:block;width:32px;height:32px;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #007cba;outline:2px solid transparent}.yoast-notifications .button.dismiss.yoast-container__configuration-wizard--dismiss:before{top:0;transform:translate(-50%,6px)}.yoast-container .separator{margin-top:1em;margin-bottom:1em;border-top:1px solid #ddd}.yoast-container .dashicons-yes{color:#77b227}.yoast-container-disabled{display:table-cell;position:absolute;top:0;right:0;bottom:0;left:0;border-radius:4px;background-color:hsla(0,0%,91%,.7)}.yoast-no-issues{padding:1em 1em 1em 16px;color:#666}.yoast-muted-title{overflow:hidden;font-weight:600;font-style:italic}.yoast-muted-title:after{content:"";display:inline-block;height:.5em;vertical-align:bottom;width:100%;margin-right:-100%;margin-left:10px;border-top:1px solid #ddd}.yoast-notifications-active .yoast-notification,.yoast-notifications-dismissed .yoast-notification{padding-right:52px;flex:1}.yoast-notifications-active .yoast-notification-holder{margin-bottom:20px}.yoast-notifications-dismissed.paper.tab-block{margin:20px 0}.yoast-notifications-dismissed.paper.tab-block .paper-container.toggleable-container{padding:0}.yoast-notifications-dismissed.paper.tab-block .paper-container.toggleable-container .yoast-notification-holder:nth-child(odd){background-color:#f7f7f7}.yoast-notifications-dismissed.paper.tab-block .paper-container.toggleable-container .yoast-notification-holder:nth-child(odd) .yoast-notification{background-color:initial}.yoast-notifications-dismissed .yoast-svg-icon-eye{background:transparent var(--yoast-svg-icon-eye) no-repeat 0 0;background-size:20px}#yoast-errors-header .dashicons{color:#dc3232}#yoast-errors-active .yoast-notification{border-left-color:#dc3232}#yoast-errors-dismissed .yoast-notification{border-left-color:#d93f69}#yoast-warnings-header .dashicons{color:#5d237a}#yoast-warnings-active .yoast-notification{border-left-color:#5d237a}#yoast-warnings-dismissed .yoast-notification{border-left-color:#0075b3}.yoast-notifications .yoast-container__configuration-wizard{display:flex;align-items:center;box-shadow:0 1px 2px rgba(0,0,0,.2);background-color:#fff;min-height:0;padding-bottom:20px;margin-bottom:15px}@media screen and (max-width:768px){.yoast-notifications .yoast-container__configuration-wizard img{display:none}}.yoast-notifications .yoast-container__configuration-wizard--content{flex:1 1 auto;margin:12px;padding:0}.yoast-notifications .yoast-container__configuration-wizard--content h3{border-bottom:0;font-size:1.4em;line-height:1;margin:0 0 4px;padding:0;background:transparent}.yoast-notifications .yoast-container__configuration-wizard--content p{margin:1em 0 0}.yoast-notifications .yoast-container__configuration-wizard--content p:last-child{margin:0}@media screen and (max-width:768px){.yoast-notifications .yoast-container__configuration-wizard--content{display:block;position:relative;padding:16px}}.yoast-notifications .yoast-container__configuration-wizard--dismiss{text-align:center}@media screen and (max-width:768px){.yoast-notifications .yoast-container__configuration-wizard--dismiss{width:40px;position:absolute;top:5px;right:5px;margin:0}}.yoast-notifications .yoast-container__configuration-wizard--dismiss .dashicons{text-decoration:none;margin-top:12px}.notice-yoast{border-left-color:var(--yoast-color-primary);margin-left:0;margin-top:20px}.notice-yoast__container{padding:10px 0 5px;display:flex;flex-direction:row;align-items:center}.notice-yoast__header{padding:0;box-sizing:border-box;display:flex;flex-direction:row;justify-content:left;align-items:center;width:100%}.notice-yoast__header .notice-yoast__header-heading{line-height:1.2;margin:0;padding:0}.notice-yoast__header h1{font-size:14px;font-weight:600;color:var(--yoast-color-primary);line-height:1;margin:0}.notice-yoast__header .yoast-icon{background-color:var(--yoast-color-primary);mask-image:var(--yoast-svg-icon-yoast);-webkit-mask-image:var(--yoast-svg-icon-yoast);mask-size:100% 100%;-webkit-mask-size:100% 100%;display:inline-block;width:14px;height:14px;margin-right:8px}.notice-yoast__content{padding:0;display:flex}.notice-yoast img{line-height:1;margin-left:10px;height:60px;width:auto}.notice-yoast p{font-size:13px;font-weight:400;max-width:600px;line-height:19px}.notice-yoast .yoast-button--small{min-height:unset}
css/dist/{schema-blocks-1760-rtl.css → schema-blocks-1770-rtl.css} RENAMED
File without changes
css/dist/{schema-blocks-1760.css → schema-blocks-1770.css} RENAMED
File without changes
css/dist/{score_icon-1760-rtl.css → score_icon-1770-rtl.css} RENAMED
File without changes
css/dist/{score_icon-1760.css → score_icon-1770.css} RENAMED
File without changes
css/dist/{search-appearance-1760-rtl.css → search-appearance-1770-rtl.css} RENAMED
File without changes
css/dist/{search-appearance-1760.css → search-appearance-1770.css} RENAMED
File without changes
css/dist/{structured-data-blocks-1760-rtl.css → structured-data-blocks-1770-rtl.css} RENAMED
File without changes
css/dist/{structured-data-blocks-1760.css → structured-data-blocks-1770.css} RENAMED
File without changes
css/dist/{toggle-switch-1760-rtl.css → toggle-switch-1770-rtl.css} RENAMED
File without changes
css/dist/{toggle-switch-1760.css → toggle-switch-1770.css} RENAMED
File without changes
css/dist/workouts-1760-rtl.css DELETED
@@ -1 +0,0 @@
1
- #wpseo-workouts-container h1,#wpseo-workouts-container h3{color:#a4286a;font-weight:500}#wpseo-workouts-container h2{font-size:12px;text-transform:uppercase}.workflow tr.cornerstone{font-weight:700}#wpseo-workouts-container div.card{max-width:600px;width:100%;padding:24px;border-radius:8px;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);border:0}.workflow{list-style:none;counter-reset:line-number;margin-right:48px}.workflow li{position:relative;counter-increment:line-number;padding-bottom:16px}.workflow>li:before{content:"";position:absolute;width:2px;background:#a4286a;right:-33px;top:0;bottom:-20px}.workflow>li:last-of-type:before{display:none}.workflow>li:after{content:counter(line-number);width:28px;height:28px;text-align:center;border:2px solid #a4286a;color:#a4286a;background:#fff;position:absolute;display:block;border-radius:100%;line-height:28px;top:-8px;right:-48px}.workflow li.finished:after{content:"";background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' fill='none' stroke='%23FFF' height='24' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 13l4 4L19 7'/%3E%3C/svg%3E") #a4286a;background-size:20px 20px;background-repeat:no-repeat;background-position:50%}.workflow li.finished p,.workflow li.finished table{opacity:.5}.workflow li img{max-width:100%}.workflow li img.workflow__image{max-height:100px;max-width:100px}.workflow li.yoast-fadeout:before{background:linear-gradient(-180deg,#a4286a,#fff 75%);display:block}.workflow__grid{display:grid;grid-template-columns:auto 100px;gap:8px}.workflow__grid>div:last-of-type{display:flex;flex-wrap:wrap;justify-content:flex-end}table.yoast_help.yoast_link_suggestions thead td{padding:16px 8px}table.yoast_help.yoast_link_suggestions td{vertical-align:middle}
 
css/dist/workouts-1760.css DELETED
@@ -1 +0,0 @@
1
- #wpseo-workouts-container h1,#wpseo-workouts-container h3{color:#a4286a;font-weight:500}#wpseo-workouts-container h2{font-size:12px;text-transform:uppercase}.workflow tr.cornerstone{font-weight:700}#wpseo-workouts-container div.card{max-width:600px;width:100%;padding:24px;border-radius:8px;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);border:0}.workflow{list-style:none;counter-reset:line-number;margin-left:48px}.workflow li{position:relative;counter-increment:line-number;padding-bottom:16px}.workflow>li:before{content:"";position:absolute;width:2px;background:#a4286a;left:-33px;top:0;bottom:-20px}.workflow>li:last-of-type:before{display:none}.workflow>li:after{content:counter(line-number);width:28px;height:28px;text-align:center;border:2px solid #a4286a;color:#a4286a;background:#fff;position:absolute;display:block;border-radius:100%;line-height:28px;top:-8px;left:-48px}.workflow li.finished:after{content:"";background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' fill='none' stroke='%23FFF' height='24' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 13l4 4L19 7'/%3E%3C/svg%3E") #a4286a;background-size:20px 20px;background-repeat:no-repeat;background-position:50%}.workflow li.finished p,.workflow li.finished table{opacity:.5}.workflow li img{max-width:100%}.workflow li img.workflow__image{max-height:100px;max-width:100px}.workflow li.yoast-fadeout:before{background:linear-gradient(180deg,#a4286a,#fff 75%);display:block}.workflow__grid{display:grid;grid-template-columns:auto 100px;gap:8px}.workflow__grid>div:last-of-type{display:flex;flex-wrap:wrap;justify-content:flex-end}table.yoast_help.yoast_link_suggestions thead td{padding:16px 8px}table.yoast_help.yoast_link_suggestions td{vertical-align:middle}
 
css/dist/workouts-1770-rtl.css ADDED
@@ -0,0 +1 @@
 
1
+ #wpseo-workouts-container-free h1,#wpseo-workouts-container-free h3{color:#a4286a;font-weight:500}#wpseo-workouts-container-free h3{font-size:18px;line-height:24px}#wpseo-workouts-container-free h2{font-size:12px;text-transform:uppercase}.workflow tr.cornerstone{font-weight:700}#wpseo-workouts-container-free hr{margin-bottom:24px}#wpseo-workouts-container-free progress{margin:16px 0 8px}#wpseo-workouts-container-free div.card{max-width:720px;width:100%;padding:24px;border-radius:8px;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);border-width:1px;border-color:rgba(0,0,0,.2)}#wpseo-workouts-container-free div.card>h2{margin:0}#wpseo-workouts-container-free div.card.card-small{max-width:320px;display:flex;flex-direction:column}#wpseo-workouts-container-free div.card.card-small svg{width:204px;height:146px}#wpseo-workouts-container-free div.card.card-small svg *{width:100%;height:100%}#wpseo-workouts-container-free div.card.card-small>span{margin-top:auto}#wpseo-workouts-container-free table button{margin:2px}.workflow{list-style:none;counter-reset:line-number;margin-right:48px}.workflow li li{counter-increment:none;padding-bottom:0}.workflow li.step{position:relative;counter-increment:line-number;padding-bottom:16px}.workflow .finish-button-section{display:inline-grid;grid-template-columns:1fr 1fr 1fr;width:100%;align-items:center}.workflow .finish-button-section .yoast-button{width:-moz-fit-content;width:fit-content;justify-self:center;grid-column-start:2;grid-column-end:2}.workflow .finish-workout-button-section .yoast-button{width:-moz-fit-content;width:fit-content;margin:0 auto}.workflow .finish-button-section .finish-button-saved{grid-column-start:3;grid-column-end:3;position:relative;color:#6ea029;margin-right:10px}.workflow .finish-button-section .finish-button-saved:before{position:absolute;content:"";background:var(--yoast-svg-icon-check);background-size:18px 13px;width:18px;height:13px;right:-18px;top:2px}.workflow li.step>.yoast-button.orphaned-summary{margin:0;display:initial}.yoast .yoast-button--arrow-down{flex-shrink:0;display:inline-block;width:16px;height:16px;margin:0 6px 0 -2px}.workflow>li.step:before{content:"";position:absolute;width:2px;background:#a4286a;right:-33px;top:0;bottom:-20px}.workflow .extra-list-content{position:relative}.workflow .indexation-container{padding:8px 0;margin-bottom:8px}.workflow .indexation-container>.yoast-button{align-self:flex-start}.workflow .extra-list-content:before{content:"";position:absolute;width:2px;background:#a4286a;right:-33px;top:0;bottom:-20px}.workflow>li.step:last-of-type:before{display:none}.workflow>li.step:after{content:counter(line-number);width:28px;height:28px;text-align:center;border:2px solid #a4286a;color:#a4286a;background:#fff;position:absolute;display:block;border-radius:100%;line-height:28px;top:-8px;right:-48px}.workflow li.step.finished:after{content:"";background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' fill='none' stroke='%23FFF' height='24' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 13l4 4L19 7'/%3E%3C/svg%3E") #a4286a;background-size:20px 20px;background-repeat:no-repeat;background-position:50%}.workflow li.finished table,.workflow li.step.finished .tracking-radiobuttons,.workflow li.step.finished .yoast-field-group__title,.workflow li.step.finished p,.workflow li.step.finished ul,.workflow li.step p.disabled{opacity:.5}.workflow li.step img{max-width:100%}.workflow li.step img.workflow__image{max-height:100px;max-width:100px}.workflow li.step.yoast-fadeout:before{background:linear-gradient(-180deg,#a4286a,#fff 75%);display:block}.workflow li.step #react-select-2-input{box-shadow:none!important}.workflows__index{display:flex;gap:16px}.workflows__index .yoast-button{width:100%}table.yoast_help.yoast_link_suggestions thead td{padding:16px 8px}table.yoast_help.yoast_link_suggestions td{vertical-align:middle}table.yoast_help th.divider{text-align:center}.workflow table.yoast_help td{vertical-align:middle}.workflow table.yoast_help.yoast_link_suggestions td div{display:inline-block}.workflow table.yoast_help.yoast_link_suggestions td strong{display:inline-block;margin-left:8px}.components-modal__header{height:72px;padding:0 24px}.components-modal__header .components-modal__header-heading{font-size:20px;font-weight:400;color:#a4286a;line-height:1.2;margin:0}.components-modal__header .yoast-icon{background-color:var(--yoast-color-primary);mask-image:var(--yoast-svg-icon-yoast);-webkit-mask-image:var(--yoast-svg-icon-yoast);mask-size:100% 100%;-webkit-mask-size:100% 100%;display:inline-block;width:20px;height:20px;margin-left:8px}.components-modal__content{padding:0 24px 24px}.components-modal__content input[type=text]{width:100%;max-width:400px}.components-modal__frame.yoast__workout{max-width:720px}.yoast__redirect-suggestions{line-height:2}.components-modal__screen-overlay{position:fixed;top:0;left:0;bottom:0;right:0;background-color:rgba(0,0,0,.35);z-index:100000;animation:edit-post__fade-in-animation .2s ease-out 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-modal__screen-overlay{animation-duration:1ms;animation-delay:0s}}.components-modal__frame{position:absolute;top:0;left:0;bottom:0;right:0;box-sizing:border-box;margin:0;background:#fff;box-shadow:0 10px 10px rgba(0,0,0,.25);border-radius:2px;overflow:auto}@media (min-width:600px){.components-modal__frame{top:50%;left:auto;bottom:auto;right:50%;min-width:360px;max-width:calc(100% - 32px);max-height:90%;transform:translate(50%,-50%);animation:components-modal__appear-animation .1s ease-out;animation-fill-mode:forwards}}@media (min-width:600px) and (prefers-reduced-motion:reduce){.components-modal__frame{animation-duration:1ms;animation-delay:0s}}@keyframes components-modal__appear-animation{0%{margin-top:32px}to{margin-top:0}}.components-modal__header{box-sizing:border-box;border-bottom:1px solid #ddd;padding:0 32px;display:flex;flex-direction:row;justify-content:space-between;background:#fff;align-items:center;height:60px;z-index:10;position:relative;position:sticky;top:0;margin:0 -32px 24px}@supports (-ms-ime-align:auto){.components-modal__header{position:fixed;width:100%}}.components-modal__header .components-modal__header-heading{font-size:1rem;font-weight:600}.components-modal__header h1{line-height:1;margin:0}.components-modal__header .components-button{position:relative;right:8px}.components-modal__header-heading-container{align-items:center;flex-grow:1;display:flex;flex-direction:row;justify-content:left}.components-modal__header-icon-container{display:inline-block}.components-modal__header-icon-container svg{max-width:36px;max-height:36px;padding:8px}.components-modal__content{box-sizing:border-box;height:100%;padding:0 32px 24px}@supports (-ms-ime-align:auto){.components-modal__content{padding-top:60px}}.workflow li.step h4{font-size:14px;font-weight:600}.workflow .yoast-field-group{font-size:13px;color:#3c434a}.workflow .yoast-social-profiles-input-fields{margin:30px 0 20px}.workflow .yoast-tracking{list-style-type:disc;list-style-position:inside;padding:inherit}.workflow .yoast-field-group b{font-size:13px;color:#3c434a}.yoast-list--usp{padding-right:24px}.yoast-list--usp li{position:relative;margin-bottom:16px}.yoast-list--usp li:before{position:absolute;content:"";background:var(--yoast-svg-icon-check);background-size:18px 13px;width:18px;height:13px;right:-24px;top:3px}.workflow .yoast-validated-text-input{flex-grow:1}.yoast-validated-text-input--explanation{font-size:10px}.yoast-validated-text-input--feedback:before{display:inline-block;content:"";width:18px;height:13px}.yoast-validated-text-input--feedback.success:before{background:var(--yoast-svg-icon-check);background-size:18px 13px}.yoast-validated-text-input--feedback.success{position:relative;color:#6ea029}.yoast-validated-text-input--feedback.error:before{background:url(../../images/error-icon.svg);background-size:18px 16px}.yoast-validated-text-input--feedback.error{position:relative;color:#c00}.workflow .yoast-newsletter-signup{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px}.workflow .yoast-newsletter-signup .yoast-field-group{flex-grow:0;margin:0}.workflow .yoast-newsletter-signup button{margin-top:1.8rem;align-self:flex-start;flex-grow:0;flex-shrink:0}.workflow .yoast-privacy-policy{font-size:10px}.workout-card-content-flex{display:flex}.card.card-small .yoast-button-upsell{box-shadow:inset 0 -2px 0 rgb(0 0 0/20%);filter:none;min-height:40px;font-family:inherit}.card.card-small button{box-shadow:inset 0 -2px 0 rgb(0 0 0/30%);filter:none;min-height:40px}.workout-card-content-flex ul{margin-left:8px}.workout-card-content-flex img{max-width:120px}.workout-card-upsell-button{opacity:1}#wpseo-workouts-container-free div.card.card-small.card-disabled{background-color:hsla(0,0%,100%,.5)}#wpseo-workouts-container-free div.card.card-small.card-disabled .workout-card-content-flex,#wpseo-workouts-container-free div.card.card-small.card-disabled .workout-card-progress,#wpseo-workouts-container-free div.card.card-small.card-disabled h2,#wpseo-workouts-container-free div.card.card-small.card-disabled h3{opacity:.5}.workflow__grid{display:grid;grid-template-columns:auto 100px;gap:8px}.workflow__grid>div:last-of-type{display:flex;flex-wrap:wrap;justify-content:flex-end}
css/dist/workouts-1770.css ADDED
@@ -0,0 +1 @@
 
1
+ #wpseo-workouts-container-free h1,#wpseo-workouts-container-free h3{color:#a4286a;font-weight:500}#wpseo-workouts-container-free h3{font-size:18px;line-height:24px}#wpseo-workouts-container-free h2{font-size:12px;text-transform:uppercase}.workflow tr.cornerstone{font-weight:700}#wpseo-workouts-container-free hr{margin-bottom:24px}#wpseo-workouts-container-free progress{margin:16px 0 8px}#wpseo-workouts-container-free div.card{max-width:720px;width:100%;padding:24px;border-radius:8px;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);border-width:1px;border-color:rgba(0,0,0,.2)}#wpseo-workouts-container-free div.card>h2{margin:0}#wpseo-workouts-container-free div.card.card-small{max-width:320px;display:flex;flex-direction:column}#wpseo-workouts-container-free div.card.card-small svg{width:204px;height:146px}#wpseo-workouts-container-free div.card.card-small svg *{width:100%;height:100%}#wpseo-workouts-container-free div.card.card-small>span{margin-top:auto}#wpseo-workouts-container-free table button{margin:2px}.workflow{list-style:none;counter-reset:line-number;margin-left:48px}.workflow li li{counter-increment:none;padding-bottom:0}.workflow li.step{position:relative;counter-increment:line-number;padding-bottom:16px}.workflow .finish-button-section{display:inline-grid;grid-template-columns:1fr 1fr 1fr;width:100%;align-items:center}.workflow .finish-button-section .yoast-button{width:-moz-fit-content;width:fit-content;justify-self:center;grid-column-start:2;grid-column-end:2}.workflow .finish-workout-button-section .yoast-button{width:-moz-fit-content;width:fit-content;margin:0 auto}.workflow .finish-button-section .finish-button-saved{grid-column-start:3;grid-column-end:3;position:relative;color:#6ea029;margin-left:10px}.workflow .finish-button-section .finish-button-saved:before{position:absolute;content:"";background:var(--yoast-svg-icon-check);background-size:18px 13px;width:18px;height:13px;left:-18px;top:2px}.workflow li.step>.yoast-button.orphaned-summary{margin:0;display:initial}.yoast .yoast-button--arrow-down{flex-shrink:0;display:inline-block;width:16px;height:16px;margin:0 -2px 0 6px}.workflow>li.step:before{content:"";position:absolute;width:2px;background:#a4286a;left:-33px;top:0;bottom:-20px}.workflow .extra-list-content{position:relative}.workflow .indexation-container{padding:8px 0;margin-bottom:8px}.workflow .indexation-container>.yoast-button{align-self:flex-start}.workflow .extra-list-content:before{content:"";position:absolute;width:2px;background:#a4286a;left:-33px;top:0;bottom:-20px}.workflow>li.step:last-of-type:before{display:none}.workflow>li.step:after{content:counter(line-number);width:28px;height:28px;text-align:center;border:2px solid #a4286a;color:#a4286a;background:#fff;position:absolute;display:block;border-radius:100%;line-height:28px;top:-8px;left:-48px}.workflow li.step.finished:after{content:"";background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' fill='none' stroke='%23FFF' height='24' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 13l4 4L19 7'/%3E%3C/svg%3E") #a4286a;background-size:20px 20px;background-repeat:no-repeat;background-position:50%}.workflow li.finished table,.workflow li.step.finished .tracking-radiobuttons,.workflow li.step.finished .yoast-field-group__title,.workflow li.step.finished p,.workflow li.step.finished ul,.workflow li.step p.disabled{opacity:.5}.workflow li.step img{max-width:100%}.workflow li.step img.workflow__image{max-height:100px;max-width:100px}.workflow li.step.yoast-fadeout:before{background:linear-gradient(180deg,#a4286a,#fff 75%);display:block}.workflow li.step #react-select-2-input{box-shadow:none!important}.workflows__index{display:flex;gap:16px}.workflows__index .yoast-button{width:100%}table.yoast_help.yoast_link_suggestions thead td{padding:16px 8px}table.yoast_help.yoast_link_suggestions td{vertical-align:middle}table.yoast_help th.divider{text-align:center}.workflow table.yoast_help td{vertical-align:middle}.workflow table.yoast_help.yoast_link_suggestions td div{display:inline-block}.workflow table.yoast_help.yoast_link_suggestions td strong{display:inline-block;margin-right:8px}.components-modal__header{height:72px;padding:0 24px}.components-modal__header .components-modal__header-heading{font-size:20px;font-weight:400;color:#a4286a;line-height:1.2;margin:0}.components-modal__header .yoast-icon{background-color:var(--yoast-color-primary);mask-image:var(--yoast-svg-icon-yoast);-webkit-mask-image:var(--yoast-svg-icon-yoast);mask-size:100% 100%;-webkit-mask-size:100% 100%;display:inline-block;width:20px;height:20px;margin-right:8px}.components-modal__content{padding:0 24px 24px}.components-modal__content input[type=text]{width:100%;max-width:400px}.components-modal__frame.yoast__workout{max-width:720px}.yoast__redirect-suggestions{line-height:2}.components-modal__screen-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:rgba(0,0,0,.35);z-index:100000;animation:edit-post__fade-in-animation .2s ease-out 0s;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.components-modal__screen-overlay{animation-duration:1ms;animation-delay:0s}}.components-modal__frame{position:absolute;top:0;right:0;bottom:0;left:0;box-sizing:border-box;margin:0;background:#fff;box-shadow:0 10px 10px rgba(0,0,0,.25);border-radius:2px;overflow:auto}@media (min-width:600px){.components-modal__frame{top:50%;right:auto;bottom:auto;left:50%;min-width:360px;max-width:calc(100% - 32px);max-height:90%;transform:translate(-50%,-50%);animation:components-modal__appear-animation .1s ease-out;animation-fill-mode:forwards}}@media (min-width:600px) and (prefers-reduced-motion:reduce){.components-modal__frame{animation-duration:1ms;animation-delay:0s}}@keyframes components-modal__appear-animation{0%{margin-top:32px}to{margin-top:0}}.components-modal__header{box-sizing:border-box;border-bottom:1px solid #ddd;padding:0 32px;display:flex;flex-direction:row;justify-content:space-between;background:#fff;align-items:center;height:60px;z-index:10;position:relative;position:sticky;top:0;margin:0 -32px 24px}@supports (-ms-ime-align:auto){.components-modal__header{position:fixed;width:100%}}.components-modal__header .components-modal__header-heading{font-size:1rem;font-weight:600}.components-modal__header h1{line-height:1;margin:0}.components-modal__header .components-button{position:relative;left:8px}.components-modal__header-heading-container{align-items:center;flex-grow:1;display:flex;flex-direction:row;justify-content:left}.components-modal__header-icon-container{display:inline-block}.components-modal__header-icon-container svg{max-width:36px;max-height:36px;padding:8px}.components-modal__content{box-sizing:border-box;height:100%;padding:0 32px 24px}@supports (-ms-ime-align:auto){.components-modal__content{padding-top:60px}}.workflow li.step h4{font-size:14px;font-weight:600}.workflow .yoast-field-group{font-size:13px;color:#3c434a}.workflow .yoast-social-profiles-input-fields{margin:30px 0 20px}.workflow .yoast-tracking{list-style-type:disc;list-style-position:inside;padding:inherit}.workflow .yoast-field-group b{font-size:13px;color:#3c434a}.yoast-list--usp{padding-left:24px}.yoast-list--usp li{position:relative;margin-bottom:16px}.yoast-list--usp li:before{position:absolute;content:"";background:var(--yoast-svg-icon-check);background-size:18px 13px;width:18px;height:13px;left:-24px;top:3px}.workflow .yoast-validated-text-input{flex-grow:1}.yoast-validated-text-input--explanation{font-size:10px}.yoast-validated-text-input--feedback:before{display:inline-block;content:"";width:18px;height:13px}.yoast-validated-text-input--feedback.success:before{background:var(--yoast-svg-icon-check);background-size:18px 13px}.yoast-validated-text-input--feedback.success{position:relative;color:#6ea029}.yoast-validated-text-input--feedback.error:before{background:url(../../images/error-icon.svg);background-size:18px 16px}.yoast-validated-text-input--feedback.error{position:relative;color:#c00}.workflow .yoast-newsletter-signup{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px}.workflow .yoast-newsletter-signup .yoast-field-group{flex-grow:0;margin:0}.workflow .yoast-newsletter-signup button{margin-top:1.8rem;align-self:flex-start;flex-grow:0;flex-shrink:0}.workflow .yoast-privacy-policy{font-size:10px}.workout-card-content-flex{display:flex}.card.card-small .yoast-button-upsell{box-shadow:inset 0 -2px 0 rgb(0 0 0/20%);filter:none;min-height:40px;font-family:inherit}.card.card-small button{box-shadow:inset 0 -2px 0 rgb(0 0 0/30%);filter:none;min-height:40px}.workout-card-content-flex ul{margin-right:8px}.workout-card-content-flex img{max-width:120px}.workout-card-upsell-button{opacity:1}#wpseo-workouts-container-free div.card.card-small.card-disabled{background-color:hsla(0,0%,100%,.5)}#wpseo-workouts-container-free div.card.card-small.card-disabled .workout-card-content-flex,#wpseo-workouts-container-free div.card.card-small.card-disabled .workout-card-progress,#wpseo-workouts-container-free div.card.card-small.card-disabled h2,#wpseo-workouts-container-free div.card.card-small.card-disabled h3{opacity:.5}.workflow__grid{display:grid;grid-template-columns:auto 100px;gap:8px}.workflow__grid>div:last-of-type{display:flex;flex-wrap:wrap;justify-content:flex-end}
css/dist/{wpseo-dismissible-1760-rtl.css → wpseo-dismissible-1770-rtl.css} RENAMED
File without changes
css/dist/{wpseo-dismissible-1760.css → wpseo-dismissible-1770.css} RENAMED
File without changes
css/dist/{yoast-components-1760-rtl.css → yoast-components-1770-rtl.css} RENAMED
File without changes
css/dist/{yoast-components-1760.css → yoast-components-1770.css} RENAMED
File without changes
css/dist/{yoast-extensions-1760-rtl.css → yoast-extensions-1770-rtl.css} RENAMED
File without changes
css/dist/{yoast-extensions-1760.css → yoast-extensions-1770.css} RENAMED
File without changes
css/dist/{yst_plugin_tools-1760-rtl.css → yst_plugin_tools-1770-rtl.css} RENAMED
File without changes
css/dist/{yst_plugin_tools-1760.css → yst_plugin_tools-1770.css} RENAMED
File without changes
css/dist/{yst_seo_score-1760-rtl.css → yst_seo_score-1770-rtl.css} RENAMED
File without changes
css/dist/{yst_seo_score-1760.css → yst_seo_score-1770.css} RENAMED
File without changes
css/main-sitemap.xsl CHANGED
@@ -71,8 +71,8 @@
71
  <div id="content">
72
  <h1>XML Sitemap</h1>
73
  <p class="expl">
74
- Generated by <a href="https://yoa.st/1y5" target="_blank" rel="noopener noreferrer">Yoast</a> <a href="https://yoa.st/1y6" target="_blank" rel="noopener noreferrer">SEO</a>, this is an XML Sitemap, meant for consumption by search engines.<br/>
75
- You can find more information about XML sitemaps on <a href="http://sitemaps.org" target="_blank" rel="noopener noreferrer">sitemaps.org</a>.
76
  </p>
77
  <xsl:if test="count(sitemap:sitemapindex/sitemap:sitemap) &gt; 0">
78
  <p class="expl">
71
  <div id="content">
72
  <h1>XML Sitemap</h1>
73
  <p class="expl">
74
+ Generated by <a href="https://yoa.st/1y5" target="_blank" rel="noopener">Yoast SEO</a>, this is an XML Sitemap, meant for consumption by search engines.<br/>
75
+ You can find more information about XML sitemaps on <a href="https://sitemaps.org" target="_blank" rel="noopener">sitemaps.org</a>.
76
  </p>
77
  <xsl:if test="count(sitemap:sitemapindex/sitemap:sitemap) &gt; 0">
78
  <p class="expl">
images/Assistent_Time_bubble_500x570.png ADDED
Binary file
images/Yoast_Academy_video.png DELETED
Binary file
images/mirrored_fit_bubble_man_1_optim.svg ADDED
@@ -0,0 +1 @@
 
1
+ <svg viewBox="0 0 296 317" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true" focusable="false"><g transform="matrix(-1 0 0 1 295.274 .96)" fill="none"><circle fill="#F0ECF0" cx="131.18" cy="184.261" r="131.18"/><g fill="#EAB881"><path d="M236.42 96.56c-.15-.43-.29-.87-.44-1.3.15.43.29.87.44 1.3zm-31.98 59.96a11 11 0 0 0-2.11.82c.67-.3 1.4-.56 2.11-.82zm-2.11.82a58.65 58.65 0 0 0-6 2.81c2.67-1.11 4.56-2.11 6-2.81z"/><path d="M293.49 164.27c-8.58-10.51-1.05-27.75-34.52-86.31-3-5.22-5.26-14.52-12.85-17.58-9.11-3.67-12.77-9.16-21.89-12.83-6.85-2.76-4-1.36-3.21-.49 1.49 1.67-2-1.31-5.72 7.13-.38.85 2.86 1.63 4 5 .36 1.07.49 1.14 1.23 1.33 4.71 1.2 6.52 6.89 4.2 10.06-.7-1.43.18-6-4.68-6.36 2 1.44 4.06 3.42 4 5.88 9.4 16.64 17.56 14 20 15 12.43 4.92-17.28 64.57 23 86.13-7.34-1.94-14.31-5.46-23.92-1.33 7.28-5.53 2.46-7.57.86-10.89-2.17-2.92-2.29-11.71-2.6-22.62a103.2 103.2 0 0 0 1.09 20.32 54.8 54.8 0 0 0-38-.12c5.19-1.21 15.45 48.34 20.15 53.9 3.8-1.4 23-8.57 35.17-14.11 21.52-9.81 34.94-25.76 35.44-28.31.24-1.47-.85-2.71-1.75-3.8zm-41.62-99.13c.06.1 8.87 19.59.56 1.21-.2-.44-.38-.84-.56-1.21z"/><path d="M215.17 56.04c.46.17 2 1.49-.23-.93-.88 2.39-.6 4.42 2 6.74 1.06-3 0-3.51-1.77-5.81zm-4.33 23.82c.28-.07.36.05-.35-.38l.35.38z"/></g><path d="M203.74 73.77c0 .4-.33-.06 2.94 2.38l-2.94-2.38zm5.26 4.27c2.3 2 3.13 2.53 2.19 1.77L209 78.04zm6.17-22c.05.06 1.79 2.31 1.83 2.38-.49-1.27-.83-2.01-1.83-2.38zm-.52 11.73c1.38-.08.73 1.34 2.16-.5.52-.67 1.91-3.21.71-2.6.56-2.33-.09-6.71-.19-4.75-.13 2.46-3.7 10.77-8.67 9.87a7.6 7.6 0 0 0 3.25.22c2.74-.39 2.36-.97 2.74-2.24zm-5.99 2.02a6.27 6.27 0 0 1-1.42-.59c.42.309.906.51 1.42.59z" fill="#D38053"/><path d="M214.2 69.33a4.13 4.13 0 0 1-.85 3.73c3.38-1.27 3.66-3.51 2.48-4.78-1.18-1.27-1.34.03-1.63 1.05zm-32.31 1.85c.11.84 2.61 2.33 3.3 2.78a13.33 13.33 0 0 1-3.3-2.78zm10 4.39c-.21.13-.45.1.31 0-.28-.12-.13-.1-.31 0zm-6.51-1.53a29.79 29.79 0 0 0 4.51 2.28c2.54-1.52.8.82-4.51-2.28z" fill="#D38053"/><path d="M202.61 77.13c-.91.35-5.67.26-10.41-1.57-6.74 1-6.41 12.08-1 12.4 8.18.48 10.11 3 13.48 1.92 6.82-2.28 2.4-11.62-2.07-12.75z" fill="#EAB881"/><path d="M217.52 64.67a4.92 4.92 0 0 1 2.54-.48c4.87.36 4 5 4.68 6.36 2.31-3.16.52-8.86-4.2-10.06-2.25-.57.56-2.91-7.86-7.27a10.79 10.79 0 0 1 4.84 11.45zm15.23 112.51c-6.79 1.78-17.9 1.65-21-5.2 3.71 11.1 9 26.86 12.86 37.68 2.88-.89 7.41-1.86 8.89-3.4-3.52-4.16-8.67-10.41-8.74-15.89-.07-5.48 2.92-11.16 7.99-13.19zm-26.31-20.36c-.14.17-.15 0 .53 1.27-.18-.46-.35-.89-.53-1.27z" fill="#D38053"/><path d="M246.11 86.55c-2.26-3.64-4.21.58 2.23-3.3-10.49 4.56-18.5-2.9-24.34-13.21-.05 1.82-1.23 3.13-2.61 4.36-9.64 8.64-10.89 4.95-12.39 3.64-8-7-3.86-2.44-6.09-1-.71.46 4.08 1 5.31 7.11a5.26 5.26 0 0 1-2.67 5.38c7.41 5.8 14.7 2.46 25.68-4.09 14.67 22.17 7.38 66.27 12.78 73.54 1.6 3.32 6.42 5.36-.86 10.89 9.61-4.13 16.58-.61 23.92 1.33-37.63-20.16-14.29-73.91-20.96-84.65z" fill="#D38053"/><path d="M190.92 211.52a81.3 81.3 0 0 0-9.26-12.14c6.41 7.94 17.18 24.84 9.26 12.14z" fill="#A52A6A"/><path d="M205.85 156.04c-31.36 13.6-26.45 13.21-42 8.34-18.87-5.91-37.14-.76-32.1-1.07 11.82-.72 29.07 49.31 35.44 66.88l62.17-10.35c.64 7.64-20.9-59.34-23.51-63.8z" fill="#A52A6A"/><path d="M214.23 180.31c-8.73 13.9-32.09 11.23-35.71-4.78 8 32.54 8.23 20.07-9.5 9.69 25.36 25.8 22.47 41.74 28.27 44.5 3.49 1.65 13.65-3.77 26.3-7.69 3.3-1 4.88-1.61 4.76-2.19l-14.12-39.53z" fill="#7C2050"/><path d="M192.93 72.9a3 3 0 0 1-.92 2.58 25.5 25.5 0 0 0 9.52 1.8c2.47-.02.6.27-8.6-4.38z" fill="#EAB881"/><path d="M220.06 64.19c-3.36-.25-1 1.37-4.23 4.09 1.18 1.27.9 3.51-2.48 4.78a4.07 4.07 0 0 0 .85-3.73c-2.67 1.26-5.78.74-7-.13 4.38 2.46 8.07-2.64 9.69-7.37-2.58-2.31-2.87-4.34-2-6.74-1.19-1.31-4.4-3.35.19-.49a25 25 0 0 1 2.94-5.18c1.27-1.71 5.22-.83 1.65-3.46-1.76-1.3-8.08-2.63-8.81-2.59a4.11 4.11 0 0 0-3.06 1.53c-4.33-1.59-9.29-1.86-11.78 2-4.24-3.58-9.38 2.15-7.77 6.69 1.44 4-1.86.15-7.06 14.62-1.27 3.54 5.07 7 8.77 7.58 7.7 1.25-18.75-8.93 2.24-.45 3.4 2.66 5.28 1.49 10.44 1.8 1.08-.47 1-1.92 1.05-3.09 0-1.84 6.81 8.52 10.32 5.44 8.71-4.45 13.99-9.58 6.05-15.3z" fill="#EAB881"/><path d="M192.51 69.95c.38.94.28.45 0-2.57a4.18 4.18 0 0 0 0 2.57z" fill="#EAB881"/><path d="M194.68 57.19a15.87 15.87 0 0 0 .36-1.77c-.14.62-.25 1.18-.36 1.77z" fill="#D38053"/><path d="M59 167.04c-7.75 3.79-5.09 3.25-3.46 3.59a74.937 74.937 0 0 0 3.46-3.59zm69-3.33l-.77-.17c.242.112.504.17.77.17z" fill="#A52A6A"/><path d="M200.06 262.44c1.23-17.17 10-35.47-31-77.22-8.89-9-13.84-13.86-31.69-19.13 6.35 7.45-.5 40.2-3.43 38.36-25.84-16.17-70.31-19.82-79.39-32.84 6.7-6.24-28.46 5.48-39.7 16.24-3.57 3.42-8.13 12.77-12.22 22.43 8.53 42.43 41.23 74.66 42.5 72 3.64-7.7 7.17-15.66 6.64-14.47 11.84 12.23 19.29 19.48 23.78 35.23A131 131 0 0 0 201 295.25c-.06-16.21-1.3-27.79-.94-32.81zm-145.78-.4c.1 0 0-.08-1.06 2.38.36-.79.71-1.59 1.06-2.38z" fill="#A52A6A"/><path d="M53.29 267.84c5.65 7.53 33.06 17 44.3 27a280 280 0 0 1-35.06-36.66 203.23 203.23 0 0 0 49.54 9.79l-47.15-13.12c.667-5.7 1.333-11.393 2-17.08-3.35 4.49-11.74 22.07-13.63 30.07zm125.12-18.17c-12.42-1.14-45.91 6.44-50.79 17 18.32-12.22 51.08-16.81 54.55.56-.17-1.02 12.83-16.03-3.76-17.56z" fill="#7C2050"/><path d="M124.39 155.75c0 .21.1.43.16.64-.06-.21-.11-.43-.16-.64zm-57.05-39.34c-.59 0-.52-.25 0 1.56 1.53 2.37.74 1.51 0-1.56zm56.8 38.33l.12.46-.12-.46zm-69.63 16.87c9.09 13 53.53 16.65 79.39 32.84 2.16 1.35 8.75-21.75 4.69-36.08-1.9-6.72-10.19-4.65-10.62-4.66-1 0-1.46-.64-1.83-1.66-.68-1.91-1.52-5.36-1.48-5.21-1.23 4.07-1.68 6.59-3.49 7.5-6.48 3.24-37.85-9.4-52.25-41 .62 2.53 1.06 5.26-1 3.64 3.8 16.54 5.92 26.64-13.41 44.63z" fill="#EAB881"/><path d="M107.65 148.64c-20.65-5.6-33.72-12.94-37.72-32.87-3.26 1.48-3.22-1.55-1 7.6 14.4 31.56 45.77 44.21 52.25 41 2.15-1.07 3.54-7.31 3.38-8-2.21-8.85 2.2-2.53-16.91-7.73z" fill="#D38053"/><path d="M140.75 66.31c-3-9.44-7.65-19.56-11.74-25.21a15.73 15.73 0 0 1-8.82-3.17c-7.48 8.26-15.45 4.83-16.65 0-1.68 5.91-9.62 9-14.83 5.74a6.35 6.35 0 0 0 4.78-2.95 18.42 18.42 0 0 1-15.21-2.12c-6-.8-4.66-.93-1.31 4.28 7.29 11.35 4.24 15-4.14 23.72C62.7 77.12 70.69 82.04 74 85.14c6.7 6.17 1.74 13-5.65 12.35 4.88 8.65 5.25 9.2 5.41 10.7.34 3.25-1 6.28-3.86 7.58 4 19.73 16.77 27.17 37.72 32.87 6.48 1.76 13.43 3.33 20 1.88 6.57-1.45 12.87-6.74 13.24-13.51.22-4.11-1.69-10-1.26-14 .68-6.64 5.94-5 6.24-21a112.12 112.12 0 0 0-5.1-35.45" fill="#EAB881"/><path d="M121.63 67.04c-.14 1.89.33 11.5 1.43 14.94 2.29 7.11 7.13 6.6 10.67 8.13 4.36 1.9 5.64 6.66-1.58 8.75-3.85 1.12-7.92 2.25-11.82 1.33 1.4 1.63 3.81 1.84 6 1.84 14.73 0 15.5-9 13.14-12.25-3.67-5.06-12.38-1.31-15.58-12.81-.81-2.74.11-8.51-2.26-9.93z" fill="#D38053"/><path d="M110.39 112.3c-10.66-3-13.86-7.32-14.77-5.86-1.15 1.83 18.2 12.62 29.48 6.84-5.03.06-9.69.44-14.71-.98zM86.23 73.61c1.75 0 7-6 8.82-7.15 3.63-2.2 7.63-1.08 11.78-2-.51-1.34-3.51-5.43-4.18-5.29-3.17.68-9.2.3-9.2.3s-13.18 14.27-7.22 14.14zm39.37-15.85c-5.09.43-3.23 1.61-2.29 5.5a18.92 18.92 0 0 1 17.63 3.35c-5.31-8.47-9.64-9.34-15.34-8.85z" fill="#000"/><path d="M91.39 85.5c4.56 6.52 15.3 4.23 18.45-1.77-.92-5.69-16.99-9.33-18.45 1.77zm9.87 1.69c-6.09 3.06-8.18-7.15-1.85-7.15 4.07 0 5.74 5.19 1.85 7.15zm25.58-4.58c2.38 3.65 14 2.53 14.28-3.35-4.19-9.42-16-4.69-14.28 3.35zm8.47-1.63a3.56 3.56 0 0 1-5.31 1.29c-2.29-1.87-1-6.45 2.58-6a3.57 3.57 0 0 1 2.73 4.71z" fill="#FFF"/><path d="M126.72 79.53c1.76-6.07 10.8-8.36 14.4-.27 1.07 2.38.95-6.79-5.3-7.23-3.92-.28-10.17.09-9.49 10a11.4 11.4 0 0 1 .39-2.5zm-27.31.51c-6.34 0-4.24 10.2 1.85 7.15 3.89-1.95 2.23-7.15-1.85-7.15z" fill="#000"/><path d="M132.6 76.26c-3.61-.44-4.87 4.14-2.58 6a3.4 3.4 0 1 0 2.58-6zm-63.68 47.11c-2.54-10.52-.32-4.66-9.77-9 5.12 9 12.19 18.98 9.77 9zM129 41.1c5.48 7.57 6.11 13.42 5.52 9.56a51.53 51.53 0 0 0-2.44-9.71 16.7 16.7 0 0 1-3.08.15z" fill="#000"/><path d="M137.16 26.23c3.42-12.58-5.26-13.54-7.57-11.18A10.51 10.51 0 0 0 113.3 5.04c-3.11-5.35-12.48-8.78-24.25 2.14C88-.5 72.44 1.9 70.12 17.68c-5.8 1.09-8.67 4.26-10 6.8-5.74.56-24.3 24.19-25.12 32.06-.51 4.69 2 9.11 3.31 13.65.84 2.89 1.22 6 2.75 8.59 4 6.77 0 3.56 5 2.71 4.44-.75 16.29 5.15 22.4 16 3.66.32 7.38-.9 8.67-5.17 1.72-5.69-6.59-8.6-8.54-13.18-4.08-9.57 10.77-15 12.37-23.84 1-5.78-3.41-11.93-7.06-17.09 1.24 0 2.7.15 4.46.38-.16-.1-.3-.21-.45-.32a17.59 17.59 0 0 0 15.66 2.44 6.35 6.35 0 0 1-4.78 2.95c5.21 3.24 13.15.17 14.83-5.74 1.2 4.84 9.14 8.31 16.65 0a16.12 16.12 0 0 0 18.08.78 11.39 11.39 0 0 1-5.61-4.34c3.19.61 6.37-1.64 7.88-4.5 1.51-2.86 1.74-6.22 1.9-9.46a9.68 9.68 0 0 1-5.36 5.83zm-77.44 3.81l-.08-.11.08.11zm-.5-3.51v.09c0-.37.06-.82.09-1.36-.05.48-.07.89-.09 1.24v.03zm14.53 7.72a18.09 18.09 0 0 0 4.06 4 16.75 16.75 0 0 1-4.06-4.03v.03zm-.59-.86l.24.35-.24-.35z" fill="#000"/><path d="M97.49 76.04c-3.73.6-7.38 4.53-6.58 9 1-2.29 1.84-4.94 5.06-6.12 4.28-1.56 11.29-.39 13.75 4.36 1.38 2.65.02-9.24-12.23-7.24z" fill="#000"/><path d="M73.79 108.19c-.16-1.5-.53-2.05-5.41-10.7-6.11-10.84-17.95-16.75-22.38-16-7.48 1.27-15.82 21.55 15.3 33.82 8.33 3.28 13.12-1.13 12.49-7.12z" fill="#EAB881"/><path d="M96 105.92c2.11-2.9 10.26 2.05 16.39-5.72.79-1 1.41-4 3.31-3.71-5.06-.88-6.61 8.28-14.23 6.32-3.12-.81-9-5.15-10 11.67a58.56 58.56 0 0 1 4.53-8.56zm-33.55-5.55c4.3-10.34-20.92-21.24-19.6-7 .3 3.21 2.29 8.83 5.31 9.81-2.45-5.37.27-12.44 1.57-13.5 2-1.61 4.51.76 7.4 2.9-.13 1.68-2.51 2.46-2.65 4.09-.12 1.31 1.07 2.94 5.05 2a7.72 7.72 0 0 1-2.17 5 5.2 5.2 0 0 0 5.09-3.3zm130.32-29.93a3.7 3.7 0 0 1-.27-3.06c4.45-17.69 1.95-7.91-1.07-3.12-2.38 3.78-3.24 6.3.67 8.22 23 11.28 1.9-.25.67-2.04z" fill="#D38053"/><path d="M192.25 75.29c-2.41-1-6.47-3.9-6.5-5.61 0-1.15 4.89-8.09 3.9-14.36-1.07 1.71-6.51 12.19-6.39 14.2.23 3.86 9.09 5.81 8.99 5.77zm13.21-25.34c-.16 1.86-6.76 14.12-6.76 18.83.36 1.09 4.49 2.16 4.71 3.29-6.82-5.17 3.5-20.43 2.05-22.12z" fill="#D38053"/></g></svg>
images/mirrored_fit_bubble_woman_1_optim.svg ADDED
@@ -0,0 +1 @@
 
1
+ <svg viewBox="0 0 299 318" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true" focusable="false"><g transform="matrix(-1 0 0 1 298.366 0)" fill="none"><circle fill="#F0ECF0" cx="131.2" cy="186.088" r="131.2"/><path d="M144.8 100.788c10.5 9 34.6 4.3 35.4 40.7-1.8-14.3-16.6-16-35.9-39.6l.5-1v-.1zm-83.8.8c3.6-1.2.5-3.3 5 3.5 4 37.1 8.6 47.9-7.8 55.8-1.6.6-4.6 1-10.1 3.3-18-25.7 1-45.6 3-67.1 4.1 3.4 8.2 5 10 4.5H61z" fill="#42210B"/><path d="M166.5 157.588c-54.6-16-50.2 7.4-54.3-23.3 7.1 1.3 20 1.8 21.8-10.4 1.8-12.2 7.2-16 10.3-22 12.4 15 27.3 21.2 30.7 56-4.2.1-7.3 0-8.5-.3zm-122-96.2a68.021 68.021 0 0 0-1.2 5.3c-18.1-24 5.7-52.2 10-54 2.6-1.1-10.4 7.2-11.8 27a47 47 0 0 0 3 21.7z" fill="#42210B"/><path d="M254.9 135.888l.2 3.5-.2-3.5zm-.8-8.9l.8 8.9-.8-8.9zm-11.1-38.4l-3.4-5.8 3.3 5.8h.1zm.4.8l.5.8-.5-.8zm2.4 4.5l.3.5-.3-.5zm-1-1.9l.3.5-.3-.5z" fill="#F4A269"/><path d="M243.7 83.188c35 57.8 6.6 68.9 23.2 85.9-4.2-4.3-7.4-5.2-10-13.5-2.4 0 1.3-40.2-13.5-66.2-5.3-9.3-4.8-6 .3-6.2zm-11.6-9.4a37.9 37.9 0 0 0 4.8 5.4 24.4 24.4 0 0 1-4.8-5.4z" fill="#CE6D42"/><path d="M220.3 61.988c1.9 1.3 2.9 1.5 2.1 3.6-2-1-3.1-2.2-2.3-4.3 2.2 1.4.7.7.3.6l-.1.1zm-2 16.4l-.5-.2.5.2z" fill="#F4A269"/><path d="M220.3 61.988c.7 0 1.1.2 2 1.3l-2-1.3zm-6.3 9.6a7.9 7.9 0 0 0 1.5.3 4 4 0 0 1-1.5-.3z" fill="#CE6D42"/><path d="M193.5 76.988c-.6-.1-2.8-.8-3-1.4a12.9 12.9 0 0 0 3 1.5v-.1zm22.8.4l-2.3-1 2.3 1z" fill="#D38053"/><path d="M217.8 78.188l.7.5c-3 2.2-1.3.2-13.5-.8 11.9.2 0-3.6 12.8.3z" fill="#F4A269"/><path d="M215.1 79.788c1.1-.2 2.6-1.5 3.4-2.1-.4-.4-.5-.2-.2-.3 2.4.7 11.2-5.8 11.5-8.2a23.2 23.2 0 0 0 .2 2.6c.2-5 6.2 14.7 21 9-7.2 5-15.1.5-14 1-10.3 5.3-12.2 8.5-22.4 3 4.6-1 4.3-3.1.5-5z" fill="#CE6D42"/><path d="M193 210.788l1.6-.4-1.6.4zm-6.8 1.5l1.5-.3-1.5.3zm27.4-14.8c-3 .4-27.4 3.3-29 1.7-.5-.4 10.2-18 10-24.1-1.6 6-12.6 18-14.9 23.8-6.5-4.1-18.7-11.2-22.7-27-2.6 6.7 2.5-6.6-27.1-15.1-5.5-3.4-9.8-4.5-12.4-5.6a128.5 128.5 0 0 1 49 6.4c3.7 1.2 31-1.5 45.2.4-5.3 8.3-2 34.8 4.5 44.9 1.2 1.8 1.8 1.3-1.2 2 1.7-.3-.3.4-1.4-7.4z" fill="#A52A6A"/><path d="M157 174.988c-.8-1.4-1-.8 0-3.1 4 15.9 16.2 22.9 22.7 27 2.3-5.9 13.3-17.8 15-23.8 0 6-10.6 23.7-10.1 24.2 1.5 1.5 26-1.4 29-1.8 2.6 8.8 15.5 5.8-30.1 15.4a158 158 0 0 1-26.5-37.8v-.1z" fill="#7C2050"/><path d="M200.3 78.488c-3.7 2-1 8.9 2.7 8.4 6.9-1 22.6-2 12.6-7a3.2 3.2 0 0 0 2.9-1.6c1.5.2 11.6-4.1 10.9-8.1 3.4 4.1 5.6 7 8.4 9a14.3 14.3 0 0 0 11.9 2.3 22.5 22.5 0 0 1-6 1.7c35 57.8 6.7 68.9 23.2 85.9-4-4.2-7.4-5.2-10-13.5-33.6 2.7-56.2 1-45.1 2.5-5.3 8.3-2 34.7 4.5 44.8 33.6-4.2 67-19.4 78.5-28.9 3-2.6 4.7-8 2.7-10.7-1.1-1.6-3-7.2-3.5-8.3-9.4-19.2 6.3-3.6-36.2-78-9.7-16.9-1.8-11.9-29-20.4.3-.2-12.5-5.2-16.1-1.4h.1c-9.4-1.3-9.5.8-10.9 3.7-4.4-1.4-8.2 1-7 3.7.3-.4-2 2.3-5.2 11-1 2.8 7.6 5 10.6 5v-.1zm-2.7-18c-.8 0-1.7.8-2.6 2 1.2-1.6 2-2.2 2.6-2z" fill="#F4A269"/><path d="M200.3 73.688a2.7 2.7 0 0 1 0-2.5c.4 3 .5 3.2 0 2.5z" fill="#F4A269"/><path d="M198 74.588c-1.8-1.4.4-4 1.9-6 6.8-9.8 4-9.3.4 2.5-.6 2.2-.5 3 2.7 4 19.2 4.8-3.1 1-5-.5z" fill="#CE6D42"/><path d="M204 61.688l.4-1.1a4.3 4.3 0 0 1-.3 1.1h-.1zm0 16.3a10.2 10.2 0 0 0-3.1.3c-8.7-2.2-9.9-3.7-8.7-6a69.8 69.8 0 0 1 4.3-8.2c3 8.6-11.1 10.8 7.6 13.9h-.1zm14.3.4c-14.7-4.4-15.5-5.2-13.4-8.7 1.2-2 6-8.2 6-10.9 3 2-5 13.4-4.6 14.1 13 5.8 13.2 5.8 12 5.5z" fill="#CE6D42"/><path fill="#A52A6A" d="M61 159.588l-2.8 1.3 2.9-1.3z"/><path d="M51.7 252.088a52 52 0 0 1-4.1-5.1c29.9-17 26.8-17.9 9.5 2.6 22.6 3.2 24.7 3.7-5.4 2.5z" fill="#7C2050"/><path d="M48.1 164.188c3.2-1.4 17.8-6.2 2.7-.6 35.7 12.2 41.2 28.1 52.3 44 10.7 0 52.5-9.3 52.5-11.1 0-5.3-5.5-27.3-25.7-39.7 33.5 9.7 21 21 53.6 56.1 21.7 21.8 17.7 32 6.7 48.4 2.5 21.9-2 34.5-4.5 43.8a130.1 130.1 0 0 1-101.7 3.5c3.7-20-17.7-38.9-33.7-58.2 1.8 1.3 5.5.9 23.5 1.6l-16.7-2.4c22.2-26.3 19-16.8-34.1 11.6a129.6 129.6 0 0 1-20-44.6c13.5-21.5 23-43 45.1-52.4z" fill="#A52A6A"/><path d="M50.8 163.588c10.5-4.2 19-5.4 19-22.8 0-9.4-4.2-36.4-3.8-35.7a27 27 0 0 0 1.7 3c11.7 19.5 30.2 57.2 46.5 39 1.8 7.7 11.1 1.7 28.5 20.5a57 57 0 0 1 13.5 29c0 2-41.3 11-53.1 11-11.1-15.9-16.6-31.8-52.3-44z" fill="#F4A269"/><path d="M66 105.288c-.1-2 13.4 19.6 46.8 29.4.5 3.2.3 7.8 1.4 12.5-16.8 18.4-35.8-19-48.1-42l-.1.1z" fill="#CE6D42"/><path d="M63.1 100.288c14.9 27.7 67.3 48.3 70.9 23.6 2.6-18.3 20.2-27.2 18-46.1-.9-7.6-3.9-14.2-6.8-16a79.4 79.4 0 0 0 .9-10.7c0-34.9-61.3-19.7-84 .9.8 7.2 3.6 16.1-2.2 24.7-7-5-10.7-9.2-17.8-6.5-13 5 14.4 39.2 21 30v.1z" fill="#F4A269"/><path d="M126.1 106.788c-1 .7-2 12.5-14.5 5.3a59.4 59.4 0 0 1-13.4-11.8 52.9 52.9 0 0 0 27.9 6.5z" fill="#D17154"/><path d="M96 99.088c12.2 2.7 15.3.9 18.6.9 2.3 0 2.6 2.4 4.3 2.5 1.7.1 2.9-1 4.5-.5 1.3.2 2 2.8 7.2 3.5-9.5 4.3-25.3-1.3-34.6-6.4z" fill="#B24736"/><path d="M86.7 65.988c4.2 6 17.4 5.5 21.8 3a12.4 12.4 0 0 0-12-8.6c-7.3-.2-7.5 4.4-9.8 5.6zm10.1-5.2c6.5.3 6 10-.4 9.7-6.4-.3-6-10 .4-9.8v.1z" fill="#FFF"/><path d="M96.5 60.288c-10.1-.2-6.7 8.7-13.8 5 .5-.9 2.6 1 3.5-2 2.1-6.6 9-7.4 15-5.2 7 2.5 8.2 10.7 7.5 11a12.7 12.7 0 0 0-12.2-8.8z" fill="#000"/><path d="M128 65.788l1.4 2.2c7.3 1.4 14 .7 14.8-6.8-.8-.5-1.4-1.4-2.3-2-3.6-2.8-11-.9-14 6.6h.1zm6.7-6.4c5.8 0 5.8 8.8 0 8.8s-5.9-8.8 0-8.8z" fill="#FFF"/><path d="M142 59.088c-3.7-2.7-11.2-.8-14 6.7l-1-1.3c1.6-10.7 16.6-13.3 18.2-5.1.4 2 2 1 2.4 1.5-3.3 2-3.8-.5-5.7-1.8h.1z" fill="#000"/><path d="M44.5 61.388c-10.5-26 2.1-64.4 51.7-61.2 12.1.8 30.6 6 38.4 16.5-22.5-14.1-78.6 3-90 44.7h-.1z" fill="#42210B"/><path d="M52 70.988c0-6.7 3.9-13.2 10.2-19 .7 7.2 3.5 16.1-2.3 24.7l-7.9-5.7z" fill="#42210B"/><path d="M128 65.788c3 4.5 13.5 21.8 10.3 26.1-1.8 2.5-13.3.5-20-2 5.2-1 14.1 1 15.8-.6 3-5.7-8.3-20.8-10.4-26.2-1.8-4.4-2.7-7.8 5.9-11.2-8.8 5.1-6.1 7.5-1.7 13.9h.1z" fill="#CE6D42"/><path d="M52 70.988c-6.4-3.8-10.6 2-7.4-9.6 13.3-48.5 87-63.6 98-35.3 2.4 6 4.3 13.1 2.7 19.4-5.8-32-93.7-6.1-93.3 25.5z" fill="#80C416"/><path d="M106.3 46.788c-7.4 0-12.5-4.5-24.9 3.3 5.6-11.3 34-4.7 24.9-3.3zm25.1 4.7a11.9 11.9 0 0 1 9.4-3.7c4.7.7 6.4 4.4 5.3 5.4-3.6-5.1-8.6-3.4-14.7-1.7zm-34.6 9.2c6.5.3 6 10-.4 9.8-6.4-.2-6-10 .4-9.8zm37.9-1.3c5.8 0 5.8 8.8 0 8.8s-5.9-8.8 0-8.8z" fill="#000"/><path d="M103.6 96.488c-11 .9-8.8-7-12.2 8.3-1-3.5-1.8-6.1 0-10.8 3.2.4 5.3-.3 11.1-2.2 9-3 6.6-7.7 12.7-8-5.2 1.2-3.2 12.2-11.6 12.9v-.2z" fill="#CE6D42"/><path d="M99.5 275.788c-5.7-3-16.4-17-14.6-25.4 13 18.6 33.3 23 52.1 20.5-9.8 4.9-28.3 9.7-37.5 4.9z" fill="#7C2050"/><path d="M56.4 81.788c-.3.5-3.5 3.4 0 4.4 2.3.8 4-.3 4 1.5 0 1.2.5 2.7-1.3 2.8 1.3-2.8-2-3-3.4-1.9s-6.6-3.3-1-6.9c-4.9-3.2-9.8-9-9.7 1.4-4.9-7.3-.2-14.8 11.4-1.3zm164.3-11.5c-.5 1.4.8 1.8-.7 3.3 2.3-1 3.8-2.7 1.5-3.7 1 .4 2-1.6 2.2-2.6-.6.2-.3 0 0 0 5.8-2.2 6.4 3 6.7 3.4 1.8-2.2 0-6-4.7-6.3-2.1-.2.2-2-7.9-4.1 3.6 1 4.7 2.9 5.2 4.4-1.4-3.6 1 7.1-7.6 7.2 4.2.3 4.9-.9 5.3-1.6zm.7-.4z" fill="#CE6D42"/></g></svg>
images/mirrored_fit_bubble_woman_2_optim.svg ADDED
@@ -0,0 +1 @@
 
1
+ <svg viewBox="0 0 299 322" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true" focusable="false"><g transform="matrix(-1 0 0 1 298.412 0)" fill="none"><circle fill="#F0ECF0" cx="131.2" cy="190.029" r="131.2"/><path d="M262.5 92.23c-1 1.2-3 2.9-7.5 5a18.4 18.4 0 0 1-10.9 1.6c-.5-1-1-2.2-1.7-3.3l.4-.2.3-.2a14 14 0 0 0 3.3-.2c2.4.2 4.7-.6 6.9-3.2 3.1-3.9 1.7-10.7-1.3-14.6 2.6 2.5 4 5.7 6.4 8.6a231 231 0 0 1 3.3 4c.1.4 1.5 1.8.8 2.5zm-90.9 98.2a17.1 17.1 0 0 1 4 14.3c-11-7.9-22-18.9-31.8-37.8 26.5 1 39.4 8.8 39.5 8.7 43-17.2 51.7 1.5 66.8-6.3 2.3 4.7 5.3 6.3 8.4 9.4-13.5-13.9 5.7-22-5.1-57.7 7.3 0 20.8-4.8 22.9-9.7 14.8 26.3 10.5 39.9 17.8 54.6.6 1.2 2.3 6.7 3.5 8.2 2 2.8 0 7.7-2.7 10.6-29.7 32.8-68.9 33.6-93.5 36.8-6.4-4.6-13.8-8.5-21.5-13.7-1-5.1-1.2-11.2-8.3-17.4z" fill="#F9BF8C"/><path d="M253.4 121.03c10.8 35.8-8.4 43.8 5.1 57.8-3-3.2-6-4.8-8.4-9.5a52.999 52.999 0 0 1-.3-2.2 50.2 50.2 0 0 1-.4-5v-2l.1-3.6.1-1.8.3-3.7.4-3.7.6-5.6a153.4 153.4 0 0 0 .6-9.5v-2a69 69 0 0 0-.3-7.8l-.2-1.6a10.5 10.5 0 0 0 2.4.3v-.1zm-11-25.6l1.7 3.4h-.1c-1.9-.1-2.3-2.3-2.7-2.6l-.1-.2 1.2-.6z" fill="#DB7A53"/><path d="M219.7 95.53c-.7-1.6-3-3-5.5-3.6.1-.011.2-.011.3 0a8.4 8.4 0 0 0 5.1-1.3l-.3-.2a1.6 1.6 0 0 0 .2 0 3.3 3.3 0 0 0 2.7-.6 34.2 34.2 0 0 0 6.4-4 5 5 0 0 0 2-2.8l.4.3c-.7 6.5 5.4 11.5 12.1 11.9l-.3.1-.4.2-1.2.6c-3.8 1.9-11 5.7-13.6 5.6-2.9 0-6.9-2.2-9.8-3.9 1.4-.5 2.3-1.2 1.9-2.3z" fill="#DB7A53"/><path d="M223.7 76.23v.3a3.7 3.7 0 0 1-.2 1.3c-1.3-.7-2.4-1.5-2.6-2.6a3.2 3.2 0 0 1 .3-1.7 7.1 7.1 0 0 1 2.5 2.7z" fill="#F9BF8C"/><path d="M253.3 91.73c-2.1 2.6-4.5 3.4-6.9 3.2a13 13 0 0 0 5.2-2.3c-6 2.7-10.5 1.1-13.8-1.5a36.9 36.9 0 0 1-4.7-5.3c-1.1-1.6-1.8-2.8-2.1-2.9a3 3 0 0 0 0 .3l-.3-.3a2.4 2.4 0 0 0-.9-2 10.2 10.2 0 0 0-3.2-1.9 5.5 5.5 0 0 1 2.9.6c1.6.9 1 2.1 1.8 3.1a3.3 3.3 0 0 0 .2-3.7c-.8-1.3-4-1.1-6.1-1.3a2.3 2.3 0 0 0 0-.2l.8-1a1.3 1.3 0 0 1-.7-.8c-.8-1.2-2.4-2-4.2-2.6l.1-.2a16.4 16.4 0 0 1 2.2-3.5c.7-.8 5.5-.3 6.1-.6a21 21 0 0 0 2.5.7l16.8 5.1a7.8 7.8 0 0 1 3 2.5c3 3.9 4.4 10.7 1.3 14.6z" fill="#F9BF8C"/><path d="M228.6 85.73a34.2 34.2 0 0 1-6.4 4 3.3 3.3 0 0 1-2.6.6c1.5-.6 2.1-2.3.7-2.8l-.8-3.8a10 10 0 0 0 2-.7v.1c.5.8.4 4-.4 4.6 1-.2 2.2-3.1 2.5-4a1.3 1.3 0 0 0-.6-1.5 5.2 5.2 0 0 0 .8-.8 6.7 6.7 0 0 0 1.3-2 6.3 6.3 0 0 1 1.5-.4 10.2 10.2 0 0 1 3.2 1.9 2.4 2.4 0 0 1 .9 2 5 5 0 0 1-2.1 2.8zm-5-16.3a16.4 16.4 0 0 0-2.2 3.5l-.1.2a39 39 0 0 0-2.4-.6 9 9 0 0 1 2.3 1 3.2 3.2 0 0 0-.3 1.7c.3 1.1 1.3 2 2.6 2.6a11.3 11.3 0 0 1-.9 1.8 9.3 9.3 0 0 1-2.7 3.3l-.5.3-3.4-15.4-2.1-.3a4.4 4.4 0 0 1 2.7-1.4 35.6 35.6 0 0 1 13 2.7c-.5.3-5.3-.2-6 .6z" fill="#F9BF8C"/><path d="M219.4 83.23a6 6 0 0 1-2.8.7 7.8 7.8 0 0 1-1.5-.2 4 4 0 0 0 1.5.2 9.8 9.8 0 0 0 3-.2l.7 3.8c1.4.5.8 2.2-.7 2.8h-.1a1.6 1.6 0 0 1-.2 0 39 39 0 0 0-7-3c-.3-3.4-.6-6.7-2-9.7 1.7-2.8 3.2-5.6 1.7-6.6 0 1.3-1.1 3.4-2.4 5.4a13.3 13.3 0 0 0-1.2-1.7 13 13 0 0 0-5.2-3.6c.8-1.7 1.4-3.5 3.7-3.8a24.3 24.3 0 0 1 6.9.2l2.1.3 3.5 15.4z" fill="#F9BF8C"/><path d="M223.7 76.23a5 5 0 0 1 .6 3.4 7 7 0 0 1 .8-.3 6.7 6.7 0 0 1-1.3 2.1 5.2 5.2 0 0 1-.8.8 1.7 1.7 0 0 0-1.2-.2l-.2 1a10 10 0 0 1-2 .7 9.8 9.8 0 0 1-3 .2 6 6 0 0 0 2.8-.7l.5-.3a9.3 9.3 0 0 0 2.7-3.3 11.3 11.3 0 0 0 1-1.9 3.7 3.7 0 0 0 .1-1.3v-.2zm1.6 1.3c.007.1.007.2 0 .3v-.3z" fill="#DB7A53"/><path d="M223 82.23c.524.3.773.92.6 1.5-.3.9-1.4 3.8-2.5 4 .8-.7 1-3.8.5-4.6v-.1l.3-1a1.7 1.7 0 0 1 1.1.2z" fill="#DB7A53"/><path d="M201.4 91.73a3.1 3.1 0 0 0-.8.7c-2-.9-3.9-2.7-5.7-3.4-.5-.1-2.7-.8-2.9-1.4a13.7 13.7 0 0 0 5.2 2 43 43 0 0 0 4.2 2v.1zm.1-2.2h.1a30.3 30.3 0 0 0 5.4.4 30 30 0 0 0 3.6 1.6c-2.6-.3-5.7-1-8-.4l-2.2-1.3a2.7 2.7 0 0 0 1.1-.3zm13 2.5a1.4 1.4 0 0 0-.3 0 10.6 10.6 0 0 0-2-.4h-.4a26.6 26.6 0 0 1-3-1.8l1.7-.1a3.2 3.2 0 0 0 1.3-.4 1.2 1.2 0 0 0 .5-1l6.7 2.7-6.7-3.6a39 39 0 0 1 7 3c.1.2.3.2.4.3a8.4 8.4 0 0 1-5.2 1.3z" fill="#F9BF8C"/><path d="M225 79.33a7 7 0 0 0-.7.3 5 5 0 0 0-.6-3.4 7.1 7.1 0 0 0-2.5-2.7 9 9 0 0 0-2.2-1l2.3.7c1.8.5 3.4 1.3 4.2 2.6a1.3 1.3 0 0 0 .6.6c.2 0-.5.7-.8 1.1v.3c2.2 0 5.4-.1 6.2 1.2a3.3 3.3 0 0 1-.2 3.8c-.8-1-.2-2.3-1.8-3.2a5.5 5.5 0 0 0-3-.6 6.3 6.3 0 0 0-1.4.3h-.1zm6 3.9a3 3 0 0 1 0-.3c.3 0 1 1.3 2 3a23.8 23.8 0 0 0 4.8 5.2c3.3 2.6 7.8 4.2 13.8 1.6a13 13 0 0 1-5.2 2.2 14 14 0 0 1-3.3.2c-6.7-.4-12.8-5.4-12.1-11.9z" fill="#DB7A53"/><path d="M208.4 74.73c.478.53.913 1.099 1.3 1.7-1.4 2.2-3 4.3-3.5 5.3s-1.3 2.6-.3 3.6a38.8 38.8 0 0 0 6.4 3 1.2 1.2 0 0 1-.6 1 3.2 3.2 0 0 1-1.2.4l-1.8.1a14.4 14.4 0 0 0-3.6-1.9 13.4 13.4 0 0 1-3-1.2c0-.9-.3-2.4-.5-4 1.6-3 5-8.2 2.7-10.1.9 1.6-1.4 5.5-3 8l-.8-4a3.8 3.8 0 0 0 0-2 3.5 3.5 0 0 1-.2 1c-.4-1.6-.7-2.6-1-2.7-.9-.3-2 .6-3 2 1-2.2 1.5-4.1 4.7-4.1a7.3 7.3 0 0 1 2.2.4 13 13 0 0 1 5.2 3.5zm-6.1 13a39.6 39.6 0 0 1 4.7 2.2 30.3 30.3 0 0 1-5.3-.5 1.7 1.7 0 0 0 .6-1.7z" fill="#F9BF8C"/><path d="M207 84.53c-.2-1.3 1.6-4.1 3.3-6.9a27 27 0 0 1 2 9.7l-5.3-2.8zm-7.6-11.7c.3 0 .6 1.2 1 2.7-1.2 2.7-5.5 6.5-6.7 8.9a3.4 3.4 0 0 0-.6 2c.2.7 2 2 4.1 3.2a13.7 13.7 0 0 1-5.2-2l-.4-.3a1.7 1.7 0 0 1-.5-.5 1.5 1.5 0 0 1 0-1.2c.5-1.2 2.8-7.5 5.2-10.9 1-1.3 2.1-2.2 3-1.9h.1z" fill="#F9BF8C"/><path d="M199.4 86.63a5 5 0 0 0 2 .8l.9.3a1.7 1.7 0 0 1-.7 1.7v.1a2.7 2.7 0 0 1-1.2.3c-1.8-1-3.4-2.1-4.1-2.6-.4-.3-.8-.6-.9-1a1.7 1.7 0 0 1 .4-1c1.2-2 4-5.9 4.7-8.7l.7 4-1 1.5c-1 1.5-2.2 3.5-.8 4.6z" fill="#F9BF8C"/><path d="M201.2 86.03c-.5-.7-.6-.8-.4-1.7a9.9 9.9 0 0 1 .8-1.6l.5 4a3 3 0 0 1-.9-.7z" fill="#F9BF8C"/><path d="M211.8 91.63h-1.2a30 30 0 0 1-3.6-1.7 39.6 39.6 0 0 0-4.7-2.2l-.8-.3a5 5 0 0 1-2-.8c-1.5-1.1-.3-3 .8-4.6l1-1.4c1.6-2.5 4-6.5 3.1-8 2.2 2-1.2 7-2.8 10.1a9.9 9.9 0 0 0-.7 1.6c-.3.9-.2 1 .4 1.7a3 3 0 0 0 .9.7 13.4 13.4 0 0 0 3 1.3 14.4 14.4 0 0 1 3.6 1.9 26.6 26.6 0 0 0 3 1.7z" fill="#DB7A53"/><path d="M195.8 85.33a1.7 1.7 0 0 0-.4 1c0 .4.5.7.9.9l4 2.6c.8.5 1.6 1 2.4 1.3a4.2 4.2 0 0 0-1.3.6 43 43 0 0 1-4.2-2c-2.1-1.3-4-2.6-4-3.3a3.4 3.4 0 0 1 .5-2c1.2-2.3 5.5-6.1 6.6-8.8a3.5 3.5 0 0 0 .3-1 3.8 3.8 0 0 1 0 2c-.8 2.8-3.6 6.6-4.8 8.7zm11.2-.8l5.3 2.8 6.7 3.7-6.7-2.6a38.8 38.8 0 0 1-6.4-3c-1-1-.4-2.4.3-3.5l3.5-5.4c1.3-2.2 2.4-4 2.4-5.3 1.5 1 0 3.7-1.8 6.5s-3.6 5.6-3.2 7l-.1-.2z" fill="#DB7A53"/><path d="M201.4 91.73a4.2 4.2 0 0 1 1.3-.6c2.2-.5 5.3.1 7.9.4l1.2.1h.4a10.6 10.6 0 0 1 2 .3c2.4.6 4.8 2 5.4 3.6.5 1-.5 1.8-1.8 2.2a11.1 11.1 0 0 1-2 .4c-4.2.6-5.5 2-11.5 2.8-2.6.4-4.4-4-4.4-5.9a4.2 4.2 0 0 1 .7-2.6 3.1 3.1 0 0 1 .8-.7z" fill="#F9BF8C"/><path d="M253.4 121.03a10.5 10.5 0 0 1-2.4-.2 5.3 5.3 0 0 1-.7-.2c-2.4-.9-8.6-17.6-9.3-21-.3-1.2-.3-3.5.3-3.4.3.3.8 2.5 2.7 2.5h.1a18.4 18.4 0 0 0 10.9-1.5c4.6-2.1 6.6-3.8 7.6-5 .6-.8-.7-2.2-.9-2.5.4-.4 1.3.1 1.7.3 5.9 2.8 10.2 12.7 13.1 19.4a2.9 2.9 0 0 1-.1 1.9c-2.1 5-15.6 9.8-23 9.8v-.1z" fill="#A52A6A"/><path d="M171.6 190.43c7 6.2 7.3 12.3 8.3 17.4l-4.4-3a17 17 0 0 0-3.9-14.4z" fill="#DB7A53"/><path d="M41.3 265.93l-.5.2c6.5 8.6 14.1 17.5 21 30.5a28.8 28.8 0 0 1 2.8 7.7c45.714 25.792 102.423 21.736 144-10.3-.8-3.5-1.7-7.1-2.8-11 12.67-7.311 18.506-22.484 14-36.4a43 43 0 0 0-18.4-25.1c-6.4-4.6-13.8-8.5-21.5-13.7l-4.4-3c-10.8-8-22-19-31.7-37.9l-.1-.2a71 71 0 0 0-19.9-2.3c12 5.8 41 37 4.2 43-29 3.1-47.3-27.9-84-28.7a47.8 47.8 0 0 0-13.5 9.4l-1 1a37 37 0 0 1 4.7-2c16.4 1 27 15.3 32.9 30.3 10.3 26.2 6.2 44.7-2.6 50.6-5.3 3.6-13.3 2.7-20-3.7l-1.5.7-1 .6-.7.3z" fill="#009288"/><path d="M29.5 189.23a37 37 0 0 1 4.5-2.2c16.4 1 27 15.3 33 30.3 10.3 26.2 6.2 44.7-2.6 50.6-5.3 3.6-13.4 2.7-20-3.7l-1.5.7c6.9-5.7 4.9-6.8 18-4.4-10.8-6.4-16.1-9.1-38.7 6.1a122.2 122.2 0 0 1-21.4-53.5 133 133 0 0 1 28.7-24.1v.2z" fill="#F9BF8C"/><path d="M61 260.63c-13.2-2.4-11.1-1.3-18 4.4l-1 .6-.6.2-.6.3-.5.3-.6.3-1.1.6-.7.3-1 .6-.7.4-1.2.6-.6.3-1.3.7-.6.3-1.3.7-.5.3-1.4.8-.3.1-1.6 1-.6-.9-4.5-5.8c22.6-15.2 27.9-12.4 38.7-6v-.1z" fill="#DB7A53"/><path d="M128 207.43c-29.2 3.1-47.5-28.2-84.5-28.7 14.2-5.2 23-11.3 23-27.1 0-8.8-2.7-25.8-3.6-38.2 0 0 57 21.4 57.8 36.1l2 14.3c11.2 4.3 43.3 37.4 5.3 43.6z" fill="#F9BF8C"/><path d="M87.3 151.73a56.8 56.8 0 0 1-17.1-22.8 62.4 62.4 0 0 0 43 22c2.5-.1 5-.2 7.3-.5v.5l.2 1.2c-4.7 11.9-7.3 19.5-33.4-.4z" fill="#DB7A53"/><path d="M162 280.43c.5 7.4-16.2 16.2-30.8 17.3-19.8 1.4-54.8-9.2-48-40.7 18.2 35 68.8 31.3 78.8 23.4z" fill="#216D64"/><path d="M122.5 72.33a9.8 9.8 0 0 0-2.1-.8h2.6l-.5.8zm-9.9.8a4.8 4.8 0 0 0-.6-1.7c7.3 0 4-.6.6 1.7zm12.6 14l.8.8c-.9-1.5-1.5-4.6-2.9-12.6l-.4-.3a16 16 0 0 0 2.5 12.1z" fill="#F9BF8C"/><path d="M154.7 95.83a44.5 44.5 0 0 0-1.6-8.2c-2-6-4.8-6.6-7.3-9.6a50.6 50.6 0 0 0-1-23.9c0 .1-8.7-35.8-54.2-22a44.6 44.6 0 0 0-10 5.9c-10.6 8.2-7.6 13.4-10 25.4a74.9 74.9 0 0 1-4.4 11.9c-4.8 3.8-7.6 6.5-8.1 9.9 1 4.7 5.4 18.3 5 28.1 6 27.2 36.6 38.3 50 37.6 2.6-.1 5-.2 7.4-.5 6.5-.7 11.9-2.8 17-11.3 6.4-10.8 5.6-16.5 9.4-22.5 2.5-4.1 9-9.7 7.8-20.8zm-42.2-19.5c-1 7.6-2.5 10.5-5.3 11.4a18.3 18.3 0 0 0 1.3-3.3c-4.6 2.5-17 2.8-21.2-3-.9.4-2 .4-4-.6l.2-.1c4.2-.1 2.6-1 4.1-3.8a10.6 10.6 0 0 1 .6-1h17.1a11 11 0 0 1 3.8 6.7 58.3 58.3 0 0 0 1.2-6.8l3-.2-.8.7z" fill="#F9BF8C"/><path d="M112.6 124.23c-4-2-5.6-6.3-11.6-10.8 10 5.2 19.3 6.3 26.5 3.8-1.7 1.7 1.2 6.3-3.5 8.4-4 1.7-7.3.5-11.4-1.4z" fill="#D86060"/><path d="M101 113.43l-1.6-.8c7.9-.3 12.9-.7 17.2-.3 2.2.3 2.2 2 3.8 2 1.6 0 2.7-1.6 4.4-1.4 1.2.2 3 1.1 5.6 3a20.3 20.3 0 0 1-2.9 1.2c-7.2 2.6-16.6 1.5-26.5-3.7z" fill="#BC3939"/><path d="M108.5 84.43l.2-.5a15.2 15.2 0 0 0-2.3-3.8c-5-5.8-13.6-5.1-16.5-1.6-.9 1.3-1.5 2.4-2.6 3 4.1 5.7 16.6 5.4 21.2 3v-.1zM97 85.63a4.8 4.8 0 1 1 .408-9.592A4.8 4.8 0 0 1 97 85.629z" fill="#FFF"/><path d="M89.9 78.53c-.9 1.3-1.5 2.4-2.6 3-1.1.6-2 .2-4-.7l.2-.2c4.2 0 2.6-1 4.1-3.7 2.8-5.2 9-4.8 14.6-3 .1 0 5.9 2.4 6.8 8.7l-.3 1.2a14.4 14.4 0 0 0-2.3-3.7c-5-5.8-13.6-5.1-16.5-1.6z" fill="#000"/><path d="M127.5 83.03h-.1a27 27 0 0 0 11.6.6c2.7-1 4.8-4 5-6.8-1.8-1.2-2.8-4.6-8.2-2.9-5 1.6-7 4.2-8.3 9v.1zm2.8-3.7a4.4 4.4 0 1 1 8.798-.2 4.4 4.4 0 0 1-8.798.2z" fill="#FFF"/><path d="M145.1 75.33c0 .5.5.7 1 .9a8 8 0 0 0 1.2.1l.1.2a5 5 0 0 1-1.4.6 2.4 2.4 0 0 1-2-.4c-1.8-1.2-2.8-4.6-8.2-2.8-4.9 1.6-7 4.2-8.3 9h-.2c-1.2-6.7 4-11.3 9-12.5l3.1-.2c2.8.2 5.2 1.8 5.7 5.1z" fill="#000"/><path d="M106.7 61.53c-4 0-8.2-.4-11.7-.3-3.6.1-8.3 1.7-12.8 4.6 1.9-4 8.5-7.2 12.5-7.7 2.9-.3 6.8-.7 9.7-.2 3.7.7 5.6 3.1 2.3 3.6zm24.7 5.6c2.3-2.6 6.8-6.2 9.4-5.8 3 .4 3.5 1.2 5.4 3.6.056.898.056 1.8 0 2.7H145a7.6 7.6 0 0 0-4.7-2.2c-1.9-.1-7 1.2-8.8 1.7h-.1z" fill="#B2512B"/><circle fill="#000" transform="rotate(-78.1 97.1 80.83)" cx="97.1" cy="80.829" r="4.8"/><circle fill="#000" cx="134.7" cy="79.329" r="4.4"/><path d="M106.3 109.73a40 40 0 0 1-10.3-1.3c-1.9 2-.1 6.6-.7 9.2-1-3.4-4-8-2.2-12.4a28.7 28.7 0 0 0 13.2-1c9-2.8 6.6-6.2 12.6-6.5-5.2 1-4.4 11.4-12.6 12z" fill="#DB7A53"/><path d="M54 29.03c3-3.6 13.5-5.8 20-6-.5 1.3 4.5 2.7 4 4a37.3 37.3 0 0 0 8.4-.2 3.5 3.5 0 0 0 .4 2.7l3.8 2.6a44.6 44.6 0 0 0-10.1 5.9c-10.5 8.2-7.5 13.4-9.9 25.4a74.9 74.9 0 0 1-4.4 11.9l-12.4 7a10.3 10.3 0 0 0-5.3-.7l-.3-.4c-2.2-4-6.8-14.2-7.2-18.8-1.4-11.4 1.2-25 10-32.4a18.5 18.5 0 0 1 3-2 9.8 9.8 0 0 0 .1 1H54zm2.7 55l1.4.7 3.5-1.6a5.5 5.5 0 0 1-2.4 1.9 10.4 10.4 0 0 1-1.2.2l-1.2-1.2h-.1z" fill="#838BC5"/><path d="M127 22.23c-7.5-4.7-7-2-15.6-4l5.2-.4c-13.3-1-28.6 3.4-30.1 9a37.3 37.3 0 0 1-8.4.2c.5-1.3-4.6-2.6-4-4-6.6.2-17 2.4-20.1 6a9.8 9.8 0 0 1 0-1c0-8.2 10.8-17.8 30.3-15.8 13.4-14.3 42.4-21 61 8.1-13-7.3-16.2-.2-19.3.8 7.8-1.6 27.3 3 28.9 24.3-1.7-7.8-8.4-8.6-13.6-8-1.7-2.3-3.5-4.3-4.9-5.9-4.5-5.2-3.5-5.7-9.4-9.3z" fill="#0071BC"/><path d="M137.4 46.73c3.4 14.5-3.1 19.3-22.4 18.8 12.5-8.9 11.5-19.3 2-26.1-8.2-6-14 .2-26.4-7.3a46 46 0 0 1-3.8-2.6 3.5 3.5 0 0 1-.3-2.7c1.5-5.6 16.8-10 30-9l-5 .3c8.6 2.2 8-.6 15.5 4 5.9 3.7 4.9 4.2 9.4 9.5 1.4 1.6 3.2 3.5 4.8 5.8 3 4.2 5.5 9.6 3.5 16.7a26 26 0 0 1-2.6 6.2 14.6 14.6 0 0 0-4.7-13.6z" fill="#0071BC"/><path d="M126.1 69.33h-.7a14.6 14.6 0 0 1 3.2-1.7 14.8 14.8 0 0 0-2.5 1.7zm-.9 17.8l.8.8c1.2 1.8 2.7 1.5 6.3 4.8l.6.2c1.8 1.7 2.8 3.7 2 6.4-.2 3.2-5.3 8.2-12 5.8 5.3-1 6.9-.8 7.6-5.6-.2-6.7-8.3-4-10-16.5a17.3 17.3 0 0 1 .9-8.8 9 9 0 0 1 1.3.8 16 16 0 0 0 2.5 12.1zm-2.1-14.5a6.3 6.3 0 0 0-.6-.3l.5-.9c1 0 .4.2.1 1.2z" fill="#DB7A53"/><path d="M56.7 84.03a12.7 12.7 0 0 0-3-1.7l12.4-7 9.2-5.2c-1.3 1.7-1.6 4.2-1.1 7l-12.6 6-3.5 1.7-1.4-.8z" fill="#93278F"/><path d="M151 92.03c5.5-1.8 14.3-20.4 5.8-23.5-5.4-2-24.6-.6-29.9.8-29.7-.4-42.2-3.3-49.3-.7a5 5 0 0 0-2.3 1.6c-4.3 5.5 3.1 20.2 8 21.8a46.3 46.3 0 0 0 12.5 1.6c11.6 0 14.8-2.2 16.6-17.3 1-.6 4.4-4.3 9-2a10.6 10.6 0 0 1 1.8 1c2.9 17.6 2.5 11.3 9.1 17.5l.6.1c5.8 1.4 13.9.5 18.1-.9zm-40.5-17.9c-.4 3.6-1.7 13.4-4.8 15.4-4.2 2.8-17 2-21.7.4-4-1.4-11.5-17.2-5.7-19.3 5.6-2 23.8 0 29.6.6 0 .2 2.8.3 2.6 3v-.1zm2.1-1a4.8 4.8 0 0 0-.6-1.8c7.3.2 4-.5.6 1.8zm10.5-.5a10 10 0 0 0-2.7-1.2c4.2.1 3.1-.3 2.7 1.2zm27.2 17.4c-4.7 1.6-16.3 2.5-20.6-.4-1-.7-2.8-5.1-4.5-15.3-.4-2.8 2.6-2.5 2.6-2.8.9-.2 4.3-.7 8.5-1 4.2-.3 15.6-1.2 19.7.2 5.8 2.1-1.6 18-5.7 19.3z" fill="#5D237A"/><path d="M45.5 82.33c-4.2 1.7-4.4 10-3 14.8 2.8 9.2 12 17.6 21.7 16.1 5.2-.7 1.5-5.7-1-16.4l-1-5.6c-3.3-7-9.4-11.7-16.7-8.9zm13.2 13c-.4.4-4.4 3.1-1.2 5 2.2 1.5 4 .5 3.6 2.6-.3 1.4 0 3.3-2 3 2-3-1.1-4-3-2.9s-5.7-5.3.9-8.2c-4-4.8-7.5-12.8-10-.5-3-9.7 3.6-17.3 11.7 1z" fill="#F9BF8C"/><path d="M58.7 95.33c-.4.4-4.4 3.1-1.2 5 2.2 1.5 4 .5 3.6 2.6-.3 1.4 0 3.3-2 3 2-3-1.1-4-3-2.9s-5.7-5.3.9-8.2c-4-4.8-7.5-12.8-10-.5-3-9.7 3.6-17.3 11.7 1z" fill="#CE6D42"/></g></svg>
images/newsletter-collage.png DELETED
Binary file
images/profile-social-fields.png ADDED
Binary file
inc/class-wpseo-admin-bar-menu.php CHANGED
@@ -210,16 +210,6 @@ class WPSEO_Admin_Bar_Menu implements WPSEO_WordPress_Integration {
210
  ];
211
  $wp_admin_bar->add_menu( $admin_bar_menu_args );
212
  }
213
-
214
- if ( ! is_network_admin() && $can_manage_options ) {
215
- $admin_bar_menu_args = [
216
- 'parent' => self::MENU_IDENTIFIER,
217
- 'id' => 'wpseo-configuration-wizard',
218
- 'title' => __( 'Configuration Wizard', 'wordpress-seo' ),
219
- 'href' => admin_url( 'admin.php?page=' . WPSEO_Configuration_Page::PAGE_IDENTIFIER ),
220
- ];
221
- $wp_admin_bar->add_menu( $admin_bar_menu_args );
222
- }
223
  }
224
 
225
  /**
210
  ];
211
  $wp_admin_bar->add_menu( $admin_bar_menu_args );
212
  }
 
 
 
 
 
 
 
 
 
 
213
  }
214
 
215
  /**
inc/class-wpseo-replace-vars.php CHANGED
@@ -87,7 +87,7 @@ class WPSEO_Replace_Vars {
87
  *
88
  * @see wpseo_register_var_replacement() for a usage example.
89
  *
90
- * @param string $var The name of the variable to replace, i.e. '%%var%%'.
91
  * Note: the surrounding %% are optional.
92
  * @param mixed $replace_function Function or method to call to retrieve the replacement value for the variable.
93
  * Uses the same format as add_filter/add_action function parameter and
@@ -97,22 +97,22 @@ class WPSEO_Replace_Vars {
97
  *
98
  * @return bool Whether the replacement function was succesfully registered.
99
  */
100
- public static function register_replacement( $var, $replace_function, $type = 'advanced', $help_text = '' ) {
101
  $success = false;
102
 
103
- if ( is_string( $var ) && $var !== '' ) {
104
- $var = self::remove_var_delimiter( $var );
105
 
106
- if ( preg_match( '`^[A-Z0-9_-]+$`i', $var ) === false ) {
107
  trigger_error( esc_html__( 'A replacement variable can only contain alphanumeric characters, an underscore or a dash. Try renaming your variable.', 'wordpress-seo' ), E_USER_WARNING );
108
  }
109
- elseif ( strpos( $var, 'cf_' ) === 0 || strpos( $var, 'ct_' ) === 0 ) {
110
  trigger_error( esc_html__( 'A replacement variable can not start with "%%cf_" or "%%ct_" as these are reserved for the WPSEO standard variable variables for custom fields and custom taxonomies. Try making your variable name unique.', 'wordpress-seo' ), E_USER_WARNING );
111
  }
112
- elseif ( ! method_exists( __CLASS__, 'retrieve_' . $var ) ) {
113
- if ( $var !== '' && ! isset( self::$external_replacements[ $var ] ) ) {
114
- self::$external_replacements[ $var ] = $replace_function;
115
- $replacement_variable = new WPSEO_Replacement_Variable( $var, $var, $help_text );
116
  self::register_help_text( $type, $replacement_variable );
117
  $success = true;
118
  }
@@ -131,20 +131,20 @@ class WPSEO_Replace_Vars {
131
  /**
132
  * Replace `%%variable_placeholders%%` with their real value based on the current requested page/post/cpt/etc.
133
  *
134
- * @param string $string The string to replace the variables in.
135
  * @param array $args The object some of the replacement values might come from,
136
  * could be a post, taxonomy or term.
137
  * @param array $omit Variables that should not be replaced by this function.
138
  *
139
  * @return string
140
  */
141
- public function replace( $string, $args, $omit = [] ) {
142
 
143
- $string = wp_strip_all_tags( $string );
144
 
145
  // Let's see if we can bail super early.
146
- if ( strpos( $string, '%%' ) === false ) {
147
- return YoastSEO()->helpers->string->standardize_whitespace( $string );
148
  }
149
 
150
  $args = (array) $args;
@@ -162,7 +162,7 @@ class WPSEO_Replace_Vars {
162
  }
163
 
164
  $replacements = [];
165
- if ( preg_match_all( '`%%([^%]+(%%single)?)%%?`iu', $string, $matches ) ) {
166
  $replacements = $this->set_up_replacements( $matches, $omit );
167
  }
168
 
@@ -178,11 +178,11 @@ class WPSEO_Replace_Vars {
178
 
179
  // Do the actual replacements.
180
  if ( is_array( $replacements ) && $replacements !== [] ) {
181
- $string = str_replace(
182
  array_keys( $replacements ),
183
  // Make sure to exclude replacement values that are arrays e.g. coming from a custom field serialized value.
184
  array_filter( array_values( $replacements ), 'is_scalar' ),
185
- $string
186
  );
187
  }
188
 
@@ -198,25 +198,25 @@ class WPSEO_Replace_Vars {
198
  // Remove non-replaced variables.
199
  $remove = array_diff( $matches[1], $omit ); // Make sure the $omit variables do not get removed.
200
  $remove = array_map( [ __CLASS__, 'add_var_delimiter' ], $remove );
201
- $string = str_replace( $remove, '', $string );
202
  }
203
 
204
  // Undouble separators which have nothing between them, i.e. where a non-replaced variable was removed.
205
  if ( isset( $replacements['%%sep%%'] ) && ( is_string( $replacements['%%sep%%'] ) && $replacements['%%sep%%'] !== '' ) ) {
206
- $q_sep = preg_quote( $replacements['%%sep%%'], '`' );
207
- $string = preg_replace( '`' . $q_sep . '(?:\s*' . $q_sep . ')*`u', $replacements['%%sep%%'], $string );
208
  }
209
 
210
  // Remove superfluous whitespace.
211
- $string = YoastSEO()->helpers->string->standardize_whitespace( $string );
212
 
213
- return $string;
214
  }
215
 
216
  /**
217
  * Register a new replacement variable if it has not been registered already.
218
  *
219
- * @param string $var The name of the variable to replace, i.e. '%%var%%'.
220
  * Note: the surrounding %% are optional.
221
  * @param mixed $replace_function Function or method to call to retrieve the replacement value for the variable.
222
  * Uses the same format as add_filter/add_action function parameter and
@@ -226,9 +226,9 @@ class WPSEO_Replace_Vars {
226
  *
227
  * @return bool `true` if the replace var has been registered, `false` if not.
228
  */
229
- public function safe_register_replacement( $var, $replace_function, $type = 'advanced', $help_text = '' ) {
230
- if ( ! $this->has_been_registered( $var ) ) {
231
- return self::register_replacement( $var, $replace_function, $type, $help_text );
232
  }
233
  return false;
234
  }
@@ -760,16 +760,16 @@ class WPSEO_Replace_Vars {
760
  /**
761
  * Retrieve a post/page/cpt's custom field value for use as replacement string.
762
  *
763
- * @param string $var The complete variable to replace which includes the name of
764
- * the custom field which value is to be retrieved.
765
  *
766
  * @return string|null
767
  */
768
- private function retrieve_cf_custom_field_name( $var ) {
769
  $replacement = null;
770
 
771
- if ( is_string( $var ) && $var !== '' ) {
772
- $field = substr( $var, 3 );
773
  if ( ! empty( $this->args->ID ) ) {
774
  // Post meta can be arrays and in this case we need to exclude them.
775
  $name = get_post_meta( $this->args->ID, $field, true );
@@ -791,17 +791,17 @@ class WPSEO_Replace_Vars {
791
  /**
792
  * Retrieve a post/page/cpt's custom taxonomies for use as replacement string.
793
  *
794
- * @param string $var The complete variable to replace which includes the name of
795
- * the custom taxonomy which value(s) is to be retrieved.
796
- * @param bool $single Whether to retrieve only the first or all values for the taxonomy.
797
  *
798
  * @return string|null
799
  */
800
- private function retrieve_ct_custom_tax_name( $var, $single = false ) {
801
  $replacement = null;
802
 
803
- if ( ( is_string( $var ) && $var !== '' ) && ! empty( $this->args->ID ) ) {
804
- $tax = substr( $var, 3 );
805
  $name = $this->get_terms( $this->args->ID, $tax, $single );
806
  if ( $name !== '' ) {
807
  $replacement = $name;
@@ -814,16 +814,16 @@ class WPSEO_Replace_Vars {
814
  /**
815
  * Retrieve a post/page/cpt's custom taxonomies description for use as replacement string.
816
  *
817
- * @param string $var The complete variable to replace which includes the name of
818
- * the custom taxonomy which description is to be retrieved.
819
  *
820
  * @return string|null
821
  */
822
- private function retrieve_ct_desc_custom_tax_name( $var ) {
823
  $replacement = null;
824
 
825
- if ( is_string( $var ) && $var !== '' ) {
826
- $tax = substr( $var, 8 );
827
  if ( ! empty( $this->args->ID ) ) {
828
  $terms = get_the_terms( $this->args->ID, $tax );
829
  if ( is_array( $terms ) && $terms !== [] ) {
@@ -1503,23 +1503,23 @@ class WPSEO_Replace_Vars {
1503
  /**
1504
  * Remove the '%%' delimiters from a variable string.
1505