File manager - Edit - /home/vblioqus/public_html/wp-content/plugins/wordpress-seo/src/schema/application/configuration/schema-configuration.php
Back
<?php // phpcs:disable Yoast.NamingConventions.NamespaceName.TooLong namespace Yoast\WP\SEO\Schema\Application\Configuration; use Easy_Digital_Downloads; use SeriouslySimplePodcasting\Integrations\Yoast\Schema\PodcastEpisode; use TEC\Events\Integrations\Plugins\WordPress_SEO\Events_Schema; use WP_Recipe_Maker; use WPSEO_Addon_Manager; use Yoast\WP\SEO\Helpers\Options_Helper; use Yoast\WP\SEO\Helpers\Product_Helper; use Yoast\WP\SEO\Helpers\Woocommerce_Helper; /** * Responsible for the schema configuration. * * @makePublic */ class Schema_Configuration { /** * The WooCommerce helper. * * @var Woocommerce_Helper */ private $woocommerce_helper; /** * The product helper. * * @var Product_Helper */ private $product_helper; /** * The addon manager. * * @var WPSEO_Addon_Manager */ private $addon_manager; /** * The options helper. * * @var Options_Helper */ private $options_helper; /** * Schema_Configuration constructor. * * @param Woocommerce_Helper $woocommerce_helper The WooCommerce helper. * @param Product_Helper $product_helper The product helper. * @param WPSEO_Addon_Manager $addon_manager The addon manager. * @param Options_Helper $options_helper The options helper. */ public function __construct( Woocommerce_Helper $woocommerce_helper, Product_Helper $product_helper, WPSEO_Addon_Manager $addon_manager, Options_Helper $options_helper ) { $this->woocommerce_helper = $woocommerce_helper; $this->product_helper = $product_helper; $this->addon_manager = $addon_manager; $this->options_helper = $options_helper; } /** * Returns the schema configuration. * * @return array<string, bool|array<string, array<string, bool|string>>> */ public function get_configuration(): array { return [ 'isSchemaDisabledProgrammatically' => $this->is_schema_disabled_programmatically(), 'schemaApiIntegrations' => $this->get_schema_api_integrations(), ]; } /** * Gets the schema API integrations status. * * @return array<string, array<string, bool|string>> The schema API integrations status. */ public function get_schema_api_integrations(): array { $woocommerce_seo_file = 'wpseo-woocommerce/wpseo-woocommerce.php'; $woocommerce_active = $this->woocommerce_helper->is_active(); $woocommerce_seo_active = \is_plugin_active( $woocommerce_seo_file ); $woocommerce_seo_installed = $this->addon_manager->is_installed( WPSEO_Addon_Manager::WOOCOMMERCE_SLUG ); $woocommerce_seo_activate_url = \wp_nonce_url( \self_admin_url( 'plugins.php?action=activate&plugin=' . $woocommerce_seo_file ), 'activate-plugin_' . $woocommerce_seo_file, ); $is_premium = $this->product_helper->is_premium(); return [ 'tec' => [ 'isActive' => \class_exists( Events_Schema::class ), ], 'ssp' => [ 'isActive' => \class_exists( PodcastEpisode::class ), ], 'wp-recipe-maker' => [ 'isActive' => \class_exists( WP_Recipe_Maker::class ), ], 'woocommerce' => [ 'isPrerequisiteActive' => $woocommerce_active, 'isActive' => $woocommerce_seo_active, 'isInstalled' => $woocommerce_seo_installed, 'activationLink' => $woocommerce_seo_activate_url, ], 'edd' => [ 'isActive' => \class_exists( Easy_Digital_Downloads::class ), 'isPremium' => $is_premium, ], ]; } /** * Checks if the schema is disabled programmatically via the wpseo_json_ld_output filter. * * Only returns true if schema is enabled via the option (toggle) but disabled by external code. * * @return bool Whether schema is disabled by external code. */ public function is_schema_disabled_programmatically(): bool { $deprecated_data = [ '_deprecated' => 'Please use the "wpseo_schema_*" filters to extend the Yoast SEO schema data - see the WPSEO_Schema class.', ]; /** * Filter documented in Schema_Presenter::present(). */ $filtered_schema = \apply_filters( 'wpseo_json_ld_output', $deprecated_data, '' ); return ( $filtered_schema === [] || $filtered_schema === false ); } }
| ver. 1.4 |
Github
|
.
| PHP 8.2.30 | Generation time: 0 |
proxy
|
phpinfo
|
Settings