Beispiel #1
0
 function sanitize($newvalue, $option)
 {
     if ($option != $this->settings_field || empty($_POST)) {
         return $newvalue;
     }
     $data = stripslashes_deep($_POST);
     $seo_tool_settings_key = isset($newvalue['seo-tool']) ? 'scribe-seo-tool-settings-' . sanitize_title_with_dashes($newvalue['seo-tool']) : '';
     $seo_tool_settings = isset($data[$seo_tool_settings_key]) ? maybe_unserialize($data[$seo_tool_settings_key]) : array();
     $newvalue['seo-tool-settings'] = $seo_tool_settings;
     $scribe_api_key_status = Scribe_SEO::is_managed();
     if (!$scribe_api_key_status) {
         $scribe_api_key_status = !empty($newvalue['api-key']) ? Scribe_SEO::verify_scribe_api_key($newvalue['api-key']) : false;
     }
     if (isset($newvalue['your-url']) && $this->get_field_value('your-url') != $newvalue['your-url']) {
         Scribe_SEO::clear_keyword_research_cache();
     }
     if (!$scribe_api_key_status) {
         add_settings_error('', 'scribe-api-key-invalid', __('Your API key may not be valid. Please verify you have entered the correct key.', 'scribeseo'), 'error');
     } elseif (!empty($newvalue['seo-tool']) && empty($newvalue['your-url'])) {
         add_settings_error('', 'scribe-url-invalid', __('Scribe requires Your URL to function properly.', 'scribeseo'), 'error');
     }
     return $newvalue;
 }