File "ExportWCSettingsSiteVisibility.php"
Full Path: /home/romayxjt/public_html/wp-content/plugins/woocommerce/src/Admin/Features/Blueprint/Exporters/ExportWCSettingsSiteVisibility.php
File size: 1.85 KB
MIME-type: text/x-php
Charset: utf-8
<?php
declare( strict_types = 1);
namespace Automattic\WooCommerce\Admin\Features\Blueprint\Exporters;
use Automattic\WooCommerce\Blueprint\Exporters\HasAlias;
use Automattic\WooCommerce\Blueprint\Exporters\StepExporter;
use Automattic\WooCommerce\Blueprint\Steps\SetSiteOptions;
use Automattic\WooCommerce\Blueprint\UseWPFunctions;
/**
* Class ExportWCSettingsSiteVisibility
*
* This class exports WooCommerce settings on the Site Visibility page.
*
* @package Automattic\WooCommerce\Admin\Features\Blueprint\Exporters
*/
class ExportWCSettingsSiteVisibility implements StepExporter, HasAlias {
use UseWPFunctions;
/**
* Export Site Visibility settings.
*
* @return SetSiteOptions
*/
public function export() {
return new SetSiteOptions(
array(
'woocommerce_coming_soon' => $this->wp_get_option( 'woocommerce_coming_soon' ),
'woocommerce_store_pages_only' => $this->wp_get_option( 'woocommerce_store_pages_only' ),
)
);
}
/**
* Get the alias for this exporter.
*
* @return string
*/
public function get_alias() {
return 'setWCSettingsSiteVisibility';
}
/**
* Return label used in the frontend.
*
* @return string
*/
public function get_label() {
return __( 'Site Visibility', 'woocommerce' );
}
/**
* Return description used in the frontend.
*
* @return string
*/
public function get_description() {
return __( 'Includes all settings in WooCommerce | Settings | Visibility.', 'woocommerce' );
}
/**
* Get the name of the step.
*
* @return string
*/
public function get_step_name() {
return 'setSiteOptions';
}
/**
* Check if the current user has the required capabilities for this step.
*
* @return bool True if the user has the required capabilities. False otherwise.
*/
public function check_step_capabilities(): bool {
return current_user_can( 'manage_woocommerce' );
}
}