setting_enabled['toggle-instant-indexing']) ? $siteseo->setting_enabled['toggle-instant-indexing'] : ''; $nonce = wp_create_nonce('siteseo_toggle_nonce'); $current_tab = isset($_GET['tab']) ? sanitize_key($_GET['tab']) : 'tab_siteseo_general'; $instant_subtabs = [ 'tab_siteseo_general' => esc_html__('General', 'siteseo'), 'tab_siteseo_settings' => esc_html__('Settings', 'siteseo'), ]; echo '
'; Util::admin_header(); echo '
'; wp_nonce_field('siteseo_instant_indexing'); Util::render_toggle('Instant Indexing - SiteSEO', 'indexing_toggle', $indexing_toggle, $nonce); echo '
'; Util::submit_btn(); echo '
'; } static function general(){ global $siteseo; if(!empty($_POST['submit'])){ self::save_settings(); } $options = get_option('siteseo_instant_indexing_option_name'); //$options = $siteseo->instant_settings; $option_engines = !empty($options['engines']) ? $options['engines'] : ''; $option_search_engine_google = !empty($option_engines['google']) ? $option_engines['google'] : ''; $option_search_engine_bing = !empty($option_engines['bing']) ? $option_engines['bing'] : ''; $option_action = !empty($options['instant_indexing_google_action']) ? $options['instant_indexing_google_action'] : ''; $option_manual_batch = !empty($options['instant_indexing_manual_batch']) ? $options['instant_indexing_manual_batch'] : ''; echo '

'.esc_html__('Instant Indexing','siteseo').'

'.esc_html__('Utilize the Indexing API to inform Google and Bing about updates or removals of pages from their indexes. The process may take a few minutes. You can submit URLs in batches of up to 100 (maximum 200 requests per day for Google).','siteseo').'

'.esc_html__('How does this work?', 'siteseo').'

  1. '. /* translators: placeholders are just tag */ wp_kses_post(sprintf(__('Setup your Google / Bing API keys from the %1$s Settings %2$s tab', 'siteseo'), '', '')).'
  2. '. /* translators: placeholders are just tag */ wp_kses_post(sprintf(__('%1$s Enter the URLs %2$s you want to index in the field below.', 'siteseo'), '', '')).'
  3. '.wp_kses_post(__('Save changes', 'siteseo')).'
  4. '. /* translators: placeholders are just tag */ wp_kses_post(sprintf(__('Click %1$s Submit URLs to Google & Bing %2$s', 'siteseo'), '', '')).'
'.esc_html__('select search engines','siteseo').'
'.esc_html__('Which action to run for Google?', 'siteseo') .'
'.esc_html__('Submit URLs for indexing','siteseo').'
'; } static function settings(){ global $siteseo,$docs; if(!empty($_POST['submit'])){ self::save_settings(); } $docs['instant_indexing']['api'] = 'https://console.cloud.google.com/apis/library/indexing.googleapis.com?hl=en'; $docs['instant_indexing']['google'] = 'https://siteseo.io/docs/api-cli-dev/use-google-instant-indexing-api-with-siteseo-pro/'; //$options = $siteseo->instant_settings; $options = get_option('siteseo_instant_indexing_option_name'); $option_google_api_key = !empty($options['instant_indexing_google_api_key']) ? $options['instant_indexing_google_api_key'] : ''; $option_bing_api_key = !empty($options['instant_indexing_bing_api_key']) ? $options['instant_indexing_bing_api_key'] : ''; $option_auto_url_submission = !empty($options['instant_indexing_automate_submission']) ? $options['instant_indexing_automate_submission'] : ''; echo '

'.esc_html__('Settings','siteseo').'

'.esc_html__('Instant Indexing Google API Key','siteseo').'
'.esc_html__('Instant Indexing Bing API Key', 'siteseo').'

'.esc_html__('The Bing Indexing API key is generated automatically. Click Generate Key if you need to recreate it or if it missing.', 'siteseo') .'

'.esc_html__('A key should look like this: YjI4MGQxZmU0NWM1NGY2ZGIxMDk5M2VlYTAxMTUyODI=', 'siteseo') .'

'.esc_html__('Automate URL Submission','siteseo').'

'.esc_html__('Inform search engines via the IndexNow protocol currently Bing whenever a post is created, updated, or removed.','siteseo').'

'; } static function save_settings(){ global $siteseo; check_admin_referer('siteseo_instant_indexing'); if(!current_user_can('siteseo_manage')|| !is_admin()){ return; } $options = []; if(empty($_POST['siteseo_options'])){ return; } if(isset($_POST['siteseo_options']['general'])){ // general tab $options['engines']['bing'] = isset($_POST['siteseo_options']['search_engine_bing']); $options['engines']['google'] = isset($_POST['siteseo_options']['search_engine_google']); $options['instant_indexing_google_action'] = isset($_POST['siteseo_options']['instant_indexing_actions']) ? sanitize_text_field(wp_unslash($_POST['siteseo_options']['instant_indexing_actions'])) : 'URL_UPDATED'; $options['instant_indexing_manual_batch'] = isset($_POST['siteseo_options']['instant_indexing_batch']) ? sanitize_textarea_field(wp_unslash($_POST['siteseo_options']['instant_indexing_batch'])) : ''; } if(isset($_POST['siteseo_options']['setting_tab'])){ // setting tab $options['instant_indexing_google_api_key'] = isset($_POST['siteseo_options']['google_api_key']) ? sanitize_text_field(wp_unslash($_POST['siteseo_options']['google_api_key'])) : ''; $options['instant_indexing_bing_api_key'] = isset($_POST['siteseo_options']['bing_api_key']) ? sanitize_text_field(wp_unslash($_POST['siteseo_options']['bing_api_key'])) : ''; $options['instant_indexing_automate_submission'] = isset($_POST['siteseo_options']['auto_submission']); } update_option('siteseo_instant_indexing_option_name', $options); } }