*/ if ( ! defined( 'ABSPATH' ) ) { exit; } // Exit if accessed directly class Amp_WP_Settings { /** * Initialize the class and set its properties. * * @since 1.0.0 */ public function __construct() { // Action - Add Settings Menu. add_action( 'admin_menu', array( $this, 'admin_menu' ), 20 ); /** * Classes responsible for defining settings that occur in the frontend area. */ require_once plugin_dir_path( dirname( __FILE__ ) ) . 'admin/settings/class-amp-wp-general.php'; require_once plugin_dir_path( dirname( __FILE__ ) ) . 'admin/settings/class-amp-wp-layout.php'; require_once plugin_dir_path( dirname( __FILE__ ) ) . 'admin/settings/class-amp-wp-social-links.php'; require_once plugin_dir_path( dirname( __FILE__ ) ) . 'admin/settings/class-amp-wp-analytics.php'; require_once plugin_dir_path( dirname( __FILE__ ) ) . 'admin/settings/class-amp-wp-translation.php'; require_once plugin_dir_path( dirname( __FILE__ ) ) . 'admin/settings/class-amp-wp-notice-bar.php'; require_once plugin_dir_path( dirname( __FILE__ ) ) . 'admin/settings/class-amp-wp-gdpr.php'; require_once plugin_dir_path( dirname( __FILE__ ) ) . 'admin/settings/class-amp-wp-structured-data.php'; // Action - Save Settings. add_action( 'admin_notices', array( $this, 'amp_wp_save_settings' ) ); } /** * Add Setting Page Under AMP WP Admin Menu. * * @since 1.0.0 */ public function admin_menu() { add_submenu_page( 'amp-wp-welcome', // string $parent_slug. 'Settings', // string $page_title. 'Settings', // string $menu_title. 'manage_options', // string $capability. 'amp-wp-settings', // string $menu_slug. array( $this, 'amp_wp_settings_tab_menu' ) // callable $function. ); } /** * Add Settings Tab Menu. * * @Since 1.0.4 */ public function amp_wp_settings_tab_menu() { $page = filter_input( INPUT_GET, 'page' ); ?>