function aioseop_output_dismissable_notice($message, $id = "", $class = "updated fade") { global $current_user; if (!empty($current_user)) { $user_id = $current_user->ID; $msgid = md5($message); $ignore = get_user_meta($user_id, 'aioseop_ignore_notice'); if (!empty($ignore) && in_array($msgid, $ignore)) { return false; } global $wp; $qa = array(); wp_parse_str($_SERVER["QUERY_STRING"], $qa); $qa['aioseop_ignore_notice'] = $msgid; $url = '?' . build_query($qa); $message = '<p class=alignleft>' . $message . '</p><p class="alignright"><a class="aioseop_dismiss_link" href="' . $url . '">Dismiss</a></p>'; } return aioseop_output_notice($message, $id, $class); }
function generate_htaccess_blocklist() { if (!$this->option_isset('htaccess_rules')) { if (insert_with_markers(get_home_path() . '.htaccess', $this->name, '')) { aioseop_output_notice(__('Updated .htaccess rules.', 'all-in-one-seo-pack')); } else { aioseop_output_notice(__('Failed to update .htaccess rules!', 'all-in-one-seo-pack'), '', 'error'); } return; } if (function_exists('apache_get_modules')) { $modules = apache_get_modules(); foreach (array('mod_authz_host', 'mod_setenvif') as $m) { if (!in_array($m, $modules)) { aioseop_output_notice(sprintf(__('Apache module %s is required!', 'all-in-one-seo-pack'), $m), '', 'error'); } } } $botlist = $this->default_bad_bots(); $botlist = apply_filters($this->prefix . 'badbotlist', $botlist); if (!empty($botlist)) { $regex = $this->quote_list_for_regex($botlist, '"'); $htaccess = array(); $htaccess[] = 'SetEnvIfNoCase User-Agent "' . $regex . '" bad_bot'; if ($this->option_isset('edit_blocks') && $this->option_isset('block_refer') && $this->option_isset('referlist')) { $referlist = $this->default_bad_referers(); $referlist = apply_filters($this->prefix . 'badreferlist', $botlist); if (!empty($referlist)) { $regex = $this->quote_list_for_regex($referlist, '"'); $htaccess[] = 'SetEnvIfNoCase Referer "' . $regex . '" bad_bot'; } } $htaccess[] = 'Deny from env=bad_bot'; if (insert_with_markers(get_home_path() . '.htaccess', $this->name, $htaccess)) { aioseop_output_notice(__('Updated .htaccess rules.', 'all-in-one-seo-pack')); } else { aioseop_output_notice(__('Failed to update .htaccess rules!', 'all-in-one-seo-pack'), '', 'error'); } } else { aioseop_output_notice(__('No rules to update!', 'all-in-one-seo-pack'), '', 'error'); } }