PluginProbe
Yoast SEO – Advanced SEO with real-time guidance and built-in AI / 28.3
Yoast SEO – Advanced SEO with real-time guidance and built-in AI v28.3
28.4 28.3 28.2 28.1 28.0 27.9 27.8 27.7 27.6 27.5 trunk 18.0 18.1 18.2 18.3 18.4 18.4.1 18.5 18.5.1 18.6 18.7 18.8 18.9 19.0 19.1 All 128 releases
wordpress-seo / src / actions / integrations-action.php

integrations-action.php in Yoast SEO – Advanced SEO with real-time guidance and built-in AI 28.3, at src/actions/integrations-action.php

58 lines 1.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Yoast\WP\SEO\Actions;
4
5 use Yoast\WP\SEO\Helpers\Options_Helper;
6
7 /**
8 * Class Integrations_Action.
9 */
10 class Integrations_Action {
11
12 /**
13 * The Options_Helper instance.
14 *
15 * @var Options_Helper
16 */
17 protected $options_helper;
18
19 /**
20 * Integrations_Action constructor.
21 *
22 * @param Options_Helper $options_helper The WPSEO options helper.
23 */
24 public function __construct( Options_Helper $options_helper ) {
25 $this->options_helper = $options_helper;
26 }
27
28 /**
29 * Sets an integration state.
30 *
31 * @param string $integration_name The name of the integration to activate/deactivate.
32 * @param bool $value The value to store.
33 *
34 * @return object The response object.
35 */
36 public function set_integration_active( $integration_name, $value ) {
37 $option_name = $integration_name . '_integration_active';
38 $success = true;
39 $option_value = $this->options_helper->get( $option_name );
40
41 if ( $option_value !== $value ) {
42 $success = $this->options_helper->set( $option_name, $value );
43 }
44
45 if ( $success ) {
46 return (object) [
47 'success' => true,
48 'status' => 200,
49 ];
50 }
51 return (object) [
52 'success' => false,
53 'status' => 500,
54 'error' => 'Could not save the option in the database',
55 ];
56 }
57 }
58