Linux heracles.o2switch.net 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64
/
home
/
ophq1335
/
www
/
wp-content
/
plugins
/
wp-seopress
/
src
/
Actions
/
Api
/
Options
/
/home/ophq1335/www/wp-content/plugins/wp-seopress/src/Actions/Api/Options/WoocommerceSettings.php
<?php // phpcs:ignore namespace SEOPress\Actions\Api\Options; if ( ! defined( 'ABSPATH' ) ) { exit; } use SEOPress\Core\Hooks\ExecuteHooks; /** * Woocommerce Settings */ class WoocommerceSettings implements ExecuteHooks { /** * Current user ID * * @var int */ private $current_user = ''; /** * The Woocommerce Settings hooks. * * @since 5.0.0 */ public function hooks() { $this->current_user = wp_get_current_user()->ID; add_action( 'rest_api_init', array( $this, 'register' ) ); } /** * The Woocommerce Settings permission check. * * @param \WP_REST_Request $request The request. * * @since 7.10 * * @return boolean */ public function permissionCheck( \WP_REST_Request $request ) { $current_user = $this->current_user ? $this->current_user : wp_get_current_user()->ID; if ( ! user_can( $current_user, 'edit_posts' ) ) { return false; } return true; } /** * The Woocommerce Settings register. * * @since 7.10 * * @return void */ public function register() { register_rest_route( 'seopress/v1', '/options/woocommerce-settings', array( 'methods' => 'GET', 'callback' => array( $this, 'processGet' ), 'permission_callback' => array( $this, 'permissionCheck' ), ) ); } /** * The Woocommerce Settings process get. * * @param \WP_REST_Request $request The request. * * @since 7.10 */ public function processGet( \WP_REST_Request $request ) { $data = array(); if ( ! is_plugin_active( 'woocommerce/woocommerce.php' ) ) { return new \WP_REST_Response( $data ); } if ( function_exists( 'wc_get_page_id' ) ) { $data['pages']['shop'] = wc_get_page_id( 'shop' ); $data['pages']['cart'] = wc_get_page_id( 'cart' ); } return new \WP_REST_Response( $data ); } }