Version Description
- Fixed an issue with the rename login page feature on WordPress v5.7.
Download this release
Release Info
Developer | mra13 |
Plugin | All In One WP Security & Firewall |
Version | 4.4.8 |
Comparing to | |
See all releases |
Code changes from version 4.4.4 to 4.4.8
- admin/wp-security-blacklist-menu.php +31 -31
- admin/wp-security-brute-force-menu.php +2 -2
- admin/wp-security-dashboard-menu.php +27 -36
- admin/wp-security-database-menu.php +3 -1
- admin/wp-security-list-registered-users.php +28 -33
- admin/wp-security-maintenance-menu.php +19 -17
- admin/wp-security-settings-menu.php +2 -2
- admin/wp-security-user-accounts-menu.php +1 -1
- admin/wp-security-user-login-menu.php +1 -1
- classes/wp-security-general-init-tasks.php +1 -1
- classes/wp-security-installer.php +3 -3
- classes/wp-security-process-renamed-login-page.php +25 -23
- classes/wp-security-user-login.php +41 -42
- classes/wp-security-utility-file.php +29 -29
- languages/all-in-one-wp-security-and-firewall-ko_KR.mo +0 -0
- languages/all-in-one-wp-security-and-firewall-ko_KR.po +6503 -0
- languages/all-in-one-wp-security-and-firewall.pot +499 -468
- other-includes/wp-security-rename-login-feature-pre-5-7.php +1573 -0
- other-includes/wp-security-rename-login-feature.php +642 -391
- readme.txt +22 -3
- wp-security-core.php +1 -1
- wp-security.php +1 -1
admin/wp-security-blacklist-menu.php
CHANGED
@@ -6,27 +6,27 @@ if(!defined('ABSPATH')){
|
|
6 |
class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
7 |
{
|
8 |
var $menu_page_slug = AIOWPSEC_BLACKLIST_MENU_SLUG;
|
9 |
-
|
10 |
/* Specify all the tabs of this menu in the following array */
|
11 |
var $menu_tabs;
|
12 |
|
13 |
var $menu_tabs_handler = array(
|
14 |
'tab1' => 'render_tab1',
|
15 |
);
|
16 |
-
|
17 |
-
function __construct()
|
18 |
{
|
19 |
$this->render_menu_page();
|
20 |
}
|
21 |
-
|
22 |
-
function set_menu_tabs()
|
23 |
{
|
24 |
$this->menu_tabs = array(
|
25 |
'tab1' => __('Ban Users', 'all-in-one-wp-security-and-firewall'),
|
26 |
);
|
27 |
}
|
28 |
-
|
29 |
-
function get_current_tab()
|
30 |
{
|
31 |
$tab_keys = array_keys($this->menu_tabs);
|
32 |
$tab = isset( $_GET['tab'] ) ? sanitize_text_field($_GET['tab']) : $tab_keys[0];
|
@@ -36,32 +36,32 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
36 |
/*
|
37 |
* Renders our tabs of this menu as nav items
|
38 |
*/
|
39 |
-
function render_menu_tabs()
|
40 |
{
|
41 |
$current_tab = $this->get_current_tab();
|
42 |
|
43 |
echo '<h2 class="nav-tab-wrapper">';
|
44 |
-
foreach ( $this->menu_tabs as $tab_key => $tab_caption )
|
45 |
{
|
46 |
$active = $current_tab == $tab_key ? 'nav-tab-active' : '';
|
47 |
-
echo '<a class="nav-tab ' . $active . '" href="?page=' . $this->menu_page_slug . '&tab=' . $tab_key . '">' . $tab_caption . '</a>';
|
48 |
}
|
49 |
echo '</h2>';
|
50 |
}
|
51 |
-
|
52 |
/*
|
53 |
* The menu rendering goes here
|
54 |
*/
|
55 |
-
function render_menu_page()
|
56 |
{
|
57 |
echo '<div class="wrap">';
|
58 |
echo '<h2>'.__('Blacklist Manager','all-in-one-wp-security-and-firewall').'</h2>';//Interface title
|
59 |
$this->set_menu_tabs();
|
60 |
$tab = $this->get_current_tab();
|
61 |
$this->render_menu_tabs();
|
62 |
-
?>
|
63 |
<div id="poststuff"><div id="post-body">
|
64 |
-
<?php
|
65 |
//$tab_keys = array_keys($this->menu_tabs);
|
66 |
call_user_func(array(&$this, $this->menu_tabs_handler[$tab]));
|
67 |
?>
|
@@ -69,8 +69,8 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
69 |
</div><!-- end of wrap -->
|
70 |
<?php
|
71 |
}
|
72 |
-
|
73 |
-
function render_tab1()
|
74 |
{
|
75 |
global $aio_wp_security;
|
76 |
global $aiowps_feature_mgr;
|
@@ -83,7 +83,7 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
83 |
$aio_wp_security->debug_logger->log_debug("Nonce check failed for save blacklist settings!",4);
|
84 |
die(__('Nonce check failed for save blacklist settings!','all-in-one-wp-security-and-firewall'));
|
85 |
}
|
86 |
-
|
87 |
if (isset($_POST["aiowps_enable_blacklisting"]) && empty($_POST['aiowps_banned_ip_addresses']) && empty($_POST['aiowps_banned_user_agents']))
|
88 |
{
|
89 |
$this->show_msg_error('You must submit at least one IP address or one User Agent value or both!','all-in-one-wp-security-and-firewall');
|
@@ -108,7 +108,7 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
108 |
$error_msg = $payload[1][0];
|
109 |
$this->show_msg_error($error_msg);
|
110 |
}
|
111 |
-
|
112 |
}
|
113 |
else
|
114 |
{
|
@@ -122,15 +122,15 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
122 |
//clear the user agent list
|
123 |
$aio_wp_security->configs->set_value('aiowps_banned_user_agents','');
|
124 |
}
|
125 |
-
|
126 |
if ($result == 1)
|
127 |
{
|
128 |
$aio_wp_security->configs->set_value('aiowps_enable_blacklisting',isset($_POST["aiowps_enable_blacklisting"])?'1':'');
|
129 |
$aio_wp_security->configs->save_config(); //Save the configuration
|
130 |
-
|
131 |
//Recalculate points after the feature status/options have been altered
|
132 |
$aiowps_feature_mgr->check_feature_status_and_recalculate_points();
|
133 |
-
|
134 |
$this->show_msg_settings_updated();
|
135 |
|
136 |
$write_result = AIOWPSecurity_Utility_Htaccess::write_to_htaccess(); //now let's write to the .htaccess file
|
@@ -171,7 +171,7 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
171 |
//Display security info badge
|
172 |
global $aiowps_feature_mgr;
|
173 |
$aiowps_feature_mgr->output_feature_details_badge("blacklist-manager-ip-user-agent-blacklisting");
|
174 |
-
?>
|
175 |
<form action="" method="POST">
|
176 |
<?php wp_nonce_field('aiowpsec-blacklist-settings-nonce'); ?>
|
177 |
<div class="aio_orange_box">
|
@@ -181,7 +181,7 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
181 |
echo sprintf(__('This feature can lock you out of admin if it doesn\'t work correctly on your site. You %s before activating this feature.', 'all-in-one-wp-security-and-firewall'), $read_link);
|
182 |
?>
|
183 |
</p>
|
184 |
-
</div>
|
185 |
<table class="form-table">
|
186 |
<tr valign="top">
|
187 |
<th scope="row"><?php _e('Enable IP or User Agent Blacklisting', 'all-in-one-wp-security-and-firewall')?>:</th>
|
@@ -189,7 +189,7 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
189 |
<input name="aiowps_enable_blacklisting" type="checkbox"<?php if($aio_wp_security->configs->get_value('aiowps_enable_blacklisting')=='1') echo ' checked="checked"'; ?> value="1"/>
|
190 |
<span class="description"><?php _e('Check this if you want to enable the banning (or blacklisting) of selected IP addresses and/or user agents specified in the settings below', 'all-in-one-wp-security-and-firewall'); ?></span>
|
191 |
</td>
|
192 |
-
</tr>
|
193 |
<tr valign="top">
|
194 |
<th scope="row"><?php _e('Enter IP Addresses:', 'all-in-one-wp-security-and-firewall')?></th>
|
195 |
<td>
|
@@ -198,7 +198,7 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
198 |
<span class="description"><?php _e('Enter one or more IP addresses or IP ranges.','all-in-one-wp-security-and-firewall');?></span>
|
199 |
<span class="aiowps_more_info_anchor"><span class="aiowps_more_info_toggle_char">+</span><span class="aiowps_more_info_toggle_text"><?php _e('More Info', 'all-in-one-wp-security-and-firewall'); ?></span></span>
|
200 |
<div class="aiowps_more_info_body">
|
201 |
-
<?php
|
202 |
echo '<p class="description">'.__('Each IP address must be on a new line.', 'all-in-one-wp-security-and-firewall').'</p>';
|
203 |
echo '<p class="description">'.__('To specify an IP range use a wildcard "*" character. Acceptable ways to use wildcards is shown in the examples below:', 'all-in-one-wp-security-and-firewall').'</p>';
|
204 |
echo '<p class="description">'.__('Example 1: 195.47.89.*', 'all-in-one-wp-security-and-firewall').'</p>';
|
@@ -212,13 +212,13 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
212 |
<tr valign="top">
|
213 |
<th scope="row"><?php _e('Enter User Agents:', 'all-in-one-wp-security-and-firewall')?></th>
|
214 |
<td>
|
215 |
-
<textarea name="aiowps_banned_user_agents" rows="5" cols="50"><?php echo ($result == -1)
|
216 |
<br />
|
217 |
<span class="description">
|
218 |
<?php _e('Enter one or more user agent strings.','all-in-one-wp-security-and-firewall');?></span>
|
219 |
<span class="aiowps_more_info_anchor"><span class="aiowps_more_info_toggle_char">+</span><span class="aiowps_more_info_toggle_text"><?php _e('More Info', 'all-in-one-wp-security-and-firewall'); ?></span></span>
|
220 |
<div class="aiowps_more_info_body">
|
221 |
-
<?php
|
222 |
echo '<p class="description">'.__('Each user agent string must be on a new line.', 'all-in-one-wp-security-and-firewall').'</p>';
|
223 |
echo '<p class="description">'.__('Example 1 - A single user agent string to block:', 'all-in-one-wp-security-and-firewall').'</p>';
|
224 |
echo '<p class="description">SquigglebotBot</p>';
|
@@ -235,7 +235,7 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
235 |
</div></div>
|
236 |
<?php
|
237 |
}
|
238 |
-
|
239 |
function validate_user_agent_list()
|
240 |
{
|
241 |
global $aio_wp_security;
|
@@ -244,7 +244,7 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
244 |
|
245 |
$submitted_agents = explode(PHP_EOL, $_POST['aiowps_banned_user_agents']);
|
246 |
$agents = array();
|
247 |
-
if (!empty($submitted_agents))
|
248 |
{
|
249 |
foreach ($submitted_agents as $agent)
|
250 |
{
|
@@ -252,13 +252,13 @@ class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
|
252 |
$agents[] = $text;
|
253 |
}
|
254 |
}
|
255 |
-
|
256 |
if (sizeof($agents) > 1)
|
257 |
{
|
258 |
sort( $agents );
|
259 |
$agents = array_unique($agents, SORT_STRING);
|
260 |
}
|
261 |
-
|
262 |
$banned_user_agent_data = implode(PHP_EOL, $agents);
|
263 |
$aio_wp_security->configs->set_value('aiowps_banned_user_agents',$banned_user_agent_data);
|
264 |
$_POST['aiowps_banned_user_agents'] = ''; //Clear the post variable for the banned address list
|
6 |
class AIOWPSecurity_Blacklist_Menu extends AIOWPSecurity_Admin_Menu
|
7 |
{
|
8 |
var $menu_page_slug = AIOWPSEC_BLACKLIST_MENU_SLUG;
|
9 |
+
|
10 |
/* Specify all the tabs of this menu in the following array */
|
11 |
var $menu_tabs;
|
12 |
|
13 |
var $menu_tabs_handler = array(
|
14 |
'tab1' => 'render_tab1',
|
15 |
);
|
16 |
+
|
17 |
+
function __construct()
|
18 |
{
|
19 |
$this->render_menu_page();
|
20 |
}
|
21 |
+
|
22 |
+
function set_menu_tabs()
|
23 |
{
|
24 |
$this->menu_tabs = array(
|
25 |
'tab1' => __('Ban Users', 'all-in-one-wp-security-and-firewall'),
|
26 |
);
|
27 |
}
|
28 |
+
|
29 |
+
function get_current_tab()
|
30 |
{
|
31 |
$tab_keys = array_keys($this->menu_tabs);
|
32 |
$tab = isset( $_GET['tab'] ) ? sanitize_text_field($_GET['tab']) : $tab_keys[0];
|
36 |
/*
|
37 |
* Renders our tabs of this menu as nav items
|
38 |
*/
|
39 |
+
function render_menu_tabs()
|
40 |
{
|
41 |
$current_tab = $this->get_current_tab();
|
42 |
|
43 |
echo '<h2 class="nav-tab-wrapper">';
|
44 |
+
foreach ( $this->menu_tabs as $tab_key => $tab_caption )
|
45 |
{
|
46 |
$active = $current_tab == $tab_key ? 'nav-tab-active' : '';
|
47 |
+
echo '<a class="nav-tab ' . $active . '" href="?page=' . $this->menu_page_slug . '&tab=' . $tab_key . '">' . $tab_caption . '</a>';
|
48 |
}
|
49 |
echo '</h2>';
|
50 |
}
|
51 |
+
|
52 |
/*
|
53 |
* The menu rendering goes here
|
54 |
*/
|
55 |
+
function render_menu_page()
|
56 |
{
|
57 |
echo '<div class="wrap">';
|
58 |
echo '<h2>'.__('Blacklist Manager','all-in-one-wp-security-and-firewall').'</h2>';//Interface title
|
59 |
$this->set_menu_tabs();
|
60 |
$tab = $this->get_current_tab();
|
61 |
$this->render_menu_tabs();
|
62 |
+
?>
|
63 |
<div id="poststuff"><div id="post-body">
|
64 |
+
<?php
|
65 |
//$tab_keys = array_keys($this->menu_tabs);
|
66 |
call_user_func(array(&$this, $this->menu_tabs_handler[$tab]));
|
67 |
?>
|
69 |
</div><!-- end of wrap -->
|
70 |
<?php
|
71 |
}
|
72 |
+
|
73 |
+
function render_tab1()
|
74 |
{
|
75 |
global $aio_wp_security;
|
76 |
global $aiowps_feature_mgr;
|
83 |
$aio_wp_security->debug_logger->log_debug("Nonce check failed for save blacklist settings!",4);
|
84 |
die(__('Nonce check failed for save blacklist settings!','all-in-one-wp-security-and-firewall'));
|
85 |
}
|
86 |
+
|
87 |
if (isset($_POST["aiowps_enable_blacklisting"]) && empty($_POST['aiowps_banned_ip_addresses']) && empty($_POST['aiowps_banned_user_agents']))
|
88 |
{
|
89 |
$this->show_msg_error('You must submit at least one IP address or one User Agent value or both!','all-in-one-wp-security-and-firewall');
|
108 |
$error_msg = $payload[1][0];
|
109 |
$this->show_msg_error($error_msg);
|
110 |
}
|
111 |
+
|
112 |
}
|
113 |
else
|
114 |
{
|
122 |
//clear the user agent list
|
123 |
$aio_wp_security->configs->set_value('aiowps_banned_user_agents','');
|
124 |
}
|
125 |
+
|
126 |
if ($result == 1)
|
127 |
{
|
128 |
$aio_wp_security->configs->set_value('aiowps_enable_blacklisting',isset($_POST["aiowps_enable_blacklisting"])?'1':'');
|
129 |
$aio_wp_security->configs->save_config(); //Save the configuration
|
130 |
+
|
131 |
//Recalculate points after the feature status/options have been altered
|
132 |
$aiowps_feature_mgr->check_feature_status_and_recalculate_points();
|
133 |
+
|
134 |
$this->show_msg_settings_updated();
|
135 |
|
136 |
$write_result = AIOWPSecurity_Utility_Htaccess::write_to_htaccess(); //now let's write to the .htaccess file
|
171 |
//Display security info badge
|
172 |
global $aiowps_feature_mgr;
|
173 |
$aiowps_feature_mgr->output_feature_details_badge("blacklist-manager-ip-user-agent-blacklisting");
|
174 |
+
?>
|
175 |
<form action="" method="POST">
|
176 |
<?php wp_nonce_field('aiowpsec-blacklist-settings-nonce'); ?>
|
177 |
<div class="aio_orange_box">
|
181 |
echo sprintf(__('This feature can lock you out of admin if it doesn\'t work correctly on your site. You %s before activating this feature.', 'all-in-one-wp-security-and-firewall'), $read_link);
|
182 |
?>
|
183 |
</p>
|
184 |
+
</div>
|
185 |
<table class="form-table">
|
186 |
<tr valign="top">
|
187 |
<th scope="row"><?php _e('Enable IP or User Agent Blacklisting', 'all-in-one-wp-security-and-firewall')?>:</th>
|
189 |
<input name="aiowps_enable_blacklisting" type="checkbox"<?php if($aio_wp_security->configs->get_value('aiowps_enable_blacklisting')=='1') echo ' checked="checked"'; ?> value="1"/>
|
190 |
<span class="description"><?php _e('Check this if you want to enable the banning (or blacklisting) of selected IP addresses and/or user agents specified in the settings below', 'all-in-one-wp-security-and-firewall'); ?></span>
|
191 |
</td>
|
192 |
+
</tr>
|
193 |
<tr valign="top">
|
194 |
<th scope="row"><?php _e('Enter IP Addresses:', 'all-in-one-wp-security-and-firewall')?></th>
|
195 |
<td>
|
198 |
<span class="description"><?php _e('Enter one or more IP addresses or IP ranges.','all-in-one-wp-security-and-firewall');?></span>
|
199 |
<span class="aiowps_more_info_anchor"><span class="aiowps_more_info_toggle_char">+</span><span class="aiowps_more_info_toggle_text"><?php _e('More Info', 'all-in-one-wp-security-and-firewall'); ?></span></span>
|
200 |
<div class="aiowps_more_info_body">
|
201 |
+
<?php
|
202 |
echo '<p class="description">'.__('Each IP address must be on a new line.', 'all-in-one-wp-security-and-firewall').'</p>';
|
203 |
echo '<p class="description">'.__('To specify an IP range use a wildcard "*" character. Acceptable ways to use wildcards is shown in the examples below:', 'all-in-one-wp-security-and-firewall').'</p>';
|
204 |
echo '<p class="description">'.__('Example 1: 195.47.89.*', 'all-in-one-wp-security-and-firewall').'</p>';
|
212 |
<tr valign="top">
|
213 |
<th scope="row"><?php _e('Enter User Agents:', 'all-in-one-wp-security-and-firewall')?></th>
|
214 |
<td>
|
215 |
+
<textarea name="aiowps_banned_user_agents" rows="5" cols="50"><?php echo ($result == -1)?htmlspecialchars($_POST['aiowps_banned_user_agents']):htmlspecialchars($aio_wp_security->configs->get_value('aiowps_banned_user_agents')); ?></textarea>
|
216 |
<br />
|
217 |
<span class="description">
|
218 |
<?php _e('Enter one or more user agent strings.','all-in-one-wp-security-and-firewall');?></span>
|
219 |
<span class="aiowps_more_info_anchor"><span class="aiowps_more_info_toggle_char">+</span><span class="aiowps_more_info_toggle_text"><?php _e('More Info', 'all-in-one-wp-security-and-firewall'); ?></span></span>
|
220 |
<div class="aiowps_more_info_body">
|
221 |
+
<?php
|
222 |
echo '<p class="description">'.__('Each user agent string must be on a new line.', 'all-in-one-wp-security-and-firewall').'</p>';
|
223 |
echo '<p class="description">'.__('Example 1 - A single user agent string to block:', 'all-in-one-wp-security-and-firewall').'</p>';
|
224 |
echo '<p class="description">SquigglebotBot</p>';
|
235 |
</div></div>
|
236 |
<?php
|
237 |
}
|
238 |
+
|
239 |
function validate_user_agent_list()
|
240 |
{
|
241 |
global $aio_wp_security;
|
244 |
|
245 |
$submitted_agents = explode(PHP_EOL, $_POST['aiowps_banned_user_agents']);
|
246 |
$agents = array();
|
247 |
+
if (!empty($submitted_agents))
|
248 |
{
|
249 |
foreach ($submitted_agents as $agent)
|
250 |
{
|
252 |
$agents[] = $text;
|
253 |
}
|
254 |
}
|
255 |
+
|
256 |
if (sizeof($agents) > 1)
|
257 |
{
|
258 |
sort( $agents );
|
259 |
$agents = array_unique($agents, SORT_STRING);
|
260 |
}
|
261 |
+
|
262 |
$banned_user_agent_data = implode(PHP_EOL, $agents);
|
263 |
$aio_wp_security->configs->set_value('aiowps_banned_user_agents',$banned_user_agent_data);
|
264 |
$_POST['aiowps_banned_user_agents'] = ''; //Clear the post variable for the banned address list
|
admin/wp-security-brute-force-menu.php
CHANGED
@@ -220,7 +220,7 @@ class AIOWPSecurity_Brute_Force_Menu extends AIOWPSecurity_Admin_Menu
|
|
220 |
</tr>
|
221 |
<tr valign="top">
|
222 |
<th scope="row"><?php _e('Login Page URL', 'all-in-one-wp-security-and-firewall')?>:</th>
|
223 |
-
<td><code><?php echo $home_url; ?></code><input type="text" size="
|
224 |
<span class="description"><?php _e('Enter a string which will represent your secure login page slug. You are enouraged to choose something which is hard to guess and only you will remember.', 'all-in-one-wp-security-and-firewall'); ?></span>
|
225 |
</td>
|
226 |
</tr>
|
@@ -787,7 +787,7 @@ class AIOWPSecurity_Brute_Force_Menu extends AIOWPSecurity_Admin_Menu
|
|
787 |
</div>
|
788 |
<div class="aio_yellow_box">
|
789 |
<?php
|
790 |
-
$brute_force_login_feature_link = '<a href="admin.php?page='.AIOWPSEC_BRUTE_FORCE_MENU_SLUG.'&tab=tab2" target="_blank">Cookie-Based Brute Force Login Prevention</a>';
|
791 |
$rename_login_feature_link = '<a href="admin.php?page='.AIOWPSEC_BRUTE_FORCE_MENU_SLUG.'&tab=tab1" target="_blank">'.__('Rename Login Page', 'all-in-one-wp-security-and-firewall').'</a>';
|
792 |
echo '<p>'.sprintf( __('Attention: If in addition to enabling the white list feature, you also have one of the %s or %s features enabled, <strong>you will still need to use your secret word or special slug in the URL when trying to access your WordPress login page</strong>.', 'all-in-one-wp-security-and-firewall'), $brute_force_login_feature_link, $rename_login_feature_link).'</p>
|
793 |
<p>'.__('These features are NOT functionally related. Having both of them enabled on your site means you are creating 2 layers of security.', 'all-in-one-wp-security-and-firewall').'</p>';
|
220 |
</tr>
|
221 |
<tr valign="top">
|
222 |
<th scope="row"><?php _e('Login Page URL', 'all-in-one-wp-security-and-firewall')?>:</th>
|
223 |
+
<td><code><?php echo $home_url; ?></code><input type="text" size="15" name="aiowps_login_page_slug" value="<?php echo $aio_wp_security->configs->get_value('aiowps_login_page_slug'); ?>" />
|
224 |
<span class="description"><?php _e('Enter a string which will represent your secure login page slug. You are enouraged to choose something which is hard to guess and only you will remember.', 'all-in-one-wp-security-and-firewall'); ?></span>
|
225 |
</td>
|
226 |
</tr>
|
787 |
</div>
|
788 |
<div class="aio_yellow_box">
|
789 |
<?php
|
790 |
+
$brute_force_login_feature_link = '<a href="admin.php?page='.AIOWPSEC_BRUTE_FORCE_MENU_SLUG.'&tab=tab2" target="_blank">'.__('Cookie-Based Brute Force Login Prevention', 'all-in-one-wp-security-and-firewall').'</a>';
|
791 |
$rename_login_feature_link = '<a href="admin.php?page='.AIOWPSEC_BRUTE_FORCE_MENU_SLUG.'&tab=tab1" target="_blank">'.__('Rename Login Page', 'all-in-one-wp-security-and-firewall').'</a>';
|
792 |
echo '<p>'.sprintf( __('Attention: If in addition to enabling the white list feature, you also have one of the %s or %s features enabled, <strong>you will still need to use your secret word or special slug in the URL when trying to access your WordPress login page</strong>.', 'all-in-one-wp-security-and-firewall'), $brute_force_login_feature_link, $rename_login_feature_link).'</p>
|
793 |
<p>'.__('These features are NOT functionally related. Having both of them enabled on your site means you are creating 2 layers of security.', 'all-in-one-wp-security-and-firewall').'</p>';
|
admin/wp-security-dashboard-menu.php
CHANGED
@@ -65,7 +65,7 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
65 |
$this->set_menu_tabs();
|
66 |
$tab = $this->get_current_tab();
|
67 |
$this->render_menu_tabs();
|
68 |
-
?>
|
69 |
<div id="poststuff"><div id="post-body">
|
70 |
<?php
|
71 |
call_user_func(array(&$this, $this->menu_tabs_handler[$tab]));
|
@@ -175,15 +175,6 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
175 |
: </strong><code><?php echo $allow_url_fopen; ?></code>
|
176 |
<br/>
|
177 |
<?php
|
178 |
-
if (ini_get('allow_url_include')) {
|
179 |
-
$allow_url_include = __('On', 'all-in-one-wp-security-and-firewall');
|
180 |
-
} else {
|
181 |
-
$allow_url_include = __('Off', 'all-in-one-wp-security-and-firewall');
|
182 |
-
}
|
183 |
-
?>
|
184 |
-
<strong><?php _e('PHP Allow URL Include'); ?>
|
185 |
-
: </strong><code><?php echo $allow_url_include; ?></code><br/>
|
186 |
-
<?php
|
187 |
if (ini_get('display_errors')) {
|
188 |
$display_errors = __('On', 'all-in-one-wp-security-and-firewall');
|
189 |
} else {
|
@@ -257,7 +248,7 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
257 |
?>
|
258 |
<div class="aio_blue_box">
|
259 |
<?php
|
260 |
-
$login_lockdown_feature_url = '<a href="admin.php?page=' . AIOWPSEC_USER_LOGIN_MENU_SLUG . '&tab=tab1" target="_blank">Login Lockdown</a>';
|
261 |
echo '<p>' . __('This tab displays the list of all IP addresses which are currently temporarily locked out due to the Login Lockdown feature:', 'all-in-one-wp-security-and-firewall') . '</p>' .
|
262 |
'<p>' . $login_lockdown_feature_url . '</p>';
|
263 |
?>
|
@@ -401,7 +392,7 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
401 |
unset($_POST['aiowps_view_logs']);
|
402 |
wp_die(__('Error! The file you selected is not a permitted file. You can only view log files created by this plugin.','all-in-one-wp-security-and-firewall'));
|
403 |
}
|
404 |
-
|
405 |
if (!empty($file_selected)) {
|
406 |
?>
|
407 |
<div class="postbox">
|
@@ -438,7 +429,7 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
438 |
|
439 |
<?php
|
440 |
}
|
441 |
-
|
442 |
function wp_dashboard() {
|
443 |
$screen = get_current_screen();
|
444 |
$columns = absint( $screen->get_columns() );
|
@@ -467,13 +458,13 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
467 |
wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false );
|
468 |
wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false );
|
469 |
}
|
470 |
-
|
471 |
function wp_dashboard_setup() {
|
472 |
global $aio_wp_security;
|
473 |
global $wp_registered_widgets, $wp_registered_widget_controls, $wp_dashboard_control_callbacks;
|
474 |
$wp_dashboard_control_callbacks = array();
|
475 |
$screen = get_current_screen();
|
476 |
-
|
477 |
// Add widgets
|
478 |
wp_add_dashboard_widget( 'security_strength_meter', __( 'Security Strength Meter', 'all-in-one-wp-security-and-firewall' ), array(&$this, 'widget_security_strength_meter') );
|
479 |
wp_add_dashboard_widget( 'security_points_breakdown', __( 'Security Points Breakdown', 'all-in-one-wp-security-and-firewall' ), array(&$this, 'widget_security_points_breakdown') );
|
@@ -497,7 +488,7 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
497 |
wp_add_dashboard_widget( $widget_id, $name, $wp_registered_widgets[$widget_id]['callback'], $wp_registered_widget_controls[$widget_id]['callback'] );
|
498 |
}
|
499 |
}
|
500 |
-
|
501 |
function widget_security_strength_meter() {
|
502 |
global $aiowps_feature_mgr;
|
503 |
global $aio_wp_security;
|
@@ -535,17 +526,17 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
535 |
_e('Current Score of Your Site: ', 'all-in-one-wp-security-and-firewall');
|
536 |
echo '<strong>' . $total_site_security_points . '</strong>';
|
537 |
?>
|
538 |
-
</div>
|
539 |
<?php
|
540 |
}
|
541 |
-
|
542 |
function widget_security_points_breakdown() {
|
543 |
global $aiowps_feature_mgr;
|
544 |
global $aio_wp_security;
|
545 |
$feature_mgr = $aiowps_feature_mgr;
|
546 |
$total_site_security_points = $feature_mgr->get_total_site_points();
|
547 |
$total_security_points_achievable = $feature_mgr->get_total_achievable_points();
|
548 |
-
|
549 |
$feature_items = $feature_mgr->feature_items;
|
550 |
$pt_src_chart_data = "";
|
551 |
$pt_src_chart_data .= "['Feature Name', 'Points'],";
|
@@ -582,7 +573,7 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
582 |
<div id='points_source_breakdown_chart_div'></div>
|
583 |
<?php
|
584 |
}
|
585 |
-
|
586 |
function widget_spread_the_word() {
|
587 |
?>
|
588 |
<p><?php _e('We are working hard to make your WordPress site more secure. Please support us, here is how:', 'all-in-one-wp-security-and-firewall');?></p>
|
@@ -595,19 +586,19 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
595 |
<p>
|
596 |
<a href="http://wordpress.org/support/view/plugin-reviews/all-in-one-wp-security-and-firewall/"
|
597 |
target="_blank" class="aio_rate_us_link"><?php _e('Give us a Good Rating', 'all-in-one-wp-security-and-firewall');?></a>
|
598 |
-
</p>
|
599 |
-
<?php
|
600 |
}
|
601 |
-
|
602 |
function widget_know_developers() {
|
603 |
?>
|
604 |
<p><?php _e('Wanna know more about the developers behind this plugin?', 'all-in-one-wp-security-and-firewall');?></p>
|
605 |
<p><a href="https://wpsolutions-hq.com/" target="_blank">WPSolutions</a></p>
|
606 |
<p><a href="https://www.tipsandtricks-hq.com/" target="_blank">Tips and Tricks HQ</a></p>
|
607 |
|
608 |
-
<?php
|
609 |
}
|
610 |
-
|
611 |
function widget_critical_feature_status() {
|
612 |
global $aiowps_feature_mgr;
|
613 |
global $aio_wp_security;
|
@@ -675,7 +666,7 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
675 |
echo '</div></div></a>';
|
676 |
echo '<div class="aio_clear_float"></div>';
|
677 |
}
|
678 |
-
|
679 |
function widget_last_5_logins() {
|
680 |
global $wpdb;
|
681 |
$login_activity_table = AIOWPSEC_TBL_USER_LOGIN_ACTIVITY;
|
@@ -716,9 +707,9 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
716 |
}
|
717 |
|
718 |
echo '<div class="aio_clear_float"></div>';
|
719 |
-
|
720 |
}
|
721 |
-
|
722 |
function widget_maintenance_mode_status() {
|
723 |
global $aio_wp_security;
|
724 |
if ($aio_wp_security->configs->get_value('aiowps_site_lockout') == '1') {
|
@@ -740,9 +731,9 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
740 |
}
|
741 |
echo '</div></div></a>';
|
742 |
echo '<div class="aio_clear_float"></div>';
|
743 |
-
|
744 |
}
|
745 |
-
|
746 |
function widget_brute_force() {
|
747 |
global $aio_wp_security;
|
748 |
if ($aio_wp_security->configs->get_value('aiowps_enable_brute_force_attack_prevention') == '1') {
|
@@ -774,9 +765,9 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
774 |
echo '</div>'; //yellow box div
|
775 |
echo '<div class="aio_clear_float"></div>';
|
776 |
}//End if statement for Rename Login box
|
777 |
-
|
778 |
}
|
779 |
-
|
780 |
function widget_logged_in_users() {
|
781 |
$users_online_link = '<a href="admin.php?page=' . AIOWPSEC_USER_LOGIN_MENU_SLUG . '&tab=tab5">Logged In Users</a>';
|
782 |
// default display messages
|
@@ -792,7 +783,7 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
792 |
} else {
|
793 |
// main site - get sitewide users
|
794 |
$logged_in_users = get_site_transient('users_online');
|
795 |
-
|
796 |
// If viewing aiowps from multisite main network dashboard then display a different message
|
797 |
$multiple_users_info_msg = __('Number of users currently logged in site-wide (including you) is:', 'all-in-one-wp-security-and-firewall');
|
798 |
$single_user_info_msg = __('There are no other site-wide users currently logged in.', 'all-in-one-wp-security-and-firewall');
|
@@ -800,7 +791,7 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
800 |
} else {
|
801 |
$logged_in_users = get_transient('users_online');
|
802 |
}
|
803 |
-
|
804 |
if (empty($logged_in_users)) {
|
805 |
$num_users = 0;
|
806 |
} else {
|
@@ -813,9 +804,9 @@ class AIOWPSecurity_Dashboard_Menu extends AIOWPSecurity_Admin_Menu
|
|
813 |
} else {
|
814 |
echo '<div class="aio_green_box"><p>' . $single_user_info_msg . '</p></div>';
|
815 |
}
|
816 |
-
|
817 |
}
|
818 |
-
|
819 |
function widget_locked_ip_addresses() {
|
820 |
$locked_ips_link = '<a href="admin.php?page=' . AIOWPSEC_MAIN_MENU_SLUG . '&tab=tab3">Locked IP Addresses</a>';
|
821 |
|
65 |
$this->set_menu_tabs();
|
66 |
$tab = $this->get_current_tab();
|
67 |
$this->render_menu_tabs();
|
68 |
+
?>
|
69 |
<div id="poststuff"><div id="post-body">
|
70 |
<?php
|
71 |
call_user_func(array(&$this, $this->menu_tabs_handler[$tab]));
|
175 |
: </strong><code><?php echo $allow_url_fopen; ?></code>
|
176 |
<br/>
|
177 |
<?php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
178 |
if (ini_get('display_errors')) {
|
179 |
$display_errors = __('On', 'all-in-one-wp-security-and-firewall');
|
180 |
} else {
|
248 |
?>
|
249 |
<div class="aio_blue_box">
|
250 |
<?php
|
251 |
+
$login_lockdown_feature_url = '<a href="admin.php?page=' . AIOWPSEC_USER_LOGIN_MENU_SLUG . '&tab=tab1" target="_blank">'.__('Login Lockdown', 'all-in-one-wp-security-and-firewall').'</a>';
|
252 |
echo '<p>' . __('This tab displays the list of all IP addresses which are currently temporarily locked out due to the Login Lockdown feature:', 'all-in-one-wp-security-and-firewall') . '</p>' .
|
253 |
'<p>' . $login_lockdown_feature_url . '</p>';
|
254 |
?>
|
392 |
unset($_POST['aiowps_view_logs']);
|
393 |
wp_die(__('Error! The file you selected is not a permitted file. You can only view log files created by this plugin.','all-in-one-wp-security-and-firewall'));
|
394 |
}
|
395 |
+
|
396 |
if (!empty($file_selected)) {
|
397 |
?>
|
398 |
<div class="postbox">
|
429 |
|
430 |
<?php
|
431 |
}
|
432 |
+
|
433 |
function wp_dashboard() {
|
434 |
$screen = get_current_screen();
|
435 |
$columns = absint( $screen->get_columns() );
|
458 |
wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false );
|
459 |
wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false );
|
460 |
}
|
461 |
+
|
462 |
function wp_dashboard_setup() {
|
463 |
global $aio_wp_security;
|
464 |
global $wp_registered_widgets, $wp_registered_widget_controls, $wp_dashboard_control_callbacks;
|
465 |
$wp_dashboard_control_callbacks = array();
|
466 |
$screen = get_current_screen();
|
467 |
+
|
468 |
// Add widgets
|
469 |
wp_add_dashboard_widget( 'security_strength_meter', __( 'Security Strength Meter', 'all-in-one-wp-security-and-firewall' ), array(&$this, 'widget_security_strength_meter') );
|
470 |
wp_add_dashboard_widget( 'security_points_breakdown', __( 'Security Points Breakdown', 'all-in-one-wp-security-and-firewall' ), array(&$this, 'widget_security_points_breakdown') );
|
488 |
wp_add_dashboard_widget( $widget_id, $name, $wp_registered_widgets[$widget_id]['callback'], $wp_registered_widget_controls[$widget_id]['callback'] );
|
489 |
}
|
490 |
}
|
491 |
+
|
492 |
function widget_security_strength_meter() {
|
493 |
global $aiowps_feature_mgr;
|
494 |
global $aio_wp_security;
|
526 |
_e('Current Score of Your Site: ', 'all-in-one-wp-security-and-firewall');
|
527 |
echo '<strong>' . $total_site_security_points . '</strong>';
|
528 |
?>
|
529 |
+
</div>
|
530 |
<?php
|
531 |
}
|
532 |
+
|
533 |
function widget_security_points_breakdown() {
|
534 |
global $aiowps_feature_mgr;
|
535 |
global $aio_wp_security;
|
536 |
$feature_mgr = $aiowps_feature_mgr;
|
537 |
$total_site_security_points = $feature_mgr->get_total_site_points();
|
538 |
$total_security_points_achievable = $feature_mgr->get_total_achievable_points();
|
539 |
+
|
540 |
$feature_items = $feature_mgr->feature_items;
|
541 |
$pt_src_chart_data = "";
|
542 |
$pt_src_chart_data .= "['Feature Name', 'Points'],";
|
573 |
<div id='points_source_breakdown_chart_div'></div>
|
574 |
<?php
|
575 |
}
|
576 |
+
|
577 |
function widget_spread_the_word() {
|
578 |
?>
|
579 |
<p><?php _e('We are working hard to make your WordPress site more secure. Please support us, here is how:', 'all-in-one-wp-security-and-firewall');?></p>
|
586 |
<p>
|
587 |
<a href="http://wordpress.org/support/view/plugin-reviews/all-in-one-wp-security-and-firewall/"
|
588 |
target="_blank" class="aio_rate_us_link"><?php _e('Give us a Good Rating', 'all-in-one-wp-security-and-firewall');?></a>
|
589 |
+
</p>
|
590 |
+
<?php
|
591 |
}
|
592 |
+
|
593 |
function widget_know_developers() {
|
594 |
?>
|
595 |
<p><?php _e('Wanna know more about the developers behind this plugin?', 'all-in-one-wp-security-and-firewall');?></p>
|
596 |
<p><a href="https://wpsolutions-hq.com/" target="_blank">WPSolutions</a></p>
|
597 |
<p><a href="https://www.tipsandtricks-hq.com/" target="_blank">Tips and Tricks HQ</a></p>
|
598 |
|
599 |
+
<?php
|
600 |
}
|
601 |
+
|
602 |
function widget_critical_feature_status() {
|
603 |
global $aiowps_feature_mgr;
|
604 |
global $aio_wp_security;
|
666 |
echo '</div></div></a>';
|
667 |
echo '<div class="aio_clear_float"></div>';
|
668 |
}
|
669 |
+
|
670 |
function widget_last_5_logins() {
|
671 |
global $wpdb;
|
672 |
$login_activity_table = AIOWPSEC_TBL_USER_LOGIN_ACTIVITY;
|
707 |
}
|
708 |
|
709 |
echo '<div class="aio_clear_float"></div>';
|
710 |
+
|
711 |
}
|
712 |
+
|
713 |
function widget_maintenance_mode_status() {
|
714 |
global $aio_wp_security;
|
715 |
if ($aio_wp_security->configs->get_value('aiowps_site_lockout') == '1') {
|
731 |
}
|
732 |
echo '</div></div></a>';
|
733 |
echo '<div class="aio_clear_float"></div>';
|
734 |
+
|
735 |
}
|
736 |
+
|
737 |
function widget_brute_force() {
|
738 |
global $aio_wp_security;
|
739 |
if ($aio_wp_security->configs->get_value('aiowps_enable_brute_force_attack_prevention') == '1') {
|
765 |
echo '</div>'; //yellow box div
|
766 |
echo '<div class="aio_clear_float"></div>';
|
767 |
}//End if statement for Rename Login box
|
768 |
+
|
769 |
}
|
770 |
+
|
771 |
function widget_logged_in_users() {
|
772 |
$users_online_link = '<a href="admin.php?page=' . AIOWPSEC_USER_LOGIN_MENU_SLUG . '&tab=tab5">Logged In Users</a>';
|
773 |
// default display messages
|
783 |
} else {
|
784 |
// main site - get sitewide users
|
785 |
$logged_in_users = get_site_transient('users_online');
|
786 |
+
|
787 |
// If viewing aiowps from multisite main network dashboard then display a different message
|
788 |
$multiple_users_info_msg = __('Number of users currently logged in site-wide (including you) is:', 'all-in-one-wp-security-and-firewall');
|
789 |
$single_user_info_msg = __('There are no other site-wide users currently logged in.', 'all-in-one-wp-security-and-firewall');
|
791 |
} else {
|
792 |
$logged_in_users = get_transient('users_online');
|
793 |
}
|
794 |
+
|
795 |
if (empty($logged_in_users)) {
|
796 |
$num_users = 0;
|
797 |
} else {
|
804 |
} else {
|
805 |
echo '<div class="aio_green_box"><p>' . $single_user_info_msg . '</p></div>';
|
806 |
}
|
807 |
+
|
808 |
}
|
809 |
+
|
810 |
function widget_locked_ip_addresses() {
|
811 |
$locked_ips_link = '<a href="admin.php?page=' . AIOWPSEC_MAIN_MENU_SLUG . '&tab=tab3">Locked IP Addresses</a>';
|
812 |
|
admin/wp-security-database-menu.php
CHANGED
@@ -452,7 +452,9 @@ class AIOWPSecurity_Database_Menu extends AIOWPSecurity_Admin_Menu
|
|
452 |
foreach ($config_contents as $line_num => $line) {
|
453 |
$no_ws_line = preg_replace( '/\s+/', '', $line ); //Strip white spaces
|
454 |
if(strpos($no_ws_line, $prefix_match_string) !== FALSE){
|
455 |
-
$config_contents[$line_num]
|
|
|
|
|
456 |
break;
|
457 |
}
|
458 |
}
|
452 |
foreach ($config_contents as $line_num => $line) {
|
453 |
$no_ws_line = preg_replace( '/\s+/', '', $line ); //Strip white spaces
|
454 |
if(strpos($no_ws_line, $prefix_match_string) !== FALSE){
|
455 |
+
$prefix_parts = explode("=",$config_contents[$line_num]);
|
456 |
+
$prefix_parts[1] = str_replace($table_old_prefix, $table_new_prefix, $prefix_parts[1]);
|
457 |
+
$config_contents[$line_num] = implode("=",$prefix_parts);
|
458 |
break;
|
459 |
}
|
460 |
}
|
admin/wp-security-list-registered-users.php
CHANGED
@@ -134,7 +134,7 @@ class AIOWPSecurity_List_Registered_Users extends AIOWPSecurity_List_Table {
|
|
134 |
|
135 |
function approve_selected_accounts($entries)
|
136 |
{
|
137 |
-
global $
|
138 |
$meta_key = 'aiowps_account_status';
|
139 |
$meta_value = 'approved'; //set account status
|
140 |
$failed_accts = ''; //string to store comma separated accounts which failed to update
|
@@ -155,22 +155,7 @@ class AIOWPSecurity_List_Registered_Users extends AIOWPSecurity_List_Table {
|
|
155 |
if($user === false){
|
156 |
//don't send mail
|
157 |
}else{
|
158 |
-
$
|
159 |
-
$to_email_address = $user->user_email;
|
160 |
-
$subject = '['.get_option('siteurl').'] '. __('Your account is now active','all-in-one-wp-security-and-firewall');
|
161 |
-
$email_msg .= __('Your account with user ID:','all-in-one-wp-security-and-firewall').$user->ID.__(' is now active','all-in-one-wp-security-and-firewall')."\n";
|
162 |
-
$site_title = get_bloginfo( 'name' );
|
163 |
-
$from_name = empty($site_title)?'WordPress':$site_title;
|
164 |
-
$subject = apply_filters( 'aiowps_register_approval_email_subject', $subject );
|
165 |
-
$email_msg = apply_filters( 'aiowps_register_approval_email_msg', $email_msg, $user ); //also pass the WP_User object
|
166 |
-
$from_name = apply_filters( 'aiowps_register_approval_email_from_name', $from_name );
|
167 |
-
|
168 |
-
$email_header = 'From: '.$from_name.' <'.get_bloginfo('admin_email').'>' . "\r\n\\";
|
169 |
-
$sendMail = wp_mail($to_email_address, $subject, $email_msg, $email_header);
|
170 |
-
if(FALSE === $sendMail){
|
171 |
-
$aio_wp_security->debug_logger->log_debug("Manual account approval notification email failed to send to ".$to_email_address,4);
|
172 |
-
}
|
173 |
-
|
174 |
}
|
175 |
}
|
176 |
}
|
@@ -189,29 +174,39 @@ class AIOWPSecurity_List_Registered_Users extends AIOWPSecurity_List_Table {
|
|
189 |
{
|
190 |
AIOWPSecurity_Admin_Menu::show_msg_updated_st(__('The selected account was approved successfully!','all-in-one-wp-security-and-firewall'));
|
191 |
$user = get_user_by('id', $entries);
|
192 |
-
$
|
193 |
-
$email_msg = '';
|
194 |
-
$subject = '['.get_option('siteurl').'] '. __('Your account is now active','all-in-one-wp-security-and-firewall');
|
195 |
-
$email_msg .= __('Your account with username: ','all-in-one-wp-security-and-firewall').$user->user_login.__(' is now active','all-in-one-wp-security-and-firewall')."\n";
|
196 |
-
$site_title = get_bloginfo( 'name' );
|
197 |
-
$from_name = empty($site_title)?'WordPress':$site_title;
|
198 |
-
$subject = apply_filters( 'aiowps_register_approval_email_subject', $subject );
|
199 |
-
$email_msg = apply_filters( 'aiowps_register_approval_email_msg', $email_msg, $user ); //also pass the WP_User object
|
200 |
-
$from_name = apply_filters( 'aiowps_register_approval_email_from_name', $from_name );
|
201 |
-
|
202 |
-
$email_header = 'From: '.$from_name.' <'.get_bloginfo('admin_email').'>' . "\r\n\\";
|
203 |
-
$sendMail = wp_mail($to_email_address, $subject, $email_msg, $email_header);
|
204 |
-
if(FALSE === $sendMail){
|
205 |
-
$aio_wp_security->debug_logger->log_debug("Manual account approval notification email failed to send to ".$to_email_address,4);
|
206 |
-
}
|
207 |
|
208 |
-
|
209 |
}else if($result === false){
|
210 |
$aio_wp_security->debug_logger->log_debug("AIOWPSecurity_List_Registered_Users::approve_selected_accounts() - could not approve account ID: $user_id",4);
|
211 |
}
|
212 |
}
|
213 |
}
|
214 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
215 |
function delete_selected_accounts($entries)
|
216 |
{
|
217 |
global $wpdb, $aio_wp_security;
|
134 |
|
135 |
function approve_selected_accounts($entries)
|
136 |
{
|
137 |
+
global $aio_wp_security;
|
138 |
$meta_key = 'aiowps_account_status';
|
139 |
$meta_value = 'approved'; //set account status
|
140 |
$failed_accts = ''; //string to store comma separated accounts which failed to update
|
155 |
if($user === false){
|
156 |
//don't send mail
|
157 |
}else{
|
158 |
+
$sendMail = $this->send_email_upon_account_activation($user);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
159 |
}
|
160 |
}
|
161 |
}
|
174 |
{
|
175 |
AIOWPSecurity_Admin_Menu::show_msg_updated_st(__('The selected account was approved successfully!','all-in-one-wp-security-and-firewall'));
|
176 |
$user = get_user_by('id', $entries);
|
177 |
+
$sendMail = $this->send_email_upon_account_activation($user);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
178 |
|
|
|
179 |
}else if($result === false){
|
180 |
$aio_wp_security->debug_logger->log_debug("AIOWPSecurity_List_Registered_Users::approve_selected_accounts() - could not approve account ID: $user_id",4);
|
181 |
}
|
182 |
}
|
183 |
}
|
184 |
|
185 |
+
function send_email_upon_account_activation($user)
|
186 |
+
{
|
187 |
+
global $aio_wp_security;
|
188 |
+
if (!($user instanceof WP_User)) {
|
189 |
+
return false;
|
190 |
+
}
|
191 |
+
|
192 |
+
$to_email_address = $user->user_email;
|
193 |
+
$email_msg = '';
|
194 |
+
$subject = '['.get_option('siteurl').'] '. __('Your account is now active','all-in-one-wp-security-and-firewall');
|
195 |
+
$email_msg .= __('Your account with username: ','all-in-one-wp-security-and-firewall').$user->user_login.__(' is now active','all-in-one-wp-security-and-firewall')."\n";
|
196 |
+
$site_title = get_bloginfo( 'name' );
|
197 |
+
$from_name = empty($site_title)?'WordPress':$site_title;
|
198 |
+
$subject = apply_filters( 'aiowps_register_approval_email_subject', $subject );
|
199 |
+
$email_msg = apply_filters( 'aiowps_register_approval_email_msg', $email_msg, $user ); //also pass the WP_User object
|
200 |
+
$from_name = apply_filters( 'aiowps_register_approval_email_from_name', $from_name );
|
201 |
+
|
202 |
+
$email_header = 'From: '.$from_name.' <'.get_bloginfo('admin_email').'>' . "\r\n\\";
|
203 |
+
$sendMail = wp_mail($to_email_address, $subject, $email_msg, $email_header);
|
204 |
+
if(FALSE === $sendMail){
|
205 |
+
$aio_wp_security->debug_logger->log_debug("Manual account approval notification email failed to send to ".$to_email_address,4);
|
206 |
+
}
|
207 |
+
return $sendMail;
|
208 |
+
}
|
209 |
+
|
210 |
function delete_selected_accounts($entries)
|
211 |
{
|
212 |
global $wpdb, $aio_wp_security;
|
admin/wp-security-maintenance-menu.php
CHANGED
@@ -6,27 +6,27 @@ if(!defined('ABSPATH')){
|
|
6 |
class AIOWPSecurity_Maintenance_Menu extends AIOWPSecurity_Admin_Menu
|
7 |
{
|
8 |
var $menu_page_slug = AIOWPSEC_MAINTENANCE_MENU_SLUG;
|
9 |
-
|
10 |
/* Specify all the tabs of this menu in the following array */
|
11 |
var $menu_tabs;
|
12 |
|
13 |
var $menu_tabs_handler = array(
|
14 |
-
'tab1' => 'render_tab1',
|
15 |
);
|
16 |
|
17 |
-
function __construct()
|
18 |
{
|
19 |
$this->render_menu_page();
|
20 |
}
|
21 |
|
22 |
-
function set_menu_tabs()
|
23 |
{
|
24 |
$this->menu_tabs = array(
|
25 |
'tab1' => __('Visitor Lockout', 'all-in-one-wp-security-and-firewall'),
|
26 |
);
|
27 |
}
|
28 |
|
29 |
-
function get_current_tab()
|
30 |
{
|
31 |
$tab_keys = array_keys($this->menu_tabs);
|
32 |
$tab = isset( $_GET['tab'] ) ? sanitize_text_field($_GET['tab']) : $tab_keys[0];
|
@@ -36,32 +36,32 @@ class AIOWPSecurity_Maintenance_Menu extends AIOWPSecurity_Admin_Menu
|
|
36 |
/*
|
37 |
* Renders our tabs of this menu as nav items
|
38 |
*/
|
39 |
-
function render_menu_tabs()
|
40 |
{
|
41 |
$current_tab = $this->get_current_tab();
|
42 |
|
43 |
echo '<h2 class="nav-tab-wrapper">';
|
44 |
-
foreach ( $this->menu_tabs as $tab_key => $tab_caption )
|
45 |
{
|
46 |
$active = $current_tab == $tab_key ? 'nav-tab-active' : '';
|
47 |
-
echo '<a class="nav-tab ' . $active . '" href="?page=' . $this->menu_page_slug . '&tab=' . $tab_key . '">' . $tab_caption . '</a>';
|
48 |
}
|
49 |
echo '</h2>';
|
50 |
}
|
51 |
-
|
52 |
/*
|
53 |
* The menu rendering goes here
|
54 |
*/
|
55 |
-
function render_menu_page()
|
56 |
{
|
57 |
echo '<div class="wrap">';
|
58 |
echo '<h2>'.__('Maintenance','all-in-one-wp-security-and-firewall').'</h2>';//Interface title
|
59 |
$this->set_menu_tabs();
|
60 |
$tab = $this->get_current_tab();
|
61 |
$this->render_menu_tabs();
|
62 |
-
?>
|
63 |
<div id="poststuff"><div id="post-body">
|
64 |
-
<?php
|
65 |
//$tab_keys = array_keys($this->menu_tabs);
|
66 |
call_user_func(array(&$this, $this->menu_tabs_handler[$tab]));
|
67 |
?>
|
@@ -69,7 +69,7 @@ class AIOWPSecurity_Maintenance_Menu extends AIOWPSecurity_Admin_Menu
|
|
69 |
</div><!-- end of wrap -->
|
70 |
<?php
|
71 |
}
|
72 |
-
|
73 |
function render_tab1()
|
74 |
{
|
75 |
global $aio_wp_security;
|
@@ -82,7 +82,7 @@ class AIOWPSecurity_Maintenance_Menu extends AIOWPSecurity_Admin_Menu
|
|
82 |
$aio_wp_security->debug_logger->log_debug("Nonce check failed on site lockout feature settings save!",4);
|
83 |
die("Nonce check failed on site lockout feature settings save!");
|
84 |
}
|
85 |
-
|
86 |
//Save settings
|
87 |
$aio_wp_security->configs->set_value('aiowps_site_lockout',isset($_POST["aiowps_site_lockout"])?'1':'');
|
88 |
$maint_msg = htmlentities(stripslashes($_POST['aiowps_site_lockout_msg']), ENT_COMPAT, "UTF-8");
|
@@ -91,6 +91,8 @@ class AIOWPSecurity_Maintenance_Menu extends AIOWPSecurity_Admin_Menu
|
|
91 |
|
92 |
$this->show_msg_updated(__('Site lockout feature settings saved!', 'all-in-one-wp-security-and-firewall'));
|
93 |
|
|
|
|
|
94 |
}
|
95 |
?>
|
96 |
<div class="postbox">
|
@@ -122,7 +124,7 @@ class AIOWPSecurity_Maintenance_Menu extends AIOWPSecurity_Admin_Menu
|
|
122 |
}
|
123 |
$aiowps_site_lockout_msg = html_entity_decode($aiowps_site_lockout_msg_raw, ENT_COMPAT, "UTF-8");
|
124 |
$aiowps_site_lockout_msg_settings = array('textarea_name' => 'aiowps_site_lockout_msg');
|
125 |
-
wp_editor($aiowps_site_lockout_msg, "aiowps_site_lockout_msg_editor_content", $aiowps_site_lockout_msg_settings);
|
126 |
?>
|
127 |
<br />
|
128 |
<span class="description"><?php _e('Enter a message you wish to display to visitors when your site is in maintenance mode.','all-in-one-wp-security-and-firewall');?></span>
|
@@ -130,11 +132,11 @@ class AIOWPSecurity_Maintenance_Menu extends AIOWPSecurity_Admin_Menu
|
|
130 |
</tr>
|
131 |
|
132 |
</table>
|
133 |
-
|
134 |
<div class="submit">
|
135 |
<input type="submit" class="button-primary" name="aiowpsec_save_site_lockout" value="<?php _e('Save Site Lockout Settings', 'all-in-one-wp-security-and-firewall'); ?>" />
|
136 |
</div>
|
137 |
-
</form>
|
138 |
</div></div>
|
139 |
<?php
|
140 |
}
|
6 |
class AIOWPSecurity_Maintenance_Menu extends AIOWPSecurity_Admin_Menu
|
7 |
{
|
8 |
var $menu_page_slug = AIOWPSEC_MAINTENANCE_MENU_SLUG;
|
9 |
+
|
10 |
/* Specify all the tabs of this menu in the following array */
|
11 |
var $menu_tabs;
|
12 |
|
13 |
var $menu_tabs_handler = array(
|
14 |
+
'tab1' => 'render_tab1',
|
15 |
);
|
16 |
|
17 |
+
function __construct()
|
18 |
{
|
19 |
$this->render_menu_page();
|
20 |
}
|
21 |
|
22 |
+
function set_menu_tabs()
|
23 |
{
|
24 |
$this->menu_tabs = array(
|
25 |
'tab1' => __('Visitor Lockout', 'all-in-one-wp-security-and-firewall'),
|
26 |
);
|
27 |
}
|
28 |
|
29 |
+
function get_current_tab()
|
30 |
{
|
31 |
$tab_keys = array_keys($this->menu_tabs);
|
32 |
$tab = isset( $_GET['tab'] ) ? sanitize_text_field($_GET['tab']) : $tab_keys[0];
|
36 |
/*
|
37 |
* Renders our tabs of this menu as nav items
|
38 |
*/
|
39 |
+
function render_menu_tabs()
|
40 |
{
|
41 |
$current_tab = $this->get_current_tab();
|
42 |
|
43 |
echo '<h2 class="nav-tab-wrapper">';
|
44 |
+
foreach ( $this->menu_tabs as $tab_key => $tab_caption )
|
45 |
{
|
46 |
$active = $current_tab == $tab_key ? 'nav-tab-active' : '';
|
47 |
+
echo '<a class="nav-tab ' . $active . '" href="?page=' . $this->menu_page_slug . '&tab=' . $tab_key . '">' . $tab_caption . '</a>';
|
48 |
}
|
49 |
echo '</h2>';
|
50 |
}
|
51 |
+
|
52 |
/*
|
53 |
* The menu rendering goes here
|
54 |
*/
|
55 |
+
function render_menu_page()
|
56 |
{
|
57 |
echo '<div class="wrap">';
|
58 |
echo '<h2>'.__('Maintenance','all-in-one-wp-security-and-firewall').'</h2>';//Interface title
|
59 |
$this->set_menu_tabs();
|
60 |
$tab = $this->get_current_tab();
|
61 |
$this->render_menu_tabs();
|
62 |
+
?>
|
63 |
<div id="poststuff"><div id="post-body">
|
64 |
+
<?php
|
65 |
//$tab_keys = array_keys($this->menu_tabs);
|
66 |
call_user_func(array(&$this, $this->menu_tabs_handler[$tab]));
|
67 |
?>
|
69 |
</div><!-- end of wrap -->
|
70 |
<?php
|
71 |
}
|
72 |
+
|
73 |
function render_tab1()
|
74 |
{
|
75 |
global $aio_wp_security;
|
82 |
$aio_wp_security->debug_logger->log_debug("Nonce check failed on site lockout feature settings save!",4);
|
83 |
die("Nonce check failed on site lockout feature settings save!");
|
84 |
}
|
85 |
+
|
86 |
//Save settings
|
87 |
$aio_wp_security->configs->set_value('aiowps_site_lockout',isset($_POST["aiowps_site_lockout"])?'1':'');
|
88 |
$maint_msg = htmlentities(stripslashes($_POST['aiowps_site_lockout_msg']), ENT_COMPAT, "UTF-8");
|
91 |
|
92 |
$this->show_msg_updated(__('Site lockout feature settings saved!', 'all-in-one-wp-security-and-firewall'));
|
93 |
|
94 |
+
do_action('aiowps_site_lockout_settings_saved');//Trigger action hook.
|
95 |
+
|
96 |
}
|
97 |
?>
|
98 |
<div class="postbox">
|
124 |
}
|
125 |
$aiowps_site_lockout_msg = html_entity_decode($aiowps_site_lockout_msg_raw, ENT_COMPAT, "UTF-8");
|
126 |
$aiowps_site_lockout_msg_settings = array('textarea_name' => 'aiowps_site_lockout_msg');
|
127 |
+
wp_editor($aiowps_site_lockout_msg, "aiowps_site_lockout_msg_editor_content", $aiowps_site_lockout_msg_settings);
|
128 |
?>
|
129 |
<br />
|
130 |
<span class="description"><?php _e('Enter a message you wish to display to visitors when your site is in maintenance mode.','all-in-one-wp-security-and-firewall');?></span>
|
132 |
</tr>
|
133 |
|
134 |
</table>
|
135 |
+
|
136 |
<div class="submit">
|
137 |
<input type="submit" class="button-primary" name="aiowpsec_save_site_lockout" value="<?php _e('Save Site Lockout Settings', 'all-in-one-wp-security-and-firewall'); ?>" />
|
138 |
</div>
|
139 |
+
</form>
|
140 |
</div></div>
|
141 |
<?php
|
142 |
}
|
admin/wp-security-settings-menu.php
CHANGED
@@ -152,7 +152,7 @@ class AIOWPSecurity_Settings_Menu extends AIOWPSecurity_Admin_Menu
|
|
152 |
?>
|
153 |
<div class="aio_grey_box">
|
154 |
<p><?php _e('For information, updates and documentation, please visit the', 'all-in-one-wp-security-and-firewall'); ?> <a href="https://www.tipsandtricks-hq.com/wordpress-security-and-firewall-plugin" target="_blank">AIO WP Security & Firewall Plugin</a> <?php _e('Page', 'all-in-one-wp-security-and-firewall'); ?>.</p>
|
155 |
-
<p><a href="https://www.tipsandtricks-hq.com/development-center" target="_blank"
|
156 |
</div>
|
157 |
|
158 |
<div class="postbox">
|
@@ -199,7 +199,7 @@ class AIOWPSecurity_Settings_Menu extends AIOWPSecurity_Admin_Menu
|
|
199 |
?>
|
200 |
</div>
|
201 |
<div class="submit">
|
202 |
-
<input type="submit" class="button" name="aiowpsec_disable_all_firewall_rules" value="<?php _e('Disable All Firewall Rules'); ?>" />
|
203 |
</div>
|
204 |
</form>
|
205 |
</div>
|
152 |
?>
|
153 |
<div class="aio_grey_box">
|
154 |
<p><?php _e('For information, updates and documentation, please visit the', 'all-in-one-wp-security-and-firewall'); ?> <a href="https://www.tipsandtricks-hq.com/wordpress-security-and-firewall-plugin" target="_blank">AIO WP Security & Firewall Plugin</a> <?php _e('Page', 'all-in-one-wp-security-and-firewall'); ?>.</p>
|
155 |
+
<p><a href="https://www.tipsandtricks-hq.com/development-center" target="_blank"><?php _e('Follow us', 'all-in-one-wp-security-and-firewall'); ?></a> <?php _e('on Twitter, Google+ or via Email to stay up to date about the new security features of this plugin.', 'all-in-one-wp-security-and-firewall'); ?></p>
|
156 |
</div>
|
157 |
|
158 |
<div class="postbox">
|
199 |
?>
|
200 |
</div>
|
201 |
<div class="submit">
|
202 |
+
<input type="submit" class="button" name="aiowpsec_disable_all_firewall_rules" value="<?php _e('Disable All Firewall Rules', 'all-in-one-wp-security-and-firewall'); ?>" />
|
203 |
</div>
|
204 |
</form>
|
205 |
</div>
|
admin/wp-security-user-accounts-menu.php
CHANGED
@@ -335,7 +335,7 @@ class AIOWPSecurity_User_Accounts_Menu extends AIOWPSecurity_Admin_Menu
|
|
335 |
$account_output .= '<td>'.$entry->user_login.'</td>';
|
336 |
}
|
337 |
$user_acct_edit_link = admin_url('user-edit.php?user_id=' . $entry->ID);
|
338 |
-
$account_output .= '<td><a href="'.$user_acct_edit_link.'" target="_blank">Edit User</a></td>';
|
339 |
$account_output .= '</tr>';
|
340 |
}
|
341 |
$account_output .= '</table>';
|
335 |
$account_output .= '<td>'.$entry->user_login.'</td>';
|
336 |
}
|
337 |
$user_acct_edit_link = admin_url('user-edit.php?user_id=' . $entry->ID);
|
338 |
+
$account_output .= '<td><a href="'.$user_acct_edit_link.'" target="_blank">'.__('Edit User', 'all-in-one-wp-security-and-firewall').'</a></td>';
|
339 |
$account_output .= '</tr>';
|
340 |
}
|
341 |
$account_output .= '</table>';
|
admin/wp-security-user-login-menu.php
CHANGED
@@ -230,7 +230,7 @@ class AIOWPSecurity_User_Login_Menu extends AIOWPSecurity_Admin_Menu
|
|
230 |
<h2><?php _e('Login Lockdown Configuration', 'all-in-one-wp-security-and-firewall')?></h2>
|
231 |
<div class="aio_blue_box">
|
232 |
<?php
|
233 |
-
$brute_force_login_feature_link = '<a href="admin.php?page='.AIOWPSEC_BRUTE_FORCE_MENU_SLUG.'&tab=tab2">Cookie-Based Brute Force Login Prevention</a>';
|
234 |
echo '<p>'.__('One of the ways hackers try to compromise sites is via a ', 'all-in-one-wp-security-and-firewall').'<strong>'.__('Brute Force Login Attack', 'all-in-one-wp-security-and-firewall').'</strong>. '.__('This is where attackers use repeated login attempts until they guess the password.', 'all-in-one-wp-security-and-firewall').'
|
235 |
<br />'.__('Apart from choosing strong passwords, monitoring and blocking IP addresses which are involved in repeated login failures in a short period of time is a very effective way to stop these types of attacks.', 'all-in-one-wp-security-and-firewall').
|
236 |
'<p>'.sprintf( esc_html(__('You may also want to checkout our %s feature for another secure way to protect against these types of attacks.', 'all-in-one-wp-security-and-firewall')), $brute_force_login_feature_link).'</p>';
|
230 |
<h2><?php _e('Login Lockdown Configuration', 'all-in-one-wp-security-and-firewall')?></h2>
|
231 |
<div class="aio_blue_box">
|
232 |
<?php
|
233 |
+
$brute_force_login_feature_link = '<a href="admin.php?page='.AIOWPSEC_BRUTE_FORCE_MENU_SLUG.'&tab=tab2">'.__('Cookie-Based Brute Force Login Prevention', 'all-in-one-wp-security-and-firewall').'</a>';
|
234 |
echo '<p>'.__('One of the ways hackers try to compromise sites is via a ', 'all-in-one-wp-security-and-firewall').'<strong>'.__('Brute Force Login Attack', 'all-in-one-wp-security-and-firewall').'</strong>. '.__('This is where attackers use repeated login attempts until they guess the password.', 'all-in-one-wp-security-and-firewall').'
|
235 |
<br />'.__('Apart from choosing strong passwords, monitoring and blocking IP addresses which are involved in repeated login failures in a short period of time is a very effective way to stop these types of attacks.', 'all-in-one-wp-security-and-firewall').
|
236 |
'<p>'.sprintf( esc_html(__('You may also want to checkout our %s feature for another secure way to protect against these types of attacks.', 'all-in-one-wp-security-and-firewall')), $brute_force_login_feature_link).'</p>';
|
classes/wp-security-general-init-tasks.php
CHANGED
@@ -562,7 +562,7 @@ class AIOWPSecurity_General_Init_Tasks
|
|
562 |
function reapply_htaccess_rules_notice()
|
563 |
{
|
564 |
if (get_option('aiowps_temp_configs') !== FALSE){
|
565 |
-
echo '<div class="updated"><p>'.__('Would you like All In One WP Security & Firewall to re-insert the security rules in your .htaccess file which were cleared when you deactivated the plugin?', 'all-in-one-wp-security-and-firewall').' <a href="admin.php?page='.AIOWPSEC_MENU_SLUG_PREFIX.'&aiowps_reapply_htaccess=1" class="button-primary">Yes</a> <a href="admin.php?page='.AIOWPSEC_MENU_SLUG_PREFIX.'&aiowps_reapply_htaccess=2" class="button-primary">No</a></p></div>';
|
566 |
}
|
567 |
}
|
568 |
|
562 |
function reapply_htaccess_rules_notice()
|
563 |
{
|
564 |
if (get_option('aiowps_temp_configs') !== FALSE){
|
565 |
+
echo '<div class="updated"><p>'.__('Would you like All In One WP Security & Firewall to re-insert the security rules in your .htaccess file which were cleared when you deactivated the plugin?', 'all-in-one-wp-security-and-firewall').' <a href="admin.php?page='.AIOWPSEC_MENU_SLUG_PREFIX.'&aiowps_reapply_htaccess=1" class="button-primary">'.__('Yes', 'all-in-one-wp-security-and-firewall').'</a> <a href="admin.php?page='.AIOWPSEC_MENU_SLUG_PREFIX.'&aiowps_reapply_htaccess=2" class="button-primary">'.__('No', 'all-in-one-wp-security-and-firewall').'</a></p></div>';
|
566 |
}
|
567 |
}
|
568 |
|
classes/wp-security-installer.php
CHANGED
@@ -82,7 +82,7 @@ class AIOWPSecurity_Installer
|
|
82 |
id bigint(20) NOT NULL AUTO_INCREMENT,
|
83 |
user_id bigint(20) NOT NULL,
|
84 |
user_login VARCHAR(150) NOT NULL,
|
85 |
-
failed_login_date datetime NOT NULL DEFAULT '1000-10-
|
86 |
login_attempt_ip varchar(100) NOT NULL DEFAULT '',
|
87 |
PRIMARY KEY (id)
|
88 |
)" . $charset_collate . ";";
|
@@ -92,8 +92,8 @@ class AIOWPSecurity_Installer
|
|
92 |
id bigint(20) NOT NULL AUTO_INCREMENT,
|
93 |
user_id bigint(20) NOT NULL,
|
94 |
user_login VARCHAR(150) NOT NULL,
|
95 |
-
login_date datetime NOT NULL DEFAULT '1000-10-
|
96 |
-
logout_date datetime NOT NULL DEFAULT '1000-10-
|
97 |
login_ip varchar(100) NOT NULL DEFAULT '',
|
98 |
login_country varchar(150) NOT NULL DEFAULT '',
|
99 |
browser_type varchar(150) NOT NULL DEFAULT '',
|
82 |
id bigint(20) NOT NULL AUTO_INCREMENT,
|
83 |
user_id bigint(20) NOT NULL,
|
84 |
user_login VARCHAR(150) NOT NULL,
|
85 |
+
failed_login_date datetime NOT NULL DEFAULT '1000-10-10 10:00:00',
|
86 |
login_attempt_ip varchar(100) NOT NULL DEFAULT '',
|
87 |
PRIMARY KEY (id)
|
88 |
)" . $charset_collate . ";";
|
92 |
id bigint(20) NOT NULL AUTO_INCREMENT,
|
93 |
user_id bigint(20) NOT NULL,
|
94 |
user_login VARCHAR(150) NOT NULL,
|
95 |
+
login_date datetime NOT NULL DEFAULT '1000-10-10 10:00:00',
|
96 |
+
logout_date datetime NOT NULL DEFAULT '1000-10-10 10:00:00',
|
97 |
login_ip varchar(100) NOT NULL DEFAULT '',
|
98 |
login_country varchar(150) NOT NULL DEFAULT '',
|
99 |
browser_type varchar(150) NOT NULL DEFAULT '',
|
classes/wp-security-process-renamed-login-page.php
CHANGED
@@ -6,7 +6,7 @@ if(!defined('ABSPATH')){
|
|
6 |
class AIOWPSecurity_Process_Renamed_Login_Page
|
7 |
{
|
8 |
|
9 |
-
function __construct()
|
10 |
{
|
11 |
add_action('login_init', array(&$this, 'aiowps_login_init'));
|
12 |
add_filter('site_url', array(&$this, 'aiowps_site_url'), 10, 2);
|
@@ -15,10 +15,10 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
15 |
add_filter('register', array(&$this, 'register_link'));
|
16 |
add_filter('user_request_action_email_content', array(&$this, 'aiowps_user_request_email_content'), 10, 2);
|
17 |
remove_action('template_redirect', 'wp_redirect_admin_locations', 1000); //To prevent redirect to login page when people type "login" at end of home URL
|
18 |
-
|
19 |
}
|
20 |
-
|
21 |
-
function aiowps_login_init()
|
22 |
{
|
23 |
if (strpos($_SERVER['REQUEST_URI'], 'wp-login') !== false){
|
24 |
$referer = wp_get_referer();
|
@@ -34,14 +34,14 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
34 |
die;
|
35 |
}
|
36 |
}
|
37 |
-
}
|
38 |
}
|
39 |
AIOWPSecurity_Process_Renamed_Login_Page::aiowps_set_404();
|
40 |
}
|
41 |
|
42 |
}
|
43 |
-
|
44 |
-
function aiowps_site_url($url, $path)
|
45 |
{
|
46 |
return $this->aiowps_filter_wp_login_file($url);
|
47 |
}
|
@@ -56,7 +56,7 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
56 |
{
|
57 |
return $this->aiowps_filter_wp_login_file($registration_url);
|
58 |
}
|
59 |
-
|
60 |
// Filter confirm link so we hide the secret login slug in the export_personal_data email
|
61 |
function aiowps_user_request_email_content($email_text, $email_data)
|
62 |
{
|
@@ -71,7 +71,7 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
71 |
$search_pattern = '?'.$login_slug.'&action';
|
72 |
$new_confirm_url = str_replace( $search_pattern, '/wp-login.php/?action', $confirm_url );
|
73 |
}
|
74 |
-
|
75 |
$email_text_modified = str_replace( '###CONFIRM_URL###', esc_url_raw( $new_confirm_url ), $email_text );
|
76 |
return $email_text_modified;
|
77 |
}
|
@@ -86,7 +86,7 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
86 |
$args = explode( '?', $url );
|
87 |
if (isset($args[1])){
|
88 |
if (strpos($args[1], 'action=postpass') !== FALSE){
|
89 |
-
return $url; //Don't reveal the secret URL in the post password action url
|
90 |
}
|
91 |
parse_str($args[1], $args);
|
92 |
$url = esc_url(add_query_arg($args, AIOWPSecurity_Process_Renamed_Login_Page::new_login_url()));
|
@@ -103,7 +103,7 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
103 |
global $aio_wp_security;
|
104 |
|
105 |
//The following will process the native wordpress post password protection form
|
106 |
-
//Normally this is done by wp-login.php file but we cannot use that since the login page has been renamed
|
107 |
$action = isset($_GET['action'])?strip_tags($_GET['action']):'';
|
108 |
if(isset($_POST['post_password']) && $action == 'postpass'){
|
109 |
require_once ABSPATH . 'wp-includes/class-phpass.php';
|
@@ -125,8 +125,8 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
125 |
wp_safe_redirect( wp_get_referer() );
|
126 |
exit();
|
127 |
}
|
128 |
-
|
129 |
-
//case where someone attempting to reach wp-admin
|
130 |
if (is_admin() && !is_user_logged_in() && !defined('DOING_AJAX') && basename( $_SERVER["SCRIPT_FILENAME"] ) !== 'admin-post.php'){
|
131 |
//Fix to prevent fatal error caused by some themes and Yoast SEO
|
132 |
do_action('aiowps_before_wp_die_renamed_login');
|
@@ -135,7 +135,7 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
135 |
|
136 |
//case where someone attempting to reach wp-login
|
137 |
if(isset($_SERVER['REQUEST_URI']) && strpos( $_SERVER['REQUEST_URI'], 'wp-login.php' ) && !is_user_logged_in()){
|
138 |
-
|
139 |
// Handle export personal data request for rename login case
|
140 |
if(isset($_GET['request_id'])) {
|
141 |
$request_id = (int) $_GET['request_id'];
|
@@ -157,7 +157,7 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
157 |
exit;
|
158 |
}
|
159 |
}
|
160 |
-
|
161 |
//Check if the maintenance (lockout) mode is active - if so prevent access to site by not displaying 404 page!
|
162 |
if($aio_wp_security->configs->get_value('aiowps_site_lockout') == '1'){
|
163 |
AIOWPSecurity_WP_Loaded_Tasks::site_lockout_tasks();
|
@@ -165,7 +165,7 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
165 |
AIOWPSecurity_Process_Renamed_Login_Page::aiowps_set_404();
|
166 |
}
|
167 |
}
|
168 |
-
|
169 |
//case where someone attempting to reach the standard register or signup pages
|
170 |
if(isset( $_SERVER['REQUEST_URI'] ) && strpos( $_SERVER['REQUEST_URI'], 'wp-register.php' ) ||
|
171 |
isset( $_SERVER['REQUEST_URI'] ) && strpos( $_SERVER['REQUEST_URI'], 'wp-signup.php' )){
|
@@ -181,7 +181,7 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
181 |
|
182 |
$login_slug = $aio_wp_security->configs->get_value('aiowps_login_page_slug');
|
183 |
$home_url_with_slug = home_url($login_slug, 'relative');
|
184 |
-
|
185 |
/*
|
186 |
* Compatibility fix for WPML plugin
|
187 |
*/
|
@@ -211,17 +211,19 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
211 |
global $wp_version;
|
212 |
do_action('aiowps_rename_login_load');
|
213 |
status_header( 200 );
|
214 |
-
if ( version_compare( $wp_version, '5.
|
215 |
require_once(AIO_WP_SECURITY_PATH . '/other-includes/wp-security-rename-login-feature.php' );
|
|
|
|
|
216 |
} else {
|
217 |
require_once(AIO_WP_SECURITY_PATH . '/other-includes/wp-security-rename-login-feature-pre-5-2.php' );
|
218 |
}
|
219 |
-
|
220 |
die;
|
221 |
}
|
222 |
-
}
|
223 |
}
|
224 |
-
|
225 |
static function new_login_url()
|
226 |
{
|
227 |
global $aio_wp_security;
|
@@ -233,7 +235,7 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
233 |
}
|
234 |
}
|
235 |
|
236 |
-
static function aiowps_set_404()
|
237 |
{
|
238 |
global $wp_query;
|
239 |
do_action('aiopws_before_set_404'); //This hook is for themes which produce a fatal error when the rename login feature is enabled and someone visits "wp-admin" slug directly
|
@@ -246,5 +248,5 @@ class AIOWPSecurity_Process_Renamed_Login_Page
|
|
246 |
}
|
247 |
die;
|
248 |
}
|
249 |
-
|
250 |
}
|
6 |
class AIOWPSecurity_Process_Renamed_Login_Page
|
7 |
{
|
8 |
|
9 |
+
function __construct()
|
10 |
{
|
11 |
add_action('login_init', array(&$this, 'aiowps_login_init'));
|
12 |
add_filter('site_url', array(&$this, 'aiowps_site_url'), 10, 2);
|
15 |
add_filter('register', array(&$this, 'register_link'));
|
16 |
add_filter('user_request_action_email_content', array(&$this, 'aiowps_user_request_email_content'), 10, 2);
|
17 |
remove_action('template_redirect', 'wp_redirect_admin_locations', 1000); //To prevent redirect to login page when people type "login" at end of home URL
|
18 |
+
|
19 |
}
|
20 |
+
|
21 |
+
function aiowps_login_init()
|
22 |
{
|
23 |
if (strpos($_SERVER['REQUEST_URI'], 'wp-login') !== false){
|
24 |
$referer = wp_get_referer();
|
34 |
die;
|
35 |
}
|
36 |
}
|
37 |
+
}
|
38 |
}
|
39 |
AIOWPSecurity_Process_Renamed_Login_Page::aiowps_set_404();
|
40 |
}
|
41 |
|
42 |
}
|
43 |
+
|
44 |
+
function aiowps_site_url($url, $path)
|
45 |
{
|
46 |
return $this->aiowps_filter_wp_login_file($url);
|
47 |
}
|
56 |
{
|
57 |
return $this->aiowps_filter_wp_login_file($registration_url);
|
58 |
}
|
59 |
+
|
60 |
// Filter confirm link so we hide the secret login slug in the export_personal_data email
|
61 |
function aiowps_user_request_email_content($email_text, $email_data)
|
62 |
{
|
71 |
$search_pattern = '?'.$login_slug.'&action';
|
72 |
$new_confirm_url = str_replace( $search_pattern, '/wp-login.php/?action', $confirm_url );
|
73 |
}
|
74 |
+
|
75 |
$email_text_modified = str_replace( '###CONFIRM_URL###', esc_url_raw( $new_confirm_url ), $email_text );
|
76 |
return $email_text_modified;
|
77 |
}
|
86 |
$args = explode( '?', $url );
|
87 |
if (isset($args[1])){
|
88 |
if (strpos($args[1], 'action=postpass') !== FALSE){
|
89 |
+
return $url; //Don't reveal the secret URL in the post password action url
|
90 |
}
|
91 |
parse_str($args[1], $args);
|
92 |
$url = esc_url(add_query_arg($args, AIOWPSecurity_Process_Renamed_Login_Page::new_login_url()));
|
103 |
global $aio_wp_security;
|
104 |
|
105 |
//The following will process the native wordpress post password protection form
|
106 |
+
//Normally this is done by wp-login.php file but we cannot use that since the login page has been renamed
|
107 |
$action = isset($_GET['action'])?strip_tags($_GET['action']):'';
|
108 |
if(isset($_POST['post_password']) && $action == 'postpass'){
|
109 |
require_once ABSPATH . 'wp-includes/class-phpass.php';
|
125 |
wp_safe_redirect( wp_get_referer() );
|
126 |
exit();
|
127 |
}
|
128 |
+
|
129 |
+
//case where someone attempting to reach wp-admin
|
130 |
if (is_admin() && !is_user_logged_in() && !defined('DOING_AJAX') && basename( $_SERVER["SCRIPT_FILENAME"] ) !== 'admin-post.php'){
|
131 |
//Fix to prevent fatal error caused by some themes and Yoast SEO
|
132 |
do_action('aiowps_before_wp_die_renamed_login');
|
135 |
|
136 |
//case where someone attempting to reach wp-login
|
137 |
if(isset($_SERVER['REQUEST_URI']) && strpos( $_SERVER['REQUEST_URI'], 'wp-login.php' ) && !is_user_logged_in()){
|
138 |
+
|
139 |
// Handle export personal data request for rename login case
|
140 |
if(isset($_GET['request_id'])) {
|
141 |
$request_id = (int) $_GET['request_id'];
|
157 |
exit;
|
158 |
}
|
159 |
}
|
160 |
+
|
161 |
//Check if the maintenance (lockout) mode is active - if so prevent access to site by not displaying 404 page!
|
162 |
if($aio_wp_security->configs->get_value('aiowps_site_lockout') == '1'){
|
163 |
AIOWPSecurity_WP_Loaded_Tasks::site_lockout_tasks();
|
165 |
AIOWPSecurity_Process_Renamed_Login_Page::aiowps_set_404();
|
166 |
}
|
167 |
}
|
168 |
+
|
169 |
//case where someone attempting to reach the standard register or signup pages
|
170 |
if(isset( $_SERVER['REQUEST_URI'] ) && strpos( $_SERVER['REQUEST_URI'], 'wp-register.php' ) ||
|
171 |
isset( $_SERVER['REQUEST_URI'] ) && strpos( $_SERVER['REQUEST_URI'], 'wp-signup.php' )){
|
181 |
|
182 |
$login_slug = $aio_wp_security->configs->get_value('aiowps_login_page_slug');
|
183 |
$home_url_with_slug = home_url($login_slug, 'relative');
|
184 |
+
|
185 |
/*
|
186 |
* Compatibility fix for WPML plugin
|
187 |
*/
|
211 |
global $wp_version;
|
212 |
do_action('aiowps_rename_login_load');
|
213 |
status_header( 200 );
|
214 |
+
if ( version_compare( $wp_version, '5.7', '>=' ) ) {
|
215 |
require_once(AIO_WP_SECURITY_PATH . '/other-includes/wp-security-rename-login-feature.php' );
|
216 |
+
} else if ( version_compare( $wp_version, '5.2', '>=' ) ) {
|
217 |
+
require_once(AIO_WP_SECURITY_PATH . '/other-includes/wp-security-rename-login-feature-pre-5-7.php' );
|
218 |
} else {
|
219 |
require_once(AIO_WP_SECURITY_PATH . '/other-includes/wp-security-rename-login-feature-pre-5-2.php' );
|
220 |
}
|
221 |
+
|
222 |
die;
|
223 |
}
|
224 |
+
}
|
225 |
}
|
226 |
+
|
227 |
static function new_login_url()
|
228 |
{
|
229 |
global $aio_wp_security;
|
235 |
}
|
236 |
}
|
237 |
|
238 |
+
static function aiowps_set_404()
|
239 |
{
|
240 |
global $wp_query;
|
241 |
do_action('aiopws_before_set_404'); //This hook is for themes which produce a fatal error when the rename login feature is enabled and someone visits "wp-admin" slug directly
|
248 |
}
|
249 |
die;
|
250 |
}
|
251 |
+
|
252 |
}
|
classes/wp-security-user-login.php
CHANGED
@@ -57,7 +57,7 @@ class AIOWPSecurity_User_Login
|
|
57 |
return $user;
|
58 |
}
|
59 |
}
|
60 |
-
|
61 |
/**
|
62 |
* Check login captcha (if enabled).
|
63 |
* @global AIO_WP_Security $aio_wp_security
|
@@ -71,12 +71,12 @@ class AIOWPSecurity_User_Login
|
|
71 |
// Authentication has failed already at some earlier step.
|
72 |
return $user;
|
73 |
}
|
74 |
-
|
75 |
if ( ! (isset($_POST['log']) && isset($_POST['pwd'])) ) {
|
76 |
// XML-RPC authentication (not via wp-login.php), nothing to do here.
|
77 |
return $user;
|
78 |
}
|
79 |
-
|
80 |
if ( $aio_wp_security->configs->get_value('aiowps_enable_login_captcha') != '1' ) {
|
81 |
// Captcha not enabled, nothing to do here.
|
82 |
return $user;
|
@@ -149,7 +149,7 @@ class AIOWPSecurity_User_Login
|
|
149 |
$whitelisted_ips = $aio_wp_security->configs->get_value('aiowps_lockdown_allowed_ip_addresses');
|
150 |
$is_whitelisted = AIOWPSecurity_Utility_IP::is_ip_whitelisted($ip, $whitelisted_ips);
|
151 |
}
|
152 |
-
|
153 |
if($is_whitelisted === false){
|
154 |
// Too many failed logins from user's IP?
|
155 |
$login_attempts_permitted = absint($aio_wp_security->configs->get_value('aiowps_max_login_attempts'));
|
@@ -171,7 +171,7 @@ class AIOWPSecurity_User_Login
|
|
171 |
}
|
172 |
}
|
173 |
}
|
174 |
-
|
175 |
if ( $aio_wp_security->configs->get_value('aiowps_set_generic_login_msg') == '1' )
|
176 |
{
|
177 |
// Return generic error message if configured
|
@@ -207,9 +207,9 @@ class AIOWPSecurity_User_Login
|
|
207 |
$now = current_time( 'mysql' );
|
208 |
$ip = AIOWPSecurity_Utility_IP::get_user_ip_address(); //Get the IP address of user
|
209 |
if(empty($ip)) return false;
|
210 |
-
$login_failures = $wpdb->get_var("SELECT COUNT(ID) FROM $failed_logins_table " .
|
211 |
"WHERE failed_login_date + INTERVAL " .
|
212 |
-
$login_retry_interval . " MINUTE > '" . esc_sql($now) . "' AND " .
|
213 |
"login_attempt_ip = '" . esc_sql($ip) . "'");
|
214 |
return $login_failures;
|
215 |
}
|
@@ -237,7 +237,7 @@ class AIOWPSecurity_User_Login
|
|
237 |
$user_id = 0;
|
238 |
}
|
239 |
$ip_range_str = esc_sql($ip_range).'.*';
|
240 |
-
|
241 |
$lock_time = current_time( 'mysql' );
|
242 |
$date = new DateTime($lock_time);
|
243 |
$add_interval = 'PT'.absint($lock_minutes).'M';
|
@@ -247,7 +247,7 @@ class AIOWPSecurity_User_Login
|
|
247 |
$data = array('user_id' => $user_id, 'user_login' => $username, 'lockdown_date' => $lock_time, 'release_date' => $release_time, 'failed_login_IP' => $ip, 'lock_reason' => $lock_reason);
|
248 |
$format = array('%d', '%s', '%s', '%s', '%s', '%s');
|
249 |
$result = $wpdb->insert($login_lockdown_table, $data, $format);
|
250 |
-
|
251 |
if ($result === FALSE)
|
252 |
{
|
253 |
$aio_wp_security->debug_logger->log_debug("Error inserting record into ".$login_lockdown_table,4);//Log the highly unlikely event of DB error
|
@@ -313,10 +313,10 @@ class AIOWPSecurity_User_Login
|
|
313 |
}
|
314 |
}
|
315 |
}
|
316 |
-
|
317 |
/**
|
318 |
* Generates and returns an unlock request link which will be used to send to the user.
|
319 |
-
*
|
320 |
* @global type $wpdb
|
321 |
* @global AIO_WP_Security $aio_wp_security
|
322 |
* @param type $ip_range
|
@@ -329,8 +329,7 @@ class AIOWPSecurity_User_Login
|
|
329 |
$unlock_link = '';
|
330 |
$lockdown_table_name = AIOWPSEC_TBL_LOGIN_LOCKDOWN;
|
331 |
$secret_rand_key = (md5(uniqid(rand(), true)));
|
332 |
-
$
|
333 |
-
$res = $wpdb->query($sql);
|
334 |
if($res == NULL){
|
335 |
$aio_wp_security->debug_logger->log_debug("No locked user found with IP range ".$ip_range,4);
|
336 |
return false;
|
@@ -359,7 +358,7 @@ class AIOWPSecurity_User_Login
|
|
359 |
{
|
360 |
global $wpdb, $aio_wp_security;
|
361 |
$lockdown_table_name = AIOWPSEC_TBL_LOGIN_LOCKDOWN;
|
362 |
-
|
363 |
$unlock_command = $wpdb->prepare( "UPDATE ".$lockdown_table_name." SET release_date = now() WHERE unlock_key = %s", $unlock_key );
|
364 |
$result = $wpdb->query($unlock_command);
|
365 |
if($result === false)
|
@@ -393,14 +392,14 @@ class AIOWPSecurity_User_Login
|
|
393 |
}else{
|
394 |
$login_url = $home_url.$aio_wp_security->configs->get_value('aiowps_login_page_slug');
|
395 |
}
|
396 |
-
|
397 |
AIOWPSecurity_Utility::redirect_to_url($login_url);
|
398 |
}else{
|
399 |
AIOWPSecurity_Utility::redirect_to_url(wp_login_url());
|
400 |
}
|
401 |
}
|
402 |
}
|
403 |
-
|
404 |
/*
|
405 |
* This function sends an unlock request email to a locked out user
|
406 |
*/
|
@@ -421,7 +420,7 @@ class AIOWPSecurity_User_Login
|
|
421 |
$aio_wp_security->debug_logger->log_debug("Unlock Request Notification email failed to send to " . $email, 4);
|
422 |
}
|
423 |
}
|
424 |
-
|
425 |
/*
|
426 |
* This function will check the settings and log the user after the configured time period
|
427 |
*/
|
@@ -444,7 +443,7 @@ class AIOWPSecurity_User_Login
|
|
444 |
{
|
445 |
$aio_wp_security->debug_logger->log_debug("Force Logout - This user logged in more than (".$logout_time_interval_value.") minutes ago. Doing a force log out for the user with username: ".$current_user->user_login);
|
446 |
$this->wp_logout_action_handler(); //this will register the logout time/date in the logout_date column
|
447 |
-
|
448 |
$curr_page_url = AIOWPSecurity_Utility::get_current_page_url();
|
449 |
$after_logout_payload = array('redirect_to'=>$curr_page_url, 'msg'=>$this->key_login_msg.'=session_expired');
|
450 |
//Save some of the logout redirect data to a transient
|
@@ -457,17 +456,17 @@ class AIOWPSecurity_User_Login
|
|
457 |
}
|
458 |
}
|
459 |
}
|
460 |
-
|
461 |
function get_wp_user_last_login_time($user_id)
|
462 |
{
|
463 |
$last_login = get_user_meta($user_id, 'last_login_time', true);
|
464 |
return $last_login;
|
465 |
}
|
466 |
-
static function wp_login_action_handler($user_login, $user='')
|
467 |
{
|
468 |
global $wpdb, $aio_wp_security;
|
469 |
$login_activity_table = AIOWPSEC_TBL_USER_LOGIN_ACTIVITY;
|
470 |
-
|
471 |
if ($user == ''){
|
472 |
//Try and get user object
|
473 |
$user = get_user_by('login', $user_login); //This should return WP_User obj
|
@@ -479,25 +478,25 @@ class AIOWPSecurity_User_Login
|
|
479 |
$login_date_time = current_time( 'mysql' );
|
480 |
update_user_meta($user->ID, 'last_login_time', $login_date_time); //store last login time in meta table
|
481 |
$curr_ip_address = AIOWPSecurity_Utility_IP::get_user_ip_address();
|
482 |
-
$
|
483 |
-
|
484 |
-
$result = $wpdb->
|
485 |
if ($result === FALSE)
|
486 |
{
|
487 |
$aio_wp_security->debug_logger->log_debug("Error inserting record into ".$login_activity_table,4);//Log the highly unlikely event of DB error
|
488 |
}
|
489 |
-
|
490 |
}
|
491 |
/**
|
492 |
* The handler for logout events, ie, uses the WP "clear_auth_cookies" action.
|
493 |
-
|
494 |
* Modifies the login activity record for the current user by registering the logout time/date in the logout_date column.
|
495 |
* (NOTE: Because of the way we are doing a force logout, the "clear_auth_cookies" hook does not fire.
|
496 |
-
* upon auto logout. The current workaround is to call this function directly from the aiowps_force_logout_action_handler() when
|
497 |
-
* an auto logout occurs due to the "force logout" feature).
|
498 |
*
|
499 |
*/
|
500 |
-
function wp_logout_action_handler()
|
501 |
{
|
502 |
global $wpdb, $aio_wp_security;
|
503 |
$current_user = wp_get_current_user();
|
@@ -510,14 +509,14 @@ class AIOWPSecurity_User_Login
|
|
510 |
$data = array('logout_date' => $logout_date_time);
|
511 |
$where = array('user_id' => $user_id,
|
512 |
'login_ip' => $ip_addr,
|
513 |
-
'logout_date' => '1000-10-
|
514 |
$result = $wpdb->update($login_activity_table, $data, $where);
|
515 |
if ($result === FALSE)
|
516 |
{
|
517 |
$aio_wp_security->debug_logger->log_debug("Error inserting record into ".$login_activity_table,4);//Log the highly unlikely event of DB error
|
518 |
}
|
519 |
}
|
520 |
-
|
521 |
/**
|
522 |
* Update the 'users_online' transient
|
523 |
* @return void
|
@@ -530,7 +529,7 @@ class AIOWPSecurity_User_Login
|
|
530 |
// get the logged in users list from transients entry
|
531 |
$logged_in_users = ($is_multi_site ? get_site_transient('users_online') : get_transient('users_online'));
|
532 |
$current_user = wp_get_current_user();
|
533 |
-
$current_user = $current_user->ID;
|
534 |
$current_time = current_time('timestamp');
|
535 |
$current_user_info = array();
|
536 |
|
@@ -540,9 +539,9 @@ class AIOWPSecurity_User_Login
|
|
540 |
// For multi-sites also store blog_id
|
541 |
$current_user_info = array("user_id" => $current_user, "last_activity" => $current_time, "ip_address" => $current_user_ip, "blog_id" => $current_blog_id);
|
542 |
} else {
|
543 |
-
$current_user_info = array("user_id" => $current_user, "last_activity" => $current_time, "ip_address" => $current_user_ip, "blog_id" => false);
|
544 |
}
|
545 |
-
|
546 |
if(empty($logged_in_users))
|
547 |
{
|
548 |
// case when "users_online" transient has been deleted after expiry or is empty
|
@@ -587,12 +586,12 @@ class AIOWPSecurity_User_Login
|
|
587 |
}
|
588 |
}
|
589 |
}
|
590 |
-
|
591 |
/**
|
592 |
-
* This will clean up the "users_online" transient entry for the current user when a logout occurs
|
593 |
* @return void
|
594 |
*/
|
595 |
-
function cleanup_users_online_transient($user_id, $ip_addr)
|
596 |
{
|
597 |
global $aio_wp_security;
|
598 |
$is_multi_site = AIOWPSecurity_Utility::is_multisite_install();
|
@@ -602,7 +601,7 @@ class AIOWPSecurity_User_Login
|
|
602 |
} else {
|
603 |
$logged_in_users = get_transient('users_online');
|
604 |
}
|
605 |
-
|
606 |
if (empty($logged_in_users))
|
607 |
{
|
608 |
return;
|
@@ -617,7 +616,7 @@ class AIOWPSecurity_User_Login
|
|
617 |
}
|
618 |
$j++;
|
619 |
}
|
620 |
-
|
621 |
// Save the transient
|
622 |
if ($is_multi_site) {
|
623 |
set_site_transient('users_online', $logged_in_users, 30 * 60);
|
@@ -626,7 +625,7 @@ class AIOWPSecurity_User_Login
|
|
626 |
}
|
627 |
return;
|
628 |
}
|
629 |
-
|
630 |
/**
|
631 |
* The handler for the WP "login_message" filter
|
632 |
* Adds custom messages to the other messages that appear above the login form.
|
@@ -638,7 +637,7 @@ class AIOWPSecurity_User_Login
|
|
638 |
* @return string
|
639 |
*
|
640 |
*/
|
641 |
-
function aiowps_login_message($message = '')
|
642 |
{
|
643 |
global $aio_wp_security;
|
644 |
$msg = '';
|
@@ -698,7 +697,7 @@ class AIOWPSecurity_User_Login
|
|
698 |
*/
|
699 |
static function get_subsite_logged_in_users($blog_id=0) {
|
700 |
if(empty($blog_id)) return false;
|
701 |
-
|
702 |
$subsite_logged_in_users = array();
|
703 |
if (AIOWPSecurity_Utility::is_multisite_install()) {
|
704 |
// this contains all logged in users sitewide across subsites
|
57 |
return $user;
|
58 |
}
|
59 |
}
|
60 |
+
|
61 |
/**
|
62 |
* Check login captcha (if enabled).
|
63 |
* @global AIO_WP_Security $aio_wp_security
|
71 |
// Authentication has failed already at some earlier step.
|
72 |
return $user;
|
73 |
}
|
74 |
+
|
75 |
if ( ! (isset($_POST['log']) && isset($_POST['pwd'])) ) {
|
76 |
// XML-RPC authentication (not via wp-login.php), nothing to do here.
|
77 |
return $user;
|
78 |
}
|
79 |
+
|
80 |
if ( $aio_wp_security->configs->get_value('aiowps_enable_login_captcha') != '1' ) {
|
81 |
// Captcha not enabled, nothing to do here.
|
82 |
return $user;
|
149 |
$whitelisted_ips = $aio_wp_security->configs->get_value('aiowps_lockdown_allowed_ip_addresses');
|
150 |
$is_whitelisted = AIOWPSecurity_Utility_IP::is_ip_whitelisted($ip, $whitelisted_ips);
|
151 |
}
|
152 |
+
|
153 |
if($is_whitelisted === false){
|
154 |
// Too many failed logins from user's IP?
|
155 |
$login_attempts_permitted = absint($aio_wp_security->configs->get_value('aiowps_max_login_attempts'));
|
171 |
}
|
172 |
}
|
173 |
}
|
174 |
+
|
175 |
if ( $aio_wp_security->configs->get_value('aiowps_set_generic_login_msg') == '1' )
|
176 |
{
|
177 |
// Return generic error message if configured
|
207 |
$now = current_time( 'mysql' );
|
208 |
$ip = AIOWPSecurity_Utility_IP::get_user_ip_address(); //Get the IP address of user
|
209 |
if(empty($ip)) return false;
|
210 |
+
$login_failures = $wpdb->get_var("SELECT COUNT(ID) FROM $failed_logins_table " .
|
211 |
"WHERE failed_login_date + INTERVAL " .
|
212 |
+
esc_sql($login_retry_interval) . " MINUTE > '" . esc_sql($now) . "' AND " .
|
213 |
"login_attempt_ip = '" . esc_sql($ip) . "'");
|
214 |
return $login_failures;
|
215 |
}
|
237 |
$user_id = 0;
|
238 |
}
|
239 |
$ip_range_str = esc_sql($ip_range).'.*';
|
240 |
+
|
241 |
$lock_time = current_time( 'mysql' );
|
242 |
$date = new DateTime($lock_time);
|
243 |
$add_interval = 'PT'.absint($lock_minutes).'M';
|
247 |
$data = array('user_id' => $user_id, 'user_login' => $username, 'lockdown_date' => $lock_time, 'release_date' => $release_time, 'failed_login_IP' => $ip, 'lock_reason' => $lock_reason);
|
248 |
$format = array('%d', '%s', '%s', '%s', '%s', '%s');
|
249 |
$result = $wpdb->insert($login_lockdown_table, $data, $format);
|
250 |
+
|
251 |
if ($result === FALSE)
|
252 |
{
|
253 |
$aio_wp_security->debug_logger->log_debug("Error inserting record into ".$login_lockdown_table,4);//Log the highly unlikely event of DB error
|
313 |
}
|
314 |
}
|
315 |
}
|
316 |
+
|
317 |
/**
|
318 |
* Generates and returns an unlock request link which will be used to send to the user.
|
319 |
+
*
|
320 |
* @global type $wpdb
|
321 |
* @global AIO_WP_Security $aio_wp_security
|
322 |
* @param type $ip_range
|
329 |
$unlock_link = '';
|
330 |
$lockdown_table_name = AIOWPSEC_TBL_LOGIN_LOCKDOWN;
|
331 |
$secret_rand_key = (md5(uniqid(rand(), true)));
|
332 |
+
$res = $wpdb->query( $wpdb->prepare("UPDATE $lockdown_table_name SET unlock_key = '$secret_rand_key' WHERE release_date > now() AND failed_login_ip LIKE %s","%".esc_sql($ip_range)."%") );
|
|
|
333 |
if($res == NULL){
|
334 |
$aio_wp_security->debug_logger->log_debug("No locked user found with IP range ".$ip_range,4);
|
335 |
return false;
|
358 |
{
|
359 |
global $wpdb, $aio_wp_security;
|
360 |
$lockdown_table_name = AIOWPSEC_TBL_LOGIN_LOCKDOWN;
|
361 |
+
|
362 |
$unlock_command = $wpdb->prepare( "UPDATE ".$lockdown_table_name." SET release_date = now() WHERE unlock_key = %s", $unlock_key );
|
363 |
$result = $wpdb->query($unlock_command);
|
364 |
if($result === false)
|
392 |
}else{
|
393 |
$login_url = $home_url.$aio_wp_security->configs->get_value('aiowps_login_page_slug');
|
394 |
}
|
395 |
+
|
396 |
AIOWPSecurity_Utility::redirect_to_url($login_url);
|
397 |
}else{
|
398 |
AIOWPSecurity_Utility::redirect_to_url(wp_login_url());
|
399 |
}
|
400 |
}
|
401 |
}
|
402 |
+
|
403 |
/*
|
404 |
* This function sends an unlock request email to a locked out user
|
405 |
*/
|
420 |
$aio_wp_security->debug_logger->log_debug("Unlock Request Notification email failed to send to " . $email, 4);
|
421 |
}
|
422 |
}
|
423 |
+
|
424 |
/*
|
425 |
* This function will check the settings and log the user after the configured time period
|
426 |
*/
|
443 |
{
|
444 |
$aio_wp_security->debug_logger->log_debug("Force Logout - This user logged in more than (".$logout_time_interval_value.") minutes ago. Doing a force log out for the user with username: ".$current_user->user_login);
|
445 |
$this->wp_logout_action_handler(); //this will register the logout time/date in the logout_date column
|
446 |
+
|
447 |
$curr_page_url = AIOWPSecurity_Utility::get_current_page_url();
|
448 |
$after_logout_payload = array('redirect_to'=>$curr_page_url, 'msg'=>$this->key_login_msg.'=session_expired');
|
449 |
//Save some of the logout redirect data to a transient
|
456 |
}
|
457 |
}
|
458 |
}
|
459 |
+
|
460 |
function get_wp_user_last_login_time($user_id)
|
461 |
{
|
462 |
$last_login = get_user_meta($user_id, 'last_login_time', true);
|
463 |
return $last_login;
|
464 |
}
|
465 |
+
static function wp_login_action_handler($user_login, $user='')
|
466 |
{
|
467 |
global $wpdb, $aio_wp_security;
|
468 |
$login_activity_table = AIOWPSEC_TBL_USER_LOGIN_ACTIVITY;
|
469 |
+
|
470 |
if ($user == ''){
|
471 |
//Try and get user object
|
472 |
$user = get_user_by('login', $user_login); //This should return WP_User obj
|
478 |
$login_date_time = current_time( 'mysql' );
|
479 |
update_user_meta($user->ID, 'last_login_time', $login_date_time); //store last login time in meta table
|
480 |
$curr_ip_address = AIOWPSecurity_Utility_IP::get_user_ip_address();
|
481 |
+
$data = array('user_id' => $user->ID, 'user_login' => $user_login, 'login_date' => $login_date_time, 'login_ip' => $curr_ip_address);
|
482 |
+
$format = array('%d', '%s', '%s', '%s');
|
483 |
+
$result = $wpdb->insert($login_activity_table, $data, $format);
|
484 |
if ($result === FALSE)
|
485 |
{
|
486 |
$aio_wp_security->debug_logger->log_debug("Error inserting record into ".$login_activity_table,4);//Log the highly unlikely event of DB error
|
487 |
}
|
488 |
+
|
489 |
}
|
490 |
/**
|
491 |
* The handler for logout events, ie, uses the WP "clear_auth_cookies" action.
|
492 |
+
|
493 |
* Modifies the login activity record for the current user by registering the logout time/date in the logout_date column.
|
494 |
* (NOTE: Because of the way we are doing a force logout, the "clear_auth_cookies" hook does not fire.
|
495 |
+
* upon auto logout. The current workaround is to call this function directly from the aiowps_force_logout_action_handler() when
|
496 |
+
* an auto logout occurs due to the "force logout" feature).
|
497 |
*
|
498 |
*/
|
499 |
+
function wp_logout_action_handler()
|
500 |
{
|
501 |
global $wpdb, $aio_wp_security;
|
502 |
$current_user = wp_get_current_user();
|
509 |
$data = array('logout_date' => $logout_date_time);
|
510 |
$where = array('user_id' => $user_id,
|
511 |
'login_ip' => $ip_addr,
|
512 |
+
'logout_date' => '1000-10-10 10:00:00');
|
513 |
$result = $wpdb->update($login_activity_table, $data, $where);
|
514 |
if ($result === FALSE)
|
515 |
{
|
516 |
$aio_wp_security->debug_logger->log_debug("Error inserting record into ".$login_activity_table,4);//Log the highly unlikely event of DB error
|
517 |
}
|
518 |
}
|
519 |
+
|
520 |
/**
|
521 |
* Update the 'users_online' transient
|
522 |
* @return void
|
529 |
// get the logged in users list from transients entry
|
530 |
$logged_in_users = ($is_multi_site ? get_site_transient('users_online') : get_transient('users_online'));
|
531 |
$current_user = wp_get_current_user();
|
532 |
+
$current_user = $current_user->ID;
|
533 |
$current_time = current_time('timestamp');
|
534 |
$current_user_info = array();
|
535 |
|
539 |
// For multi-sites also store blog_id
|
540 |
$current_user_info = array("user_id" => $current_user, "last_activity" => $current_time, "ip_address" => $current_user_ip, "blog_id" => $current_blog_id);
|
541 |
} else {
|
542 |
+
$current_user_info = array("user_id" => $current_user, "last_activity" => $current_time, "ip_address" => $current_user_ip, "blog_id" => false);
|
543 |
}
|
544 |
+
|
545 |
if(empty($logged_in_users))
|
546 |
{
|
547 |
// case when "users_online" transient has been deleted after expiry or is empty
|
586 |
}
|
587 |
}
|
588 |
}
|
589 |
+
|
590 |
/**
|
591 |
+
* This will clean up the "users_online" transient entry for the current user when a logout occurs
|
592 |
* @return void
|
593 |
*/
|
594 |
+
function cleanup_users_online_transient($user_id, $ip_addr)
|
595 |
{
|
596 |
global $aio_wp_security;
|
597 |
$is_multi_site = AIOWPSecurity_Utility::is_multisite_install();
|
601 |
} else {
|
602 |
$logged_in_users = get_transient('users_online');
|
603 |
}
|
604 |
+
|
605 |
if (empty($logged_in_users))
|
606 |
{
|
607 |
return;
|
616 |
}
|
617 |
$j++;
|
618 |
}
|
619 |
+
|
620 |
// Save the transient
|
621 |
if ($is_multi_site) {
|
622 |
set_site_transient('users_online', $logged_in_users, 30 * 60);
|
625 |
}
|
626 |
return;
|
627 |
}
|
628 |
+
|
629 |
/**
|
630 |
* The handler for the WP "login_message" filter
|
631 |
* Adds custom messages to the other messages that appear above the login form.
|
637 |
* @return string
|
638 |
*
|
639 |
*/
|
640 |
+
function aiowps_login_message($message = '')
|
641 |
{
|
642 |
global $aio_wp_security;
|
643 |
$msg = '';
|
697 |
*/
|
698 |
static function get_subsite_logged_in_users($blog_id=0) {
|
699 |
if(empty($blog_id)) return false;
|
700 |
+
|
701 |
$subsite_logged_in_users = array();
|
702 |
if (AIOWPSecurity_Utility::is_multisite_install()) {
|
703 |
// this contains all logged in users sitewide across subsites
|
classes/wp-security-utility-file.php
CHANGED
@@ -5,10 +5,10 @@ if(!defined('ABSPATH')){
|
|
5 |
|
6 |
class AIOWPSecurity_Utility_File
|
7 |
{
|
8 |
-
|
9 |
/* This variable will be an array which will contain all of the files and/or directories we wish to check permissions for */
|
10 |
public $files_and_dirs_to_check;
|
11 |
-
|
12 |
function __construct(){
|
13 |
/* Let's initiliaze our class variable array with all of the files and/or directories we wish to check permissions for.
|
14 |
* NOTE: we can add to this list in future if we wish
|
@@ -18,7 +18,7 @@ class AIOWPSecurity_Utility_File
|
|
18 |
if ( !function_exists( 'get_home_path' ) ) require_once( ABSPATH. '/wp-admin/includes/file.php' );
|
19 |
$wp_config_path = AIOWPSecurity_Utility_File::get_wp_config_file_path();
|
20 |
$home_path = get_home_path();
|
21 |
-
|
22 |
$this->files_and_dirs_to_check = array(
|
23 |
array('name'=>'root directory','path'=>ABSPATH,'permissions'=>'0755'),
|
24 |
array('name'=>'wp-includes/','path'=>ABSPATH."wp-includes",'permissions'=>'0755'),
|
@@ -34,19 +34,19 @@ class AIOWPSecurity_Utility_File
|
|
34 |
);
|
35 |
|
36 |
}
|
37 |
-
|
38 |
static function get_wp_config_file_path()
|
39 |
{
|
40 |
$wp_config_file = ABSPATH . 'wp-config.php';
|
41 |
if(file_exists($wp_config_file)){
|
42 |
return $wp_config_file;
|
43 |
}
|
44 |
-
else if (file_exists(dirname( ABSPATH ) . '/wp-config.php')){
|
45 |
return dirname( ABSPATH ) . '/wp-config.php';
|
46 |
}
|
47 |
return $wp_config_file;
|
48 |
}
|
49 |
-
|
50 |
static function write_content_to_file($file_path, $new_contents)
|
51 |
{
|
52 |
@chmod($file_path, 0777);
|
@@ -63,7 +63,7 @@ class AIOWPSecurity_Utility_File
|
|
63 |
return false;
|
64 |
}
|
65 |
}
|
66 |
-
|
67 |
static function backup_a_file($src_file_path, $suffix = 'backup')
|
68 |
{
|
69 |
$backup_file_path = $src_file_path . '.' . $suffix;
|
@@ -77,7 +77,7 @@ class AIOWPSecurity_Utility_File
|
|
77 |
static function backup_and_rename_wp_config($src_file_path, $prefix = 'backup')
|
78 |
{
|
79 |
global $aio_wp_security;
|
80 |
-
|
81 |
//Check to see if the main "backups" directory exists - create it otherwise
|
82 |
$aiowps_backup_dir = WP_CONTENT_DIR.'/'.AIO_WP_SECURITY_BACKUPS_DIR_NAME;
|
83 |
if (!AIOWPSecurity_Utility_File::create_dir($aiowps_backup_dir))
|
@@ -85,10 +85,10 @@ class AIOWPSecurity_Utility_File
|
|
85 |
$aio_wp_security->debug_logger->log_debug("backup_and_rename_wp_config - Creation of backup directory failed!",4);
|
86 |
return false;
|
87 |
}
|
88 |
-
|
89 |
$src_parts = pathinfo($src_file_path);
|
90 |
$backup_file_name = $prefix . '.' . $src_parts['basename'];
|
91 |
-
|
92 |
$backup_file_path = $aiowps_backup_dir . '/' . $backup_file_name;
|
93 |
if (!copy($src_file_path, $backup_file_path)) {
|
94 |
//Failed to make a backup copy
|
@@ -96,11 +96,11 @@ class AIOWPSecurity_Utility_File
|
|
96 |
}
|
97 |
return true;
|
98 |
}
|
99 |
-
|
100 |
static function backup_and_rename_htaccess($src_file_path, $suffix = 'backup')
|
101 |
{
|
102 |
global $aio_wp_security;
|
103 |
-
|
104 |
//Check to see if the main "backups" directory exists - create it otherwise
|
105 |
$aiowps_backup_dir = WP_CONTENT_DIR.'/'.AIO_WP_SECURITY_BACKUPS_DIR_NAME;
|
106 |
if (!AIOWPSecurity_Utility_File::create_dir($aiowps_backup_dir))
|
@@ -108,10 +108,10 @@ class AIOWPSecurity_Utility_File
|
|
108 |
$aio_wp_security->debug_logger->log_debug("backup_and_rename_htaccess - Creation of backup directory failed!",4);
|
109 |
return false;
|
110 |
}
|
111 |
-
|
112 |
$src_parts = pathinfo($src_file_path);
|
113 |
$backup_file_name = $src_parts['basename'] . '.' . $suffix;
|
114 |
-
|
115 |
$backup_file_path = $aiowps_backup_dir . '/' . $backup_file_name;
|
116 |
if (!copy($src_file_path, $backup_file_path)) {
|
117 |
//Failed to make a backup copy
|
@@ -125,14 +125,14 @@ class AIOWPSecurity_Utility_File
|
|
125 |
{
|
126 |
global $wpdb, $aio_wp_security;
|
127 |
$file_contents = AIOWPSecurity_Utility_File::get_file_contents($src_file_path);
|
128 |
-
|
129 |
$payload = serialize($file_contents);
|
130 |
$date_time = current_time( 'mysql' );
|
131 |
$data = array('date_time' => $date_time, 'meta_key1' => $key_description, 'meta_value2' => $payload);
|
132 |
|
133 |
//First check if a backup entry already exists in the global_meta table
|
134 |
$aiowps_global_meta_tbl_name = AIOWPSEC_TBL_GLOBAL_META_DATA;
|
135 |
-
$resultset = $wpdb->get_row("SELECT * FROM $aiowps_global_meta_tbl_name WHERE meta_key1 = '
|
136 |
if($resultset){
|
137 |
$where = array('meta_key1' => $key_description);
|
138 |
$res = $wpdb->update($aiowps_global_meta_tbl_name, $data, $where);
|
@@ -146,8 +146,8 @@ class AIOWPSecurity_Utility_File
|
|
146 |
}
|
147 |
return;
|
148 |
}
|
149 |
-
|
150 |
-
|
151 |
static function recursive_file_search($pattern='*', $flags = 0, $path='')
|
152 |
{
|
153 |
$paths=glob($path.'*', GLOB_MARK|GLOB_ONLYDIR|GLOB_NOSORT);
|
@@ -161,13 +161,13 @@ class AIOWPSecurity_Utility_File
|
|
161 |
foreach ($paths as $path) { $files=array_merge($files,AIOWPSecurity_Utility_File::recursive_file_search($pattern, $flags, $path)); }
|
162 |
return $files;
|
163 |
}
|
164 |
-
|
165 |
/*
|
166 |
* Useful when wanting to echo file contents to screen with <br /> tags
|
167 |
*/
|
168 |
static function get_file_contents_with_br($src_file)
|
169 |
{
|
170 |
-
$file_contents = file_get_contents($src_file);
|
171 |
return nl2br($file_contents);
|
172 |
}
|
173 |
|
@@ -176,20 +176,20 @@ class AIOWPSecurity_Utility_File
|
|
176 |
*/
|
177 |
static function get_file_contents($src_file)
|
178 |
{
|
179 |
-
$file_contents = file_get_contents($src_file);
|
180 |
return $file_contents;
|
181 |
}
|
182 |
-
|
183 |
/*
|
184 |
* Returns the file's permission value eg, "0755"
|
185 |
*/
|
186 |
static function get_file_permission($filepath)
|
187 |
{
|
188 |
-
if (!function_exists('fileperms'))
|
189 |
{
|
190 |
$perms = '-1';
|
191 |
}
|
192 |
-
else
|
193 |
{
|
194 |
clearstatcache();
|
195 |
$perms = substr(sprintf("%o", @fileperms($filepath)), -4);
|
@@ -207,7 +207,7 @@ class AIOWPSecurity_Utility_File
|
|
207 |
if ($write_result === false)
|
208 |
{
|
209 |
return false;
|
210 |
-
}
|
211 |
else
|
212 |
{
|
213 |
return true;
|
@@ -232,7 +232,7 @@ class AIOWPSecurity_Utility_File
|
|
232 |
readfile($file);
|
233 |
exit;
|
234 |
}
|
235 |
-
|
236 |
static function download_content_to_a_file($output, $file_name = '')
|
237 |
{
|
238 |
if(empty($file_name)){$file_name = "aiowps_" . date("Y-m-d_H-i", time()).".txt";}
|
@@ -247,7 +247,7 @@ class AIOWPSecurity_Utility_File
|
|
247 |
echo $output;
|
248 |
exit;
|
249 |
}
|
250 |
-
|
251 |
/*
|
252 |
* This function will compare the current permission value for a file or dir with the recommended value.
|
253 |
* It will compare the individual "execute", "write" and "read" bits for the "public", "group" and "owner" permissions.
|
@@ -275,7 +275,7 @@ class AIOWPSecurity_Utility_File
|
|
275 |
//The "execute" bit is switched on for the actual value - meaning it is less secure
|
276 |
$result = 0*$result;
|
277 |
}
|
278 |
-
|
279 |
//Compare the "write" bit values for the public actual versus the recommended
|
280 |
if (substr($pva_bin,-2,1)<=substr($pvr_bin,-2,1))
|
281 |
{
|
@@ -336,7 +336,7 @@ class AIOWPSecurity_Utility_File
|
|
336 |
//The "read" bit is switched on for the actual value - meaning it is less secure
|
337 |
$result = 0*$result;
|
338 |
}
|
339 |
-
|
340 |
//Check "owner" permissions
|
341 |
$owner_value_actual = substr($actual,-3,1);
|
342 |
$owner_value_rec = substr($recommended,-3,1);
|
5 |
|
6 |
class AIOWPSecurity_Utility_File
|
7 |
{
|
8 |
+
|
9 |
/* This variable will be an array which will contain all of the files and/or directories we wish to check permissions for */
|
10 |
public $files_and_dirs_to_check;
|
11 |
+
|
12 |
function __construct(){
|
13 |
/* Let's initiliaze our class variable array with all of the files and/or directories we wish to check permissions for.
|
14 |
* NOTE: we can add to this list in future if we wish
|
18 |
if ( !function_exists( 'get_home_path' ) ) require_once( ABSPATH. '/wp-admin/includes/file.php' );
|
19 |
$wp_config_path = AIOWPSecurity_Utility_File::get_wp_config_file_path();
|
20 |
$home_path = get_home_path();
|
21 |
+
|
22 |
$this->files_and_dirs_to_check = array(
|
23 |
array('name'=>'root directory','path'=>ABSPATH,'permissions'=>'0755'),
|
24 |
array('name'=>'wp-includes/','path'=>ABSPATH."wp-includes",'permissions'=>'0755'),
|
34 |
);
|
35 |
|
36 |
}
|
37 |
+
|
38 |
static function get_wp_config_file_path()
|
39 |
{
|
40 |
$wp_config_file = ABSPATH . 'wp-config.php';
|
41 |
if(file_exists($wp_config_file)){
|
42 |
return $wp_config_file;
|
43 |
}
|
44 |
+
else if (file_exists(dirname( ABSPATH ) . '/wp-config.php')){
|
45 |
return dirname( ABSPATH ) . '/wp-config.php';
|
46 |
}
|
47 |
return $wp_config_file;
|
48 |
}
|
49 |
+
|
50 |
static function write_content_to_file($file_path, $new_contents)
|
51 |
{
|
52 |
@chmod($file_path, 0777);
|
63 |
return false;
|
64 |
}
|
65 |
}
|
66 |
+
|
67 |
static function backup_a_file($src_file_path, $suffix = 'backup')
|
68 |
{
|
69 |
$backup_file_path = $src_file_path . '.' . $suffix;
|
77 |
static function backup_and_rename_wp_config($src_file_path, $prefix = 'backup')
|
78 |
{
|
79 |
global $aio_wp_security;
|
80 |
+
|
81 |
//Check to see if the main "backups" directory exists - create it otherwise
|
82 |
$aiowps_backup_dir = WP_CONTENT_DIR.'/'.AIO_WP_SECURITY_BACKUPS_DIR_NAME;
|
83 |
if (!AIOWPSecurity_Utility_File::create_dir($aiowps_backup_dir))
|
85 |
$aio_wp_security->debug_logger->log_debug("backup_and_rename_wp_config - Creation of backup directory failed!",4);
|
86 |
return false;
|
87 |
}
|
88 |
+
|
89 |
$src_parts = pathinfo($src_file_path);
|
90 |
$backup_file_name = $prefix . '.' . $src_parts['basename'];
|
91 |
+
|
92 |
$backup_file_path = $aiowps_backup_dir . '/' . $backup_file_name;
|
93 |
if (!copy($src_file_path, $backup_file_path)) {
|
94 |
//Failed to make a backup copy
|
96 |
}
|
97 |
return true;
|
98 |
}
|
99 |
+
|
100 |
static function backup_and_rename_htaccess($src_file_path, $suffix = 'backup')
|
101 |
{
|
102 |
global $aio_wp_security;
|
103 |
+
|
104 |
//Check to see if the main "backups" directory exists - create it otherwise
|
105 |
$aiowps_backup_dir = WP_CONTENT_DIR.'/'.AIO_WP_SECURITY_BACKUPS_DIR_NAME;
|
106 |
if (!AIOWPSecurity_Utility_File::create_dir($aiowps_backup_dir))
|
108 |
$aio_wp_security->debug_logger->log_debug("backup_and_rename_htaccess - Creation of backup directory failed!",4);
|
109 |
return false;
|
110 |
}
|
111 |
+
|
112 |
$src_parts = pathinfo($src_file_path);
|
113 |
$backup_file_name = $src_parts['basename'] . '.' . $suffix;
|
114 |
+
|
115 |
$backup_file_path = $aiowps_backup_dir . '/' . $backup_file_name;
|
116 |
if (!copy($src_file_path, $backup_file_path)) {
|
117 |
//Failed to make a backup copy
|
125 |
{
|
126 |
global $wpdb, $aio_wp_security;
|
127 |
$file_contents = AIOWPSecurity_Utility_File::get_file_contents($src_file_path);
|
128 |
+
|
129 |
$payload = serialize($file_contents);
|
130 |
$date_time = current_time( 'mysql' );
|
131 |
$data = array('date_time' => $date_time, 'meta_key1' => $key_description, 'meta_value2' => $payload);
|
132 |
|
133 |
//First check if a backup entry already exists in the global_meta table
|
134 |
$aiowps_global_meta_tbl_name = AIOWPSEC_TBL_GLOBAL_META_DATA;
|
135 |
+
$resultset = $wpdb->get_row( $wpdb->prepare("SELECT * FROM $aiowps_global_meta_tbl_name WHERE meta_key1 = '%s'", $key_description) );
|
136 |
if($resultset){
|
137 |
$where = array('meta_key1' => $key_description);
|
138 |
$res = $wpdb->update($aiowps_global_meta_tbl_name, $data, $where);
|
146 |
}
|
147 |
return;
|
148 |
}
|
149 |
+
|
150 |
+
|
151 |
static function recursive_file_search($pattern='*', $flags = 0, $path='')
|
152 |
{
|
153 |
$paths=glob($path.'*', GLOB_MARK|GLOB_ONLYDIR|GLOB_NOSORT);
|
161 |
foreach ($paths as $path) { $files=array_merge($files,AIOWPSecurity_Utility_File::recursive_file_search($pattern, $flags, $path)); }
|
162 |
return $files;
|
163 |
}
|
164 |
+
|
165 |
/*
|
166 |
* Useful when wanting to echo file contents to screen with <br /> tags
|
167 |
*/
|
168 |
static function get_file_contents_with_br($src_file)
|
169 |
{
|
170 |
+
$file_contents = file_get_contents($src_file);
|
171 |
return nl2br($file_contents);
|
172 |
}
|
173 |
|
176 |
*/
|
177 |
static function get_file_contents($src_file)
|
178 |
{
|
179 |
+
$file_contents = file_get_contents($src_file);
|
180 |
return $file_contents;
|
181 |
}
|
182 |
+
|
183 |
/*
|
184 |
* Returns the file's permission value eg, "0755"
|
185 |
*/
|
186 |
static function get_file_permission($filepath)
|
187 |
{
|
188 |
+
if (!function_exists('fileperms'))
|
189 |
{
|
190 |
$perms = '-1';
|
191 |
}
|
192 |
+
else
|
193 |
{
|
194 |
clearstatcache();
|
195 |
$perms = substr(sprintf("%o", @fileperms($filepath)), -4);
|
207 |
if ($write_result === false)
|
208 |
{
|
209 |
return false;
|
210 |
+
}
|
211 |
else
|
212 |
{
|
213 |
return true;
|
232 |
readfile($file);
|
233 |
exit;
|
234 |
}
|
235 |
+
|
236 |
static function download_content_to_a_file($output, $file_name = '')
|
237 |
{
|
238 |
if(empty($file_name)){$file_name = "aiowps_" . date("Y-m-d_H-i", time()).".txt";}
|
247 |
echo $output;
|
248 |
exit;
|
249 |
}
|
250 |
+
|
251 |
/*
|
252 |
* This function will compare the current permission value for a file or dir with the recommended value.
|
253 |
* It will compare the individual "execute", "write" and "read" bits for the "public", "group" and "owner" permissions.
|
275 |
//The "execute" bit is switched on for the actual value - meaning it is less secure
|
276 |
$result = 0*$result;
|
277 |
}
|
278 |
+
|
279 |
//Compare the "write" bit values for the public actual versus the recommended
|
280 |
if (substr($pva_bin,-2,1)<=substr($pvr_bin,-2,1))
|
281 |
{
|
336 |
//The "read" bit is switched on for the actual value - meaning it is less secure
|
337 |
$result = 0*$result;
|
338 |
}
|
339 |
+
|
340 |
//Check "owner" permissions
|
341 |
$owner_value_actual = substr($actual,-3,1);
|
342 |
$owner_value_rec = substr($recommended,-3,1);
|
languages/all-in-one-wp-security-and-firewall-ko_KR.mo
ADDED
Binary file
|
languages/all-in-one-wp-security-and-firewall-ko_KR.po
ADDED
@@ -0,0 +1,6503 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: All In One WP Security 4.4.4\n"
|
4 |
+
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2017-04-18 18:26+0800\n"
|
6 |
+
"PO-Revision-Date: 2020-08-08 15:15+0900\n"
|
7 |
+
"Last-Translator: Luatic <mint@luatic.co.kr>\n"
|
8 |
+
"Language-Team: Luatic <mint@luatic.co.kr>\n"
|
9 |
+
"Language: ko_KR\n"
|
10 |
+
"MIME-Version: 1.0\n"
|
11 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
12 |
+
"Content-Transfer-Encoding: 8bit\n"
|
13 |
+
"Plural-Forms: nplurals=2; plural=1;\n"
|
14 |
+
"X-Generator: Poedit 1.8.13\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
|
18 |
+
"X-Poedit-Basepath: ..\n"
|
19 |
+
"X-Textdomain-Support: yes\n"
|
20 |
+
"X-Poedit-SearchPath-0: .\n"
|
21 |
+
|
22 |
+
# @ all-in-one-wp-security-and-firewall
|
23 |
+
#: admin/wp-security-admin-init.php:203
|
24 |
+
msgid "WP Security"
|
25 |
+
msgstr "WP 보안"
|
26 |
+
|
27 |
+
# @ all-in-one-wp-security-and-firewall
|
28 |
+
#: admin/wp-security-admin-init.php:204 admin/wp-security-dashboard-menu.php:25
|
29 |
+
#: admin/wp-security-dashboard-menu.php:61
|
30 |
+
msgid "Dashboard"
|
31 |
+
msgstr "상황판"
|
32 |
+
|
33 |
+
# @ all-in-one-wp-security-and-firewall
|
34 |
+
#: admin/wp-security-admin-init.php:205 admin/wp-security-settings-menu.php:63
|
35 |
+
msgid "Settings"
|
36 |
+
msgstr "설정"
|
37 |
+
|
38 |
+
# @ all-in-one-wp-security-and-firewall
|
39 |
+
#: admin/wp-security-admin-init.php:206
|
40 |
+
#: admin/wp-security-user-accounts-menu.php:64
|
41 |
+
msgid "User Accounts"
|
42 |
+
msgstr "사용자 계정"
|
43 |
+
|
44 |
+
# @ all-in-one-wp-security-and-firewall
|
45 |
+
#: admin/wp-security-admin-init.php:207
|
46 |
+
#: admin/wp-security-user-login-menu.php:62
|
47 |
+
msgid "User Login"
|
48 |
+
msgstr "사용자 로그인"
|
49 |
+
|
50 |
+
#: admin/wp-security-admin-init.php:208
|
51 |
+
#: admin/wp-security-user-registration-menu.php:57
|
52 |
+
msgid "User Registration"
|
53 |
+
msgstr "회원가입"
|
54 |
+
|
55 |
+
# @ all-in-one-wp-security-and-firewall
|
56 |
+
#: admin/wp-security-admin-init.php:209 admin/wp-security-database-menu.php:66
|
57 |
+
msgid "Database Security"
|
58 |
+
msgstr "데이터베이스 보안"
|
59 |
+
|
60 |
+
# @ all-in-one-wp-security-and-firewall
|
61 |
+
#: admin/wp-security-admin-init.php:213
|
62 |
+
#: admin/wp-security-filesystem-menu.php:62
|
63 |
+
msgid "Filesystem Security"
|
64 |
+
msgstr "파일 시스템 보안"
|
65 |
+
|
66 |
+
# @ all-in-one-wp-security-and-firewall
|
67 |
+
#: admin/wp-security-admin-init.php:215 admin/wp-security-whois-menu.php:55
|
68 |
+
msgid "WHOIS Lookup"
|
69 |
+
msgstr "후이스 조회"
|
70 |
+
|
71 |
+
# @ all-in-one-wp-security-and-firewall
|
72 |
+
#: admin/wp-security-admin-init.php:219 admin/wp-security-blacklist-menu.php:55
|
73 |
+
msgid "Blacklist Manager"
|
74 |
+
msgstr "블랙리스트 관리자"
|
75 |
+
|
76 |
+
# @ all-in-one-wp-security-and-firewall
|
77 |
+
#: admin/wp-security-admin-init.php:224 admin/wp-security-firewall-menu.php:67
|
78 |
+
msgid "Firewall"
|
79 |
+
msgstr "방화벽"
|
80 |
+
|
81 |
+
#: admin/wp-security-admin-init.php:226
|
82 |
+
#: admin/wp-security-brute-force-menu.php:69
|
83 |
+
msgid "Brute Force"
|
84 |
+
msgstr "무차별 대입 공격"
|
85 |
+
|
86 |
+
# @ all-in-one-wp-security-and-firewall
|
87 |
+
#: admin/wp-security-admin-init.php:227 admin/wp-security-spam-menu.php:59
|
88 |
+
msgid "SPAM Prevention"
|
89 |
+
msgstr "스팸 예방"
|
90 |
+
|
91 |
+
# @ all-in-one-wp-security-and-firewall
|
92 |
+
#: admin/wp-security-admin-init.php:231 admin/wp-security-filescan-menu.php:57
|
93 |
+
msgid "Scanner"
|
94 |
+
msgstr "스캐너"
|
95 |
+
|
96 |
+
# @ all-in-one-wp-security-and-firewall
|
97 |
+
#: admin/wp-security-admin-init.php:233
|
98 |
+
#: admin/wp-security-maintenance-menu.php:55
|
99 |
+
msgid "Maintenance"
|
100 |
+
msgstr "유지관리"
|
101 |
+
|
102 |
+
#: admin/wp-security-admin-init.php:234
|
103 |
+
#: admin/wp-security-misc-options-menu.php:59
|
104 |
+
msgid "Miscellaneous"
|
105 |
+
msgstr "기타설정"
|
106 |
+
|
107 |
+
# @ all-in-one-wp-security-and-firewall
|
108 |
+
#: admin/wp-security-admin-menu.php:43
|
109 |
+
msgid "Settings successfully updated."
|
110 |
+
msgstr "설정이 성공적으로 업데이트 되었습니다."
|
111 |
+
|
112 |
+
# @ all-in-one-wp-security-and-firewall
|
113 |
+
#: admin/wp-security-admin-menu.php:50
|
114 |
+
msgid "The selected record(s) deleted successfully!"
|
115 |
+
msgstr "선택한 레코드가 성공적으로 삭제되었습니다!"
|
116 |
+
|
117 |
+
#: admin/wp-security-blacklist-menu.php:22
|
118 |
+
msgid "Ban Users"
|
119 |
+
msgstr "사용자 차단"
|
120 |
+
|
121 |
+
# @ all-in-one-wp-security-and-firewall
|
122 |
+
#: admin/wp-security-blacklist-menu.php:81
|
123 |
+
msgid "Nonce check failed for save blacklist settings!"
|
124 |
+
msgstr "Nonce 확인 은 저장 블랙리스트 설정에 대한 실패!"
|
125 |
+
|
126 |
+
# @ all-in-one-wp-security-and-firewall
|
127 |
+
#: admin/wp-security-blacklist-menu.php:136
|
128 |
+
#: admin/wp-security-brute-force-menu.php:659
|
129 |
+
#: admin/wp-security-firewall-menu.php:1039 admin/wp-security-list-404.php:218
|
130 |
+
#: admin/wp-security-list-comment-spammer-ip.php:202
|
131 |
+
#: classes/wp-security-general-init-tasks.php:224
|
132 |
+
msgid ""
|
133 |
+
"The plugin was unable to write to the .htaccess file. Please edit file "
|
134 |
+
"manually."
|
135 |
+
msgstr ""
|
136 |
+
"플러그인은 .htaccess 파일에 쓸 수 없습니다. 수동으로 파일을 편집하십시오."
|
137 |
+
|
138 |
+
# @ all-in-one-wp-security-and-firewall
|
139 |
+
#: admin/wp-security-blacklist-menu.php:143
|
140 |
+
msgid "Ban IPs or User Agents"
|
141 |
+
msgstr "Ban IPs or User Agents"
|
142 |
+
|
143 |
+
# @ all-in-one-wp-security-and-firewall
|
144 |
+
#: admin/wp-security-blacklist-menu.php:146
|
145 |
+
msgid ""
|
146 |
+
"The All In One WP Security Blacklist feature gives you the option of banning "
|
147 |
+
"certain host IP addresses or ranges and also user agents."
|
148 |
+
msgstr ""
|
149 |
+
"All In One WP 보안 블랙리스트 기능은 특정 호스트 IP 주소 또는 범위 및 사용자 "
|
150 |
+
"에이전트를 금지하는 옵션을 제공합니다."
|
151 |
+
|
152 |
+
# @ all-in-one-wp-security-and-firewall
|
153 |
+
#: admin/wp-security-blacklist-menu.php:147
|
154 |
+
msgid ""
|
155 |
+
"This feature will deny total site access for users which have IP addresses "
|
156 |
+
"or user agents matching those which you have configured in the settings "
|
157 |
+
"below."
|
158 |
+
msgstr ""
|
159 |
+
"이 기능은 IP 주소 또는 사용자 에이전트가 아래 설정에서 구성한 것과 일치하는 "
|
160 |
+
"사용자의 총 사이트 액세스를 거부합니다."
|
161 |
+
|
162 |
+
# @ all-in-one-wp-security-and-firewall
|
163 |
+
#: admin/wp-security-blacklist-menu.php:148
|
164 |
+
msgid ""
|
165 |
+
"The plugin achieves this by making appropriate modifications to your ."
|
166 |
+
"htaccess file."
|
167 |
+
msgstr "플러그인은 .htaccess 파일을 적절하게 수정하여 이를 달성합니다."
|
168 |
+
|
169 |
+
# @ all-in-one-wp-security-and-firewall
|
170 |
+
#: admin/wp-security-blacklist-menu.php:149
|
171 |
+
msgid ""
|
172 |
+
"By blocking people via the .htaccess file your are using the most secure "
|
173 |
+
"first line of defence which denies all access to blacklisted visitors as "
|
174 |
+
"soon as they hit your hosting server."
|
175 |
+
msgstr ""
|
176 |
+
".htaccess 파일을 통해 사람들을 차단함으로써 가장 안전한 첫 번째 방어 선을 사"
|
177 |
+
"용하여 호스팅 서버에 부딪히자마자 블랙리스트에 오른 방문자에 대한 모든 액세스"
|
178 |
+
"를 거부합니다."
|
179 |
+
|
180 |
+
#: admin/wp-security-blacklist-menu.php:156
|
181 |
+
#: admin/wp-security-firewall-menu.php:889
|
182 |
+
#, php-format
|
183 |
+
msgid "You may also be interested in our %s."
|
184 |
+
msgstr "당신은 또한 우리의 %s에 관심이있을 수 있습니다."
|
185 |
+
|
186 |
+
#: admin/wp-security-blacklist-menu.php:157
|
187 |
+
msgid ""
|
188 |
+
"This addon allows you to automatically block IP addresses based on their "
|
189 |
+
"country of origin."
|
190 |
+
msgstr ""
|
191 |
+
"이 애드온을 사용하면 원산지 국가에 따라 IP 주소를 자동으로 차단할 수 있습니"
|
192 |
+
"다."
|
193 |
+
|
194 |
+
# @ all-in-one-wp-security-and-firewall
|
195 |
+
#: admin/wp-security-blacklist-menu.php:165
|
196 |
+
msgid "IP Hosts and User Agent Blacklist Settings"
|
197 |
+
msgstr "IP 호스트 및 사용자 에이전트 블랙리스트 설정"
|
198 |
+
|
199 |
+
#: admin/wp-security-blacklist-menu.php:178
|
200 |
+
#: admin/wp-security-brute-force-menu.php:196
|
201 |
+
#, php-format
|
202 |
+
msgid ""
|
203 |
+
"This feature can lock you out of admin if it doesn't work correctly on your "
|
204 |
+
"site. You %s before activating this feature."
|
205 |
+
msgstr ""
|
206 |
+
"이 기능은 사이트에서 제대로 작동하지 않으면 관리자에서 잠글 수 있습니다. 이 "
|
207 |
+
"기능을 활성화하기 전에 %s를 사용할 수 있습니다."
|
208 |
+
|
209 |
+
# @ all-in-one-wp-security-and-firewall
|
210 |
+
#: admin/wp-security-blacklist-menu.php:184
|
211 |
+
msgid "Enable IP or User Agent Blacklisting"
|
212 |
+
msgstr "IP 또는 사용자 에이전트 블랙리스트 사용"
|
213 |
+
|
214 |
+
# @ all-in-one-wp-security-and-firewall
|
215 |
+
#: admin/wp-security-blacklist-menu.php:187
|
216 |
+
msgid ""
|
217 |
+
"Check this if you want to enable the banning (or blacklisting) of selected "
|
218 |
+
"IP addresses and/or user agents specified in the settings below"
|
219 |
+
msgstr ""
|
220 |
+
"아래 설정에 지정된 선택한 IP 주소 및/또는 사용자 에이전트의 금지(또는 블랙리"
|
221 |
+
"스트)를 사용하도록 설정하려는 경우 이 옵션을 확인합니다."
|
222 |
+
|
223 |
+
# @ all-in-one-wp-security-and-firewall
|
224 |
+
#: admin/wp-security-blacklist-menu.php:191
|
225 |
+
msgid "Enter IP Addresses:"
|
226 |
+
msgstr "IP 주소 입력:"
|
227 |
+
|
228 |
+
# @ all-in-one-wp-security-and-firewall
|
229 |
+
#: admin/wp-security-blacklist-menu.php:195
|
230 |
+
msgid "Enter one or more IP addresses or IP ranges."
|
231 |
+
msgstr "하나 이상의 IP 주소 또는 IP 범위를 입력합니다."
|
232 |
+
|
233 |
+
# @ all-in-one-wp-security-and-firewall
|
234 |
+
#: admin/wp-security-blacklist-menu.php:196
|
235 |
+
#: admin/wp-security-blacklist-menu.php:216
|
236 |
+
#: admin/wp-security-brute-force-menu.php:375
|
237 |
+
#: admin/wp-security-brute-force-menu.php:409
|
238 |
+
#: admin/wp-security-brute-force-menu.php:432
|
239 |
+
#: admin/wp-security-brute-force-menu.php:453
|
240 |
+
#: admin/wp-security-brute-force-menu.php:716
|
241 |
+
#: admin/wp-security-filescan-menu.php:297
|
242 |
+
#: admin/wp-security-filescan-menu.php:314
|
243 |
+
#: admin/wp-security-firewall-menu.php:173
|
244 |
+
#: admin/wp-security-firewall-menu.php:203
|
245 |
+
#: admin/wp-security-firewall-menu.php:223
|
246 |
+
#: admin/wp-security-firewall-menu.php:249
|
247 |
+
#: admin/wp-security-firewall-menu.php:376
|
248 |
+
#: admin/wp-security-firewall-menu.php:406
|
249 |
+
#: admin/wp-security-firewall-menu.php:437
|
250 |
+
#: admin/wp-security-firewall-menu.php:465
|
251 |
+
#: admin/wp-security-firewall-menu.php:494
|
252 |
+
#: admin/wp-security-firewall-menu.php:593
|
253 |
+
#: admin/wp-security-firewall-menu.php:611
|
254 |
+
#: admin/wp-security-firewall-menu.php:701
|
255 |
+
#: admin/wp-security-firewall-menu.php:914
|
256 |
+
#: admin/wp-security-firewall-menu.php:937 admin/wp-security-spam-menu.php:169
|
257 |
+
#: admin/wp-security-spam-menu.php:342 admin/wp-security-spam-menu.php:384
|
258 |
+
msgid "More Info"
|
259 |
+
msgstr "더보기"
|
260 |
+
|
261 |
+
# @ all-in-one-wp-security-and-firewall
|
262 |
+
#: admin/wp-security-blacklist-menu.php:199
|
263 |
+
#: admin/wp-security-brute-force-menu.php:719
|
264 |
+
msgid "Each IP address must be on a new line."
|
265 |
+
msgstr "각 IP 주소는 새 줄에 있어야 합니다."
|
266 |
+
|
267 |
+
# @ all-in-one-wp-security-and-firewall
|
268 |
+
#: admin/wp-security-blacklist-menu.php:200
|
269 |
+
msgid ""
|
270 |
+
"To specify an IP range use a wildcard \"*\" character. Acceptable ways to "
|
271 |
+
"use wildcards is shown in the examples below:"
|
272 |
+
msgstr ""
|
273 |
+
"IP 범위를 지정하려면 와일드카드 \"*\" 문자를 사용합니다. 와일드카드를 사용하"
|
274 |
+
"는 허용 가능한 방법은 아래 예제에 나와 있습니다."
|
275 |
+
|
276 |
+
# @ all-in-one-wp-security-and-firewall
|
277 |
+
#: admin/wp-security-blacklist-menu.php:201
|
278 |
+
#: admin/wp-security-brute-force-menu.php:721
|
279 |
+
msgid "Example 1: 195.47.89.*"
|
280 |
+
msgstr "예 1: 195.47.89.*"
|
281 |
+
|
282 |
+
# @ all-in-one-wp-security-and-firewall
|
283 |
+
#: admin/wp-security-blacklist-menu.php:202
|
284 |
+
#: admin/wp-security-brute-force-menu.php:722
|
285 |
+
msgid "Example 2: 195.47.*.*"
|
286 |
+
msgstr "示例 2:195.47.*.*"
|
287 |
+
|
288 |
+
# @ all-in-one-wp-security-and-firewall
|
289 |
+
#: admin/wp-security-blacklist-menu.php:203
|
290 |
+
#: admin/wp-security-brute-force-menu.php:723
|
291 |
+
msgid "Example 3: 195.*.*.*"
|
292 |
+
msgstr "示例 3:195.*.*.*"
|
293 |
+
|
294 |
+
# @ all-in-one-wp-security-and-firewall
|
295 |
+
#: admin/wp-security-blacklist-menu.php:210
|
296 |
+
msgid "Enter User Agents:"
|
297 |
+
msgstr "사용자 에이전트 입력:"
|
298 |
+
|
299 |
+
# @ all-in-one-wp-security-and-firewall
|
300 |
+
#: admin/wp-security-blacklist-menu.php:215
|
301 |
+
msgid "Enter one or more user agent strings."
|
302 |
+
msgstr "하나 이상의 사용자 에이전트 문자열을 입력합니다."
|
303 |
+
|
304 |
+
# @ all-in-one-wp-security-and-firewall
|
305 |
+
#: admin/wp-security-blacklist-menu.php:219
|
306 |
+
msgid "Each user agent string must be on a new line."
|
307 |
+
msgstr "각 사용자 에이전트 문자열은 새 줄에 있어야 합니다."
|
308 |
+
|
309 |
+
# @ all-in-one-wp-security-and-firewall
|
310 |
+
#: admin/wp-security-blacklist-menu.php:220
|
311 |
+
msgid "Example 1 - A single user agent string to block:"
|
312 |
+
msgstr "예 1 - 차단하는 단일 사용자 에이전트 문자열:"
|
313 |
+
|
314 |
+
# @ all-in-one-wp-security-and-firewall
|
315 |
+
#: admin/wp-security-blacklist-menu.php:222
|
316 |
+
msgid "Example 2 - A list of more than 1 user agent strings to block"
|
317 |
+
msgstr "예 2 - 차단할 사용자 에이전트 문자열이 1개 이상 나열됩니다."
|
318 |
+
|
319 |
+
# @ all-in-one-wp-security-and-firewall
|
320 |
+
#: admin/wp-security-blacklist-menu.php:230
|
321 |
+
#: admin/wp-security-brute-force-menu.php:215
|
322 |
+
#: admin/wp-security-brute-force-menu.php:595
|
323 |
+
#: admin/wp-security-brute-force-menu.php:733
|
324 |
+
#: admin/wp-security-brute-force-menu.php:795
|
325 |
+
#: admin/wp-security-database-menu.php:355
|
326 |
+
#: admin/wp-security-filescan-menu.php:337
|
327 |
+
#: admin/wp-security-filesystem-menu.php:239
|
328 |
+
#: admin/wp-security-firewall-menu.php:779
|
329 |
+
#: admin/wp-security-firewall-menu.php:956
|
330 |
+
#: admin/wp-security-misc-options-menu.php:169
|
331 |
+
#: admin/wp-security-misc-options-menu.php:220
|
332 |
+
#: admin/wp-security-settings-menu.php:542 admin/wp-security-spam-menu.php:184
|
333 |
+
#: admin/wp-security-spam-menu.php:359 admin/wp-security-spam-menu.php:480
|
334 |
+
#: admin/wp-security-user-login-menu.php:266
|
335 |
+
#: admin/wp-security-user-login-menu.php:434
|
336 |
+
#: admin/wp-security-user-registration-menu.php:151
|
337 |
+
#: admin/wp-security-user-registration-menu.php:237
|
338 |
+
msgid "Save Settings"
|
339 |
+
msgstr "설정 저장"
|
340 |
+
|
341 |
+
#: admin/wp-security-brute-force-menu.php:26
|
342 |
+
#: admin/wp-security-dashboard-menu.php:430
|
343 |
+
#: admin/wp-security-dashboard-menu.php:441
|
344 |
+
msgid "Rename Login Page"
|
345 |
+
msgstr "로그인 페이지 주소 변경"
|
346 |
+
|
347 |
+
#: admin/wp-security-brute-force-menu.php:27
|
348 |
+
msgid "Cookie Based Brute Force Prevention"
|
349 |
+
msgstr "쿠키 기반 무차별 무력 예방"
|
350 |
+
|
351 |
+
#: admin/wp-security-brute-force-menu.php:28
|
352 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:44
|
353 |
+
msgid "Login Captcha"
|
354 |
+
msgstr "로그인 캡챠"
|
355 |
+
|
356 |
+
#: admin/wp-security-brute-force-menu.php:29
|
357 |
+
#: admin/wp-security-brute-force-menu.php:666
|
358 |
+
msgid "Login Whitelist"
|
359 |
+
msgstr "로그인 허용 목록"
|
360 |
+
|
361 |
+
#: admin/wp-security-brute-force-menu.php:30
|
362 |
+
msgid "Honeypot"
|
363 |
+
msgstr "허니팟(Honeypot)"
|
364 |
+
|
365 |
+
#: admin/wp-security-brute-force-menu.php:107
|
366 |
+
msgid "Please enter a value for your login page slug."
|
367 |
+
msgstr "로그인 페이지 슬러그에 대한 값을 입력하십시오."
|
368 |
+
|
369 |
+
#: admin/wp-security-brute-force-menu.php:111
|
370 |
+
msgid "You cannot use the value \"wp-admin\" for your login page slug."
|
371 |
+
msgstr "로그인 페이지 슬러그에 대해 \"wp-admin\" 값을 사용할 수 없습니다."
|
372 |
+
|
373 |
+
#: admin/wp-security-brute-force-menu.php:113
|
374 |
+
msgid "You must use alpha numeric characters for your login page slug."
|
375 |
+
msgstr "로그인 페이지 슬러그에 알파 숫자 문자를 사용해야 합니다."
|
376 |
+
|
377 |
+
# @ all-in-one-wp-security-and-firewall
|
378 |
+
#: admin/wp-security-brute-force-menu.php:118
|
379 |
+
#: admin/wp-security-database-menu.php:272
|
380 |
+
#: admin/wp-security-filescan-menu.php:175
|
381 |
+
#: admin/wp-security-firewall-menu.php:846 admin/wp-security-spam-menu.php:220
|
382 |
+
#: admin/wp-security-spam-menu.php:254
|
383 |
+
#: admin/wp-security-user-login-menu.php:139
|
384 |
+
#: admin/wp-security-user-login-menu.php:387
|
385 |
+
msgid "Attention!"
|
386 |
+
msgstr "주의!"
|
387 |
+
|
388 |
+
#: admin/wp-security-brute-force-menu.php:137
|
389 |
+
msgid ""
|
390 |
+
"Could not delete the Cookie-based directives from the .htaccess file. Please "
|
391 |
+
"check the file permissions."
|
392 |
+
msgstr ""
|
393 |
+
".htaccess 파일에서 쿠키 기반 지침을 삭제할 수 없습니다. 파일 권한을 확인하십"
|
394 |
+
"시오."
|
395 |
+
|
396 |
+
#: admin/wp-security-brute-force-menu.php:157
|
397 |
+
msgid ""
|
398 |
+
"An effective Brute Force prevention technique is to change the default "
|
399 |
+
"WordPress login page URL."
|
400 |
+
msgstr ""
|
401 |
+
"효과적인 무차별 포스 방지 기술은 기본 워드 프레스 로그인 페이지 URL을 변경하"
|
402 |
+
"는 것입니다."
|
403 |
+
|
404 |
+
#: admin/wp-security-brute-force-menu.php:158
|
405 |
+
msgid ""
|
406 |
+
"Normally if you wanted to login to WordPress you would type your site's home "
|
407 |
+
"URL followed by wp-login.php."
|
408 |
+
msgstr ""
|
409 |
+
"일반적으로 WordPress에 로그인하려는 경우 사이트의 홈 URL을 입력한 다음 wp-"
|
410 |
+
"login.php를 입력합니다."
|
411 |
+
|
412 |
+
#: admin/wp-security-brute-force-menu.php:159
|
413 |
+
msgid ""
|
414 |
+
"This feature allows you to change the login URL by setting your own slug and "
|
415 |
+
"renaming the last portion of the login URL which contains the <strong>wp-"
|
416 |
+
"login.php</strong> to any string that you like."
|
417 |
+
msgstr ""
|
418 |
+
"이 기능을 사용하면 자신의 슬러그를 설정하고 <strong>wp-login.php를</strong> "
|
419 |
+
"포함하는 로그인 URL의 마지막 부분의 이름을 원하는 문자열로 변경하여 로그인 "
|
420 |
+
"URL을 변경할 수 있습니다."
|
421 |
+
|
422 |
+
#: admin/wp-security-brute-force-menu.php:160
|
423 |
+
msgid ""
|
424 |
+
"By doing this, malicious bots and hackers will not be able to access your "
|
425 |
+
"login page because they will not know the correct login page URL."
|
426 |
+
msgstr "이렇게 하면 악의적인 봇과 해커가 로그인 페이지에 액세스할 수 없습니다."
|
427 |
+
|
428 |
+
#: admin/wp-security-brute-force-menu.php:162
|
429 |
+
msgid ""
|
430 |
+
"You may also be interested in the following alternative brute force "
|
431 |
+
"prevention features:"
|
432 |
+
msgstr "또한 다음과 같은 대체 무차별 무력 방지 기능에 관심이 있을 수 있습니다."
|
433 |
+
|
434 |
+
#: admin/wp-security-brute-force-menu.php:173
|
435 |
+
msgid "Your WordPress login page URL has been renamed."
|
436 |
+
msgstr "워드 프레스 로그인 페이지 URL의 이름이 변경되었습니다."
|
437 |
+
|
438 |
+
#: admin/wp-security-brute-force-menu.php:174
|
439 |
+
msgid "Your current login URL is:"
|
440 |
+
msgstr "현재 로그인 URL은 다음과 같은 것입니다."
|
441 |
+
|
442 |
+
#: admin/wp-security-brute-force-menu.php:176
|
443 |
+
msgid ""
|
444 |
+
"NOTE: If you already had the Cookie-Based Brute Force Prevention feature "
|
445 |
+
"active, the plugin has automatically deactivated it because only one of "
|
446 |
+
"these features can be active at any one time."
|
447 |
+
msgstr ""
|
448 |
+
"참고: 이미 쿠키 기반 무차별 무력 방지 기능이 활성화된 경우 이러한 기능 중 하"
|
449 |
+
"나만 한 번에 활성화할 수 있으므로 플러그인이 자동으로 비활성화됩니다."
|
450 |
+
|
451 |
+
#: admin/wp-security-brute-force-menu.php:183
|
452 |
+
msgid "Rename Login Page Settings"
|
453 |
+
msgstr "로그인 페이지 주소 변경 설정"
|
454 |
+
|
455 |
+
#: admin/wp-security-brute-force-menu.php:197
|
456 |
+
msgid ""
|
457 |
+
"NOTE: If you are hosting your site on WPEngine or a provider which performs "
|
458 |
+
"server caching, you will need to ask the host support people to NOT cache "
|
459 |
+
"your renamed login page."
|
460 |
+
msgstr ""
|
461 |
+
"참고: WPEngine 또는 서버 캐싱을 수행하는 공급자에서 사이트를 호스팅하는 경우 "
|
462 |
+
"호스트 지원 사람들에게 이름이 변경된 로그인 페이지를 캐시하지 않도록 요청해"
|
463 |
+
"야 합니다."
|
464 |
+
|
465 |
+
#: admin/wp-security-brute-force-menu.php:202
|
466 |
+
msgid "Enable Rename Login Page Feature"
|
467 |
+
msgstr "이름 바꾸기 페이지 기능 사용"
|
468 |
+
|
469 |
+
#: admin/wp-security-brute-force-menu.php:205
|
470 |
+
msgid "Check this if you want to enable the rename login page feature"
|
471 |
+
msgstr ""
|
472 |
+
"이름 바꾸기 페이지 기능을 사용하도록 설정하려면 이 방법을 확인하십시오."
|
473 |
+
|
474 |
+
#: admin/wp-security-brute-force-menu.php:209
|
475 |
+
msgid "Login Page URL"
|
476 |
+
msgstr "로그인 페이지 URL"
|
477 |
+
|
478 |
+
#: admin/wp-security-brute-force-menu.php:211
|
479 |
+
msgid ""
|
480 |
+
"Enter a string which will represent your secure login page slug. You are "
|
481 |
+
"enouraged to choose something which is hard to guess and only you will "
|
482 |
+
"remember."
|
483 |
+
msgstr ""
|
484 |
+
"보안 로그인 페이지 슬러그를 나타내는 문자열을 입력합니다. 당신은 추측하기 어"
|
485 |
+
"려운 무언가를 선택하고 오직 당신만이 기억할 것입니다."
|
486 |
+
|
487 |
+
# @ all-in-one-wp-security-and-firewall
|
488 |
+
#: admin/wp-security-brute-force-menu.php:244
|
489 |
+
msgid ""
|
490 |
+
"Settings have not been saved - your secret word must consist only of "
|
491 |
+
"alphanumeric characters, ie, letters and/or numbers only!"
|
492 |
+
msgstr ""
|
493 |
+
"설정은 저장되지 않았습니다 - 당신의 비밀 단어는 영숫자 문자, 즉, 문자 및 / 또"
|
494 |
+
"는 숫자로만 구성해야합니다!"
|
495 |
+
|
496 |
+
# @ all-in-one-wp-security-and-firewall
|
497 |
+
#: admin/wp-security-brute-force-menu.php:263
|
498 |
+
msgid ""
|
499 |
+
"You have successfully enabled the cookie based brute force prevention feature"
|
500 |
+
msgstr "쿠키 기반 무차별 무력 방지 기능을 성공적으로 활성화했습니다."
|
501 |
+
|
502 |
+
# @ all-in-one-wp-security-and-firewall
|
503 |
+
#: admin/wp-security-brute-force-menu.php:264
|
504 |
+
msgid ""
|
505 |
+
"From now on you will need to log into your WP Admin using the following URL:"
|
506 |
+
msgstr "지금부터 다음 URL을 사용하여 WP 관리자에 로그인해야 합니다."
|
507 |
+
|
508 |
+
# @ all-in-one-wp-security-and-firewall
|
509 |
+
#: admin/wp-security-brute-force-menu.php:266
|
510 |
+
msgid ""
|
511 |
+
"It is important that you save this URL value somewhere in case you forget "
|
512 |
+
"it, OR,"
|
513 |
+
msgstr "이 URL 값을 잊어버린 경우 어딘가에 저장하는 것이 중요합니다."
|
514 |
+
|
515 |
+
# @ all-in-one-wp-security-and-firewall
|
516 |
+
#: admin/wp-security-brute-force-menu.php:267
|
517 |
+
#, php-format
|
518 |
+
msgid "simply remember to add a \"?%s=1\" to your current site URL address."
|
519 |
+
msgstr "단순히 현재 사이트 URL 주소에 \"?%s=1\"을 추가해야 합니다."
|
520 |
+
|
521 |
+
# @ all-in-one-wp-security-and-firewall
|
522 |
+
#: admin/wp-security-brute-force-menu.php:273
|
523 |
+
msgid ""
|
524 |
+
"You have successfully saved cookie based brute force prevention feature "
|
525 |
+
"settings."
|
526 |
+
msgstr "쿠키 기반 무차별 무력 방지 기능 설정을 성공적으로 저장했습니다."
|
527 |
+
|
528 |
+
# @ all-in-one-wp-security-and-firewall
|
529 |
+
#: admin/wp-security-brute-force-menu.php:308
|
530 |
+
#: admin/wp-security-filesystem-menu.php:283
|
531 |
+
#: admin/wp-security-firewall-menu.php:124
|
532 |
+
#: admin/wp-security-firewall-menu.php:337
|
533 |
+
#: admin/wp-security-firewall-menu.php:558
|
534 |
+
#: admin/wp-security-firewall-menu.php:746
|
535 |
+
#: admin/wp-security-settings-menu.php:636 admin/wp-security-spam-menu.php:109
|
536 |
+
msgid ""
|
537 |
+
"Could not write to the .htaccess file. Please check the file permissions."
|
538 |
+
msgstr ".htaccess 파일에 쓸 수 없습니다. 파일 권한을 확인하십시오."
|
539 |
+
|
540 |
+
# @ all-in-one-wp-security-and-firewall
|
541 |
+
#: admin/wp-security-brute-force-menu.php:318
|
542 |
+
msgid "Brute Force Prevention Firewall Settings"
|
543 |
+
msgstr "무차별 강제 방지 방화벽 설정"
|
544 |
+
|
545 |
+
# @ all-in-one-wp-security-and-firewall
|
546 |
+
#: admin/wp-security-brute-force-menu.php:323
|
547 |
+
msgid ""
|
548 |
+
"A Brute Force Attack is when a hacker tries many combinations of usernames "
|
549 |
+
"and passwords until they succeed in guessing the right combination."
|
550 |
+
msgstr ""
|
551 |
+
"무차별 포스 공격은 해커가 올바른 조합을 추측하는 데 성공할 때까지 사용자 이름"
|
552 |
+
"과 암호의 많은 조합을 시도할 때입니다."
|
553 |
+
|
554 |
+
# @ all-in-one-wp-security-and-firewall
|
555 |
+
#: admin/wp-security-brute-force-menu.php:324
|
556 |
+
msgid ""
|
557 |
+
"Due to the fact that at any one time there may be many concurrent login "
|
558 |
+
"attempts occurring on your site via malicious automated robots, this also "
|
559 |
+
"has a negative impact on your server's memory and performance."
|
560 |
+
msgstr ""
|
561 |
+
"악의적인 자동화 된 로봇을 통해 사이트에서 발생하는 동시 로그인 시도가 있을 "
|
562 |
+
"수 있으므로 서버의 메모리와 성능에도 부정적인 영향을 미칩니다."
|
563 |
+
|
564 |
+
# @ all-in-one-wp-security-and-firewall
|
565 |
+
#: admin/wp-security-brute-force-menu.php:325
|
566 |
+
msgid ""
|
567 |
+
"The features in this tab will stop the majority of Brute Force Login Attacks "
|
568 |
+
"at the .htaccess level thus providing even better protection for your WP "
|
569 |
+
"login page and also reducing the load on your server because the system does "
|
570 |
+
"not have to run PHP code to process the login attempts."
|
571 |
+
msgstr ""
|
572 |
+
"이 탭의 기능은 .htaccess 수준에서 대부분의 무차별 포스 로그인 공격을 중지하므"
|
573 |
+
"로 WP 로그인 페이지에 대한 더 나은 보호를 제공하고 시스템이 로그인 시도를 처"
|
574 |
+
"리하기 위해 PHP 코드를 실행할 필요가 없기 때문에 서버의 부하를 줄입니다."
|
575 |
+
|
576 |
+
#: admin/wp-security-brute-force-menu.php:332
|
577 |
+
#, php-format
|
578 |
+
msgid ""
|
579 |
+
"Even though this feature should not have any impact on your site's general "
|
580 |
+
"functionality <strong>you are strongly encouraged to take a %s of your ."
|
581 |
+
"htaccess file before proceeding</strong>."
|
582 |
+
msgstr ""
|
583 |
+
"이 기능은 사이트의 일반적인 기능에 영향을 미치지 않아야하지만 <strong>진행하"
|
584 |
+
"기 전에 .htaccess 파일의 %s를 가져 가는 것이 좋습니다.</strong>"
|
585 |
+
|
586 |
+
#: admin/wp-security-brute-force-menu.php:333
|
587 |
+
msgid ""
|
588 |
+
"If this feature is not used correctly, you can get locked out of your site. "
|
589 |
+
"A backed up .htaccess file will come in handy if that happens."
|
590 |
+
msgstr ""
|
591 |
+
"이 기능을 올바르게 사용하지 않으면 사이트에서 잠길 수 있습니다. 백업 ."
|
592 |
+
"htaccess 파일이 발생하면 유용합니다."
|
593 |
+
|
594 |
+
#: admin/wp-security-brute-force-menu.php:334
|
595 |
+
#, php-format
|
596 |
+
msgid ""
|
597 |
+
"To learn more about how to use this feature please watch the following %s."
|
598 |
+
msgstr ""
|
599 |
+
"이 기능을 사용하는 방법에 대해 자세히 알아보려면 다음 %s를 확인하십시오."
|
600 |
+
|
601 |
+
#: admin/wp-security-brute-force-menu.php:347
|
602 |
+
msgid ""
|
603 |
+
"NOTE: If you already had the Rename Login Page feature active, the plugin "
|
604 |
+
"has automatically deactivated it because only one of these features can be "
|
605 |
+
"active at any one time."
|
606 |
+
msgstr ""
|
607 |
+
"참고: 이미 이름 바꾸기 페이지 기능이 활성 상태인 경우 이러한 기능 중 하나만 "
|
608 |
+
"한 번에 활성화할 수 있으므로 플러그인이 자동으로 비활성화됩니다."
|
609 |
+
|
610 |
+
# @ all-in-one-wp-security-and-firewall
|
611 |
+
#: admin/wp-security-brute-force-menu.php:355
|
612 |
+
msgid "Cookie Based Brute Force Login Prevention"
|
613 |
+
msgstr "쿠키 기반 무차별 포스 로그인 방지"
|
614 |
+
|
615 |
+
#: admin/wp-security-brute-force-menu.php:366
|
616 |
+
msgid ""
|
617 |
+
"This feature can lock you out of admin if it doesn't work correctly on your "
|
618 |
+
"site. You <a href=\"https://www.tipsandtricks-hq.com/wordpress-security-and-"
|
619 |
+
"firewall-plugin#advanced_features_note\" target=\"_blank\">must read this "
|
620 |
+
"message</a> before activating this feature."
|
621 |
+
msgstr ""
|
622 |
+
"이 기능은 사이트에서 제대로 작동하지 않으면 관리자에서 잠글 수 있습니다. 이 "
|
623 |
+
"기능을 활성화하기 전에 <a href=\"https://www.tipsandtricks-hq.com/wordpress-"
|
624 |
+
"security-and-firewall-plugin#advanced_features_note\" target=\"_blank\">이 메"
|
625 |
+
"시지를 읽어야 합니다.</a>"
|
626 |
+
|
627 |
+
# @ all-in-one-wp-security-and-firewall
|
628 |
+
#: admin/wp-security-brute-force-menu.php:371
|
629 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:91
|
630 |
+
msgid "Enable Brute Force Attack Prevention"
|
631 |
+
msgstr "무차별 무력 공격 방지 활성화"
|
632 |
+
|
633 |
+
# @ all-in-one-wp-security-and-firewall
|
634 |
+
#: admin/wp-security-brute-force-menu.php:374
|
635 |
+
msgid ""
|
636 |
+
"Check this if you want to protect your login page from Brute Force Attack."
|
637 |
+
msgstr ""
|
638 |
+
"브루트 포스 공격으로부터 로그인 페이지를 보호하려면 이 방법을 확인하십시오."
|
639 |
+
|
640 |
+
# @ all-in-one-wp-security-and-firewall
|
641 |
+
#: admin/wp-security-brute-force-menu.php:379
|
642 |
+
msgid ""
|
643 |
+
"This feature will deny access to your WordPress login page for all people "
|
644 |
+
"except those who have a special cookie in their browser."
|
645 |
+
msgstr ""
|
646 |
+
"이 기능은 브라우저에 특별한 쿠키가있는 사람들을 제외한 모든 사용자의 워드 프"
|
647 |
+
"레스 로그인 페이지에 대한 액세스를 거부합니다."
|
648 |
+
|
649 |
+
# @ all-in-one-wp-security-and-firewall
|
650 |
+
#: admin/wp-security-brute-force-menu.php:381
|
651 |
+
msgid "To use this feature do the following:"
|
652 |
+
msgstr "이 기능을 사용하려면 다음을 수행합니다."
|
653 |
+
|
654 |
+
# @ all-in-one-wp-security-and-firewall
|
655 |
+
#: admin/wp-security-brute-force-menu.php:383
|
656 |
+
msgid "1) Enable the checkbox."
|
657 |
+
msgstr "1) 확인란을 활성화합니다."
|
658 |
+
|
659 |
+
# @ all-in-one-wp-security-and-firewall
|
660 |
+
#: admin/wp-security-brute-force-menu.php:385
|
661 |
+
msgid ""
|
662 |
+
"2) Enter a secret word consisting of alphanumeric characters which will be "
|
663 |
+
"difficult to guess. This secret word will be useful whenever you need to "
|
664 |
+
"know the special URL which you will use to access the login page (see point "
|
665 |
+
"below)."
|
666 |
+
msgstr ""
|
667 |
+
"2) 추측하기 어려운 거넘 문자로 구성된 비밀 단어를 입력합니다. 이 비밀 단어는 "
|
668 |
+
"로그인 페이지에 액세스하는 데 사용할 특수 URL을 알아야 할 때마다 유용합니다"
|
669 |
+
"(아래 점 참조)."
|
670 |
+
|
671 |
+
# @ all-in-one-wp-security-and-firewall
|
672 |
+
#: admin/wp-security-brute-force-menu.php:387
|
673 |
+
msgid ""
|
674 |
+
"3) You will then be provided with a special login URL. You will need to use "
|
675 |
+
"this URL to login to your WordPress site instead of the usual login URL. "
|
676 |
+
"NOTE: The system will deposit a special cookie in your browser which will "
|
677 |
+
"allow you access to the WordPress administration login page."
|
678 |
+
msgstr ""
|
679 |
+
"3) 당신은 다음 특별한 로그인 URL이 제공됩니다. 이 URL을 사용하여 일반적인 로"
|
680 |
+
"그인 URL 대신 WordPress 사이트에 로그인해야 합니다. 참고 : 시스템은 당신이 워"
|
681 |
+
"드 프레스 관리 로그인 페이지에 액세스 할 수 있도록 브라우저에 특별한 쿠키를 "
|
682 |
+
"입금합니다."
|
683 |
+
|
684 |
+
# @ all-in-one-wp-security-and-firewall
|
685 |
+
#: admin/wp-security-brute-force-menu.php:389
|
686 |
+
msgid ""
|
687 |
+
"Any person trying to access your login page who does not have the special "
|
688 |
+
"cookie in their browser will be automatically blocked."
|
689 |
+
msgstr ""
|
690 |
+
"브라우저에 특별한 쿠키가 없는 로그인 페이지에 액세스하려는 모든 사람이 자동으"
|
691 |
+
"로 차단됩니다."
|
692 |
+
|
693 |
+
# @ all-in-one-wp-security-and-firewall
|
694 |
+
#: admin/wp-security-brute-force-menu.php:396
|
695 |
+
msgid "Secret Word"
|
696 |
+
msgstr "암호 문자"
|
697 |
+
|
698 |
+
# @ all-in-one-wp-security-and-firewall
|
699 |
+
#: admin/wp-security-brute-force-menu.php:398
|
700 |
+
msgid ""
|
701 |
+
"Choose a secret word consisting of alphanumeric characters which you can use "
|
702 |
+
"to access your special URL. Your are highly encouraged to choose a word "
|
703 |
+
"which will be difficult to guess."
|
704 |
+
msgstr ""
|
705 |
+
"특수 URL에 액세스하는 데 사용할 수 있는 유수 문자로 구성된 비밀 단어를 선택합"
|
706 |
+
"니다. 추측하기 어려운 단어를 선택하는 것이 좋습니다."
|
707 |
+
|
708 |
+
# @ all-in-one-wp-security-and-firewall
|
709 |
+
#: admin/wp-security-brute-force-menu.php:402
|
710 |
+
msgid "Re-direct URL"
|
711 |
+
msgstr "Re-direct URL"
|
712 |
+
|
713 |
+
# @ all-in-one-wp-security-and-firewall
|
714 |
+
#: admin/wp-security-brute-force-menu.php:406
|
715 |
+
msgid ""
|
716 |
+
"Specify a URL to redirect a hacker to when they try to access your WordPress "
|
717 |
+
"login page."
|
718 |
+
msgstr ""
|
719 |
+
"해커가 WordPress 로그인 페이지에 액세스하려고 할 때로 리디렉션할 URL을 지정합"
|
720 |
+
"니다."
|
721 |
+
|
722 |
+
# @ all-in-one-wp-security-and-firewall
|
723 |
+
#: admin/wp-security-brute-force-menu.php:413
|
724 |
+
msgid ""
|
725 |
+
"The URL specified here can be any site's URL and does not have to be your "
|
726 |
+
"own. For example you can be as creative as you like and send hackers to the "
|
727 |
+
"CIA or NSA home page."
|
728 |
+
msgstr ""
|
729 |
+
"여기에 지정된 URL은 사이트의 URL일 수 있으며 사용자 고유의 URL일 필요는 없습"
|
730 |
+
"니다. 예를 들어 원하는 만큼 창의적이며 해커를 CIA 또는 NSA 홈 페이지로 보낼 "
|
731 |
+
"수 있습니다."
|
732 |
+
|
733 |
+
# @ all-in-one-wp-security-and-firewall
|
734 |
+
#: admin/wp-security-brute-force-menu.php:415
|
735 |
+
msgid ""
|
736 |
+
"This field will default to: http://127.0.0.1 if you do not enter a value."
|
737 |
+
msgstr "값을 입력하지 않으면 이 필드는 기본값으로 http://127.0.0.1."
|
738 |
+
|
739 |
+
# @ all-in-one-wp-security-and-firewall
|
740 |
+
#: admin/wp-security-brute-force-menu.php:417
|
741 |
+
msgid "Useful Tip:"
|
742 |
+
msgstr "유용한 팁:"
|
743 |
+
|
744 |
+
# @ all-in-one-wp-security-and-firewall
|
745 |
+
#: admin/wp-security-brute-force-menu.php:419
|
746 |
+
msgid ""
|
747 |
+
"It's a good idea to not redirect attempted brute force login attempts to "
|
748 |
+
"your site because it increases the load on your server."
|
749 |
+
msgstr ""
|
750 |
+
|
751 |
+
# @ all-in-one-wp-security-and-firewall
|
752 |
+
#: admin/wp-security-brute-force-menu.php:421
|
753 |
+
msgid ""
|
754 |
+
"Redirecting a hacker or malicious bot back to \"http://127.0.0.1\" is ideal "
|
755 |
+
"because it deflects them back to their own local host and puts the load on "
|
756 |
+
"their server instead of yours."
|
757 |
+
msgstr ""
|
758 |
+
"해커 나 악성 봇을 다시 \"http://127.0.0.1\"로 리디렉션하는 것은 자신의 로컬 "
|
759 |
+
"호스트로 다시 편향하고 대신 서버의 부하를 넣기 때문에 이상적입니다."
|
760 |
+
|
761 |
+
# @ all-in-one-wp-security-and-firewall
|
762 |
+
#: admin/wp-security-brute-force-menu.php:428
|
763 |
+
msgid "My Site Has Posts Or Pages Which Are Password Protected"
|
764 |
+
msgstr "내 사이트에는 암호로 보호된 게시물 또는 페이지가 있습니다."
|
765 |
+
|
766 |
+
# @ all-in-one-wp-security-and-firewall
|
767 |
+
#: admin/wp-security-brute-force-menu.php:431
|
768 |
+
msgid ""
|
769 |
+
"Check this if you are using the native WordPress password protection feature "
|
770 |
+
"for some or all of your blog posts or pages."
|
771 |
+
msgstr ""
|
772 |
+
"블로그 게시물 또는 페이지의 일부 또는 전부에 대해 기본 WordPress 암호 보호 기"
|
773 |
+
"능을 사용하는 경우 이 기능을 확인하십시오."
|
774 |
+
|
775 |
+
# @ all-in-one-wp-security-and-firewall
|
776 |
+
#: admin/wp-security-brute-force-menu.php:436
|
777 |
+
msgid ""
|
778 |
+
"In the cases where you are protecting some of your posts or pages using the "
|
779 |
+
"in-built WordPress password protection feature, a few extra lines of "
|
780 |
+
"directives and exceptions need to be added to your .htacces file so that "
|
781 |
+
"people trying to access pages are not automatically blocked."
|
782 |
+
msgstr ""
|
783 |
+
"내장된 WordPress 암호 보호 기능을 사용하여 일부 게시물 이나 페이지를 보호하"
|
784 |
+
"는 경우 페이지에 액세스하려는 사람들이 자동으로 차단되지 않도록 .htacces 파일"
|
785 |
+
"에 몇 가지 추가 지침 및 예외줄을 추가해야 합니다."
|
786 |
+
|
787 |
+
# @ all-in-one-wp-security-and-firewall
|
788 |
+
#: admin/wp-security-brute-force-menu.php:438
|
789 |
+
msgid ""
|
790 |
+
"By enabling this checkbox the plugin will add the necessary rules and "
|
791 |
+
"exceptions to your .htacces file so that people trying to access these pages "
|
792 |
+
"are not automatically blocked."
|
793 |
+
msgstr ""
|
794 |
+
"이 확인란을 활성화하면 플러그인은 .htacces 파일에 필요한 규칙과 예외를 추가하"
|
795 |
+
"여 이러한 페이지에 액세스하려는 사람들이 자동으로 차단되지 않도록 합니다."
|
796 |
+
|
797 |
+
# @ all-in-one-wp-security-and-firewall
|
798 |
+
#: admin/wp-security-brute-force-menu.php:440
|
799 |
+
msgid "Helpful Tip:"
|
800 |
+
msgstr "유용한 팁:"
|
801 |
+
|
802 |
+
# @ all-in-one-wp-security-and-firewall
|
803 |
+
#: admin/wp-security-brute-force-menu.php:442
|
804 |
+
msgid ""
|
805 |
+
"If you do not use the WordPress password protection feature for your posts "
|
806 |
+
"or pages then it is highly recommended that you leave this checkbox disabled."
|
807 |
+
msgstr ""
|
808 |
+
"게시물이나 페이지에 대해 WordPress 암호 보호 기능을 사용하지 않는 경우 이 확"
|
809 |
+
"인란을 사용하지 않도록 두는 것이 좋습니다."
|
810 |
+
|
811 |
+
# @ all-in-one-wp-security-and-firewall
|
812 |
+
#: admin/wp-security-brute-force-menu.php:449
|
813 |
+
msgid "My Site Has a Theme or Plugins Which Use AJAX"
|
814 |
+
msgstr "내 사이트는 AJAX를 사용하는 테마 또는 플러그인이 있습니다."
|
815 |
+
|
816 |
+
# @ all-in-one-wp-security-and-firewall
|
817 |
+
#: admin/wp-security-brute-force-menu.php:452
|
818 |
+
msgid "Check this if your site uses AJAX functionality."
|
819 |
+
msgstr "사이트에서 AJAX 기능을 사용하는지 확인합니다."
|
820 |
+
|
821 |
+
# @ all-in-one-wp-security-and-firewall
|
822 |
+
#: admin/wp-security-brute-force-menu.php:457
|
823 |
+
msgid ""
|
824 |
+
"In the cases where your WordPress installation has a theme or plugins which "
|
825 |
+
"use AJAX, a few extra lines of directives and exceptions need to be added to "
|
826 |
+
"your .htacces file to prevent AJAX requests from being automatically blocked "
|
827 |
+
"by the brute force prevention feature."
|
828 |
+
msgstr ""
|
829 |
+
"워드 프레스 설치에 AJAX를 사용하는 테마 또는 플러그인이있는 경우 AJAX 요청이 "
|
830 |
+
"무차별 암호 힘 방지 기능에 의해 자동으로 차단되지 않도록 .htacces 파일에 몇 "
|
831 |
+
"가지 추가 지침 및 예외를 추가해야합니다."
|
832 |
+
|
833 |
+
# @ all-in-one-wp-security-and-firewall
|
834 |
+
#: admin/wp-security-brute-force-menu.php:459
|
835 |
+
msgid ""
|
836 |
+
"By enabling this checkbox the plugin will add the necessary rules and "
|
837 |
+
"exceptions to your .htacces file so that AJAX operations will work as "
|
838 |
+
"expected."
|
839 |
+
msgstr ""
|
840 |
+
"이 확인란을 활성화하면 플러그인은 AJAX 작업이 예상대로 작동하도록 .htacces 파"
|
841 |
+
"일에 필요한 규칙과 예외를 추가합니다."
|
842 |
+
|
843 |
+
# @ all-in-one-wp-security-and-firewall
|
844 |
+
#: admin/wp-security-brute-force-menu.php:474
|
845 |
+
msgid "The cookie test was successful. You can now enable this feature."
|
846 |
+
msgstr "쿠키 테스트는 성공적이었습니다. 이제 이 기능을 활성화할 수 있습니다."
|
847 |
+
|
848 |
+
# @ all-in-one-wp-security-and-firewall
|
849 |
+
#: admin/wp-security-brute-force-menu.php:477
|
850 |
+
msgid "Save Feature Settings"
|
851 |
+
msgstr "기능 설정 저장"
|
852 |
+
|
853 |
+
# @ all-in-one-wp-security-and-firewall
|
854 |
+
#: admin/wp-security-brute-force-menu.php:484
|
855 |
+
msgid ""
|
856 |
+
"The cookie test failed on this server. So this feature cannot be used on "
|
857 |
+
"this site."
|
858 |
+
msgstr ""
|
859 |
+
"이 서버에서 쿠키 테스트에 실패했습니다. 따라서 이 기능은 이 사이트에서 사용"
|
860 |
+
"할 수 없습니다."
|
861 |
+
|
862 |
+
# @ all-in-one-wp-security-and-firewall
|
863 |
+
#: admin/wp-security-brute-force-menu.php:489
|
864 |
+
msgid ""
|
865 |
+
"Before using this feature you are required to perform a cookie test first. "
|
866 |
+
"This is to make sure that your browser cookie is working correctly and that "
|
867 |
+
"you won't lock yourself out."
|
868 |
+
msgstr ""
|
869 |
+
"이 기능을 사용하기 전에 먼저 쿠키 테스트를 수행해야 합니다. 이는 브라우저 쿠"
|
870 |
+
"키가 올바르게 작동하고 자신을 잠그지 않도록 하기 위한 것입니다."
|
871 |
+
|
872 |
+
# @ all-in-one-wp-security-and-firewall
|
873 |
+
#: admin/wp-security-brute-force-menu.php:491
|
874 |
+
msgid "Perform Cookie Test"
|
875 |
+
msgstr "쿠키 테스트 수행"
|
876 |
+
|
877 |
+
#: admin/wp-security-brute-force-menu.php:531
|
878 |
+
msgid ""
|
879 |
+
"This feature allows you to add a captcha form on the WordPress login page."
|
880 |
+
msgstr ""
|
881 |
+
"이 기능을 사용하면 워드 프레스 로그인 페이지에 캡차 양식을 추가할 수 있습니"
|
882 |
+
"다."
|
883 |
+
|
884 |
+
#: admin/wp-security-brute-force-menu.php:532
|
885 |
+
msgid ""
|
886 |
+
"Users who attempt to login will also need to enter the answer to a simple "
|
887 |
+
"mathematical question - if they enter the wrong answer, the plugin will not "
|
888 |
+
"allow them login even if they entered the correct username and password."
|
889 |
+
msgstr ""
|
890 |
+
"로그인을 시도하는 사용자는 간단한 수학적 질문에 대한 답변을 입력해야합니다 - "
|
891 |
+
"잘못된 대답을 입력하면 플러그인은 올바른 사용자 이름과 암호를 입력하더라도 로"
|
892 |
+
"그인을 허용하지 않습니다."
|
893 |
+
|
894 |
+
#: admin/wp-security-brute-force-menu.php:533
|
895 |
+
msgid ""
|
896 |
+
"Therefore, adding a captcha form on the login page is another effective yet "
|
897 |
+
"simple \"Brute Force\" prevention technique."
|
898 |
+
msgstr ""
|
899 |
+
"따라서 로그인 페이지에 캡차 양식을 추가하는 것은 또 다른 효과적이면서도 간단"
|
900 |
+
"한 \"무차별 포스\" 예방 기술입니다."
|
901 |
+
|
902 |
+
#: admin/wp-security-brute-force-menu.php:539
|
903 |
+
msgid "Login Form Captcha Settings"
|
904 |
+
msgstr "로그인 양식 캡차 설정"
|
905 |
+
|
906 |
+
#: admin/wp-security-brute-force-menu.php:550
|
907 |
+
msgid "Enable Captcha On Login Page"
|
908 |
+
msgstr "로그인 페이지에서 Captcha 사용"
|
909 |
+
|
910 |
+
#: admin/wp-security-brute-force-menu.php:553
|
911 |
+
msgid "Check this if you want to insert a captcha form on the login page"
|
912 |
+
msgstr "로그인 페이지에 캡차 양식을 삽입하려는 경우 이 방법을 확인하십시오."
|
913 |
+
|
914 |
+
#: admin/wp-security-brute-force-menu.php:559
|
915 |
+
msgid "Custom Login Form Captcha Settings"
|
916 |
+
msgstr "사용자 정의 로그인 양식 캡차 설정"
|
917 |
+
|
918 |
+
#: admin/wp-security-brute-force-menu.php:568
|
919 |
+
msgid "Enable Captcha On Custom Login Form"
|
920 |
+
msgstr "맞춤형 로그인 양식에 보안 문자 사용"
|
921 |
+
|
922 |
+
#: admin/wp-security-brute-force-menu.php:571
|
923 |
+
msgid ""
|
924 |
+
"Check this if you want to insert captcha on a custom login form generated by "
|
925 |
+
"the following WP function: wp_login_form()"
|
926 |
+
msgstr ""
|
927 |
+
"다음 WP 함수에서 생성된 사용자 지정 로그인 양식에 보안 문자를 삽입하려는 경"
|
928 |
+
"우 wp_login_form()"
|
929 |
+
|
930 |
+
#: admin/wp-security-brute-force-menu.php:577
|
931 |
+
msgid "Lost Password Form Captcha Settings"
|
932 |
+
msgstr "비밀번호 찾기 양식에 보안 문자 설정"
|
933 |
+
|
934 |
+
#: admin/wp-security-brute-force-menu.php:587
|
935 |
+
msgid "Enable Captcha On Lost Password Page"
|
936 |
+
msgstr "암호 분실 페이지에서 보안 문자 활성화"
|
937 |
+
|
938 |
+
#: admin/wp-security-brute-force-menu.php:590
|
939 |
+
msgid ""
|
940 |
+
"Check this if you want to insert a captcha form on the lost password page"
|
941 |
+
msgstr ""
|
942 |
+
"비밀번호 찾기 페이지에 보안 문자 양식을 삽입하려는 경우 이 방법을 확인하십시"
|
943 |
+
"오."
|
944 |
+
|
945 |
+
#: admin/wp-security-brute-force-menu.php:612
|
946 |
+
msgid "Nonce check failed for save whitelist settings!"
|
947 |
+
msgstr "Nonce 확인은 저장 화이트리스트 설정에 실패!"
|
948 |
+
|
949 |
+
#: admin/wp-security-brute-force-menu.php:669
|
950 |
+
msgid ""
|
951 |
+
"The All In One WP Security Whitelist feature gives you the option of only "
|
952 |
+
"allowing certain IP addresses or ranges to have access to your WordPress "
|
953 |
+
"login page."
|
954 |
+
msgstr ""
|
955 |
+
"모든 WP 보안 화이트리스트 기능은 특정 IP 주소 또는 범위만 WordPress 로그인 페"
|
956 |
+
"이지에 액세스할 수 있도록 허용하는 옵션을 제공합니다."
|
957 |
+
|
958 |
+
#: admin/wp-security-brute-force-menu.php:670
|
959 |
+
msgid ""
|
960 |
+
"This feature will deny login access for all IP addresses which are not in "
|
961 |
+
"your whitelist as configured in the settings below."
|
962 |
+
msgstr ""
|
963 |
+
"이 기능은 아래 설정에서 구성된 대로 화이트리스트에 없는 모든 IP 주소에 대한 "
|
964 |
+
"로그인 액세스를 거부합니다."
|
965 |
+
|
966 |
+
#: admin/wp-security-brute-force-menu.php:671
|
967 |
+
msgid ""
|
968 |
+
"The plugin achieves this by writing the appropriate directives to your ."
|
969 |
+
"htaccess file."
|
970 |
+
msgstr "플러그인은 .htaccess 파일에 적절한 지침을 작성하여 이를 달성합니다."
|
971 |
+
|
972 |
+
#: admin/wp-security-brute-force-menu.php:672
|
973 |
+
msgid ""
|
974 |
+
"By allowing/blocking IP addresses via the .htaccess file your are using the "
|
975 |
+
"most secure first line of defence because login access will only be granted "
|
976 |
+
"to whitelisted IP addresses and other addresses will be blocked as soon as "
|
977 |
+
"they try to access your login page."
|
978 |
+
msgstr ""
|
979 |
+
".htaccess 파일을 통해 IP 주소를 허용/차단하면 로그인 액세스가 허용되고 다른 "
|
980 |
+
"주소가 로그인 페이지에 액세스하려고 하는 즉시 차단되므로 가장 안전한 첫 번째 "
|
981 |
+
"방어 선을 사용하고 있습니다."
|
982 |
+
|
983 |
+
#: admin/wp-security-brute-force-menu.php:680
|
984 |
+
#, php-format
|
985 |
+
msgid ""
|
986 |
+
"Attention: If in addition to enabling the white list feature, you also have "
|
987 |
+
"one of the %s or %s features enabled, <strong>you will still need to use "
|
988 |
+
"your secret word or special slug in the URL when trying to access your "
|
989 |
+
"WordPress login page</strong>."
|
990 |
+
msgstr ""
|
991 |
+
"주의: 화이트 리스트 기능을 사용하도록 설정하는 것 외에도 %s 또는 %s 기능 중 "
|
992 |
+
"하나가 활성화된 경우 <strong>WordPress 로그인 페이지에 액세스하려고 할 때 URL"
|
993 |
+
"에서 비밀 단어 또는 특수 슬러그를 사용해야 합니다.</strong>"
|
994 |
+
|
995 |
+
#: admin/wp-security-brute-force-menu.php:681
|
996 |
+
msgid ""
|
997 |
+
"These features are NOT functionally related. Having both of them enabled on "
|
998 |
+
"your site means you are creating 2 layers of security."
|
999 |
+
msgstr ""
|
1000 |
+
"이러한 기능은 기능적으로 관련이 없습니다. 두 가지 를 모두 사이트에서 사용하도"
|
1001 |
+
"록 설정하면 2개의 보안 계층을 만드는 것을 의미합니다."
|
1002 |
+
|
1003 |
+
#: admin/wp-security-brute-force-menu.php:686
|
1004 |
+
msgid "Login IP Whitelist Settings"
|
1005 |
+
msgstr "로그인 IP 허용 목록 설정"
|
1006 |
+
|
1007 |
+
#: admin/wp-security-brute-force-menu.php:697
|
1008 |
+
msgid "Enable IP Whitelisting"
|
1009 |
+
msgstr "IP 화이트리스팅 활성화"
|
1010 |
+
|
1011 |
+
#: admin/wp-security-brute-force-menu.php:700
|
1012 |
+
msgid ""
|
1013 |
+
"Check this if you want to enable the whitelisting of selected IP addresses "
|
1014 |
+
"specified in the settings below"
|
1015 |
+
msgstr ""
|
1016 |
+
"아래 설정에 지정된 선택한 IP 주소의 화이트리스팅을 사용하도록 설정하려면 이 "
|
1017 |
+
"옵션을 확인하십시오."
|
1018 |
+
|
1019 |
+
#: admin/wp-security-brute-force-menu.php:704
|
1020 |
+
msgid "Your Current IP Address"
|
1021 |
+
msgstr "현재 IP 주소"
|
1022 |
+
|
1023 |
+
#: admin/wp-security-brute-force-menu.php:707
|
1024 |
+
msgid ""
|
1025 |
+
"You can copy and paste this address in the text box below if you want to "
|
1026 |
+
"include it in your login whitelist."
|
1027 |
+
msgstr ""
|
1028 |
+
"로그인 화이트리스트에 포함하려는 경우 아래 텍스트 상자에 이 주소를 복사하여 "
|
1029 |
+
"붙여넣기할 수 있습니다."
|
1030 |
+
|
1031 |
+
#: admin/wp-security-brute-force-menu.php:711
|
1032 |
+
msgid "Enter Whitelisted IP Addresses:"
|
1033 |
+
msgstr "화이트리스트 IP 주소 입력:"
|
1034 |
+
|
1035 |
+
#: admin/wp-security-brute-force-menu.php:715
|
1036 |
+
msgid ""
|
1037 |
+
"Enter one or more IP addresses or IP ranges you wish to include in your "
|
1038 |
+
"whitelist. Only the addresses specified here will have access to the "
|
1039 |
+
"WordPress login page."
|
1040 |
+
msgstr ""
|
1041 |
+
|
1042 |
+
#: admin/wp-security-brute-force-menu.php:720
|
1043 |
+
msgid ""
|
1044 |
+
"To specify an IPv4 range use a wildcard \"*\" character. Acceptable ways to "
|
1045 |
+
"use wildcards is shown in the examples below:"
|
1046 |
+
msgstr ""
|
1047 |
+
|
1048 |
+
#: admin/wp-security-brute-force-menu.php:724
|
1049 |
+
msgid ""
|
1050 |
+
"Or you can enter an IPv6 address (NOTE: ranges/wildcards are currently not "
|
1051 |
+
"supported for ipv6)"
|
1052 |
+
msgstr ""
|
1053 |
+
|
1054 |
+
#: admin/wp-security-brute-force-menu.php:725
|
1055 |
+
msgid "Example 4: 4102:0:3ea6:79fd:b:46f8:230f:bb05"
|
1056 |
+
msgstr ""
|
1057 |
+
|
1058 |
+
#: admin/wp-security-brute-force-menu.php:726
|
1059 |
+
msgid "Example 5: 2205:0:1ca2:810d::"
|
1060 |
+
msgstr ""
|
1061 |
+
|
1062 |
+
#: admin/wp-security-brute-force-menu.php:766
|
1063 |
+
msgid ""
|
1064 |
+
"This feature allows you to add a special hidden \"honeypot\" field on the "
|
1065 |
+
"WordPress login page. This will only be visible to robots and not humans."
|
1066 |
+
msgstr ""
|
1067 |
+
|
1068 |
+
#: admin/wp-security-brute-force-menu.php:767
|
1069 |
+
msgid ""
|
1070 |
+
"Since robots usually fill in every input field from a login form, they will "
|
1071 |
+
"also submit a value for the special hidden honeypot field."
|
1072 |
+
msgstr ""
|
1073 |
+
|
1074 |
+
#: admin/wp-security-brute-force-menu.php:768
|
1075 |
+
msgid ""
|
1076 |
+
"The way honeypots work is that a hidden field is placed somewhere inside a "
|
1077 |
+
"form which only robots will submit. If that field contains a value when the "
|
1078 |
+
"form is submitted then a robot has most likely submitted the form and it is "
|
1079 |
+
"consequently dealt with."
|
1080 |
+
msgstr ""
|
1081 |
+
|
1082 |
+
#: admin/wp-security-brute-force-menu.php:769
|
1083 |
+
msgid ""
|
1084 |
+
"Therefore, if the plugin detects that this field has a value when the login "
|
1085 |
+
"form is submitted, then the robot which is attempting to login to your site "
|
1086 |
+
"will be redirected to its localhost address - http://127.0.0.1."
|
1087 |
+
msgstr ""
|
1088 |
+
|
1089 |
+
#: admin/wp-security-brute-force-menu.php:775
|
1090 |
+
msgid "Login Form Honeypot Settings"
|
1091 |
+
msgstr ""
|
1092 |
+
|
1093 |
+
#: admin/wp-security-brute-force-menu.php:786
|
1094 |
+
msgid "Enable Honeypot On Login Page"
|
1095 |
+
msgstr ""
|
1096 |
+
|
1097 |
+
#: admin/wp-security-brute-force-menu.php:789
|
1098 |
+
msgid ""
|
1099 |
+
"Check this if you want to enable the honeypot feature for the login page"
|
1100 |
+
msgstr ""
|
1101 |
+
|
1102 |
+
#: admin/wp-security-dashboard-menu.php:26
|
1103 |
+
msgid "System Info"
|
1104 |
+
msgstr "시스템 정보"
|
1105 |
+
|
1106 |
+
#: admin/wp-security-dashboard-menu.php:27
|
1107 |
+
#: admin/wp-security-dashboard-menu.php:518
|
1108 |
+
msgid "Locked IP Addresses"
|
1109 |
+
msgstr "잠긴 IP 주소"
|
1110 |
+
|
1111 |
+
#: admin/wp-security-dashboard-menu.php:28
|
1112 |
+
msgid "Permanent Block List"
|
1113 |
+
msgstr "영구 블록 목록"
|
1114 |
+
|
1115 |
+
#: admin/wp-security-dashboard-menu.php:29
|
1116 |
+
msgid "AIOWPS Logs"
|
1117 |
+
msgstr "AIOWPS 로그"
|
1118 |
+
|
1119 |
+
#: admin/wp-security-dashboard-menu.php:79
|
1120 |
+
msgid "For information, updates and documentation, please visit the"
|
1121 |
+
msgstr "For information, updates and documentation, please visit the"
|
1122 |
+
|
1123 |
+
#: admin/wp-security-dashboard-menu.php:79
|
1124 |
+
msgid "AIO WP Security & Firewall Plugin"
|
1125 |
+
msgstr "AIO WP 보안 및 방화벽 플러그인"
|
1126 |
+
|
1127 |
+
#: admin/wp-security-dashboard-menu.php:79
|
1128 |
+
msgid "Page"
|
1129 |
+
msgstr "페이지"
|
1130 |
+
|
1131 |
+
#: admin/wp-security-dashboard-menu.php:80
|
1132 |
+
msgid "Follow us"
|
1133 |
+
msgstr "팔로우"
|
1134 |
+
|
1135 |
+
#: admin/wp-security-dashboard-menu.php:80
|
1136 |
+
msgid ""
|
1137 |
+
"Twitter, Google+ or via Email to stay up to date about the new security "
|
1138 |
+
"features of this plugin."
|
1139 |
+
msgstr ""
|
1140 |
+
"트위터, 구글 + 또는 이 플러그인의 새로운 보안 기능에 대 한 최신 상태로 이메일"
|
1141 |
+
"을 통해."
|
1142 |
+
|
1143 |
+
#: admin/wp-security-dashboard-menu.php:97
|
1144 |
+
msgid "Security Strength Meter"
|
1145 |
+
msgstr "보안 강도 계수"
|
1146 |
+
|
1147 |
+
# @ all-in-one-wp-security-and-firewall
|
1148 |
+
#: admin/wp-security-dashboard-menu.php:128
|
1149 |
+
msgid "Total Achievable Points: "
|
1150 |
+
msgstr "총 달성 가능한 포인트:"
|
1151 |
+
|
1152 |
+
# @ all-in-one-wp-security-and-firewall
|
1153 |
+
#: admin/wp-security-dashboard-menu.php:130
|
1154 |
+
msgid "Current Score of Your Site: "
|
1155 |
+
msgstr "사이트의 현재 점수:"
|
1156 |
+
|
1157 |
+
#: admin/wp-security-dashboard-menu.php:143
|
1158 |
+
msgid "Security Points Breakdown"
|
1159 |
+
msgstr "보안 지점 고장"
|
1160 |
+
|
1161 |
+
#: admin/wp-security-dashboard-menu.php:187
|
1162 |
+
msgid "Spread the Word"
|
1163 |
+
msgstr "입소문 내기"
|
1164 |
+
|
1165 |
+
#: admin/wp-security-dashboard-menu.php:192
|
1166 |
+
msgid ""
|
1167 |
+
"We are working hard to make your WordPress site more secure. Please support "
|
1168 |
+
"us, here is how:"
|
1169 |
+
msgstr ""
|
1170 |
+
"우리는 당신의 워드 프레스 사이트를 더 안전하게 만들기 위해 열심히 노력하고 있"
|
1171 |
+
"습니다. 우리를 지원하십시오, 여기에 방법입니다 :"
|
1172 |
+
|
1173 |
+
#: admin/wp-security-dashboard-menu.php:217
|
1174 |
+
msgid "Get To Know The Developers"
|
1175 |
+
msgstr "개발자에 대해 알아가기"
|
1176 |
+
|
1177 |
+
#: admin/wp-security-dashboard-menu.php:221
|
1178 |
+
msgid "Wanna know more about the developers behind this plugin?"
|
1179 |
+
msgstr "이 플러그인 뒤에 개발자에 대 한 자세한 내용은?"
|
1180 |
+
|
1181 |
+
#: admin/wp-security-dashboard-menu.php:238
|
1182 |
+
msgid "Critical Feature Status"
|
1183 |
+
msgstr "중요 기능 상태"
|
1184 |
+
|
1185 |
+
# @ all-in-one-wp-security-and-firewall
|
1186 |
+
#: admin/wp-security-dashboard-menu.php:244
|
1187 |
+
msgid ""
|
1188 |
+
"Below is the current status of the critical features that you should "
|
1189 |
+
"activate on your site to achieve a minimum level of recommended security"
|
1190 |
+
msgstr ""
|
1191 |
+
"다음은 최소한의 권장 보안을 달성하기 위해 사이트에서 활성화해야 하는 중요한 "
|
1192 |
+
"기능의 현재 상태입니다."
|
1193 |
+
|
1194 |
+
# @ all-in-one-wp-security-and-firewall
|
1195 |
+
#: admin/wp-security-dashboard-menu.php:248
|
1196 |
+
msgid "Admin Username"
|
1197 |
+
msgstr "관리자 아이디"
|
1198 |
+
|
1199 |
+
# @ all-in-one-wp-security-and-firewall
|
1200 |
+
#: admin/wp-security-dashboard-menu.php:263
|
1201 |
+
#: admin/wp-security-user-login-menu.php:25
|
1202 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:42
|
1203 |
+
msgid "Login Lockdown"
|
1204 |
+
msgstr "로그인 잠금"
|
1205 |
+
|
1206 |
+
# @ all-in-one-wp-security-and-firewall
|
1207 |
+
#: admin/wp-security-dashboard-menu.php:278
|
1208 |
+
msgid "File Permission"
|
1209 |
+
msgstr "파일 권한"
|
1210 |
+
|
1211 |
+
# @ all-in-one-wp-security-and-firewall
|
1212 |
+
#: admin/wp-security-dashboard-menu.php:293
|
1213 |
+
msgid "Basic Firewall"
|
1214 |
+
msgstr "기본 방화벽"
|
1215 |
+
|
1216 |
+
#: admin/wp-security-dashboard-menu.php:314
|
1217 |
+
msgid "Last 5 Logins"
|
1218 |
+
msgstr "마지막 5 로그인"
|
1219 |
+
|
1220 |
+
#: admin/wp-security-dashboard-menu.php:332
|
1221 |
+
msgid "No data found!"
|
1222 |
+
msgstr "데이터가 없습니다"
|
1223 |
+
|
1224 |
+
#: admin/wp-security-dashboard-menu.php:336
|
1225 |
+
msgid "Last 5 logins summary:"
|
1226 |
+
msgstr "마지막 5 개의 로그인 요약:"
|
1227 |
+
|
1228 |
+
#: admin/wp-security-dashboard-menu.php:340
|
1229 |
+
msgid "User"
|
1230 |
+
msgstr "사용자"
|
1231 |
+
|
1232 |
+
#: admin/wp-security-dashboard-menu.php:341
|
1233 |
+
msgid "Date"
|
1234 |
+
msgstr "날짜"
|
1235 |
+
|
1236 |
+
#: admin/wp-security-dashboard-menu.php:342
|
1237 |
+
msgid "IP"
|
1238 |
+
msgstr "IP"
|
1239 |
+
|
1240 |
+
#: admin/wp-security-dashboard-menu.php:366
|
1241 |
+
msgid "Maintenance Mode Status"
|
1242 |
+
msgstr "유지 관리 모드 상태"
|
1243 |
+
|
1244 |
+
# @ all-in-one-wp-security-and-firewall
|
1245 |
+
#: admin/wp-security-dashboard-menu.php:372
|
1246 |
+
msgid ""
|
1247 |
+
"Maintenance mode is currently enabled. Remember to turn it off when you are "
|
1248 |
+
"done"
|
1249 |
+
msgstr "현재 유지 관리 모드가 활성화되어 있습니다. 완료되면 꺼야 합니다."
|
1250 |
+
|
1251 |
+
# @ all-in-one-wp-security-and-firewall
|
1252 |
+
#: admin/wp-security-dashboard-menu.php:374
|
1253 |
+
msgid "Maintenance mode is currently off."
|
1254 |
+
msgstr "유지 관리 모드가 현재 해제되었습니다."
|
1255 |
+
|
1256 |
+
# @ all-in-one-wp-security-and-firewall
|
1257 |
+
#: admin/wp-security-dashboard-menu.php:378
|
1258 |
+
msgid "Maintenance Mode"
|
1259 |
+
msgstr "유지관리 모드"
|
1260 |
+
|
1261 |
+
#: admin/wp-security-dashboard-menu.php:403
|
1262 |
+
msgid "Cookie Based Brute Prevention"
|
1263 |
+
msgstr "쿠키 기반 무차별 예방"
|
1264 |
+
|
1265 |
+
#: admin/wp-security-dashboard-menu.php:408
|
1266 |
+
msgid "Cookie-Based Brute Force"
|
1267 |
+
msgstr ""
|
1268 |
+
|
1269 |
+
#: admin/wp-security-dashboard-menu.php:412
|
1270 |
+
#: admin/wp-security-dashboard-menu.php:444
|
1271 |
+
#, php-format
|
1272 |
+
msgid "The %s feature is currently active."
|
1273 |
+
msgstr "%s 피쳐는 현재 활성 상태입니다."
|
1274 |
+
|
1275 |
+
#: admin/wp-security-dashboard-menu.php:413
|
1276 |
+
#: admin/wp-security-dashboard-menu.php:445
|
1277 |
+
msgid "Your new WordPress login URL is now:"
|
1278 |
+
msgstr "당신의 새 워드프레스 로그인 URL:"
|
1279 |
+
|
1280 |
+
#: admin/wp-security-dashboard-menu.php:478
|
1281 |
+
#: admin/wp-security-user-login-menu.php:29
|
1282 |
+
msgid "Logged In Users"
|
1283 |
+
msgstr "로그인한 사용자"
|
1284 |
+
|
1285 |
+
# @ all-in-one-wp-security-and-firewall
|
1286 |
+
#: admin/wp-security-dashboard-menu.php:488
|
1287 |
+
msgid "Number of users currently logged in site-wide is:"
|
1288 |
+
msgstr "현재 사이트에 로그인 한 사용자 :"
|
1289 |
+
|
1290 |
+
# @ all-in-one-wp-security-and-firewall
|
1291 |
+
#: admin/wp-security-dashboard-menu.php:489
|
1292 |
+
#: admin/wp-security-dashboard-menu.php:503
|
1293 |
+
#: admin/wp-security-dashboard-menu.php:531
|
1294 |
+
#, php-format
|
1295 |
+
msgid "Go to the %s menu to see more details"
|
1296 |
+
msgstr "자세한 내용을 보려면 %s 메뉴로 이동"
|
1297 |
+
|
1298 |
+
# @ all-in-one-wp-security-and-firewall
|
1299 |
+
#: admin/wp-security-dashboard-menu.php:492
|
1300 |
+
msgid "There are no other site-wide users currently logged in."
|
1301 |
+
msgstr "현재 로그인한 사이트 전체의 다른 사용자는 없습니다."
|
1302 |
+
|
1303 |
+
#: admin/wp-security-dashboard-menu.php:502
|
1304 |
+
msgid "Number of users currently logged into your site (including you) is:"
|
1305 |
+
msgstr "현재 사이트에 로그인한 사용자 수(회원 포함):"
|
1306 |
+
|
1307 |
+
# @ all-in-one-wp-security-and-firewall
|
1308 |
+
#: admin/wp-security-dashboard-menu.php:506
|
1309 |
+
msgid "There are no other users currently logged in."
|
1310 |
+
msgstr "현재 로그인한 다른 사용자는 없습니다."
|
1311 |
+
|
1312 |
+
#: admin/wp-security-dashboard-menu.php:527
|
1313 |
+
msgid "There are no IP addresses currently locked out."
|
1314 |
+
msgstr "현재 잠겨 있는 IP 주소가 없습니다."
|
1315 |
+
|
1316 |
+
#: admin/wp-security-dashboard-menu.php:530
|
1317 |
+
msgid "Number of temporarily locked out IP addresses: "
|
1318 |
+
msgstr "일시적으로 잠긴 IP 주소 수:"
|
1319 |
+
|
1320 |
+
#: admin/wp-security-dashboard-menu.php:576
|
1321 |
+
msgid "Site Info"
|
1322 |
+
msgstr "사이트 정보"
|
1323 |
+
|
1324 |
+
#: admin/wp-security-dashboard-menu.php:580
|
1325 |
+
msgid "Plugin Version"
|
1326 |
+
msgstr "플러그인 버전"
|
1327 |
+
|
1328 |
+
#: admin/wp-security-dashboard-menu.php:582
|
1329 |
+
msgid "WP Version"
|
1330 |
+
msgstr "워드프레스 버전"
|
1331 |
+
|
1332 |
+
# @ all-in-one-wp-security-and-firewall
|
1333 |
+
#: admin/wp-security-dashboard-menu.php:585
|
1334 |
+
#: admin/wp-security-dashboard-menu.php:589
|
1335 |
+
#: admin/wp-security-dashboard-menu.php:698
|
1336 |
+
msgid "Version"
|
1337 |
+
msgstr "버전"
|
1338 |
+
|
1339 |
+
#: admin/wp-security-dashboard-menu.php:587
|
1340 |
+
msgid "Table Prefix"
|
1341 |
+
msgstr "테이블 접두사"
|
1342 |
+
|
1343 |
+
#: admin/wp-security-dashboard-menu.php:591
|
1344 |
+
msgid "Session Save Path"
|
1345 |
+
msgstr "세션 저장 경로"
|
1346 |
+
|
1347 |
+
#: admin/wp-security-dashboard-menu.php:594
|
1348 |
+
msgid "Server Name"
|
1349 |
+
msgstr "서버 이름"
|
1350 |
+
|
1351 |
+
#: admin/wp-security-dashboard-menu.php:596
|
1352 |
+
msgid "Cookie Domain"
|
1353 |
+
msgstr "쿠키 도메인"
|
1354 |
+
|
1355 |
+
#: admin/wp-security-dashboard-menu.php:599
|
1356 |
+
msgid "Library Present"
|
1357 |
+
msgstr ""
|
1358 |
+
|
1359 |
+
#: admin/wp-security-dashboard-menu.php:601
|
1360 |
+
msgid "Debug File Write Permissions"
|
1361 |
+
msgstr "디버그 파일 쓰기 권한"
|
1362 |
+
|
1363 |
+
#: admin/wp-security-dashboard-menu.php:607
|
1364 |
+
msgid "PHP Info"
|
1365 |
+
msgstr "PHP 정보"
|
1366 |
+
|
1367 |
+
#: admin/wp-security-dashboard-menu.php:611
|
1368 |
+
msgid "PHP Version"
|
1369 |
+
msgstr "PHP 버전"
|
1370 |
+
|
1371 |
+
#: admin/wp-security-dashboard-menu.php:613
|
1372 |
+
msgid "PHP Memory Usage"
|
1373 |
+
msgstr "PHP 메모리 사용량"
|
1374 |
+
|
1375 |
+
#: admin/wp-security-dashboard-menu.php:614
|
1376 |
+
msgid " MB"
|
1377 |
+
msgstr " MB"
|
1378 |
+
|
1379 |
+
#: admin/wp-security-dashboard-menu.php:620
|
1380 |
+
#: admin/wp-security-dashboard-menu.php:629
|
1381 |
+
#: admin/wp-security-dashboard-menu.php:638
|
1382 |
+
#: admin/wp-security-dashboard-menu.php:676
|
1383 |
+
msgid "N/A"
|
1384 |
+
msgstr "N/A"
|
1385 |
+
|
1386 |
+
#: admin/wp-security-dashboard-menu.php:623
|
1387 |
+
msgid "PHP Memory Limit"
|
1388 |
+
msgstr "PHP 메모리 제한"
|
1389 |
+
|
1390 |
+
#: admin/wp-security-dashboard-menu.php:632
|
1391 |
+
msgid "PHP Max Upload Size"
|
1392 |
+
msgstr "PHP 최대 업로드 크기"
|
1393 |
+
|
1394 |
+
#: admin/wp-security-dashboard-menu.php:641
|
1395 |
+
msgid "PHP Max Post Size"
|
1396 |
+
msgstr "PHP 최대 포스트 크기"
|
1397 |
+
|
1398 |
+
#: admin/wp-security-dashboard-menu.php:645
|
1399 |
+
#: admin/wp-security-dashboard-menu.php:655
|
1400 |
+
#: admin/wp-security-dashboard-menu.php:664
|
1401 |
+
msgid "On"
|
1402 |
+
msgstr "On"
|
1403 |
+
|
1404 |
+
#: admin/wp-security-dashboard-menu.php:647
|
1405 |
+
#: admin/wp-security-dashboard-menu.php:657
|
1406 |
+
#: admin/wp-security-dashboard-menu.php:666
|
1407 |
+
msgid "Off"
|
1408 |
+
msgstr "Off"
|
1409 |
+
|
1410 |
+
#: admin/wp-security-dashboard-menu.php:650
|
1411 |
+
msgid "PHP Allow URL fopen"
|
1412 |
+
msgstr "PHP URL fopen 허용"
|
1413 |
+
|
1414 |
+
#: admin/wp-security-dashboard-menu.php:660
|
1415 |
+
msgid "PHP Allow URL Include"
|
1416 |
+
msgstr "PHP 허용 URL 포함"
|
1417 |
+
|
1418 |
+
#: admin/wp-security-dashboard-menu.php:669
|
1419 |
+
msgid "PHP Display Errors"
|
1420 |
+
msgstr "PHP 디스플레이 오류"
|
1421 |
+
|
1422 |
+
#: admin/wp-security-dashboard-menu.php:679
|
1423 |
+
msgid "PHP Max Script Execution Time"
|
1424 |
+
msgstr "PHP 최대 스크립트 실행 시간"
|
1425 |
+
|
1426 |
+
#: admin/wp-security-dashboard-menu.php:680
|
1427 |
+
msgid "Seconds"
|
1428 |
+
msgstr "초"
|
1429 |
+
|
1430 |
+
#: admin/wp-security-dashboard-menu.php:686
|
1431 |
+
msgid "Active Plugins"
|
1432 |
+
msgstr "활성된 플러그인"
|
1433 |
+
|
1434 |
+
# @ all-in-one-wp-security-and-firewall
|
1435 |
+
#: admin/wp-security-dashboard-menu.php:697
|
1436 |
+
#: admin/wp-security-filesystem-menu.php:131
|
1437 |
+
#: admin/wp-security-filesystem-menu.php:150
|
1438 |
+
msgid "Name"
|
1439 |
+
msgstr "이름"
|
1440 |
+
|
1441 |
+
# @ all-in-one-wp-security-and-firewall
|
1442 |
+
#: admin/wp-security-dashboard-menu.php:699
|
1443 |
+
msgid "Plugin URL"
|
1444 |
+
msgstr "플러그인 URL"
|
1445 |
+
|
1446 |
+
#: admin/wp-security-dashboard-menu.php:737
|
1447 |
+
msgid ""
|
1448 |
+
"This tab displays the list of all IP addresses which are currently "
|
1449 |
+
"temporarily locked out due to the Login Lockdown feature:"
|
1450 |
+
msgstr ""
|
1451 |
+
"이 탭에는 로그인 잠금 기능으로 인해 현재 일시적으로 잠겨 있는 모든 IP 주소 목"
|
1452 |
+
"록이 표시됩니다."
|
1453 |
+
|
1454 |
+
#: admin/wp-security-dashboard-menu.php:744
|
1455 |
+
msgid "Currently Locked Out IP Addresses and Ranges"
|
1456 |
+
msgstr "현재 잠겨 있는 IP 주소 및 범위"
|
1457 |
+
|
1458 |
+
#: admin/wp-security-dashboard-menu.php:787
|
1459 |
+
msgid "This tab displays the list of all permanently blocked IP addresses."
|
1460 |
+
msgstr "이 탭에는 영구적으로 차단된 모든 IP 주소 목록이 표시됩니다."
|
1461 |
+
|
1462 |
+
#: admin/wp-security-dashboard-menu.php:788 admin/wp-security-spam-menu.php:291
|
1463 |
+
msgid ""
|
1464 |
+
"NOTE: This feature does NOT use the .htaccess file to permanently block the "
|
1465 |
+
"IP addresses so it should be compatible with all web servers running "
|
1466 |
+
"WordPress."
|
1467 |
+
msgstr ""
|
1468 |
+
"참고: 이 기능은 .htaccess 파일을 사용하여 IP 주소를 영구적으로 차단하지 않으"
|
1469 |
+
"므로 WordPress를 실행하는 모든 웹 서버와 호환되어야 합니다."
|
1470 |
+
|
1471 |
+
#: admin/wp-security-dashboard-menu.php:794
|
1472 |
+
msgid "Permanently Blocked IP Addresses"
|
1473 |
+
msgstr "영구적으로 차단된 IP 주소"
|
1474 |
+
|
1475 |
+
#: admin/wp-security-dashboard-menu.php:828
|
1476 |
+
msgid "View Logs for All In WP Security & Firewall Plugin"
|
1477 |
+
msgstr "WP 보안 및 방화벽 플러그인의 모든 로그 보기"
|
1478 |
+
|
1479 |
+
#: admin/wp-security-dashboard-menu.php:836
|
1480 |
+
msgid "Log File"
|
1481 |
+
msgstr "로그 파일"
|
1482 |
+
|
1483 |
+
#: admin/wp-security-dashboard-menu.php:840
|
1484 |
+
msgid "--Select a file--"
|
1485 |
+
msgstr "--파일 선택--"
|
1486 |
+
|
1487 |
+
#: admin/wp-security-dashboard-menu.php:851
|
1488 |
+
msgid "Select one of the log files to view the contents"
|
1489 |
+
msgstr "로그 파일 중 하나를 선택하여 내용을 볼 수 있습니다."
|
1490 |
+
|
1491 |
+
#: admin/wp-security-dashboard-menu.php:856
|
1492 |
+
msgid "View Logs"
|
1493 |
+
msgstr "로그 보기"
|
1494 |
+
|
1495 |
+
#: admin/wp-security-dashboard-menu.php:877
|
1496 |
+
msgid ""
|
1497 |
+
"Error! The file you selected is not a permitted file. You can only view log "
|
1498 |
+
"files created by this plugin."
|
1499 |
+
msgstr ""
|
1500 |
+
"오류! 선택한 파일은 허용되는 파일이 아닙니다. 이 플러그인에서 만든 로그 파일"
|
1501 |
+
"만 볼 수 있습니다."
|
1502 |
+
|
1503 |
+
#: admin/wp-security-dashboard-menu.php:884
|
1504 |
+
msgid "Log File Contents For"
|
1505 |
+
msgstr ""
|
1506 |
+
|
1507 |
+
#: admin/wp-security-dashboard-menu.php:898
|
1508 |
+
msgid "Log file is empty!"
|
1509 |
+
msgstr "기록 파일이 비었어요."
|
1510 |
+
|
1511 |
+
#: admin/wp-security-database-menu.php:26
|
1512 |
+
#: admin/wp-security-database-menu.php:31
|
1513 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:63
|
1514 |
+
msgid "DB Backup"
|
1515 |
+
msgstr "DB 백업"
|
1516 |
+
|
1517 |
+
#: admin/wp-security-database-menu.php:30
|
1518 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:61
|
1519 |
+
msgid "DB Prefix"
|
1520 |
+
msgstr "DB 접두사"
|
1521 |
+
|
1522 |
+
# @ all-in-one-wp-security-and-firewall
|
1523 |
+
#: admin/wp-security-database-menu.php:94
|
1524 |
+
msgid "Nonce check failed for DB prefix change operation!"
|
1525 |
+
msgstr "NONCE 는 DB 접두사 변경 작업에 대한 실패 확인!"
|
1526 |
+
|
1527 |
+
# @ all-in-one-wp-security-and-firewall
|
1528 |
+
#: admin/wp-security-database-menu.php:102
|
1529 |
+
msgid ""
|
1530 |
+
"The plugin has detected that it cannot write to the wp-config.php file. This "
|
1531 |
+
"feature can only be used if the plugin can successfully write to the wp-"
|
1532 |
+
"config.php file."
|
1533 |
+
msgstr ""
|
1534 |
+
"플러그인은 wp-config.php 파일에 쓸 수 없다는 것을 감지했습니다. 이 기능은 플"
|
1535 |
+
"러그인이 wp-config.php 파일에 성공적으로 쓸 수 있는 경우에만 사용할 수 있습니"
|
1536 |
+
"다."
|
1537 |
+
|
1538 |
+
# @ all-in-one-wp-security-and-firewall
|
1539 |
+
#: admin/wp-security-database-menu.php:115
|
1540 |
+
msgid "Please enter a value for the DB prefix."
|
1541 |
+
msgstr "DB 접두사값을 입력하십시오."
|
1542 |
+
|
1543 |
+
# @ all-in-one-wp-security-and-firewall
|
1544 |
+
#: admin/wp-security-database-menu.php:124
|
1545 |
+
msgid ""
|
1546 |
+
"<strong>ERROR</strong>: The table prefix can only contain numbers, letters, "
|
1547 |
+
"and underscores."
|
1548 |
+
msgstr ""
|
1549 |
+
"<strong>오류</strong>: 테이블 접두사에는 숫자, 문자 및 밑줄만 포함될 수 있습"
|
1550 |
+
"니다."
|
1551 |
+
|
1552 |
+
# @ all-in-one-wp-security-and-firewall
|
1553 |
+
#: admin/wp-security-database-menu.php:133
|
1554 |
+
msgid "Change Database Prefix"
|
1555 |
+
msgstr "데이터베이스 접두사 변경"
|
1556 |
+
|
1557 |
+
# @ all-in-one-wp-security-and-firewall
|
1558 |
+
#: admin/wp-security-database-menu.php:136
|
1559 |
+
msgid ""
|
1560 |
+
"Your WordPress DB is the most important asset of your website because it "
|
1561 |
+
"contains a lot of your site's precious information."
|
1562 |
+
msgstr ""
|
1563 |
+
"귀하의 워드 프레스 DB는 사이트의 소중한 정보를 많이 포함하기 때문에 웹 사이트"
|
1564 |
+
"의 가장 중요한 자산입니다."
|
1565 |
+
|
1566 |
+
# @ all-in-one-wp-security-and-firewall
|
1567 |
+
#: admin/wp-security-database-menu.php:137
|
1568 |
+
msgid ""
|
1569 |
+
"The DB is also a target for hackers via methods such as SQL injections and "
|
1570 |
+
"malicious and automated code which targets certain tables."
|
1571 |
+
msgstr ""
|
1572 |
+
"DB는 또한 SQL 주사 및 특정 테이블을 대상으로 하는 악성 및 자동화된 코드와 같"
|
1573 |
+
"은 방법을 통해 해커의 대상이기도 합니다."
|
1574 |
+
|
1575 |
+
# @ all-in-one-wp-security-and-firewall
|
1576 |
+
#: admin/wp-security-database-menu.php:138
|
1577 |
+
msgid ""
|
1578 |
+
"One way to add a layer of protection for your DB is to change the default "
|
1579 |
+
"WordPress table prefix from \"wp_\" to something else which will be "
|
1580 |
+
"difficult for hackers to guess."
|
1581 |
+
msgstr ""
|
1582 |
+
"DB에 대한 보호 계층을 추가하는 한 가지 방법은 기본 워드 프레스 테이블 접두사"
|
1583 |
+
"를 \"wp_\"에서 해커가 추측하기 어려운 다른 것으로 변경하는 것입니다."
|
1584 |
+
|
1585 |
+
# @ all-in-one-wp-security-and-firewall
|
1586 |
+
#: admin/wp-security-database-menu.php:139
|
1587 |
+
msgid ""
|
1588 |
+
"This feature allows you to easily change the prefix to a value of your "
|
1589 |
+
"choice or to a random value set by this plugin."
|
1590 |
+
msgstr ""
|
1591 |
+
"이 기능을 사용하면 접두사를 원하는 값또는 이 플러그인으로 설정한 임의값으로 "
|
1592 |
+
"쉽게 변경할 수 있습니다."
|
1593 |
+
|
1594 |
+
# @ all-in-one-wp-security-and-firewall
|
1595 |
+
#: admin/wp-security-database-menu.php:145
|
1596 |
+
msgid "DB Prefix Options"
|
1597 |
+
msgstr "DB 접두사 옵션"
|
1598 |
+
|
1599 |
+
# @ all-in-one-wp-security-and-firewall
|
1600 |
+
#: admin/wp-security-database-menu.php:156
|
1601 |
+
#, php-format
|
1602 |
+
msgid "It is recommended that you perform a %s before using this feature"
|
1603 |
+
msgstr "이 기능을 사용하기 전에 %s를 수행하는 것이 좋습니다."
|
1604 |
+
|
1605 |
+
# @ all-in-one-wp-security-and-firewall
|
1606 |
+
#: admin/wp-security-database-menu.php:165
|
1607 |
+
msgid "Current DB Table Prefix"
|
1608 |
+
msgstr "현재 DB 테이블 접두사"
|
1609 |
+
|
1610 |
+
# @ all-in-one-wp-security-and-firewall
|
1611 |
+
#: admin/wp-security-database-menu.php:171
|
1612 |
+
msgid ""
|
1613 |
+
"Your site is currently using the default WordPress DB prefix value of \"wp_"
|
1614 |
+
"\". \n"
|
1615 |
+
" To increase your site's security you should "
|
1616 |
+
"consider changing the DB prefix value to another value."
|
1617 |
+
msgstr ""
|
1618 |
+
"귀하의 사이트는 현재 \"wp_\"의 기본 워드 프레스 DB 접두사 값을 사용하고 있습"
|
1619 |
+
"니다. \n"
|
1620 |
+
" 사이트의 보안을 높이려면 DB 접두사 값을 다른 값으"
|
1621 |
+
"로 변경하는 것이 좋습니다."
|
1622 |
+
|
1623 |
+
# @ all-in-one-wp-security-and-firewall
|
1624 |
+
#: admin/wp-security-database-menu.php:178
|
1625 |
+
msgid "Generate New DB Table Prefix"
|
1626 |
+
msgstr "새 DB 테이블 접두사 생성"
|
1627 |
+
|
1628 |
+
# @ all-in-one-wp-security-and-firewall
|
1629 |
+
#: admin/wp-security-database-menu.php:181
|
1630 |
+
msgid ""
|
1631 |
+
"Check this if you want the plugin to generate a random 6 character string "
|
1632 |
+
"for the table prefix"
|
1633 |
+
msgstr ""
|
1634 |
+
"플러그인이 테이블 접두사에 대한 임의의 6 자 문자열을 생성하려는 경우이 확인"
|
1635 |
+
|
1636 |
+
# @ all-in-one-wp-security-and-firewall
|
1637 |
+
#: admin/wp-security-database-menu.php:182
|
1638 |
+
msgid "OR"
|
1639 |
+
msgstr "또는"
|
1640 |
+
|
1641 |
+
# @ all-in-one-wp-security-and-firewall
|
1642 |
+
#: admin/wp-security-database-menu.php:184
|
1643 |
+
msgid ""
|
1644 |
+
"Choose your own DB prefix by specifying a string which contains letters and/"
|
1645 |
+
"or numbers and/or underscores. Example: xyz_"
|
1646 |
+
msgstr ""
|
1647 |
+
"문자 및/또는 숫자 및/또는 밑줄이 포함된 문자열을 지정하여 자신의 DB 접두사를 "
|
1648 |
+
"선택합니다. 예: xyz_"
|
1649 |
+
|
1650 |
+
# @ all-in-one-wp-security-and-firewall
|
1651 |
+
#: admin/wp-security-database-menu.php:188
|
1652 |
+
msgid "Change DB Prefix"
|
1653 |
+
msgstr "DB 접두사 변경"
|
1654 |
+
|
1655 |
+
# @ all-in-one-wp-security-and-firewall
|
1656 |
+
#: admin/wp-security-database-menu.php:209
|
1657 |
+
#: admin/wp-security-filesystem-menu.php:87
|
1658 |
+
msgid "Nonce check failed for manual DB backup operation!"
|
1659 |
+
msgstr "Nonce 확인 수동 DB 백업 작업에 대 한 실패!"
|
1660 |
+
|
1661 |
+
#: admin/wp-security-database-menu.php:226
|
1662 |
+
msgid ""
|
1663 |
+
"DB Backup was successfully completed! You will receive the backup file via "
|
1664 |
+
"email if you have enabled \"Send Backup File Via Email\", otherwise you can "
|
1665 |
+
"retrieve it via FTP from the following directory:"
|
1666 |
+
msgstr ""
|
1667 |
+
"DB 백업이 성공적으로 완료되었습니다! \"이메일을 통해 백업 파일 보내기\"를 활"
|
1668 |
+
"성화한 경우 이메일을 통해 백업 파일을 받게 되며, 그렇지 않으면 다음 디렉터리"
|
1669 |
+
"에서 FTP를 통해 검색할 수 있습니다."
|
1670 |
+
|
1671 |
+
#: admin/wp-security-database-menu.php:228
|
1672 |
+
msgid "Your DB Backup File location: "
|
1673 |
+
msgstr "DB 백업 파일 위치:"
|
1674 |
+
|
1675 |
+
# @ all-in-one-wp-security-and-firewall
|
1676 |
+
#: admin/wp-security-database-menu.php:235
|
1677 |
+
msgid "DB Backup failed. Please check the permissions of the backup directory."
|
1678 |
+
msgstr "DB 백업에 실패했습니다. 백업 디렉터리의 권한을 확인하십시오."
|
1679 |
+
|
1680 |
+
# @ all-in-one-wp-security-and-firewall
|
1681 |
+
#: admin/wp-security-database-menu.php:252
|
1682 |
+
#: admin/wp-security-filescan-menu.php:133
|
1683 |
+
msgid ""
|
1684 |
+
"You entered a non numeric value for the \"backup time interval\" field. It "
|
1685 |
+
"has been set to the default value."
|
1686 |
+
msgstr ""
|
1687 |
+
"\"백업 시간 간격\" 필드에 대한 비 숫자 값을 입력했습니다. 기본 값으로 설정되"
|
1688 |
+
"었습니다."
|
1689 |
+
|
1690 |
+
# @ all-in-one-wp-security-and-firewall
|
1691 |
+
#: admin/wp-security-database-menu.php:259
|
1692 |
+
msgid ""
|
1693 |
+
"You entered a non numeric value for the \"number of backup files to keep\" "
|
1694 |
+
"field. It has been set to the default value."
|
1695 |
+
msgstr ""
|
1696 |
+
"\"보관할 백업 파일 수\" 필드에 대한 비숫자 값을 입력했습니다. 기본 값으로 설"
|
1697 |
+
"정되었습니다."
|
1698 |
+
|
1699 |
+
# @ all-in-one-wp-security-and-firewall
|
1700 |
+
#: admin/wp-security-database-menu.php:266
|
1701 |
+
#: admin/wp-security-user-login-menu.php:118
|
1702 |
+
msgid ""
|
1703 |
+
"You have entered an incorrect email address format. It has been set to your "
|
1704 |
+
"WordPress admin email as default."
|
1705 |
+
msgstr ""
|
1706 |
+
"잘못된 이메일 주소 형식을 입력했습니다. 그것은 기본적으로 워드 프레스 관리자 "
|
1707 |
+
"이메일로 설정되었습니다."
|
1708 |
+
|
1709 |
+
# @ all-in-one-wp-security-and-firewall
|
1710 |
+
#: admin/wp-security-database-menu.php:299
|
1711 |
+
msgid "Manual Backup"
|
1712 |
+
msgstr "수동 백업"
|
1713 |
+
|
1714 |
+
# @ all-in-one-wp-security-and-firewall
|
1715 |
+
#: admin/wp-security-database-menu.php:304
|
1716 |
+
msgid "To create a new DB backup just click on the button below."
|
1717 |
+
msgstr "새 DB 백업을 만들려면 아래 버튼을 클릭하십시오."
|
1718 |
+
|
1719 |
+
# @ all-in-one-wp-security-and-firewall
|
1720 |
+
#: admin/wp-security-database-menu.php:306
|
1721 |
+
msgid "Create DB Backup Now"
|
1722 |
+
msgstr "지금 DB 백업 만들기"
|
1723 |
+
|
1724 |
+
# @ all-in-one-wp-security-and-firewall
|
1725 |
+
#: admin/wp-security-database-menu.php:310
|
1726 |
+
msgid "Automated Scheduled Backups"
|
1727 |
+
msgstr "자동 예약된 백업"
|
1728 |
+
|
1729 |
+
# @ all-in-one-wp-security-and-firewall
|
1730 |
+
#: admin/wp-security-database-menu.php:322
|
1731 |
+
msgid "Enable Automated Scheduled Backups"
|
1732 |
+
msgstr "자동 예약된 백업 사용"
|
1733 |
+
|
1734 |
+
# @ all-in-one-wp-security-and-firewall
|
1735 |
+
#: admin/wp-security-database-menu.php:325
|
1736 |
+
msgid ""
|
1737 |
+
"Check this if you want the system to automatically generate backups "
|
1738 |
+
"periodically based on the settings below"
|
1739 |
+
msgstr ""
|
1740 |
+
"아래 설정에 따라 시스템이 주기적으로 백업을 자동으로 생성하려는 경우 이 방법"
|
1741 |
+
"을 확인합니다."
|
1742 |
+
|
1743 |
+
# @ all-in-one-wp-security-and-firewall
|
1744 |
+
#: admin/wp-security-database-menu.php:329
|
1745 |
+
msgid "Backup Time Interval"
|
1746 |
+
msgstr "백업 시간 간격"
|
1747 |
+
|
1748 |
+
# @ all-in-one-wp-security-and-firewall
|
1749 |
+
#: admin/wp-security-database-menu.php:332
|
1750 |
+
#: admin/wp-security-filescan-menu.php:285
|
1751 |
+
msgid "Hours"
|
1752 |
+
msgstr "시간"
|
1753 |
+
|
1754 |
+
# @ all-in-one-wp-security-and-firewall
|
1755 |
+
#: admin/wp-security-database-menu.php:333
|
1756 |
+
#: admin/wp-security-filescan-menu.php:286
|
1757 |
+
msgid "Days"
|
1758 |
+
msgstr "일"
|
1759 |
+
|
1760 |
+
# @ all-in-one-wp-security-and-firewall
|
1761 |
+
#: admin/wp-security-database-menu.php:334
|
1762 |
+
#: admin/wp-security-filescan-menu.php:287
|
1763 |
+
msgid "Weeks"
|
1764 |
+
msgstr "주"
|
1765 |
+
|
1766 |
+
# @ all-in-one-wp-security-and-firewall
|
1767 |
+
#: admin/wp-security-database-menu.php:336
|
1768 |
+
msgid "Set the value for how often you would like an automated backup to occur"
|
1769 |
+
msgstr "자동화된 백업이 수행되도록 원하는 빈도에 대한 값을 설정합니다."
|
1770 |
+
|
1771 |
+
# @ all-in-one-wp-security-and-firewall
|
1772 |
+
#: admin/wp-security-database-menu.php:340
|
1773 |
+
msgid "Number of Backup Files To Keep"
|
1774 |
+
msgstr "보관할 백업 파일 수"
|
1775 |
+
|
1776 |
+
# @ all-in-one-wp-security-and-firewall
|
1777 |
+
#: admin/wp-security-database-menu.php:342
|
1778 |
+
msgid ""
|
1779 |
+
"Thie field allows you to choose the number of backup files you would like to "
|
1780 |
+
"keep in the backup directory"
|
1781 |
+
msgstr ""
|
1782 |
+
"Thie 필드를 사용하면 백업 디렉터리에 보관할 백업 파일 수를 선택할 수 있습니"
|
1783 |
+
"다."
|
1784 |
+
|
1785 |
+
# @ all-in-one-wp-security-and-firewall
|
1786 |
+
#: admin/wp-security-database-menu.php:346
|
1787 |
+
msgid "Send Backup File Via Email"
|
1788 |
+
msgstr "이메일을 통해 백업 파일 보내기"
|
1789 |
+
|
1790 |
+
# @ all-in-one-wp-security-and-firewall
|
1791 |
+
#: admin/wp-security-database-menu.php:349
|
1792 |
+
msgid ""
|
1793 |
+
"Check this if you want the system to email you the backup file after a DB "
|
1794 |
+
"backup has been performed"
|
1795 |
+
msgstr ""
|
1796 |
+
"DB 백업이 수행된 후 시스템이 백업 파일을 이메일로 보내려면 이 방법을 확인합니"
|
1797 |
+
"다."
|
1798 |
+
|
1799 |
+
# @ all-in-one-wp-security-and-firewall
|
1800 |
+
#: admin/wp-security-database-menu.php:351
|
1801 |
+
#: admin/wp-security-user-login-menu.php:262
|
1802 |
+
msgid "Enter an email address"
|
1803 |
+
msgstr "이메일 주소를 입력하십시오"
|
1804 |
+
|
1805 |
+
#: admin/wp-security-database-menu.php:382
|
1806 |
+
msgid "Error - Could not get tables or no tables found!"
|
1807 |
+
msgstr "오류 - 테이블을 얻을 수 없거나 테이블을 찾을 수 없습니다!"
|
1808 |
+
|
1809 |
+
# @ all-in-one-wp-security-and-firewall
|
1810 |
+
#: admin/wp-security-database-menu.php:386
|
1811 |
+
msgid "Starting DB prefix change operations....."
|
1812 |
+
msgstr "시작 DB 접두사 변경 작업....."
|
1813 |
+
|
1814 |
+
# @ all-in-one-wp-security-and-firewall
|
1815 |
+
#: admin/wp-security-database-menu.php:388
|
1816 |
+
#, php-format
|
1817 |
+
msgid ""
|
1818 |
+
"Your WordPress system has a total of %s tables and your new DB prefix will "
|
1819 |
+
"be: %s"
|
1820 |
+
msgstr ""
|
1821 |
+
|
1822 |
+
# @ all-in-one-wp-security-and-firewall
|
1823 |
+
#: admin/wp-security-database-menu.php:394 classes/wp-security-utility.php:279
|
1824 |
+
msgid ""
|
1825 |
+
"Failed to make a backup of the wp-config.php file. This operation will not "
|
1826 |
+
"go ahead."
|
1827 |
+
msgstr ""
|
1828 |
+
"wp-config.php 파일의 백업을 하지 못했습니다. 이 작업은 진행되지 않습니다."
|
1829 |
+
|
1830 |
+
# @ all-in-one-wp-security-and-firewall
|
1831 |
+
#: admin/wp-security-database-menu.php:398
|
1832 |
+
msgid "A backup copy of your wp-config.php file was created successfully!"
|
1833 |
+
msgstr "wp-config.php 파일의 백업 복사본이 성공적으로 만들어졌습니다!"
|
1834 |
+
|
1835 |
+
# @ all-in-one-wp-security-and-firewall
|
1836 |
+
#: admin/wp-security-database-menu.php:425
|
1837 |
+
#, php-format
|
1838 |
+
msgid "%s table name update failed"
|
1839 |
+
msgstr "%s 테이블 이름 업데이트 실패"
|
1840 |
+
|
1841 |
+
# @ all-in-one-wp-security-and-firewall
|
1842 |
+
#: admin/wp-security-database-menu.php:437
|
1843 |
+
#, php-format
|
1844 |
+
msgid "Please change the prefix manually for the above tables to: %s"
|
1845 |
+
msgstr "위의 테이블에 대해 수동으로 접두사를 변경하십시오: %s"
|
1846 |
+
|
1847 |
+
# @ all-in-one-wp-security-and-firewall
|
1848 |
+
#: admin/wp-security-database-menu.php:440
|
1849 |
+
#, php-format
|
1850 |
+
msgid "%s tables had their prefix updated successfully!"
|
1851 |
+
msgstr "%s 테이블은 접두사를 성공적으로 업데이트했습니다!"
|
1852 |
+
|
1853 |
+
# @ all-in-one-wp-security-and-firewall
|
1854 |
+
#: admin/wp-security-database-menu.php:459
|
1855 |
+
msgid "wp-config.php file was updated successfully!"
|
1856 |
+
msgstr "wp-config.php 파일이 성공적으로 업데이트되었습니다!"
|
1857 |
+
|
1858 |
+
# @ all-in-one-wp-security-and-firewall
|
1859 |
+
#: admin/wp-security-database-menu.php:462
|
1860 |
+
#, php-format
|
1861 |
+
msgid ""
|
1862 |
+
"The \"wp-config.php\" file was not able to be modified. Please modify this "
|
1863 |
+
"file manually using your favourite editor and search \n"
|
1864 |
+
" for variable \"$table_prefix\" and assign the following "
|
1865 |
+
"value to that variable: %s"
|
1866 |
+
msgstr ""
|
1867 |
+
"\"wp-config.php\" 파일을 수정할 수 없습니다. 즐겨찾기 편집기 및 검색을 사용하"
|
1868 |
+
"여 이 파일을 수동으로 수정하십시오. \n"
|
1869 |
+
" 변수 \"$table_접두사\"에 대해 다음 값을 해당 변수에 할당"
|
1870 |
+
"합니다: %s"
|
1871 |
+
|
1872 |
+
#: admin/wp-security-database-menu.php:474
|
1873 |
+
#: admin/wp-security-database-menu.php:493
|
1874 |
+
#, php-format
|
1875 |
+
msgid "Update of table %s failed: unable to change %s to %s"
|
1876 |
+
msgstr "테이블 %s 업데이트 실패: %s를 %s로 변경할 수 없음"
|
1877 |
+
|
1878 |
+
# @ all-in-one-wp-security-and-firewall
|
1879 |
+
#: admin/wp-security-database-menu.php:478
|
1880 |
+
msgid ""
|
1881 |
+
"The options table records which had references to the old DB prefix were "
|
1882 |
+
"updated successfully!"
|
1883 |
+
msgstr ""
|
1884 |
+
"이전 DB 접두사에 대한 참조가 있는 옵션 테이블 레코드가 성공적으로 업데이트되"
|
1885 |
+
"었습니다!"
|
1886 |
+
|
1887 |
+
#: admin/wp-security-database-menu.php:497
|
1888 |
+
#, php-format
|
1889 |
+
msgid ""
|
1890 |
+
"The %s table records which had references to the old DB prefix were updated "
|
1891 |
+
"successfully!"
|
1892 |
+
msgstr ""
|
1893 |
+
"이전 DB 접두사에 대한 참조가 있는 %s 테이블 레코드가 성공적으로 업데이트되었"
|
1894 |
+
"습니다!"
|
1895 |
+
|
1896 |
+
# @ all-in-one-wp-security-and-firewall
|
1897 |
+
#: admin/wp-security-database-menu.php:525
|
1898 |
+
#, php-format
|
1899 |
+
msgid ""
|
1900 |
+
"Error updating user_meta table where new meta_key = %s, old meta_key = %s "
|
1901 |
+
"and user_id = %s."
|
1902 |
+
msgstr ""
|
1903 |
+
"새 meta_key = %s, 이전 meta_key = %s 및 user_id = %s가 있는 user_meta 테이블"
|
1904 |
+
"을 업데이트하는 오류입니다."
|
1905 |
+
|
1906 |
+
# @ all-in-one-wp-security-and-firewall
|
1907 |
+
#: admin/wp-security-database-menu.php:530
|
1908 |
+
msgid ""
|
1909 |
+
"The usermeta table records which had references to the old DB prefix were "
|
1910 |
+
"updated successfully!"
|
1911 |
+
msgstr ""
|
1912 |
+
"이전 DB 접두사에 대한 참조가 있는 사용자메타 테이블 레코드가 성공적으로 업데"
|
1913 |
+
"이트되었습니다!"
|
1914 |
+
|
1915 |
+
# @ all-in-one-wp-security-and-firewall
|
1916 |
+
#: admin/wp-security-database-menu.php:532
|
1917 |
+
msgid "DB prefix change tasks have been completed."
|
1918 |
+
msgstr "DB 접두사 변경 작업이 완료되었습니다."
|
1919 |
+
|
1920 |
+
#: admin/wp-security-database-menu.php:575
|
1921 |
+
msgid "Checking for MySQL tables of type \"view\"....."
|
1922 |
+
msgstr "유형 \"보기\"의 MySQL 테이블을 확인합니다.."
|
1923 |
+
|
1924 |
+
#: admin/wp-security-database-menu.php:592
|
1925 |
+
#, php-format
|
1926 |
+
msgid "Update of the following MySQL view definition failed: %s"
|
1927 |
+
msgstr "다음 MySQL 보기 정의 업데이트 실패: %s"
|
1928 |
+
|
1929 |
+
#: admin/wp-security-database-menu.php:599
|
1930 |
+
#, php-format
|
1931 |
+
msgid "%s view definitions were updated successfully!"
|
1932 |
+
msgstr "%s 보기 정의가 성공적으로 업데이트되었습니다!"
|
1933 |
+
|
1934 |
+
#: admin/wp-security-filescan-menu.php:23
|
1935 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:108
|
1936 |
+
msgid "File Change Detection"
|
1937 |
+
msgstr "파일 변경 감지"
|
1938 |
+
|
1939 |
+
#: admin/wp-security-filescan-menu.php:24
|
1940 |
+
msgid "Malware Scan"
|
1941 |
+
msgstr "악성 코드 검사"
|
1942 |
+
|
1943 |
+
#: admin/wp-security-filescan-menu.php:93
|
1944 |
+
msgid "There have been no file changes since the last scan."
|
1945 |
+
msgstr "마지막 검사 이후 파일 변경 사항이 없습니다."
|
1946 |
+
|
1947 |
+
# @ all-in-one-wp-security-and-firewall
|
1948 |
+
#: admin/wp-security-filescan-menu.php:103
|
1949 |
+
msgid "Nonce check failed for manual file change detection scan operation!"
|
1950 |
+
msgstr "Nonce 확인 수동 파일 변경 감지 검사 작업에 대 한 실패!"
|
1951 |
+
|
1952 |
+
# @ all-in-one-wp-security-and-firewall
|
1953 |
+
#: admin/wp-security-filescan-menu.php:110
|
1954 |
+
msgid ""
|
1955 |
+
"The plugin has detected that this is your first file change detection scan. "
|
1956 |
+
"The file details from this scan will be used to detect file changes for "
|
1957 |
+
"future scans!"
|
1958 |
+
msgstr ""
|
1959 |
+
"플러그인이 첫 번째 파일 변경 감지 검사임을 감지했습니다. 이 검사의 파일 세부 "
|
1960 |
+
"정보는 향후 검사에 대한 파일 변경 내용을 감지하는 데 사용됩니다!"
|
1961 |
+
|
1962 |
+
#: admin/wp-security-filescan-menu.php:112
|
1963 |
+
msgid "Scan Complete - There were no file changes detected!"
|
1964 |
+
msgstr "검사 완료 - 파일 변경 사항이 검색되지 않았습니다!"
|
1965 |
+
|
1966 |
+
#: admin/wp-security-filescan-menu.php:167
|
1967 |
+
msgid ""
|
1968 |
+
"The following address was removed because it is not a valid email address: "
|
1969 |
+
msgstr "유효한 이메일 주소가 아니므로 다음 주소가 삭제되었습니다."
|
1970 |
+
|
1971 |
+
# @ all-in-one-wp-security-and-firewall
|
1972 |
+
#: admin/wp-security-filescan-menu.php:207
|
1973 |
+
msgid ""
|
1974 |
+
"NEW SCAN COMPLETED: The plugin has detected that you have made changes to "
|
1975 |
+
"the \"File Types To Ignore\" or \"Files To Ignore\" fields.\n"
|
1976 |
+
" In order to ensure that future scan results are "
|
1977 |
+
"accurate, the old scan data has been refreshed."
|
1978 |
+
msgstr ""
|
1979 |
+
"새로운 스캔 완료: 플러그인은 \"무시할 파일 유형\" 또는 \"무시할 파일\" 필드"
|
1980 |
+
"를 변경한 것을 감지했습니다.\n"
|
1981 |
+
" 향후 검사 결과가 정확한지 확인하기 위해 이전 검사 데이터"
|
1982 |
+
"가 새로 고쳐졌습니다."
|
1983 |
+
|
1984 |
+
# @ all-in-one-wp-security-and-firewall
|
1985 |
+
#: admin/wp-security-filescan-menu.php:217
|
1986 |
+
msgid ""
|
1987 |
+
"All In One WP Security & Firewall has detected that there was a change in "
|
1988 |
+
"your host's files."
|
1989 |
+
msgstr ""
|
1990 |
+
"모든 하나의 WP 보안 및 방화벽은 호스트의 파일에 변경이 있음을 감지했습니다."
|
1991 |
+
|
1992 |
+
# @ all-in-one-wp-security-and-firewall
|
1993 |
+
#: admin/wp-security-filescan-menu.php:219
|
1994 |
+
msgid "View Scan Details & Clear This Message"
|
1995 |
+
msgstr "스캔 세부 정보 보기 및 이 메시지 지우기"
|
1996 |
+
|
1997 |
+
# @ all-in-one-wp-security-and-firewall
|
1998 |
+
#: admin/wp-security-filescan-menu.php:228
|
1999 |
+
msgid ""
|
2000 |
+
"If given an opportunity hackers can insert their code or files into your "
|
2001 |
+
"system which they can then use to carry out malicious acts on your site."
|
2002 |
+
msgstr ""
|
2003 |
+
"기회가 주어진 경우 해커는 자신의 코드 또는 파일을 시스템에 삽입할 수 있으며, "
|
2004 |
+
"이 파일을 시스템에 삽입하여 사이트에서 악의적인 행위를 수행하는 데 사용할 수 "
|
2005 |
+
"있습니다."
|
2006 |
+
|
2007 |
+
# @ all-in-one-wp-security-and-firewall
|
2008 |
+
#: admin/wp-security-filescan-menu.php:229
|
2009 |
+
msgid ""
|
2010 |
+
"Being informed of any changes in your files can be a good way to quickly "
|
2011 |
+
"prevent a hacker from causing damage to your website."
|
2012 |
+
msgstr ""
|
2013 |
+
"파일의 변경 사항을 알리는 것은 해커가 웹 사이트에 손상을 입히는 것을 신속하"
|
2014 |
+
"게 방지하는 좋은 방법이 될 수 있습니다."
|
2015 |
+
|
2016 |
+
# @ all-in-one-wp-security-and-firewall
|
2017 |
+
#: admin/wp-security-filescan-menu.php:230
|
2018 |
+
msgid ""
|
2019 |
+
"In general, WordPress core and plugin files and file types such as \".php\" "
|
2020 |
+
"or \".js\" should not change often and when they do, it is important that "
|
2021 |
+
"you are made aware when a change occurs and which file was affected."
|
2022 |
+
msgstr ""
|
2023 |
+
"일반적으로 워드 프레스 코어 및 플러그인 파일 및 \".php\" 또는 \".js\"와 같은 "
|
2024 |
+
"파일 유형은 자주 변경되지 않아야하며, 그렇게 할 때 변경이 발생하고 어떤 파일"
|
2025 |
+
"이 영향을 받은 지 알 수 있어야 합니다."
|
2026 |
+
|
2027 |
+
# @ all-in-one-wp-security-and-firewall
|
2028 |
+
#: admin/wp-security-filescan-menu.php:231
|
2029 |
+
msgid ""
|
2030 |
+
"The \"File Change Detection Feature\" will notify you of any file change "
|
2031 |
+
"which occurs on your system, including the addition and deletion of files by "
|
2032 |
+
"performing a regular automated or manual scan of your system's files."
|
2033 |
+
msgstr ""
|
2034 |
+
"\"파일 변경 감지 기능\"은 시스템 파일의 정기적인 자동 또는 수동 스캔을 수행하"
|
2035 |
+
"여 파일의 추가 및 삭제를 포함하여 시스템에서 발생하는 파일 변경 사항을 알려줍"
|
2036 |
+
"니다."
|
2037 |
+
|
2038 |
+
# @ all-in-one-wp-security-and-firewall
|
2039 |
+
#: admin/wp-security-filescan-menu.php:232
|
2040 |
+
msgid ""
|
2041 |
+
"This feature also allows you to exclude certain files or folders from the "
|
2042 |
+
"scan in cases where you know that they change often as part of their normal "
|
2043 |
+
"operation. (For example log files and certain caching plugin files may "
|
2044 |
+
"change often and hence you may choose to exclude such files from the file "
|
2045 |
+
"change detection scan)"
|
2046 |
+
msgstr ""
|
2047 |
+
"또한 이 기능을 사용하면 정규 작업의 일부로 자주 변경되는 경우 특정 파일 이나 "
|
2048 |
+
"폴더를 검색에서 제외할 수 있습니다. (예를 들어 로그 파일 및 특정 캐싱 플러그"
|
2049 |
+
"인 파일은 자주 변경될 수 있으므로 파일 변경 검색에서 이러한 파일을 제외하도"
|
2050 |
+
"록 선택할 수 있습니다.)"
|
2051 |
+
|
2052 |
+
# @ all-in-one-wp-security-and-firewall
|
2053 |
+
#: admin/wp-security-filescan-menu.php:237
|
2054 |
+
msgid "Manual File Change Detection Scan"
|
2055 |
+
msgstr "수동 파일 변경 감지 스캔"
|
2056 |
+
|
2057 |
+
# @ all-in-one-wp-security-and-firewall
|
2058 |
+
#: admin/wp-security-filescan-menu.php:243
|
2059 |
+
msgid ""
|
2060 |
+
"To perform a manual file change detection scan click on the button below."
|
2061 |
+
msgstr "수동 파일 변경 검색 스캔을 수행하려면 아래 버튼을 클릭하십시오."
|
2062 |
+
|
2063 |
+
# @ all-in-one-wp-security-and-firewall
|
2064 |
+
#: admin/wp-security-filescan-menu.php:246
|
2065 |
+
msgid "Perform Scan Now"
|
2066 |
+
msgstr "지금 검사 수행"
|
2067 |
+
|
2068 |
+
#: admin/wp-security-filescan-menu.php:250
|
2069 |
+
msgid "View Last Saved File Change Results"
|
2070 |
+
msgstr "마지막으로 저장된 파일 변경 결과 보기"
|
2071 |
+
|
2072 |
+
#: admin/wp-security-filescan-menu.php:256
|
2073 |
+
msgid ""
|
2074 |
+
"Click the button below to view the saved file change results from the last "
|
2075 |
+
"scan."
|
2076 |
+
msgstr "아래 버튼을 클릭하여 마지막 검사에서 저장된 파일 변경 결과를 봅니다."
|
2077 |
+
|
2078 |
+
#: admin/wp-security-filescan-menu.php:259
|
2079 |
+
msgid "View Last File Change"
|
2080 |
+
msgstr "마지막 파일 변경 보기"
|
2081 |
+
|
2082 |
+
#: admin/wp-security-filescan-menu.php:263
|
2083 |
+
msgid "File Change Detection Settings"
|
2084 |
+
msgstr "파일 변경 검색 설정"
|
2085 |
+
|
2086 |
+
# @ all-in-one-wp-security-and-firewall
|
2087 |
+
#: admin/wp-security-filescan-menu.php:275
|
2088 |
+
msgid "Enable Automated File Change Detection Scan"
|
2089 |
+
msgstr "자동 파일 변경 감지 검색 활성화"
|
2090 |
+
|
2091 |
+
# @ all-in-one-wp-security-and-firewall
|
2092 |
+
#: admin/wp-security-filescan-menu.php:278
|
2093 |
+
msgid ""
|
2094 |
+
"Check this if you want the system to automatically/periodically scan your "
|
2095 |
+
"files to check for file changes based on the settings below"
|
2096 |
+
msgstr ""
|
2097 |
+
"시스템이 파일을 자동으로/주기적으로 스캔하여 아래 설정에 따라 파일 변경 사항"
|
2098 |
+
"을 확인하려면 이 방법을 확인합니다."
|
2099 |
+
|
2100 |
+
# @ all-in-one-wp-security-and-firewall
|
2101 |
+
#: admin/wp-security-filescan-menu.php:282
|
2102 |
+
msgid "Scan Time Interval"
|
2103 |
+
msgstr "스캔 시간 간격"
|
2104 |
+
|
2105 |
+
# @ all-in-one-wp-security-and-firewall
|
2106 |
+
#: admin/wp-security-filescan-menu.php:289
|
2107 |
+
msgid "Set the value for how often you would like a scan to occur"
|
2108 |
+
msgstr "검사를 수행하려는 빈도에 대한 값을 설정합니다."
|
2109 |
+
|
2110 |
+
# @ all-in-one-wp-security-and-firewall
|
2111 |
+
#: admin/wp-security-filescan-menu.php:293
|
2112 |
+
msgid "File Types To Ignore"
|
2113 |
+
msgstr "무시할 파일 유형"
|
2114 |
+
|
2115 |
+
# @ all-in-one-wp-security-and-firewall
|
2116 |
+
#: admin/wp-security-filescan-menu.php:296
|
2117 |
+
msgid ""
|
2118 |
+
"Enter each file type or extension on a new line which you wish to exclude "
|
2119 |
+
"from the file change detection scan."
|
2120 |
+
msgstr ""
|
2121 |
+
"파일 변경 검색검색에서 제외하려는 새 줄에 각 파일 유형 또는 확장을 입력합니"
|
2122 |
+
"다."
|
2123 |
+
|
2124 |
+
# @ all-in-one-wp-security-and-firewall
|
2125 |
+
#: admin/wp-security-filescan-menu.php:300
|
2126 |
+
msgid ""
|
2127 |
+
"You can exclude file types from the scan which would not normally pose any "
|
2128 |
+
"security threat if they were changed. These can include things such as image "
|
2129 |
+
"files."
|
2130 |
+
msgstr ""
|
2131 |
+
"일반적으로 보안 위협이 변경되지 않는 검색에서 파일 형식을 제외할 수 있습니"
|
2132 |
+
"다. 여기에는 이미지 파일과 같은 것들이 포함될 수 있습니다."
|
2133 |
+
|
2134 |
+
# @ all-in-one-wp-security-and-firewall
|
2135 |
+
#: admin/wp-security-filescan-menu.php:301
|
2136 |
+
msgid ""
|
2137 |
+
"Example: If you want the scanner to ignore files of type jpg, png, and bmp, "
|
2138 |
+
"then you would enter the following:"
|
2139 |
+
msgstr ""
|
2140 |
+
"예: 스캐너가 jpg, png 및 bmp 유형 의 파일을 무시하려면 다음을 입력합니다."
|
2141 |
+
|
2142 |
+
# @ all-in-one-wp-security-and-firewall
|
2143 |
+
#: admin/wp-security-filescan-menu.php:302
|
2144 |
+
msgid "jpg"
|
2145 |
+
msgstr ""
|
2146 |
+
|
2147 |
+
# @ all-in-one-wp-security-and-firewall
|
2148 |
+
#: admin/wp-security-filescan-menu.php:303
|
2149 |
+
msgid "png"
|
2150 |
+
msgstr ""
|
2151 |
+
|
2152 |
+
# @ all-in-one-wp-security-and-firewall
|
2153 |
+
#: admin/wp-security-filescan-menu.php:304
|
2154 |
+
msgid "bmp"
|
2155 |
+
msgstr ""
|
2156 |
+
|
2157 |
+
# @ all-in-one-wp-security-and-firewall
|
2158 |
+
#: admin/wp-security-filescan-menu.php:310
|
2159 |
+
msgid "Files/Directories To Ignore"
|
2160 |
+
msgstr "무시할 파일/디렉터리"
|
2161 |
+
|
2162 |
+
# @ all-in-one-wp-security-and-firewall
|
2163 |
+
#: admin/wp-security-filescan-menu.php:313
|
2164 |
+
msgid ""
|
2165 |
+
"Enter each file or directory on a new line which you wish to exclude from "
|
2166 |
+
"the file change detection scan."
|
2167 |
+
msgstr ""
|
2168 |
+
"파일 변경 검색 검색에서 제외하려는 새 줄에 각 파일 또는 디렉터리를 입력합니"
|
2169 |
+
"다."
|
2170 |
+
|
2171 |
+
# @ all-in-one-wp-security-and-firewall
|
2172 |
+
#: admin/wp-security-filescan-menu.php:317
|
2173 |
+
msgid ""
|
2174 |
+
"You can exclude specific files/directories from the scan which would not "
|
2175 |
+
"normally pose any security threat if they were changed. These can include "
|
2176 |
+
"things such as log files."
|
2177 |
+
msgstr ""
|
2178 |
+
"특정 파일/디렉터리가 변경된 경우 일반적으로 보안 위협을 제기하지 않는 검색에"
|
2179 |
+
"서 제외할 수 있습니다. 여기에는 로그 파일과 같은 것들이 포함될 수 있습니다."
|
2180 |
+
|
2181 |
+
# @ all-in-one-wp-security-and-firewall
|
2182 |
+
#: admin/wp-security-filescan-menu.php:318
|
2183 |
+
msgid ""
|
2184 |
+
"Example: If you want the scanner to ignore certain files in different "
|
2185 |
+
"directories or whole directories, then you would enter the following:"
|
2186 |
+
msgstr ""
|
2187 |
+
"예: 스캐너가 다른 디렉터리 또는 전체 디렉터리의 특정 파일을 무시하려면 다음"
|
2188 |
+
"을 입력합니다."
|
2189 |
+
|
2190 |
+
# @ all-in-one-wp-security-and-firewall
|
2191 |
+
#: admin/wp-security-filescan-menu.php:319
|
2192 |
+
msgid "cache/config/master.php"
|
2193 |
+
msgstr ""
|
2194 |
+
|
2195 |
+
# @ all-in-one-wp-security-and-firewall
|
2196 |
+
#: admin/wp-security-filescan-menu.php:320
|
2197 |
+
msgid "somedirectory"
|
2198 |
+
msgstr "일부 디렉터리"
|
2199 |
+
|
2200 |
+
# @ all-in-one-wp-security-and-firewall
|
2201 |
+
#: admin/wp-security-filescan-menu.php:326
|
2202 |
+
msgid "Send Email When Change Detected"
|
2203 |
+
msgstr "변경이 감지되면 이메일 보내기"
|
2204 |
+
|
2205 |
+
# @ all-in-one-wp-security-and-firewall
|
2206 |
+
#: admin/wp-security-filescan-menu.php:329
|
2207 |
+
msgid ""
|
2208 |
+
"Check this if you want the system to email you if a file change was detected"
|
2209 |
+
msgstr ""
|
2210 |
+
"파일 변경이 감지된 경우 시스템에서 이메일을 보내려면 이 방법을 확인합니다."
|
2211 |
+
|
2212 |
+
#: admin/wp-security-filescan-menu.php:333
|
2213 |
+
msgid "Enter one or more email addresses on a new line."
|
2214 |
+
msgstr "새 줄에 하나 이상의 이메일 주소를 입력합니다."
|
2215 |
+
|
2216 |
+
#: admin/wp-security-filescan-menu.php:349
|
2217 |
+
msgid "What is Malware?"
|
2218 |
+
msgstr "악성 코드란 무엇입니까?"
|
2219 |
+
|
2220 |
+
#: admin/wp-security-filescan-menu.php:350
|
2221 |
+
msgid ""
|
2222 |
+
"The word Malware stands for Malicious Software. It can consist of things "
|
2223 |
+
"like trojan horses, adware, worms, spyware and any other undesirable code "
|
2224 |
+
"which a hacker will try to inject into your website."
|
2225 |
+
msgstr ""
|
2226 |
+
"악성 코드라는 단어는 악성 소프트웨어를 의미합니다. 그것은 트로이 목마 같은 "
|
2227 |
+
"것 들 구성될 수 있습니다., 애드웨어, 웜, 스파이웨어 및 해커 웹사이트에 주입 "
|
2228 |
+
"하려고 합니다 다른 바람직하지 않은 코드."
|
2229 |
+
|
2230 |
+
#: admin/wp-security-filescan-menu.php:351
|
2231 |
+
msgid ""
|
2232 |
+
"Often when malware code has been inserted into your site you will normally "
|
2233 |
+
"not notice anything out of the ordinary based on appearances, but it can "
|
2234 |
+
"have a dramatic effect on your site's search ranking."
|
2235 |
+
msgstr ""
|
2236 |
+
"종종 악성 코드는 사이트에 삽입 된 경우 당신은 일반적으로 외모에 따라 일반 아"
|
2237 |
+
"무것도 통지하지 않습니다, 하지만 사이트의 검색 순위에 극적인 영향을 미칠 수 "
|
2238 |
+
"있습니다."
|
2239 |
+
|
2240 |
+
#: admin/wp-security-filescan-menu.php:352
|
2241 |
+
msgid ""
|
2242 |
+
"This is because the bots and spiders from search engines such as Google have "
|
2243 |
+
"the capability to detect malware when they are indexing the pages on your "
|
2244 |
+
"site, and consequently they can blacklist your website which will in turn "
|
2245 |
+
"affect your search rankings."
|
2246 |
+
msgstr ""
|
2247 |
+
"Google과 같은 검색 엔진의 봇과 거미는 사이트의 페이지를 인덱싱할 때 맬웨어를 "
|
2248 |
+
"탐지할 수 있으며, 따라서 웹 사이트를 블랙리스트에 표시하여 검색 순위에 영향"
|
2249 |
+
"을 줄 수 있기 때문입니다."
|
2250 |
+
|
2251 |
+
#: admin/wp-security-filescan-menu.php:356
|
2252 |
+
msgid "Scanning For Malware"
|
2253 |
+
msgstr "악성 코드 검사중"
|
2254 |
+
|
2255 |
+
#: admin/wp-security-filescan-menu.php:357
|
2256 |
+
msgid ""
|
2257 |
+
"Due to the constantly changing and complex nature of Malware, scanning for "
|
2258 |
+
"such things using a standalone plugin will not work reliably. This is "
|
2259 |
+
"something best done via an external scan of your site regularly."
|
2260 |
+
msgstr ""
|
2261 |
+
"악성 코드는 끊임없이 변화하고 복잡한 특성으로 인해 독립 형 플러그인을 사용하"
|
2262 |
+
"여 이러한 것들을 검사하는 것은 안정적으로 작동하지 않습니다. 이것은 정기적으"
|
2263 |
+
"로 사이트의 외부 검사를 통해 수행 하는 것이 가장 좋습니다."
|
2264 |
+
|
2265 |
+
#: admin/wp-security-filescan-menu.php:358
|
2266 |
+
msgid ""
|
2267 |
+
"This is why we have created an easy-to-use scanning service which is hosted "
|
2268 |
+
"off our own server which will scan your site for malware once every day and "
|
2269 |
+
"notify you if it finds anything."
|
2270 |
+
msgstr ""
|
2271 |
+
"이 때문에 우리는 매일 한 번 악성 코드에 대한 사이트를 스캔하고 아무것도 발견"
|
2272 |
+
"하면 알려 우리의 자신의 서버에서 호스팅되는 사용하기 쉬운 스캔 서비스를 만들"
|
2273 |
+
"었습니다."
|
2274 |
+
|
2275 |
+
#: admin/wp-security-filescan-menu.php:359
|
2276 |
+
msgid "When you sign up for this service you will get the following:"
|
2277 |
+
msgstr "이 서비스에 가입하면 다음을 얻을 수 있습니다."
|
2278 |
+
|
2279 |
+
#: admin/wp-security-filescan-menu.php:361
|
2280 |
+
msgid "Automatic Daily Scan of 1 Website"
|
2281 |
+
msgstr "1 웹 사이트의 자동 일일 검사"
|
2282 |
+
|
2283 |
+
#: admin/wp-security-filescan-menu.php:362
|
2284 |
+
msgid "Automatic Malware & Blacklist Monitoring"
|
2285 |
+
msgstr "자동 악성 코드 및 블랙리스트 모니터링"
|
2286 |
+
|
2287 |
+
#: admin/wp-security-filescan-menu.php:363
|
2288 |
+
msgid "Automatic Email Alerting"
|
2289 |
+
msgstr "자동 이메일 경고"
|
2290 |
+
|
2291 |
+
#: admin/wp-security-filescan-menu.php:364
|
2292 |
+
msgid "Site uptime monitoring"
|
2293 |
+
msgstr "사이트 가동 시간 모니터링"
|
2294 |
+
|
2295 |
+
#: admin/wp-security-filescan-menu.php:365
|
2296 |
+
msgid "Site response time monitoring"
|
2297 |
+
msgstr "현장 대응 시간 모니터링"
|
2298 |
+
|
2299 |
+
#: admin/wp-security-filescan-menu.php:366
|
2300 |
+
msgid "We provide advice for malware cleanup"
|
2301 |
+
msgstr "우리는 악성 코드 정리에 대한 조언을 제공합니다"
|
2302 |
+
|
2303 |
+
#: admin/wp-security-filescan-menu.php:367
|
2304 |
+
msgid "Blacklist Removal"
|
2305 |
+
msgstr "블랙리스트 제거"
|
2306 |
+
|
2307 |
+
#: admin/wp-security-filescan-menu.php:368
|
2308 |
+
msgid "No Contract (Cancel Anytime)"
|
2309 |
+
msgstr ""
|
2310 |
+
|
2311 |
+
#: admin/wp-security-filescan-menu.php:370
|
2312 |
+
#, php-format
|
2313 |
+
msgid "To learn more please %s."
|
2314 |
+
msgstr "자세한 내용은 %s를 참조하십시오."
|
2315 |
+
|
2316 |
+
# @ all-in-one-wp-security-and-firewall
|
2317 |
+
#: admin/wp-security-filescan-menu.php:390
|
2318 |
+
msgid "Latest File Change Scan Results"
|
2319 |
+
msgstr "최신 파일 변경 검사 결과"
|
2320 |
+
|
2321 |
+
# @ all-in-one-wp-security-and-firewall
|
2322 |
+
#: admin/wp-security-filescan-menu.php:399
|
2323 |
+
msgid "The following files were added to your host."
|
2324 |
+
msgstr "호스트에 다음 파일이 추가되었습니다."
|
2325 |
+
|
2326 |
+
# @ all-in-one-wp-security-and-firewall
|
2327 |
+
#: admin/wp-security-filescan-menu.php:402
|
2328 |
+
#: admin/wp-security-filescan-menu.php:423
|
2329 |
+
#: admin/wp-security-filescan-menu.php:447
|
2330 |
+
#: admin/wp-security-settings-menu.php:27
|
2331 |
+
#: admin/wp-security-settings-menu.php:28
|
2332 |
+
msgid "File"
|
2333 |
+
msgstr ""
|
2334 |
+
|
2335 |
+
# @ all-in-one-wp-security-and-firewall
|
2336 |
+
#: admin/wp-security-filescan-menu.php:403
|
2337 |
+
#: admin/wp-security-filescan-menu.php:424
|
2338 |
+
#: admin/wp-security-filescan-menu.php:448
|
2339 |
+
msgid "File Size"
|
2340 |
+
msgstr ""
|
2341 |
+
|
2342 |
+
# @ all-in-one-wp-security-and-firewall
|
2343 |
+
#: admin/wp-security-filescan-menu.php:404
|
2344 |
+
#: admin/wp-security-filescan-menu.php:425
|
2345 |
+
#: admin/wp-security-filescan-menu.php:449
|
2346 |
+
msgid "File Modified"
|
2347 |
+
msgstr ""
|
2348 |
+
|
2349 |
+
# @ all-in-one-wp-security-and-firewall
|
2350 |
+
#: admin/wp-security-filescan-menu.php:420
|
2351 |
+
msgid "The following files were removed from your host."
|
2352 |
+
msgstr ""
|
2353 |
+
|
2354 |
+
# @ all-in-one-wp-security-and-firewall
|
2355 |
+
#: admin/wp-security-filescan-menu.php:444
|
2356 |
+
msgid "The following files were changed on your host."
|
2357 |
+
msgstr ""
|
2358 |
+
|
2359 |
+
#: admin/wp-security-filesystem-menu.php:26
|
2360 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:67
|
2361 |
+
msgid "File Permissions"
|
2362 |
+
msgstr "파일 사용 권한"
|
2363 |
+
|
2364 |
+
#: admin/wp-security-filesystem-menu.php:27
|
2365 |
+
msgid "PHP File Editing"
|
2366 |
+
msgstr "PHP 파일 편집"
|
2367 |
+
|
2368 |
+
#: admin/wp-security-filesystem-menu.php:28
|
2369 |
+
msgid "WP File Access"
|
2370 |
+
msgstr "WP 파일 액세스"
|
2371 |
+
|
2372 |
+
#: admin/wp-security-filesystem-menu.php:29
|
2373 |
+
msgid "Host System Logs"
|
2374 |
+
msgstr "호스트 시스템 로그"
|
2375 |
+
|
2376 |
+
# @ all-in-one-wp-security-and-firewall
|
2377 |
+
#: admin/wp-security-filesystem-menu.php:97
|
2378 |
+
#, php-format
|
2379 |
+
msgid "The permissions for %s were succesfully changed to %s"
|
2380 |
+
msgstr "%s에 대한 사용 권한은 %s로 성공적으로 변경되었습니다."
|
2381 |
+
|
2382 |
+
# @ all-in-one-wp-security-and-firewall
|
2383 |
+
#: admin/wp-security-filesystem-menu.php:101
|
2384 |
+
#, php-format
|
2385 |
+
msgid "Unable to change permissions for %s!"
|
2386 |
+
msgstr "%s에 대한 권한을 변경할 수 없습니다!"
|
2387 |
+
|
2388 |
+
# @ all-in-one-wp-security-and-firewall
|
2389 |
+
#: admin/wp-security-filesystem-menu.php:107
|
2390 |
+
msgid "File Permissions Scan"
|
2391 |
+
msgstr "파일 권한 검사"
|
2392 |
+
|
2393 |
+
# @ all-in-one-wp-security-and-firewall
|
2394 |
+
#: admin/wp-security-filesystem-menu.php:110
|
2395 |
+
msgid ""
|
2396 |
+
"Your WordPress file and folder permission settings govern the accessability "
|
2397 |
+
"and read/write privileges of the files and folders which make up your WP "
|
2398 |
+
"installation."
|
2399 |
+
msgstr ""
|
2400 |
+
"워드 프레스 파일 및 폴더 권한 설정은 액세스 가능성을 제어하고 WP 설치를 구성"
|
2401 |
+
"하는 파일 및 폴더의 권한을 읽고 작성합니다."
|
2402 |
+
|
2403 |
+
# @ all-in-one-wp-security-and-firewall
|
2404 |
+
#: admin/wp-security-filesystem-menu.php:111
|
2405 |
+
msgid ""
|
2406 |
+
"Your WP installation already comes with reasonably secure file permission "
|
2407 |
+
"settings for the filesystem."
|
2408 |
+
msgstr ""
|
2409 |
+
"WP 설치에는 파일 시스템에 대한 합리적으로 안전한 파일 권한 설정이 이미 함께 "
|
2410 |
+
"제공됩니다."
|
2411 |
+
|
2412 |
+
# @ all-in-one-wp-security-and-firewall
|
2413 |
+
#: admin/wp-security-filesystem-menu.php:112
|
2414 |
+
msgid ""
|
2415 |
+
"However, sometimes people or other plugins modify the various permission "
|
2416 |
+
"settings of certain core WP folders or files such that they end up making "
|
2417 |
+
"their site less secure because they chose the wrong permission values."
|
2418 |
+
msgstr ""
|
2419 |
+
"그러나 때로는 사람 또는 다른 플러그인이 잘못된 권한 값을 선택했기 때문에 사이"
|
2420 |
+
"트를 덜 안전하게 만들 수 있도록 특정 핵심 WP 폴더 또는 파일의 다양한 권한 설"
|
2421 |
+
"정을 수정합니다."
|
2422 |
+
|
2423 |
+
# @ all-in-one-wp-security-and-firewall
|
2424 |
+
#: admin/wp-security-filesystem-menu.php:113
|
2425 |
+
msgid ""
|
2426 |
+
"This feature will scan the critical WP core folders and files and will "
|
2427 |
+
"highlight any permission settings which are insecure."
|
2428 |
+
msgstr ""
|
2429 |
+
"이 기능은 중요한 WP 핵심 폴더와 파일을 스캔하고 안전하지 않은 모든 권한 설정"
|
2430 |
+
"을 강조 표시합니다."
|
2431 |
+
|
2432 |
+
# @ all-in-one-wp-security-and-firewall
|
2433 |
+
#: admin/wp-security-filesystem-menu.php:119
|
2434 |
+
msgid "WP Directory and File Permissions Scan Results"
|
2435 |
+
msgstr ""
|
2436 |
+
|
2437 |
+
# @ all-in-one-wp-security-and-firewall
|
2438 |
+
#: admin/wp-security-filesystem-menu.php:132
|
2439 |
+
#: admin/wp-security-filesystem-menu.php:151
|
2440 |
+
msgid "File/Folder"
|
2441 |
+
msgstr ""
|
2442 |
+
|
2443 |
+
# @ all-in-one-wp-security-and-firewall
|
2444 |
+
#: admin/wp-security-filesystem-menu.php:133
|
2445 |
+
#: admin/wp-security-filesystem-menu.php:152
|
2446 |
+
msgid "Current Permissions"
|
2447 |
+
msgstr ""
|
2448 |
+
|
2449 |
+
# @ all-in-one-wp-security-and-firewall
|
2450 |
+
#: admin/wp-security-filesystem-menu.php:134
|
2451 |
+
#: admin/wp-security-filesystem-menu.php:153
|
2452 |
+
msgid "Recommended Permissions"
|
2453 |
+
msgstr ""
|
2454 |
+
|
2455 |
+
# @ all-in-one-wp-security-and-firewall
|
2456 |
+
#: admin/wp-security-filesystem-menu.php:135
|
2457 |
+
#: admin/wp-security-filesystem-menu.php:154
|
2458 |
+
msgid "Recommended Action"
|
2459 |
+
msgstr ""
|
2460 |
+
|
2461 |
+
# @ all-in-one-wp-security-and-firewall
|
2462 |
+
#: admin/wp-security-filesystem-menu.php:192
|
2463 |
+
msgid "Your PHP file editing settings were saved successfully."
|
2464 |
+
msgstr ""
|
2465 |
+
|
2466 |
+
# @ all-in-one-wp-security-and-firewall
|
2467 |
+
#: admin/wp-security-filesystem-menu.php:196
|
2468 |
+
msgid ""
|
2469 |
+
"Operation failed! Unable to modify or make a backup of wp-config.php file!"
|
2470 |
+
msgstr ""
|
2471 |
+
|
2472 |
+
# @ all-in-one-wp-security-and-firewall
|
2473 |
+
#: admin/wp-security-filesystem-menu.php:209
|
2474 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:69
|
2475 |
+
msgid "File Editing"
|
2476 |
+
msgstr ""
|
2477 |
+
|
2478 |
+
# @ all-in-one-wp-security-and-firewall
|
2479 |
+
#: admin/wp-security-filesystem-menu.php:212
|
2480 |
+
msgid ""
|
2481 |
+
"The Wordpress Dashboard by default allows administrators to edit PHP files, "
|
2482 |
+
"such as plugin and theme files."
|
2483 |
+
msgstr ""
|
2484 |
+
|
2485 |
+
# @ all-in-one-wp-security-and-firewall
|
2486 |
+
#: admin/wp-security-filesystem-menu.php:213
|
2487 |
+
msgid ""
|
2488 |
+
"This is often the first tool an attacker will use if able to login, since it "
|
2489 |
+
"allows code execution."
|
2490 |
+
msgstr ""
|
2491 |
+
|
2492 |
+
# @ all-in-one-wp-security-and-firewall
|
2493 |
+
#: admin/wp-security-filesystem-menu.php:214
|
2494 |
+
msgid ""
|
2495 |
+
"This feature will disable the ability for people to edit PHP files via the "
|
2496 |
+
"dashboard."
|
2497 |
+
msgstr ""
|
2498 |
+
|
2499 |
+
# @ all-in-one-wp-security-and-firewall
|
2500 |
+
#: admin/wp-security-filesystem-menu.php:220
|
2501 |
+
msgid "Disable PHP File Editing"
|
2502 |
+
msgstr ""
|
2503 |
+
|
2504 |
+
# @ all-in-one-wp-security-and-firewall
|
2505 |
+
#: admin/wp-security-filesystem-menu.php:232
|
2506 |
+
msgid "Disable Ability To Edit PHP Files"
|
2507 |
+
msgstr ""
|
2508 |
+
|
2509 |
+
# @ all-in-one-wp-security-and-firewall
|
2510 |
+
#: admin/wp-security-filesystem-menu.php:235
|
2511 |
+
msgid ""
|
2512 |
+
"Check this if you want to remove the ability for people to edit PHP files "
|
2513 |
+
"via the WP dashboard"
|
2514 |
+
msgstr ""
|
2515 |
+
|
2516 |
+
# @ all-in-one-wp-security-and-firewall
|
2517 |
+
#: admin/wp-security-filesystem-menu.php:279
|
2518 |
+
msgid ""
|
2519 |
+
"You have successfully saved the Prevent Access to Default WP Files "
|
2520 |
+
"configuration."
|
2521 |
+
msgstr ""
|
2522 |
+
|
2523 |
+
# @ all-in-one-wp-security-and-firewall
|
2524 |
+
#: admin/wp-security-filesystem-menu.php:288
|
2525 |
+
msgid "WordPress Files"
|
2526 |
+
msgstr ""
|
2527 |
+
|
2528 |
+
# @ all-in-one-wp-security-and-firewall
|
2529 |
+
#: admin/wp-security-filesystem-menu.php:291
|
2530 |
+
#, php-format
|
2531 |
+
msgid ""
|
2532 |
+
"This feature allows you to prevent access to files such as %s, %s and %s "
|
2533 |
+
"which are delivered with all WP installations."
|
2534 |
+
msgstr ""
|
2535 |
+
|
2536 |
+
# @ all-in-one-wp-security-and-firewall
|
2537 |
+
#: admin/wp-security-filesystem-menu.php:292
|
2538 |
+
msgid ""
|
2539 |
+
"By preventing access to these files you are hiding some key pieces of "
|
2540 |
+
"information (such as WordPress version info) from potential hackers."
|
2541 |
+
msgstr ""
|
2542 |
+
|
2543 |
+
# @ all-in-one-wp-security-and-firewall
|
2544 |
+
#: admin/wp-security-filesystem-menu.php:297
|
2545 |
+
msgid "Prevent Access to Default WP Files"
|
2546 |
+
msgstr ""
|
2547 |
+
|
2548 |
+
# @ all-in-one-wp-security-and-firewall
|
2549 |
+
#: admin/wp-security-filesystem-menu.php:308
|
2550 |
+
msgid "Prevent Access to WP Default Install Files"
|
2551 |
+
msgstr ""
|
2552 |
+
|
2553 |
+
# @ all-in-one-wp-security-and-firewall
|
2554 |
+
#: admin/wp-security-filesystem-menu.php:311
|
2555 |
+
msgid ""
|
2556 |
+
"Check this if you want to prevent access to readme.html, license.txt and wp-"
|
2557 |
+
"config-sample.php."
|
2558 |
+
msgstr ""
|
2559 |
+
|
2560 |
+
# @ all-in-one-wp-security-and-firewall
|
2561 |
+
#: admin/wp-security-filesystem-menu.php:315
|
2562 |
+
msgid "Save Setting"
|
2563 |
+
msgstr ""
|
2564 |
+
|
2565 |
+
# @ all-in-one-wp-security-and-firewall
|
2566 |
+
#: admin/wp-security-filesystem-menu.php:339
|
2567 |
+
msgid "System Logs"
|
2568 |
+
msgstr ""
|
2569 |
+
|
2570 |
+
# @ all-in-one-wp-security-and-firewall
|
2571 |
+
#: admin/wp-security-filesystem-menu.php:342
|
2572 |
+
msgid ""
|
2573 |
+
"Sometimes your hosting platform will produce error or warning logs in a file "
|
2574 |
+
"called \"error_log\"."
|
2575 |
+
msgstr ""
|
2576 |
+
|
2577 |
+
# @ all-in-one-wp-security-and-firewall
|
2578 |
+
#: admin/wp-security-filesystem-menu.php:343
|
2579 |
+
msgid ""
|
2580 |
+
"Depending on the nature and cause of the error or warning, your hosting "
|
2581 |
+
"server can create multiple instances of this file in numerous directory "
|
2582 |
+
"locations of your WordPress installation."
|
2583 |
+
msgstr ""
|
2584 |
+
|
2585 |
+
# @ all-in-one-wp-security-and-firewall
|
2586 |
+
#: admin/wp-security-filesystem-menu.php:344
|
2587 |
+
msgid ""
|
2588 |
+
"By occassionally viewing the contents of these logs files you can keep "
|
2589 |
+
"informed of any underlying problems on your system which you might need to "
|
2590 |
+
"address."
|
2591 |
+
msgstr ""
|
2592 |
+
|
2593 |
+
# @ all-in-one-wp-security-and-firewall
|
2594 |
+
#: admin/wp-security-filesystem-menu.php:350
|
2595 |
+
msgid "View System Logs"
|
2596 |
+
msgstr ""
|
2597 |
+
|
2598 |
+
#: admin/wp-security-filesystem-menu.php:355
|
2599 |
+
msgid "Enter System Log File Name"
|
2600 |
+
msgstr ""
|
2601 |
+
|
2602 |
+
#: admin/wp-security-filesystem-menu.php:357
|
2603 |
+
msgid "Enter your system log file name. (Defaults to error_log)"
|
2604 |
+
msgstr ""
|
2605 |
+
|
2606 |
+
# @ all-in-one-wp-security-and-firewall
|
2607 |
+
#: admin/wp-security-filesystem-menu.php:360
|
2608 |
+
msgid "View Latest System Logs"
|
2609 |
+
msgstr ""
|
2610 |
+
|
2611 |
+
# @ all-in-one-wp-security-and-firewall
|
2612 |
+
#: admin/wp-security-filesystem-menu.php:362
|
2613 |
+
msgid "Loading..."
|
2614 |
+
msgstr ""
|
2615 |
+
|
2616 |
+
# @ all-in-one-wp-security-and-firewall
|
2617 |
+
#: admin/wp-security-filesystem-menu.php:379
|
2618 |
+
msgid "No system logs were found!"
|
2619 |
+
msgstr ""
|
2620 |
+
|
2621 |
+
# @ all-in-one-wp-security-and-firewall
|
2622 |
+
#: admin/wp-security-filesystem-menu.php:432
|
2623 |
+
msgid "Set Recommended Permissions"
|
2624 |
+
msgstr ""
|
2625 |
+
|
2626 |
+
# @ all-in-one-wp-security-and-firewall
|
2627 |
+
#: admin/wp-security-filesystem-menu.php:438
|
2628 |
+
msgid "No Action Required"
|
2629 |
+
msgstr ""
|
2630 |
+
|
2631 |
+
# @ all-in-one-wp-security-and-firewall
|
2632 |
+
#: admin/wp-security-filesystem-menu.php:478
|
2633 |
+
#, php-format
|
2634 |
+
msgid "Showing latest entries of error_log file: %s"
|
2635 |
+
msgstr ""
|
2636 |
+
|
2637 |
+
#: admin/wp-security-firewall-menu.php:28
|
2638 |
+
msgid "Basic Firewall Rules"
|
2639 |
+
msgstr "기본 방화벽 규칙"
|
2640 |
+
|
2641 |
+
#: admin/wp-security-firewall-menu.php:29
|
2642 |
+
msgid "Additional Firewall Rules"
|
2643 |
+
msgstr "추가 방화벽 규칙"
|
2644 |
+
|
2645 |
+
#: admin/wp-security-firewall-menu.php:30
|
2646 |
+
msgid "6G Blacklist Firewall Rules"
|
2647 |
+
msgstr "6G 블랙리스트 방화벽 규칙"
|
2648 |
+
|
2649 |
+
#: admin/wp-security-firewall-menu.php:31
|
2650 |
+
msgid "Internet Bots"
|
2651 |
+
msgstr "인터넷 봇"
|
2652 |
+
|
2653 |
+
#: admin/wp-security-firewall-menu.php:32
|
2654 |
+
msgid "Prevent Hotlinks"
|
2655 |
+
msgstr "핫링크 방지"
|
2656 |
+
|
2657 |
+
#: admin/wp-security-firewall-menu.php:33
|
2658 |
+
msgid "404 Detection"
|
2659 |
+
msgstr "404 감지"
|
2660 |
+
|
2661 |
+
#: admin/wp-security-firewall-menu.php:34
|
2662 |
+
msgid "Custom Rules"
|
2663 |
+
msgstr "사용자 지정 규칙"
|
2664 |
+
|
2665 |
+
# @ all-in-one-wp-security-and-firewall
|
2666 |
+
#: admin/wp-security-firewall-menu.php:120
|
2667 |
+
#: admin/wp-security-firewall-menu.php:742 admin/wp-security-spam-menu.php:105
|
2668 |
+
#: admin/wp-security-spam-menu.php:448
|
2669 |
+
#: admin/wp-security-user-registration-menu.php:97
|
2670 |
+
msgid "Settings were successfully saved"
|
2671 |
+
msgstr "설정이 저장되었습니다"
|
2672 |
+
|
2673 |
+
# @ all-in-one-wp-security-and-firewall
|
2674 |
+
#: admin/wp-security-firewall-menu.php:129
|
2675 |
+
#: admin/wp-security-firewall-menu.php:563
|
2676 |
+
msgid "Firewall Settings"
|
2677 |
+
msgstr "방화벽 설정"
|
2678 |
+
|
2679 |
+
# @ all-in-one-wp-security-and-firewall
|
2680 |
+
#: admin/wp-security-firewall-menu.php:136
|
2681 |
+
#, php-format
|
2682 |
+
msgid ""
|
2683 |
+
"This should not have any impact on your site's general functionality but if "
|
2684 |
+
"you wish you can take a %s of your .htaccess file before proceeding."
|
2685 |
+
msgstr ""
|
2686 |
+
|
2687 |
+
# @ all-in-one-wp-security-and-firewall
|
2688 |
+
#: admin/wp-security-firewall-menu.php:137
|
2689 |
+
msgid ""
|
2690 |
+
"The features in this tab allow you to activate some basic firewall security "
|
2691 |
+
"protection rules for your site."
|
2692 |
+
msgstr ""
|
2693 |
+
|
2694 |
+
# @ all-in-one-wp-security-and-firewall
|
2695 |
+
#: admin/wp-security-firewall-menu.php:138
|
2696 |
+
msgid ""
|
2697 |
+
"The firewall functionality is achieved via the insertion of special code "
|
2698 |
+
"into your currently active .htaccess file."
|
2699 |
+
msgstr ""
|
2700 |
+
|
2701 |
+
#: admin/wp-security-firewall-menu.php:149
|
2702 |
+
msgid ""
|
2703 |
+
"Attention: You have enabled the \"Completely Block Access To XMLRPC\" "
|
2704 |
+
"checkbox which means all XMLRPC functionality will be blocked."
|
2705 |
+
msgstr ""
|
2706 |
+
|
2707 |
+
#: admin/wp-security-firewall-menu.php:150
|
2708 |
+
msgid ""
|
2709 |
+
"By leaving this feature enabled you will prevent Jetpack or Wordpress iOS or "
|
2710 |
+
"other apps which need XMLRPC from working correctly on your site."
|
2711 |
+
msgstr ""
|
2712 |
+
|
2713 |
+
#: admin/wp-security-firewall-menu.php:151
|
2714 |
+
msgid ""
|
2715 |
+
"If you still need XMLRPC then uncheck the \"Completely Block Access To XMLRPC"
|
2716 |
+
"\" checkbox and enable only the \"Disable Pingback Functionality From XMLRPC"
|
2717 |
+
"\" checkbox."
|
2718 |
+
msgstr ""
|
2719 |
+
|
2720 |
+
# @ all-in-one-wp-security-and-firewall
|
2721 |
+
#: admin/wp-security-firewall-menu.php:161
|
2722 |
+
msgid "Basic Firewall Settings"
|
2723 |
+
msgstr "기본 방화벽 설정"
|
2724 |
+
|
2725 |
+
# @ all-in-one-wp-security-and-firewall
|
2726 |
+
#: admin/wp-security-firewall-menu.php:169
|
2727 |
+
msgid "Enable Basic Firewall Protection"
|
2728 |
+
msgstr "기본 방화벽 보호 활성화"
|
2729 |
+
|
2730 |
+
# @ all-in-one-wp-security-and-firewall
|
2731 |
+
#: admin/wp-security-firewall-menu.php:172
|
2732 |
+
msgid "Check this if you want to apply basic firewall protection to your site."
|
2733 |
+
msgstr "사이트에 기본 방화벽 보호를 적용하려는 경우 이 방법을 확인합니다."
|
2734 |
+
|
2735 |
+
# @ all-in-one-wp-security-and-firewall
|
2736 |
+
#: admin/wp-security-firewall-menu.php:176
|
2737 |
+
msgid ""
|
2738 |
+
"This setting will implement the following basic firewall protection "
|
2739 |
+
"mechanisms on your site:"
|
2740 |
+
msgstr ""
|
2741 |
+
"이 설정은 사이트에서 다음과 같은 기본 방화벽 보호 메커니즘을 구현합니다."
|
2742 |
+
|
2743 |
+
# @ all-in-one-wp-security-and-firewall
|
2744 |
+
#: admin/wp-security-firewall-menu.php:177
|
2745 |
+
msgid "1) Protect your htaccess file by denying access to it."
|
2746 |
+
msgstr "1) 액세스 권한을 거부하여 htaccess 파일을 보호합니다."
|
2747 |
+
|
2748 |
+
# @ all-in-one-wp-security-and-firewall
|
2749 |
+
#: admin/wp-security-firewall-menu.php:178
|
2750 |
+
msgid "2) Disable the server signature."
|
2751 |
+
msgstr "2) 서버 서명을 사용하지 않도록 설정합니다."
|
2752 |
+
|
2753 |
+
# @ all-in-one-wp-security-and-firewall
|
2754 |
+
#: admin/wp-security-firewall-menu.php:179
|
2755 |
+
msgid "3) Limit file upload size (10MB)."
|
2756 |
+
msgstr "3) 파일 업로드 크기(10MB)를 제한합니다."
|
2757 |
+
|
2758 |
+
# @ all-in-one-wp-security-and-firewall
|
2759 |
+
#: admin/wp-security-firewall-menu.php:180
|
2760 |
+
msgid "4) Protect your wp-config.php file by denying access to it."
|
2761 |
+
msgstr "4) 그것에 대한 액세스를 거부하여 wp-config.php 파일을 보호합니다."
|
2762 |
+
|
2763 |
+
# @ all-in-one-wp-security-and-firewall
|
2764 |
+
#: admin/wp-security-firewall-menu.php:181
|
2765 |
+
msgid ""
|
2766 |
+
"The above firewall features will be applied via your .htaccess file and "
|
2767 |
+
"should not affect your site's overall functionality."
|
2768 |
+
msgstr ""
|
2769 |
+
"위의 방화벽 기능은 .htaccess 파일을 통해 적용되며 사이트의 전반적인 기능에영"
|
2770 |
+
"향을 미치지 않아야 합니다."
|
2771 |
+
|
2772 |
+
# @ all-in-one-wp-security-and-firewall
|
2773 |
+
#: admin/wp-security-firewall-menu.php:182
|
2774 |
+
msgid ""
|
2775 |
+
"You are still advised to take a backup of your active .htaccess file just in "
|
2776 |
+
"case."
|
2777 |
+
msgstr "활성 .htaccess 파일의 백업을 하는 것이 좋습니다."
|
2778 |
+
|
2779 |
+
#: admin/wp-security-firewall-menu.php:191
|
2780 |
+
msgid "WordPress XMLRPC & Pingback Vulnerability Protection"
|
2781 |
+
msgstr "워드 프레스 XMLRPC 및 핑백 취약점 보호"
|
2782 |
+
|
2783 |
+
#: admin/wp-security-firewall-menu.php:199
|
2784 |
+
msgid "Completely Block Access To XMLRPC"
|
2785 |
+
msgstr "XMLRPC에 대한 액세스를 완전히 차단합니다."
|
2786 |
+
|
2787 |
+
#: admin/wp-security-firewall-menu.php:202
|
2788 |
+
msgid ""
|
2789 |
+
"Check this if you are not using the WP XML-RPC functionality and you want to "
|
2790 |
+
"completely block external access to XMLRPC."
|
2791 |
+
msgstr ""
|
2792 |
+
"WP XML-RPC 기능을 사용하지 않고 XMLRPC에 대한 외부 액세스를 완전히 차단하려"
|
2793 |
+
"는 경우 이 기능을 확인합니다."
|
2794 |
+
|
2795 |
+
#: admin/wp-security-firewall-menu.php:206
|
2796 |
+
msgid ""
|
2797 |
+
"This setting will add a directive in your .htaccess to disable access to the "
|
2798 |
+
"WordPress xmlrpc.php file which is responsible for the XML-RPC functionality "
|
2799 |
+
"in WordPress."
|
2800 |
+
msgstr ""
|
2801 |
+
"이 설정은 워드 프레스의 XML-RPC 기능에 대한 책임이있는 워드 프레스 xmlrpc."
|
2802 |
+
"php 파일에 대한 액세스를 비활성화하려면 .htaccess에 지시문을 추가합니다."
|
2803 |
+
|
2804 |
+
#: admin/wp-security-firewall-menu.php:207
|
2805 |
+
msgid ""
|
2806 |
+
"Hackers can exploit various vulnerabilities in the WordPress XML-RPC API in "
|
2807 |
+
"a number of ways such as:"
|
2808 |
+
msgstr ""
|
2809 |
+
"해커는 다음과 같은 여러 가지 방법으로 워드 프레스 XML-RPC API의 다양한 취약점"
|
2810 |
+
"을 악용 할 수 있습니다."
|
2811 |
+
|
2812 |
+
# @ all-in-one-wp-security-and-firewall
|
2813 |
+
#: admin/wp-security-firewall-menu.php:208
|
2814 |
+
msgid "1) Denial of Service (DoS) attacks"
|
2815 |
+
msgstr "1) 서비스 거부(DoS) 공격"
|
2816 |
+
|
2817 |
+
# @ all-in-one-wp-security-and-firewall
|
2818 |
+
#: admin/wp-security-firewall-menu.php:209
|
2819 |
+
msgid "2) Hacking internal routers."
|
2820 |
+
msgstr "2) 해킹 내부 라우터."
|
2821 |
+
|
2822 |
+
# @ all-in-one-wp-security-and-firewall
|
2823 |
+
#: admin/wp-security-firewall-menu.php:210
|
2824 |
+
msgid "3) Scanning ports in internal networks to get info from various hosts."
|
2825 |
+
msgstr ""
|
2826 |
+
"3) 다양한 호스트로부터 정보를 얻기 위해 내부 네트워크에서 포트를 스캔합니다."
|
2827 |
+
|
2828 |
+
# @ all-in-one-wp-security-and-firewall
|
2829 |
+
#: admin/wp-security-firewall-menu.php:211
|
2830 |
+
msgid ""
|
2831 |
+
"Apart from the security protection benefit, this feature may also help "
|
2832 |
+
"reduce load on your server, particularly if your site currently has a lot of "
|
2833 |
+
"unwanted traffic hitting the XML-RPC API on your installation."
|
2834 |
+
msgstr ""
|
2835 |
+
"보안 보호 이점 외에도 이 기능은 특히 사이트에 현재 설치시 XML-RPC API에 영향"
|
2836 |
+
"을 미치는 원치 않는 트래픽이 많은 경우 서버의 부하를 줄이는 데 도움이 될 수 "
|
2837 |
+
"있습니다."
|
2838 |
+
|
2839 |
+
# @ all-in-one-wp-security-and-firewall
|
2840 |
+
#: admin/wp-security-firewall-menu.php:212
|
2841 |
+
msgid ""
|
2842 |
+
"NOTE: You should only enable this feature if you are not currently using the "
|
2843 |
+
"XML-RPC functionality on your WordPress installation."
|
2844 |
+
msgstr ""
|
2845 |
+
"참고: 현재 WordPress 설치에서 XML-RPC 기능을 사용하지 않는 경우에만 이 기능"
|
2846 |
+
"을 사용하도록 설정해야 합니다."
|
2847 |
+
|
2848 |
+
#: admin/wp-security-firewall-menu.php:213
|
2849 |
+
msgid ""
|
2850 |
+
"Leave this feature disabled and use the feature below if you want pingback "
|
2851 |
+
"protection but you still need XMLRPC."
|
2852 |
+
msgstr ""
|
2853 |
+
"이 기능을 사용하지 않도록 두고 pingback 보호를 원하지만 여전히 XMLRPC가 필요"
|
2854 |
+
"한 경우 아래 기능을 사용합니다."
|
2855 |
+
|
2856 |
+
#: admin/wp-security-firewall-menu.php:219
|
2857 |
+
msgid "Disable Pingback Functionality From XMLRPC"
|
2858 |
+
msgstr "XMLRPC에서 Pingback 기능 비활성화"
|
2859 |
+
|
2860 |
+
#: admin/wp-security-firewall-menu.php:222
|
2861 |
+
msgid ""
|
2862 |
+
"If you use Jetpack or WP iOS or other apps which need WP XML-RPC "
|
2863 |
+
"functionality then check this. This will enable protection against WordPress "
|
2864 |
+
"pingback vulnerabilities."
|
2865 |
+
msgstr ""
|
2866 |
+
"Jetpack 또는 WP iOS 또는 WP XML-RPC 기능이 필요한 기타 앱을 사용하는 경우 이 "
|
2867 |
+
"기능을 확인합니다. 이렇게 하면 워드프레스 핑백 취약점을 보호할 수 있습니다."
|
2868 |
+
|
2869 |
+
#: admin/wp-security-firewall-menu.php:226
|
2870 |
+
msgid ""
|
2871 |
+
"NOTE: If you use Jetpack or the Wordpress iOS or other apps then you should "
|
2872 |
+
"enable this feature but leave the \"Completely Block Access To XMLRPC\" "
|
2873 |
+
"checkbox unchecked."
|
2874 |
+
msgstr ""
|
2875 |
+
"참고: Jetpack 또는 워드프레스 iOS 또는 기타 앱을 사용하는 경우 이 기능을 사용"
|
2876 |
+
"하도록 설정하지만 \"XMLRPC에 대한 완전히 차단\" 확인란을 선택하지 않은 상태"
|
2877 |
+
"로 두어야 합니다."
|
2878 |
+
|
2879 |
+
#: admin/wp-security-firewall-menu.php:227
|
2880 |
+
msgid ""
|
2881 |
+
"The feature will still allow XMLRPC functionality on your site but will "
|
2882 |
+
"disable the pingback methods."
|
2883 |
+
msgstr ""
|
2884 |
+
"이 기능은 여전히 사이트에서 XMLRPC 기능을 허용하지만 pingback 메서드를 비활성"
|
2885 |
+
"화합니다."
|
2886 |
+
|
2887 |
+
#: admin/wp-security-firewall-menu.php:228
|
2888 |
+
msgid ""
|
2889 |
+
"This feature will also remove the \"X-Pingback\" header if it is present."
|
2890 |
+
msgstr "이 기능은 \"X-Pingback\" 헤더가 있는 경우에도 제거합니다."
|
2891 |
+
|
2892 |
+
#: admin/wp-security-firewall-menu.php:237
|
2893 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:81
|
2894 |
+
msgid "Block Accesss to Debug Log File"
|
2895 |
+
msgstr "디버그 로그 파일에 대한 액세스 차단"
|
2896 |
+
|
2897 |
+
#: admin/wp-security-firewall-menu.php:245
|
2898 |
+
msgid "Block Access to debug.log File"
|
2899 |
+
msgstr "디버그.로그 파일에 대한 액세스 차단"
|
2900 |
+
|
2901 |
+
#: admin/wp-security-firewall-menu.php:248
|
2902 |
+
msgid ""
|
2903 |
+
"Check this if you want to block access to the debug.log file that WordPress "
|
2904 |
+
"creates when debug logging is enabled."
|
2905 |
+
msgstr ""
|
2906 |
+
"디버그 로깅을 사용할 때 워드프레스가 만드는 debug.log 파일에 대한 액세스를 차"
|
2907 |
+
"단하려면 이 옵션을 확인합니다."
|
2908 |
+
|
2909 |
+
#: admin/wp-security-firewall-menu.php:252
|
2910 |
+
msgid ""
|
2911 |
+
"WordPress has an option to turn on the debug logging to a file located in wp-"
|
2912 |
+
"content/debug.log. This file may contain sensitive information."
|
2913 |
+
msgstr ""
|
2914 |
+
"워드 프레스는 wp-content/debug.log에 있는 파일에 디버그 로깅을 켤 수 있는 옵"
|
2915 |
+
"션이 있습니다. 이 파일에는 중요한 정보가 포함될 수 있습니다."
|
2916 |
+
|
2917 |
+
#: admin/wp-security-firewall-menu.php:253
|
2918 |
+
msgid ""
|
2919 |
+
"Using this optoin will block external access to this file. You can still "
|
2920 |
+
"access this file by logging into your site via FTP"
|
2921 |
+
msgstr ""
|
2922 |
+
"이 검토인을 사용하면 이 파일에 대한 외부 액세스가 차단됩니다. FTP를 통해 사이"
|
2923 |
+
"트에 로그인하여 이 파일에 계속 액세스할 수 있습니다."
|
2924 |
+
|
2925 |
+
# @ all-in-one-wp-security-and-firewall
|
2926 |
+
#: admin/wp-security-firewall-menu.php:261
|
2927 |
+
msgid "Save Basic Firewall Settings"
|
2928 |
+
msgstr "기본 방화벽 설정 저장"
|
2929 |
+
|
2930 |
+
# @ all-in-one-wp-security-and-firewall
|
2931 |
+
#: admin/wp-security-firewall-menu.php:333
|
2932 |
+
msgid ""
|
2933 |
+
"You have successfully saved the Additional Firewall Protection configuration"
|
2934 |
+
msgstr "추가 방화벽 보호 구성을 성공적으로 저장했습니다."
|
2935 |
+
|
2936 |
+
# @ all-in-one-wp-security-and-firewall
|
2937 |
+
#: admin/wp-security-firewall-menu.php:347
|
2938 |
+
msgid "Additional Firewall Protection"
|
2939 |
+
msgstr "추가 방화벽 보호"
|
2940 |
+
|
2941 |
+
# @ all-in-one-wp-security-and-firewall
|
2942 |
+
#: admin/wp-security-firewall-menu.php:351
|
2943 |
+
#, php-format
|
2944 |
+
msgid ""
|
2945 |
+
"Due to the nature of the code being inserted to the .htaccess file, this "
|
2946 |
+
"feature may break some functionality for certain plugins and you are "
|
2947 |
+
"therefore advised to take a %s of .htaccess before applying this "
|
2948 |
+
"configuration."
|
2949 |
+
msgstr ""
|
2950 |
+
|
2951 |
+
# @ all-in-one-wp-security-and-firewall
|
2952 |
+
#: admin/wp-security-firewall-menu.php:353
|
2953 |
+
msgid ""
|
2954 |
+
"This feature allows you to activate more advanced firewall settings to your "
|
2955 |
+
"site."
|
2956 |
+
msgstr ""
|
2957 |
+
|
2958 |
+
# @ all-in-one-wp-security-and-firewall
|
2959 |
+
#: admin/wp-security-firewall-menu.php:354
|
2960 |
+
msgid ""
|
2961 |
+
"The advanced firewall rules are applied via the insertion of special code to "
|
2962 |
+
"your currently active .htaccess file."
|
2963 |
+
msgstr ""
|
2964 |
+
|
2965 |
+
# @ all-in-one-wp-security-and-firewall
|
2966 |
+
#: admin/wp-security-firewall-menu.php:363
|
2967 |
+
msgid "Listing of Directory Contents"
|
2968 |
+
msgstr ""
|
2969 |
+
|
2970 |
+
# @ all-in-one-wp-security-and-firewall
|
2971 |
+
#: admin/wp-security-firewall-menu.php:372
|
2972 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:92
|
2973 |
+
msgid "Disable Index Views"
|
2974 |
+
msgstr ""
|
2975 |
+
|
2976 |
+
# @ all-in-one-wp-security-and-firewall
|
2977 |
+
#: admin/wp-security-firewall-menu.php:375
|
2978 |
+
msgid "Check this if you want to disable directory and file listing."
|
2979 |
+
msgstr ""
|
2980 |
+
|
2981 |
+
# @ all-in-one-wp-security-and-firewall
|
2982 |
+
#: admin/wp-security-firewall-menu.php:380
|
2983 |
+
msgid ""
|
2984 |
+
"By default, an Apache server will allow the listing of the contents of a "
|
2985 |
+
"directory if it doesn't contain an index.php file."
|
2986 |
+
msgstr ""
|
2987 |
+
|
2988 |
+
# @ all-in-one-wp-security-and-firewall
|
2989 |
+
#: admin/wp-security-firewall-menu.php:382
|
2990 |
+
msgid "This feature will prevent the listing of contents for all directories."
|
2991 |
+
msgstr ""
|
2992 |
+
|
2993 |
+
#: admin/wp-security-firewall-menu.php:384
|
2994 |
+
msgid ""
|
2995 |
+
"NOTE: In order for this feature to work \"AllowOverride\" of the Indexes "
|
2996 |
+
"directive must be enabled in your httpd.conf file. Ask your hosting provider "
|
2997 |
+
"to check this if you don't have access to httpd.conf"
|
2998 |
+
msgstr ""
|
2999 |
+
|
3000 |
+
# @ all-in-one-wp-security-and-firewall
|
3001 |
+
#: admin/wp-security-firewall-menu.php:393
|
3002 |
+
msgid "Trace and Track"
|
3003 |
+
msgstr ""
|
3004 |
+
|
3005 |
+
# @ all-in-one-wp-security-and-firewall
|
3006 |
+
#: admin/wp-security-firewall-menu.php:402
|
3007 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:93
|
3008 |
+
msgid "Disable Trace and Track"
|
3009 |
+
msgstr ""
|
3010 |
+
|
3011 |
+
# @ all-in-one-wp-security-and-firewall
|
3012 |
+
#: admin/wp-security-firewall-menu.php:405
|
3013 |
+
msgid "Check this if you want to disable trace and track."
|
3014 |
+
msgstr ""
|
3015 |
+
|
3016 |
+
# @ all-in-one-wp-security-and-firewall
|
3017 |
+
#: admin/wp-security-firewall-menu.php:410
|
3018 |
+
msgid ""
|
3019 |
+
"HTTP Trace attack (XST) can be used to return header requests and grab "
|
3020 |
+
"cookies and other information."
|
3021 |
+
msgstr ""
|
3022 |
+
|
3023 |
+
# @ all-in-one-wp-security-and-firewall
|
3024 |
+
#: admin/wp-security-firewall-menu.php:412
|
3025 |
+
msgid ""
|
3026 |
+
"This hacking technique is usually used together with cross site scripting "
|
3027 |
+
"attacks (XSS)."
|
3028 |
+
msgstr ""
|
3029 |
+
|
3030 |
+
# @ all-in-one-wp-security-and-firewall
|
3031 |
+
#: admin/wp-security-firewall-menu.php:414
|
3032 |
+
msgid ""
|
3033 |
+
"Disabling trace and track on your site will help prevent HTTP Trace attacks."
|
3034 |
+
msgstr ""
|
3035 |
+
|
3036 |
+
# @ all-in-one-wp-security-and-firewall
|
3037 |
+
#: admin/wp-security-firewall-menu.php:423
|
3038 |
+
msgid "Proxy Comment Posting"
|
3039 |
+
msgstr ""
|
3040 |
+
|
3041 |
+
# @ all-in-one-wp-security-and-firewall
|
3042 |
+
#: admin/wp-security-firewall-menu.php:433
|
3043 |
+
msgid "Forbid Proxy Comment Posting"
|
3044 |
+
msgstr ""
|
3045 |
+
|
3046 |
+
# @ all-in-one-wp-security-and-firewall
|
3047 |
+
#: admin/wp-security-firewall-menu.php:436
|
3048 |
+
msgid "Check this if you want to forbid proxy comment posting."
|
3049 |
+
msgstr ""
|
3050 |
+
|
3051 |
+
# @ all-in-one-wp-security-and-firewall
|
3052 |
+
#: admin/wp-security-firewall-menu.php:441
|
3053 |
+
msgid ""
|
3054 |
+
"This setting will deny any requests that use a proxy server when posting "
|
3055 |
+
"comments."
|
3056 |
+
msgstr ""
|
3057 |
+
|
3058 |
+
# @ all-in-one-wp-security-and-firewall
|
3059 |
+
#: admin/wp-security-firewall-menu.php:442
|
3060 |
+
msgid ""
|
3061 |
+
"By forbidding proxy comments you are in effect eliminating some SPAM and "
|
3062 |
+
"other proxy requests."
|
3063 |
+
msgstr ""
|
3064 |
+
|
3065 |
+
# @ all-in-one-wp-security-and-firewall
|
3066 |
+
#: admin/wp-security-firewall-menu.php:451
|
3067 |
+
msgid "Bad Query Strings"
|
3068 |
+
msgstr ""
|
3069 |
+
|
3070 |
+
# @ all-in-one-wp-security-and-firewall
|
3071 |
+
#: admin/wp-security-firewall-menu.php:461
|
3072 |
+
msgid "Deny Bad Query Strings"
|
3073 |
+
msgstr ""
|
3074 |
+
|
3075 |
+
# @ all-in-one-wp-security-and-firewall
|
3076 |
+
#: admin/wp-security-firewall-menu.php:464
|
3077 |
+
msgid "This will help protect you against malicious queries via XSS."
|
3078 |
+
msgstr ""
|
3079 |
+
|
3080 |
+
# @ all-in-one-wp-security-and-firewall
|
3081 |
+
#: admin/wp-security-firewall-menu.php:469
|
3082 |
+
msgid ""
|
3083 |
+
"This feature will write rules in your .htaccess file to prevent malicious "
|
3084 |
+
"string attacks on your site using XSS."
|
3085 |
+
msgstr ""
|
3086 |
+
|
3087 |
+
# @ all-in-one-wp-security-and-firewall
|
3088 |
+
#: admin/wp-security-firewall-menu.php:470
|
3089 |
+
msgid ""
|
3090 |
+
"NOTE: Some of these strings might be used for plugins or themes and hence "
|
3091 |
+
"this might break some functionality."
|
3092 |
+
msgstr ""
|
3093 |
+
|
3094 |
+
# @ all-in-one-wp-security-and-firewall
|
3095 |
+
#: admin/wp-security-firewall-menu.php:471
|
3096 |
+
#: admin/wp-security-firewall-menu.php:501
|
3097 |
+
msgid ""
|
3098 |
+
"You are therefore strongly advised to take a backup of your active .htaccess "
|
3099 |
+
"file before applying this feature."
|
3100 |
+
msgstr ""
|
3101 |
+
|
3102 |
+
# @ all-in-one-wp-security-and-firewall
|
3103 |
+
#: admin/wp-security-firewall-menu.php:480
|
3104 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:96
|
3105 |
+
msgid "Advanced Character String Filter"
|
3106 |
+
msgstr ""
|
3107 |
+
|
3108 |
+
# @ all-in-one-wp-security-and-firewall
|
3109 |
+
#: admin/wp-security-firewall-menu.php:490
|
3110 |
+
msgid "Enable Advanced Character String Filter"
|
3111 |
+
msgstr ""
|
3112 |
+
|
3113 |
+
# @ all-in-one-wp-security-and-firewall
|
3114 |
+
#: admin/wp-security-firewall-menu.php:493
|
3115 |
+
msgid "This will block bad character matches from XSS."
|
3116 |
+
msgstr ""
|
3117 |
+
|
3118 |
+
# @ all-in-one-wp-security-and-firewall
|
3119 |
+
#: admin/wp-security-firewall-menu.php:498
|
3120 |
+
msgid ""
|
3121 |
+
"This is an advanced character string filter to prevent malicious string "
|
3122 |
+
"attacks on your site coming from Cross Site Scripting (XSS)."
|
3123 |
+
msgstr ""
|
3124 |
+
|
3125 |
+
# @ all-in-one-wp-security-and-firewall
|
3126 |
+
#: admin/wp-security-firewall-menu.php:499
|
3127 |
+
msgid ""
|
3128 |
+
"This setting matches for common malicious string patterns and exploits and "
|
3129 |
+
"will produce a 403 error for the hacker attempting the query."
|
3130 |
+
msgstr ""
|
3131 |
+
|
3132 |
+
# @ all-in-one-wp-security-and-firewall
|
3133 |
+
#: admin/wp-security-firewall-menu.php:500
|
3134 |
+
msgid "NOTE: Some strings for this setting might break some functionality."
|
3135 |
+
msgstr ""
|
3136 |
+
|
3137 |
+
# @ all-in-one-wp-security-and-firewall
|
3138 |
+
#: admin/wp-security-firewall-menu.php:509
|
3139 |
+
msgid "Save Additional Firewall Settings"
|
3140 |
+
msgstr ""
|
3141 |
+
|
3142 |
+
#: admin/wp-security-firewall-menu.php:552
|
3143 |
+
msgid "You have successfully saved the 5G/6G Firewall Protection configuration"
|
3144 |
+
msgstr ""
|
3145 |
+
|
3146 |
+
#: admin/wp-security-firewall-menu.php:567
|
3147 |
+
#, php-format
|
3148 |
+
msgid ""
|
3149 |
+
"This feature allows you to activate the %s (or legacy %s) firewall security "
|
3150 |
+
"protection rules designed and produced by %s."
|
3151 |
+
msgstr ""
|
3152 |
+
|
3153 |
+
#: admin/wp-security-firewall-menu.php:568
|
3154 |
+
msgid ""
|
3155 |
+
"The 6G Blacklist is updated and improved version of 5G Blacklist. If you "
|
3156 |
+
"have 5G Blacklist active, you might consider activating 6G Blacklist instead."
|
3157 |
+
msgstr ""
|
3158 |
+
|
3159 |
+
#: admin/wp-security-firewall-menu.php:569
|
3160 |
+
msgid ""
|
3161 |
+
"The 6G Blacklist is a simple, flexible blacklist that helps reduce the "
|
3162 |
+
"number of malicious URL requests that hit your website."
|
3163 |
+
msgstr ""
|
3164 |
+
|
3165 |
+
#: admin/wp-security-firewall-menu.php:570
|
3166 |
+
msgid ""
|
3167 |
+
"The added advantage of applying the 6G firewall to your site is that it has "
|
3168 |
+
"been tested and confirmed by the people at PerishablePress.com to be an "
|
3169 |
+
"optimal and least disruptive set of .htaccess security rules for general WP "
|
3170 |
+
"sites running on an Apache server or similar."
|
3171 |
+
msgstr ""
|
3172 |
+
|
3173 |
+
#: admin/wp-security-firewall-menu.php:571
|
3174 |
+
#, php-format
|
3175 |
+
msgid ""
|
3176 |
+
"Therefore the 6G firewall rules should not have any impact on your site's "
|
3177 |
+
"general functionality but if you wish you can take a %s of your .htaccess "
|
3178 |
+
"file before proceeding."
|
3179 |
+
msgstr ""
|
3180 |
+
|
3181 |
+
#: admin/wp-security-firewall-menu.php:577
|
3182 |
+
msgid "6G Blacklist/Firewall Settings"
|
3183 |
+
msgstr ""
|
3184 |
+
|
3185 |
+
#: admin/wp-security-firewall-menu.php:589
|
3186 |
+
msgid "Enable 6G Firewall Protection"
|
3187 |
+
msgstr ""
|
3188 |
+
|
3189 |
+
#: admin/wp-security-firewall-menu.php:592
|
3190 |
+
msgid ""
|
3191 |
+
"Check this if you want to apply the 6G Blacklist firewall protection from "
|
3192 |
+
"perishablepress.com to your site."
|
3193 |
+
msgstr ""
|
3194 |
+
|
3195 |
+
#: admin/wp-security-firewall-menu.php:596
|
3196 |
+
msgid ""
|
3197 |
+
"This setting will implement the 6G security firewall protection mechanisms "
|
3198 |
+
"on your site which include the following things:"
|
3199 |
+
msgstr ""
|
3200 |
+
|
3201 |
+
# @ all-in-one-wp-security-and-firewall
|
3202 |
+
#: admin/wp-security-firewall-menu.php:597
|
3203 |
+
#: admin/wp-security-firewall-menu.php:615
|
3204 |
+
msgid "1) Block forbidden characters commonly used in exploitative attacks."
|
3205 |
+
msgstr ""
|
3206 |
+
|
3207 |
+
# @ all-in-one-wp-security-and-firewall
|
3208 |
+
#: admin/wp-security-firewall-menu.php:598
|
3209 |
+
#: admin/wp-security-firewall-menu.php:616
|
3210 |
+
msgid "2) Block malicious encoded URL characters such as the \".css(\" string."
|
3211 |
+
msgstr ""
|
3212 |
+
|
3213 |
+
# @ all-in-one-wp-security-and-firewall
|
3214 |
+
#: admin/wp-security-firewall-menu.php:599
|
3215 |
+
#: admin/wp-security-firewall-menu.php:617
|
3216 |
+
msgid ""
|
3217 |
+
"3) Guard against the common patterns and specific exploits in the root "
|
3218 |
+
"portion of targeted URLs."
|
3219 |
+
msgstr ""
|
3220 |
+
|
3221 |
+
# @ all-in-one-wp-security-and-firewall
|
3222 |
+
#: admin/wp-security-firewall-menu.php:600
|
3223 |
+
#: admin/wp-security-firewall-menu.php:618
|
3224 |
+
msgid ""
|
3225 |
+
"4) Stop attackers from manipulating query strings by disallowing illicit "
|
3226 |
+
"characters."
|
3227 |
+
msgstr ""
|
3228 |
+
|
3229 |
+
# @ all-in-one-wp-security-and-firewall
|
3230 |
+
#: admin/wp-security-firewall-menu.php:601
|
3231 |
+
#: admin/wp-security-firewall-menu.php:619
|
3232 |
+
msgid "....and much more."
|
3233 |
+
msgstr ""
|
3234 |
+
|
3235 |
+
#: admin/wp-security-firewall-menu.php:607
|
3236 |
+
msgid "Enable legacy 5G Firewall Protection"
|
3237 |
+
msgstr ""
|
3238 |
+
|
3239 |
+
# @ all-in-one-wp-security-and-firewall
|
3240 |
+
#: admin/wp-security-firewall-menu.php:610
|
3241 |
+
msgid ""
|
3242 |
+
"Check this if you want to apply the 5G Blacklist firewall protection from "
|
3243 |
+
"perishablepress.com to your site."
|
3244 |
+
msgstr ""
|
3245 |
+
|
3246 |
+
# @ all-in-one-wp-security-and-firewall
|
3247 |
+
#: admin/wp-security-firewall-menu.php:614
|
3248 |
+
msgid ""
|
3249 |
+
"This setting will implement the 5G security firewall protection mechanisms "
|
3250 |
+
"on your site which include the following things:"
|
3251 |
+
msgstr ""
|
3252 |
+
|
3253 |
+
#: admin/wp-security-firewall-menu.php:625
|
3254 |
+
msgid "Save 5G/6G Firewall Settings"
|
3255 |
+
msgstr ""
|
3256 |
+
|
3257 |
+
#: admin/wp-security-firewall-menu.php:656
|
3258 |
+
msgid "The Internet bot settings were successfully saved"
|
3259 |
+
msgstr ""
|
3260 |
+
|
3261 |
+
#: admin/wp-security-firewall-menu.php:660
|
3262 |
+
msgid "Internet Bot Settings"
|
3263 |
+
msgstr ""
|
3264 |
+
|
3265 |
+
#: admin/wp-security-firewall-menu.php:667
|
3266 |
+
#, php-format
|
3267 |
+
msgid "%s?"
|
3268 |
+
msgstr ""
|
3269 |
+
|
3270 |
+
#: admin/wp-security-firewall-menu.php:669
|
3271 |
+
msgid ""
|
3272 |
+
"A bot is a piece of software which runs on the Internet and performs "
|
3273 |
+
"automatic tasks. For example when Google indexes your pages it uses "
|
3274 |
+
"automatic bots to achieve this task."
|
3275 |
+
msgstr ""
|
3276 |
+
|
3277 |
+
#: admin/wp-security-firewall-menu.php:670
|
3278 |
+
msgid ""
|
3279 |
+
"A lot of bots are legitimate and non-malicous but not all bots are good and "
|
3280 |
+
"often you will find some which try to impersonate legitimate bots such as "
|
3281 |
+
"\"Googlebot\" but in reality they have nohing to do with Google at all."
|
3282 |
+
msgstr ""
|
3283 |
+
|
3284 |
+
#: admin/wp-security-firewall-menu.php:671
|
3285 |
+
msgid ""
|
3286 |
+
"Although most of the bots out there are relatively harmless sometimes "
|
3287 |
+
"website owners want to have more control over which bots they allow into "
|
3288 |
+
"their site."
|
3289 |
+
msgstr ""
|
3290 |
+
|
3291 |
+
#: admin/wp-security-firewall-menu.php:672
|
3292 |
+
msgid ""
|
3293 |
+
"This feature allows you to block bots which are impersonating as a Googlebot "
|
3294 |
+
"but actually aren't. (In other words they are fake Google bots)"
|
3295 |
+
msgstr ""
|
3296 |
+
|
3297 |
+
#: admin/wp-security-firewall-menu.php:673
|
3298 |
+
msgid ""
|
3299 |
+
"Googlebots have a unique indentity which cannot easily be forged and this "
|
3300 |
+
"feature will indentify any fake Google bots and block them from reading your "
|
3301 |
+
"site's pages."
|
3302 |
+
msgstr ""
|
3303 |
+
|
3304 |
+
#: admin/wp-security-firewall-menu.php:679
|
3305 |
+
msgid ""
|
3306 |
+
"<strong>Attention</strong>: Sometimes non-malicious Internet organizations "
|
3307 |
+
"might have bots which impersonate as a \"Googlebot\"."
|
3308 |
+
msgstr ""
|
3309 |
+
|
3310 |
+
#: admin/wp-security-firewall-menu.php:680
|
3311 |
+
msgid ""
|
3312 |
+
"Just be aware that if you activate this feature the plugin will block all "
|
3313 |
+
"bots which use the \"Googlebot\" string in their User Agent information but "
|
3314 |
+
"are NOT officially from Google (irrespective whether they are malicious or "
|
3315 |
+
"not)."
|
3316 |
+
msgstr ""
|
3317 |
+
|
3318 |
+
#: admin/wp-security-firewall-menu.php:681
|
3319 |
+
msgid ""
|
3320 |
+
"All other bots from other organizations such as \"Yahoo\", \"Bing\" etc will "
|
3321 |
+
"not be affected by this feature."
|
3322 |
+
msgstr ""
|
3323 |
+
|
3324 |
+
#: admin/wp-security-firewall-menu.php:687
|
3325 |
+
#: admin/wp-security-firewall-menu.php:697
|
3326 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:98
|
3327 |
+
msgid "Block Fake Googlebots"
|
3328 |
+
msgstr ""
|
3329 |
+
|
3330 |
+
#: admin/wp-security-firewall-menu.php:700
|
3331 |
+
msgid "Check this if you want to block all fake Googlebots."
|
3332 |
+
msgstr ""
|
3333 |
+
|
3334 |
+
#: admin/wp-security-firewall-menu.php:704
|
3335 |
+
msgid ""
|
3336 |
+
"This feature will check if the User Agent information of a bot contains the "
|
3337 |
+
"string \"Googlebot\"."
|
3338 |
+
msgstr ""
|
3339 |
+
|
3340 |
+
#: admin/wp-security-firewall-menu.php:705
|
3341 |
+
msgid ""
|
3342 |
+
"It will then perform a few tests to verify if the bot is legitimately from "
|
3343 |
+
"Google and if so it will allow the bot to proceed."
|
3344 |
+
msgstr ""
|
3345 |
+
|
3346 |
+
#: admin/wp-security-firewall-menu.php:706
|
3347 |
+
msgid ""
|
3348 |
+
"If the bot fails the checks then the plugin will mark it as being a fake "
|
3349 |
+
"Googlebot and it will block it"
|
3350 |
+
msgstr ""
|
3351 |
+
|
3352 |
+
#: admin/wp-security-firewall-menu.php:713
|
3353 |
+
msgid "Save Internet Bot Settings"
|
3354 |
+
msgstr ""
|
3355 |
+
|
3356 |
+
#: admin/wp-security-firewall-menu.php:750
|
3357 |
+
#: admin/wp-security-firewall-menu.php:772
|
3358 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:32
|
3359 |
+
msgid "Prevent Image Hotlinking"
|
3360 |
+
msgstr ""
|
3361 |
+
|
3362 |
+
#: admin/wp-security-firewall-menu.php:753
|
3363 |
+
msgid ""
|
3364 |
+
"A Hotlink is where someone displays an image on their site which is actually "
|
3365 |
+
"located on your site by using a direct link to the source of the image on "
|
3366 |
+
"your server."
|
3367 |
+
msgstr ""
|
3368 |
+
|
3369 |
+
#: admin/wp-security-firewall-menu.php:754
|
3370 |
+
msgid ""
|
3371 |
+
"Due to the fact that the image being displayed on the other person's site is "
|
3372 |
+
"coming from your server, this can cause leaking of bandwidth and resources "
|
3373 |
+
"for you because your server has to present this image for the people viewing "
|
3374 |
+
"it on someone elses's site."
|
3375 |
+
msgstr ""
|
3376 |
+
|
3377 |
+
#: admin/wp-security-firewall-menu.php:755
|
3378 |
+
msgid ""
|
3379 |
+
"This feature will prevent people from directly hotlinking images from your "
|
3380 |
+
"site's pages by writing some directives in your .htaccess file."
|
3381 |
+
msgstr ""
|
3382 |
+
|
3383 |
+
#: admin/wp-security-firewall-menu.php:760
|
3384 |
+
msgid "Prevent Hotlinking"
|
3385 |
+
msgstr ""
|
3386 |
+
|
3387 |
+
#: admin/wp-security-firewall-menu.php:775
|
3388 |
+
msgid "Check this if you want to prevent hotlinking to images on your site."
|
3389 |
+
msgstr ""
|
3390 |
+
|
3391 |
+
#: admin/wp-security-firewall-menu.php:795
|
3392 |
+
msgid "Nonce check failed for delete all 404 event logs operation!"
|
3393 |
+
msgstr ""
|
3394 |
+
|
3395 |
+
#: admin/wp-security-firewall-menu.php:806
|
3396 |
+
msgid "404 Detection Feature - Delete all 404 event logs operation failed!"
|
3397 |
+
msgstr ""
|
3398 |
+
|
3399 |
+
#: admin/wp-security-firewall-menu.php:810
|
3400 |
+
msgid "All 404 event logs were deleted from the DB successfully!"
|
3401 |
+
msgstr ""
|
3402 |
+
|
3403 |
+
# @ all-in-one-wp-security-and-firewall
|
3404 |
+
#: admin/wp-security-firewall-menu.php:834
|
3405 |
+
#: admin/wp-security-user-login-menu.php:111
|
3406 |
+
msgid ""
|
3407 |
+
"You entered a non numeric value for the lockout time length field. It has "
|
3408 |
+
"been set to the default value."
|
3409 |
+
msgstr ""
|
3410 |
+
|
3411 |
+
#: admin/wp-security-firewall-menu.php:840
|
3412 |
+
msgid ""
|
3413 |
+
"You entered an incorrect format for the \"Redirect URL\" field. It has been "
|
3414 |
+
"set to the default value."
|
3415 |
+
msgstr ""
|
3416 |
+
|
3417 |
+
#: admin/wp-security-firewall-menu.php:875
|
3418 |
+
msgid "404 Detection Configuration"
|
3419 |
+
msgstr ""
|
3420 |
+
|
3421 |
+
#: admin/wp-security-firewall-menu.php:878
|
3422 |
+
msgid ""
|
3423 |
+
"A 404 or Not Found error occurs when somebody tries to access a non-existent "
|
3424 |
+
"page on your website."
|
3425 |
+
msgstr ""
|
3426 |
+
|
3427 |
+
#: admin/wp-security-firewall-menu.php:879
|
3428 |
+
msgid ""
|
3429 |
+
"Typically, most 404 errors happen quite innocently when people have mis-"
|
3430 |
+
"typed a URL or used an old link to page which doesn't exist anymore."
|
3431 |
+
msgstr ""
|
3432 |
+
|
3433 |
+
#: admin/wp-security-firewall-menu.php:880
|
3434 |
+
msgid ""
|
3435 |
+
"However, in some cases you may find many repeated 404 errors which occur in "
|
3436 |
+
"a relatively short space of time and from the same IP address which are all "
|
3437 |
+
"attempting to access a variety of non-existent page URLs."
|
3438 |
+
msgstr ""
|
3439 |
+
|
3440 |
+
#: admin/wp-security-firewall-menu.php:881
|
3441 |
+
msgid ""
|
3442 |
+
"Such behaviour can mean that a hacker might be trying to find a particular "
|
3443 |
+
"page or URL for sinister reasons."
|
3444 |
+
msgstr ""
|
3445 |
+
|
3446 |
+
#: admin/wp-security-firewall-menu.php:882
|
3447 |
+
msgid ""
|
3448 |
+
"This feature allows you to monitor all 404 events which occur on your site, "
|
3449 |
+
"and it also gives you the option of blocking IP addresses for a configured "
|
3450 |
+
"length of time."
|
3451 |
+
msgstr ""
|
3452 |
+
|
3453 |
+
#: admin/wp-security-firewall-menu.php:883
|
3454 |
+
msgid ""
|
3455 |
+
"If you want to temporarily block an IP address, simply click the \"Temp Block"
|
3456 |
+
"\" link for the applicable IP entry in the \"404 Event Logs\" table below."
|
3457 |
+
msgstr ""
|
3458 |
+
|
3459 |
+
#: admin/wp-security-firewall-menu.php:890
|
3460 |
+
msgid ""
|
3461 |
+
"This addon allows you to automatically and permanently block IP addresses "
|
3462 |
+
"based on how many 404 errors they produce."
|
3463 |
+
msgstr ""
|
3464 |
+
|
3465 |
+
#: admin/wp-security-firewall-menu.php:898
|
3466 |
+
msgid "404 Detection Options"
|
3467 |
+
msgstr ""
|
3468 |
+
|
3469 |
+
#: admin/wp-security-firewall-menu.php:910
|
3470 |
+
msgid "Enable 404 IP Detection and Lockout"
|
3471 |
+
msgstr ""
|
3472 |
+
|
3473 |
+
#: admin/wp-security-firewall-menu.php:913
|
3474 |
+
msgid "Check this if you want to enable the lockout of selected IP addresses."
|
3475 |
+
msgstr ""
|
3476 |
+
|
3477 |
+
#: admin/wp-security-firewall-menu.php:918
|
3478 |
+
msgid ""
|
3479 |
+
"When you enable this checkbox, all 404 events on your site will be logged in "
|
3480 |
+
"the table below. You can monitor these events and select some IP addresses "
|
3481 |
+
"listed in the table below and block them for a specified amount of time. All "
|
3482 |
+
"IP addresses you select to be blocked from the \"404 Event Logs\" table "
|
3483 |
+
"section will be unable to access your site during the time specified."
|
3484 |
+
msgstr ""
|
3485 |
+
|
3486 |
+
#: admin/wp-security-firewall-menu.php:926
|
3487 |
+
msgid "Enable 404 Event Logging"
|
3488 |
+
msgstr ""
|
3489 |
+
|
3490 |
+
#: admin/wp-security-firewall-menu.php:929
|
3491 |
+
msgid "Check this if you want to enable the logging of 404 events"
|
3492 |
+
msgstr ""
|
3493 |
+
|
3494 |
+
#: admin/wp-security-firewall-menu.php:934
|
3495 |
+
msgid "Time Length of 404 Lockout (min)"
|
3496 |
+
msgstr ""
|
3497 |
+
|
3498 |
+
#: admin/wp-security-firewall-menu.php:936
|
3499 |
+
msgid ""
|
3500 |
+
"Set the length of time for which a blocked IP address will be prevented from "
|
3501 |
+
"visiting your site"
|
3502 |
+
msgstr ""
|
3503 |
+
|
3504 |
+
#: admin/wp-security-firewall-menu.php:941
|
3505 |
+
msgid ""
|
3506 |
+
"You can lock any IP address which is recorded in the \"404 Event Logs\" "
|
3507 |
+
"table section below."
|
3508 |
+
msgstr ""
|
3509 |
+
|
3510 |
+
#: admin/wp-security-firewall-menu.php:943
|
3511 |
+
msgid ""
|
3512 |
+
"To temporarily lock an IP address, hover over the ID column and click the "
|
3513 |
+
"\"Temp Block\" link for the applicable IP entry."
|
3514 |
+
msgstr ""
|
3515 |
+
|
3516 |
+
#: admin/wp-security-firewall-menu.php:950
|
3517 |
+
msgid "404 Lockout Redirect URL"
|
3518 |
+
msgstr ""
|
3519 |
+
|
3520 |
+
#: admin/wp-security-firewall-menu.php:952
|
3521 |
+
msgid "A blocked visitor will be automatically redirected to this URL."
|
3522 |
+
msgstr ""
|
3523 |
+
|
3524 |
+
#: admin/wp-security-firewall-menu.php:961
|
3525 |
+
msgid "404 Event Logs"
|
3526 |
+
msgstr ""
|
3527 |
+
|
3528 |
+
#: admin/wp-security-firewall-menu.php:983
|
3529 |
+
#: admin/wp-security-firewall-menu.php:992
|
3530 |
+
msgid "Delete All 404 Event Logs"
|
3531 |
+
msgstr ""
|
3532 |
+
|
3533 |
+
#: admin/wp-security-firewall-menu.php:989
|
3534 |
+
msgid "Click this button if you wish to purge all 404 event logs from the DB."
|
3535 |
+
msgstr ""
|
3536 |
+
|
3537 |
+
#: admin/wp-security-firewall-menu.php:1047
|
3538 |
+
msgid "Custom .htaccess Rules Settings"
|
3539 |
+
msgstr ""
|
3540 |
+
|
3541 |
+
#: admin/wp-security-firewall-menu.php:1054
|
3542 |
+
msgid ""
|
3543 |
+
"This feature can be used to apply your own custom .htaccess rules and "
|
3544 |
+
"directives."
|
3545 |
+
msgstr ""
|
3546 |
+
|
3547 |
+
#: admin/wp-security-firewall-menu.php:1055
|
3548 |
+
msgid ""
|
3549 |
+
"It is useful for when you want to tweak our existing firewall rules or when "
|
3550 |
+
"you want to add your own."
|
3551 |
+
msgstr ""
|
3552 |
+
|
3553 |
+
#: admin/wp-security-firewall-menu.php:1056
|
3554 |
+
msgid ""
|
3555 |
+
"NOTE: This feature can only used if your site is hosted in an apache or "
|
3556 |
+
"similar web server."
|
3557 |
+
msgstr ""
|
3558 |
+
|
3559 |
+
#: admin/wp-security-firewall-menu.php:1062
|
3560 |
+
msgid ""
|
3561 |
+
"<strong>Warning</strong>: Only use this feature if you know what you are "
|
3562 |
+
"doing."
|
3563 |
+
msgstr ""
|
3564 |
+
|
3565 |
+
#: admin/wp-security-firewall-menu.php:1063
|
3566 |
+
msgid ""
|
3567 |
+
"Incorrect .htaccess rules or directives can break or prevent access to your "
|
3568 |
+
"site."
|
3569 |
+
msgstr ""
|
3570 |
+
|
3571 |
+
#: admin/wp-security-firewall-menu.php:1064
|
3572 |
+
msgid ""
|
3573 |
+
"It is your responsibility to ensure that you are entering the correct code!"
|
3574 |
+
msgstr ""
|
3575 |
+
|
3576 |
+
#: admin/wp-security-firewall-menu.php:1065
|
3577 |
+
msgid ""
|
3578 |
+
"If you break your site you will need to access your server via FTP or "
|
3579 |
+
"something similar and then edit your .htaccess file and delete the changes "
|
3580 |
+
"you made."
|
3581 |
+
msgstr ""
|
3582 |
+
|
3583 |
+
#: admin/wp-security-firewall-menu.php:1071
|
3584 |
+
msgid "Custom .htaccess Rules"
|
3585 |
+
msgstr ""
|
3586 |
+
|
3587 |
+
#: admin/wp-security-firewall-menu.php:1075
|
3588 |
+
msgid "Enable Custom .htaccess Rules"
|
3589 |
+
msgstr ""
|
3590 |
+
|
3591 |
+
#: admin/wp-security-firewall-menu.php:1078
|
3592 |
+
msgid ""
|
3593 |
+
"Check this if you want to enable custom rules entered in the text box below"
|
3594 |
+
msgstr ""
|
3595 |
+
|
3596 |
+
#: admin/wp-security-firewall-menu.php:1082
|
3597 |
+
msgid "Enter Custom .htaccess Rules:"
|
3598 |
+
msgstr ""
|
3599 |
+
|
3600 |
+
#: admin/wp-security-firewall-menu.php:1086
|
3601 |
+
msgid "Enter your custom .htaccess rules/directives."
|
3602 |
+
msgstr ""
|
3603 |
+
|
3604 |
+
#: admin/wp-security-firewall-menu.php:1091
|
3605 |
+
msgid "Save Custom Rules"
|
3606 |
+
msgstr ""
|
3607 |
+
|
3608 |
+
# @ all-in-one-wp-security-and-firewall
|
3609 |
+
#: admin/wp-security-list-404.php:118 admin/wp-security-list-404.php:126
|
3610 |
+
#: admin/wp-security-list-404.php:133
|
3611 |
+
#: admin/wp-security-list-acct-activity.php:83
|
3612 |
+
#: admin/wp-security-list-comment-spammer-ip.php:92
|
3613 |
+
#: admin/wp-security-list-locked-ip.php:90
|
3614 |
+
#: admin/wp-security-list-locked-ip.php:101
|
3615 |
+
#: admin/wp-security-list-login-fails.php:82
|
3616 |
+
#: admin/wp-security-list-permanent-blocked-ip.php:93
|
3617 |
+
#: admin/wp-security-list-registered-users.php:101
|
3618 |
+
#: admin/wp-security-list-registered-users.php:112
|
3619 |
+
#: admin/wp-security-list-registered-users.php:123
|
3620 |
+
msgid "Please select some records using the checkboxes"
|
3621 |
+
msgstr ""
|
3622 |
+
|
3623 |
+
#: admin/wp-security-list-404.php:155 admin/wp-security-list-404.php:193
|
3624 |
+
msgid ""
|
3625 |
+
"Could not process the request because the IP addresses for the selected "
|
3626 |
+
"entries could not be found!"
|
3627 |
+
msgstr ""
|
3628 |
+
|
3629 |
+
#: admin/wp-security-list-404.php:164
|
3630 |
+
msgid "The selected IP addresses are now temporarily blocked!"
|
3631 |
+
msgstr ""
|
3632 |
+
|
3633 |
+
#: admin/wp-security-list-404.php:169
|
3634 |
+
msgid "The selected IP address is now temporarily blocked!"
|
3635 |
+
msgstr ""
|
3636 |
+
|
3637 |
+
#: admin/wp-security-list-404.php:171
|
3638 |
+
msgid "The selected entry is not a valid IP address!"
|
3639 |
+
msgstr ""
|
3640 |
+
|
3641 |
+
#: admin/wp-security-list-404.php:216
|
3642 |
+
msgid ""
|
3643 |
+
"The selected IP addresses have been added to the blacklist and will be "
|
3644 |
+
"permanently blocked!"
|
3645 |
+
msgstr ""
|
3646 |
+
|
3647 |
+
#: admin/wp-security-list-404.php:256
|
3648 |
+
msgid "Nonce check failed for delete selected 404 event logs operation!"
|
3649 |
+
msgstr ""
|
3650 |
+
|
3651 |
+
# @ all-in-one-wp-security-and-firewall
|
3652 |
+
#: admin/wp-security-list-acct-activity.php:114
|
3653 |
+
#: admin/wp-security-list-login-fails.php:114
|
3654 |
+
msgid "The selected entries were deleted successfully!"
|
3655 |
+
msgstr ""
|
3656 |
+
|
3657 |
+
#: admin/wp-security-list-acct-activity.php:126
|
3658 |
+
msgid "Nonce check failed for delete selected account activity logs operation!"
|
3659 |
+
msgstr ""
|
3660 |
+
|
3661 |
+
# @ all-in-one-wp-security-and-firewall
|
3662 |
+
#: admin/wp-security-list-acct-activity.php:134
|
3663 |
+
#: admin/wp-security-list-login-fails.php:134
|
3664 |
+
msgid "The selected entry was deleted successfully!"
|
3665 |
+
msgstr ""
|
3666 |
+
|
3667 |
+
#: admin/wp-security-list-comment-spammer-ip.php:127
|
3668 |
+
#: admin/wp-security-list-comment-spammer-ip.php:176
|
3669 |
+
msgid "Nonce check failed for delete selected blocked IP operation!"
|
3670 |
+
msgstr ""
|
3671 |
+
|
3672 |
+
#: admin/wp-security-list-comment-spammer-ip.php:134
|
3673 |
+
msgid "The selected IP addresses are now permanently blocked!"
|
3674 |
+
msgstr ""
|
3675 |
+
|
3676 |
+
# @ all-in-one-wp-security-and-firewall
|
3677 |
+
#: admin/wp-security-list-comment-spammer-ip.php:190
|
3678 |
+
msgid ""
|
3679 |
+
"The selected IP addresses were saved in the blacklist configuration settings."
|
3680 |
+
msgstr ""
|
3681 |
+
|
3682 |
+
# @ all-in-one-wp-security-and-firewall
|
3683 |
+
#: admin/wp-security-list-comment-spammer-ip.php:198
|
3684 |
+
msgid ""
|
3685 |
+
"The .htaccess file was successfully modified to include the selected IP "
|
3686 |
+
"addresses."
|
3687 |
+
msgstr ""
|
3688 |
+
|
3689 |
+
# @ all-in-one-wp-security-and-firewall
|
3690 |
+
#: admin/wp-security-list-comment-spammer-ip.php:209
|
3691 |
+
msgid ""
|
3692 |
+
"NOTE: The .htaccess file was not modified because you have disabled the "
|
3693 |
+
"\"Enable IP or User Agent Blacklisting\" check box."
|
3694 |
+
msgstr ""
|
3695 |
+
|
3696 |
+
# @ all-in-one-wp-security-and-firewall
|
3697 |
+
#: admin/wp-security-list-comment-spammer-ip.php:210
|
3698 |
+
#, php-format
|
3699 |
+
msgid ""
|
3700 |
+
"To block these IP addresses you will need to enable the above flag in the %s "
|
3701 |
+
"menu"
|
3702 |
+
msgstr ""
|
3703 |
+
|
3704 |
+
#: admin/wp-security-list-locked-ip.php:128
|
3705 |
+
msgid "The selected IP entries were unlocked successfully!"
|
3706 |
+
msgstr "선택한 IP 항목이 성공적으로 잠금 해제되었습니다!"
|
3707 |
+
|
3708 |
+
#: admin/wp-security-list-locked-ip.php:137
|
3709 |
+
msgid "Nonce check failed for unlock IP operation!"
|
3710 |
+
msgstr ""
|
3711 |
+
|
3712 |
+
#: admin/wp-security-list-locked-ip.php:145
|
3713 |
+
msgid "The selected IP entry was unlocked successfully!"
|
3714 |
+
msgstr ""
|
3715 |
+
|
3716 |
+
#: admin/wp-security-list-locked-ip.php:179
|
3717 |
+
msgid "Nonce check failed for delete lockdown record operation!"
|
3718 |
+
msgstr ""
|
3719 |
+
|
3720 |
+
#: admin/wp-security-list-logged-in-users.php:84
|
3721 |
+
msgid "Nonce check failed for force user logout operation!"
|
3722 |
+
msgstr ""
|
3723 |
+
|
3724 |
+
#: admin/wp-security-list-logged-in-users.php:95
|
3725 |
+
msgid "The selected user was logged out successfully!"
|
3726 |
+
msgstr ""
|
3727 |
+
|
3728 |
+
#: admin/wp-security-list-login-fails.php:126
|
3729 |
+
msgid "Nonce check failed for delete failed login record operation!"
|
3730 |
+
msgstr ""
|
3731 |
+
|
3732 |
+
#: admin/wp-security-list-permanent-blocked-ip.php:123
|
3733 |
+
msgid "Nonce check failed for unblock IP operation!"
|
3734 |
+
msgstr ""
|
3735 |
+
|
3736 |
+
#: admin/wp-security-list-registered-users.php:48
|
3737 |
+
msgid "blocked"
|
3738 |
+
msgstr ""
|
3739 |
+
|
3740 |
+
#: admin/wp-security-list-registered-users.php:157
|
3741 |
+
#: admin/wp-security-list-registered-users.php:187
|
3742 |
+
msgid "Your account is now active"
|
3743 |
+
msgstr ""
|
3744 |
+
|
3745 |
+
#: admin/wp-security-list-registered-users.php:158
|
3746 |
+
msgid "Your account with user ID:"
|
3747 |
+
msgstr ""
|
3748 |
+
|
3749 |
+
#: admin/wp-security-list-registered-users.php:158
|
3750 |
+
#: admin/wp-security-list-registered-users.php:188
|
3751 |
+
msgid " is now active"
|
3752 |
+
msgstr ""
|
3753 |
+
|
3754 |
+
#: admin/wp-security-list-registered-users.php:171
|
3755 |
+
msgid "The selected accounts were approved successfully!"
|
3756 |
+
msgstr ""
|
3757 |
+
|
3758 |
+
#: admin/wp-security-list-registered-users.php:175
|
3759 |
+
msgid "The following accounts failed to update successfully: "
|
3760 |
+
msgstr ""
|
3761 |
+
|
3762 |
+
#: admin/wp-security-list-registered-users.php:183
|
3763 |
+
msgid "The selected account was approved successfully!"
|
3764 |
+
msgstr ""
|
3765 |
+
|
3766 |
+
#: admin/wp-security-list-registered-users.php:188
|
3767 |
+
msgid "Your account with username: "
|
3768 |
+
msgstr ""
|
3769 |
+
|
3770 |
+
#: admin/wp-security-list-registered-users.php:220
|
3771 |
+
msgid "The selected accounts were deleted successfully!"
|
3772 |
+
msgstr ""
|
3773 |
+
|
3774 |
+
#: admin/wp-security-list-registered-users.php:228
|
3775 |
+
msgid "Nonce check failed for delete registered user account operation!"
|
3776 |
+
msgstr ""
|
3777 |
+
|
3778 |
+
#: admin/wp-security-list-registered-users.php:236
|
3779 |
+
msgid "The selected account was deleted successfully!"
|
3780 |
+
msgstr ""
|
3781 |
+
|
3782 |
+
#: admin/wp-security-list-registered-users.php:262
|
3783 |
+
msgid ""
|
3784 |
+
"The selected IP addresses were successfully added to the permanent block "
|
3785 |
+
"list!"
|
3786 |
+
msgstr ""
|
3787 |
+
|
3788 |
+
#: admin/wp-security-list-registered-users.php:263
|
3789 |
+
#: admin/wp-security-list-registered-users.php:280
|
3790 |
+
#: admin/wp-security-spam-menu.php:319
|
3791 |
+
msgid "View Blocked IPs"
|
3792 |
+
msgstr ""
|
3793 |
+
|
3794 |
+
#: admin/wp-security-list-registered-users.php:272
|
3795 |
+
msgid "Nonce check failed for block IP operation of registered user!"
|
3796 |
+
msgstr ""
|
3797 |
+
|
3798 |
+
#: admin/wp-security-list-registered-users.php:279
|
3799 |
+
msgid "The selected IP was successfully added to the permanent block list!"
|
3800 |
+
msgstr ""
|
3801 |
+
|
3802 |
+
#: admin/wp-security-maintenance-menu.php:22
|
3803 |
+
msgid "Visitor Lockout"
|
3804 |
+
msgstr ""
|
3805 |
+
|
3806 |
+
# @ all-in-one-wp-security-and-firewall
|
3807 |
+
#: admin/wp-security-maintenance-menu.php:89
|
3808 |
+
msgid "Site lockout feature settings saved!"
|
3809 |
+
msgstr ""
|
3810 |
+
|
3811 |
+
# @ all-in-one-wp-security-and-firewall
|
3812 |
+
#: admin/wp-security-maintenance-menu.php:94
|
3813 |
+
msgid "General Visitor Lockout"
|
3814 |
+
msgstr ""
|
3815 |
+
|
3816 |
+
# @ all-in-one-wp-security-and-firewall
|
3817 |
+
#: admin/wp-security-maintenance-menu.php:100
|
3818 |
+
msgid ""
|
3819 |
+
"This feature allows you to put your site into \"maintenance mode\" by "
|
3820 |
+
"locking down the front-end to all visitors except logged in users with super "
|
3821 |
+
"admin privileges."
|
3822 |
+
msgstr ""
|
3823 |
+
|
3824 |
+
# @ all-in-one-wp-security-and-firewall
|
3825 |
+
#: admin/wp-security-maintenance-menu.php:101
|
3826 |
+
msgid ""
|
3827 |
+
"Locking your site down to general visitors can be useful if you are "
|
3828 |
+
"investigating some issues on your site or perhaps you might be doing some "
|
3829 |
+
"maintenance and wish to keep out all traffic for security reasons."
|
3830 |
+
msgstr ""
|
3831 |
+
|
3832 |
+
# @ all-in-one-wp-security-and-firewall
|
3833 |
+
#: admin/wp-security-maintenance-menu.php:106
|
3834 |
+
msgid "Enable Front-end Lockout"
|
3835 |
+
msgstr ""
|
3836 |
+
|
3837 |
+
# @ all-in-one-wp-security-and-firewall
|
3838 |
+
#: admin/wp-security-maintenance-menu.php:109
|
3839 |
+
msgid ""
|
3840 |
+
"Check this if you want all visitors except those who are logged in as "
|
3841 |
+
"administrator to be locked out of the front-end of your site."
|
3842 |
+
msgstr ""
|
3843 |
+
|
3844 |
+
# @ all-in-one-wp-security-and-firewall
|
3845 |
+
#: admin/wp-security-maintenance-menu.php:113
|
3846 |
+
msgid "Enter a Message:"
|
3847 |
+
msgstr ""
|
3848 |
+
|
3849 |
+
# @ all-in-one-wp-security-and-firewall
|
3850 |
+
#: admin/wp-security-maintenance-menu.php:125
|
3851 |
+
msgid ""
|
3852 |
+
"Enter a message you wish to display to visitors when your site is in "
|
3853 |
+
"maintenance mode."
|
3854 |
+
msgstr ""
|
3855 |
+
|
3856 |
+
# @ default
|
3857 |
+
#: admin/wp-security-maintenance-menu.php:132
|
3858 |
+
msgid "Save Site Lockout Settings"
|
3859 |
+
msgstr ""
|
3860 |
+
|
3861 |
+
#: admin/wp-security-misc-options-menu.php:24
|
3862 |
+
msgid "Copy Protection"
|
3863 |
+
msgstr ""
|
3864 |
+
|
3865 |
+
#: admin/wp-security-misc-options-menu.php:25
|
3866 |
+
msgid "Frames"
|
3867 |
+
msgstr ""
|
3868 |
+
|
3869 |
+
#: admin/wp-security-misc-options-menu.php:26
|
3870 |
+
msgid "Users Enumeration"
|
3871 |
+
msgstr ""
|
3872 |
+
|
3873 |
+
#: admin/wp-security-misc-options-menu.php:91
|
3874 |
+
msgid "Copy Protection feature settings saved!"
|
3875 |
+
msgstr ""
|
3876 |
+
|
3877 |
+
#: admin/wp-security-misc-options-menu.php:96
|
3878 |
+
msgid "Disable The Ability To Copy Text"
|
3879 |
+
msgstr ""
|
3880 |
+
|
3881 |
+
#: admin/wp-security-misc-options-menu.php:102
|
3882 |
+
msgid ""
|
3883 |
+
"This feature allows you to disable the ability to select and copy text from "
|
3884 |
+
"your front end."
|
3885 |
+
msgstr ""
|
3886 |
+
|
3887 |
+
#: admin/wp-security-misc-options-menu.php:103
|
3888 |
+
msgid ""
|
3889 |
+
"When admin user is logged in, the feature is automatically disabled for his "
|
3890 |
+
"session."
|
3891 |
+
msgstr ""
|
3892 |
+
|
3893 |
+
#: admin/wp-security-misc-options-menu.php:108
|
3894 |
+
msgid "Enable Copy Protection"
|
3895 |
+
msgstr ""
|
3896 |
+
|
3897 |
+
#: admin/wp-security-misc-options-menu.php:111
|
3898 |
+
msgid ""
|
3899 |
+
"Check this if you want to disable the \"Right Click\", \"Text Selection\" "
|
3900 |
+
"and \"Copy\" option on the front end of your site."
|
3901 |
+
msgstr ""
|
3902 |
+
|
3903 |
+
#: admin/wp-security-misc-options-menu.php:118
|
3904 |
+
msgid "Save Copy Protection Settings"
|
3905 |
+
msgstr ""
|
3906 |
+
|
3907 |
+
#: admin/wp-security-misc-options-menu.php:142
|
3908 |
+
msgid "Frame Display Prevention feature settings saved!"
|
3909 |
+
msgstr ""
|
3910 |
+
|
3911 |
+
#: admin/wp-security-misc-options-menu.php:147
|
3912 |
+
msgid "Prevent Your Site From Being Displayed In a Frame"
|
3913 |
+
msgstr ""
|
3914 |
+
|
3915 |
+
#: admin/wp-security-misc-options-menu.php:153
|
3916 |
+
msgid ""
|
3917 |
+
"This feature allows you to prevent other sites from displaying any of your "
|
3918 |
+
"content via a frame or iframe."
|
3919 |
+
msgstr ""
|
3920 |
+
|
3921 |
+
#: admin/wp-security-misc-options-menu.php:154
|
3922 |
+
msgid ""
|
3923 |
+
"When enabled, this feature will set the \"X-Frame-Options\" paramater to "
|
3924 |
+
"\"sameorigin\" in the HTTP header."
|
3925 |
+
msgstr ""
|
3926 |
+
|
3927 |
+
#: admin/wp-security-misc-options-menu.php:159
|
3928 |
+
msgid "Enable iFrame Protection"
|
3929 |
+
msgstr ""
|
3930 |
+
|
3931 |
+
#: admin/wp-security-misc-options-menu.php:162
|
3932 |
+
msgid ""
|
3933 |
+
"Check this if you want to stop other sites from displaying your content in a "
|
3934 |
+
"frame or iframe."
|
3935 |
+
msgstr ""
|
3936 |
+
|
3937 |
+
#: admin/wp-security-misc-options-menu.php:193
|
3938 |
+
msgid "Users Enumeration Prevention feature settings saved!"
|
3939 |
+
msgstr ""
|
3940 |
+
|
3941 |
+
#: admin/wp-security-misc-options-menu.php:198
|
3942 |
+
msgid "Prevent Users Enumeration"
|
3943 |
+
msgstr ""
|
3944 |
+
|
3945 |
+
#: admin/wp-security-misc-options-menu.php:204
|
3946 |
+
msgid ""
|
3947 |
+
"This feature allows you to prevent external users/bots from fetching the "
|
3948 |
+
"user info with urls like \"/?author=1\"."
|
3949 |
+
msgstr ""
|
3950 |
+
|
3951 |
+
#: admin/wp-security-misc-options-menu.php:205
|
3952 |
+
msgid ""
|
3953 |
+
"When enabled, this feature will print a \"forbidden\" error rather than the "
|
3954 |
+
"user information."
|
3955 |
+
msgstr ""
|
3956 |
+
|
3957 |
+
#: admin/wp-security-misc-options-menu.php:210
|
3958 |
+
msgid "Disable Users Enumeration"
|
3959 |
+
msgstr ""
|
3960 |
+
|
3961 |
+
#: admin/wp-security-misc-options-menu.php:213
|
3962 |
+
msgid "Check this if you want to stop users enumeration."
|
3963 |
+
msgstr ""
|
3964 |
+
|
3965 |
+
#: admin/wp-security-settings-menu.php:26
|
3966 |
+
msgid "General Settings"
|
3967 |
+
msgstr "일반 설정"
|
3968 |
+
|
3969 |
+
#: admin/wp-security-settings-menu.php:29
|
3970 |
+
msgid "WP Version Info"
|
3971 |
+
msgstr "WP 버전 정보"
|
3972 |
+
|
3973 |
+
#: admin/wp-security-settings-menu.php:30
|
3974 |
+
msgid "Import/Export"
|
3975 |
+
msgstr "가져오기/내보내기"
|
3976 |
+
|
3977 |
+
# @ all-in-one-wp-security-and-firewall
|
3978 |
+
#: admin/wp-security-settings-menu.php:98
|
3979 |
+
msgid "All the security features have been disabled successfully!"
|
3980 |
+
msgstr "모든 보안 기능이 성공적으로 비활성화되었습니다!"
|
3981 |
+
|
3982 |
+
# @ all-in-one-wp-security-and-firewall
|
3983 |
+
#: admin/wp-security-settings-menu.php:102
|
3984 |
+
#: admin/wp-security-settings-menu.php:129
|
3985 |
+
msgid ""
|
3986 |
+
"Could not write to the .htaccess file. Please restore your .htaccess file "
|
3987 |
+
"manually using the restore functionality in the \".htaccess File\"."
|
3988 |
+
msgstr ""
|
3989 |
+
|
3990 |
+
# @ all-in-one-wp-security-and-firewall
|
3991 |
+
#: admin/wp-security-settings-menu.php:107
|
3992 |
+
msgid ""
|
3993 |
+
"Could not write to the wp-config.php. Please restore your wp-config.php file "
|
3994 |
+
"manually using the restore functionality in the \"wp-config.php File\"."
|
3995 |
+
msgstr ""
|
3996 |
+
|
3997 |
+
# @ all-in-one-wp-security-and-firewall
|
3998 |
+
#: admin/wp-security-settings-menu.php:125
|
3999 |
+
msgid "All firewall rules have been disabled successfully!"
|
4000 |
+
msgstr ""
|
4001 |
+
|
4002 |
+
# @ all-in-one-wp-security-and-firewall
|
4003 |
+
#: admin/wp-security-settings-menu.php:154
|
4004 |
+
msgid "WP Security Plugin"
|
4005 |
+
msgstr "WP 보안 플러그인"
|
4006 |
+
|
4007 |
+
# @ all-in-one-wp-security-and-firewall
|
4008 |
+
#: admin/wp-security-settings-menu.php:156
|
4009 |
+
msgid ""
|
4010 |
+
"Thank you for using our WordPress security plugin. There are a lot of "
|
4011 |
+
"security features in this plugin."
|
4012 |
+
msgstr ""
|
4013 |
+
|
4014 |
+
# @ all-in-one-wp-security-and-firewall
|
4015 |
+
#: admin/wp-security-settings-menu.php:157
|
4016 |
+
msgid ""
|
4017 |
+
"Go through each menu items and enable the security options to add more "
|
4018 |
+
"security to your site. Start by activating the basic features first."
|
4019 |
+
msgstr ""
|
4020 |
+
|
4021 |
+
# @ all-in-one-wp-security-and-firewall
|
4022 |
+
#: admin/wp-security-settings-menu.php:158
|
4023 |
+
msgid ""
|
4024 |
+
"It is a good practice to take a backup of your .htaccess file, database and "
|
4025 |
+
"wp-config.php file before activating the security features. This plugin has "
|
4026 |
+
"options that you can use to backup those resources easily."
|
4027 |
+
msgstr ""
|
4028 |
+
|
4029 |
+
# @ all-in-one-wp-security-and-firewall
|
4030 |
+
#: admin/wp-security-settings-menu.php:161
|
4031 |
+
msgid "Backup your database"
|
4032 |
+
msgstr ""
|
4033 |
+
|
4034 |
+
# @ all-in-one-wp-security-and-firewall
|
4035 |
+
#: admin/wp-security-settings-menu.php:162
|
4036 |
+
msgid "Backup .htaccess file"
|
4037 |
+
msgstr ""
|
4038 |
+
|
4039 |
+
# @ all-in-one-wp-security-and-firewall
|
4040 |
+
#: admin/wp-security-settings-menu.php:163
|
4041 |
+
msgid "Backup wp-config.php file"
|
4042 |
+
msgstr ""
|
4043 |
+
|
4044 |
+
# @ all-in-one-wp-security-and-firewall
|
4045 |
+
#: admin/wp-security-settings-menu.php:170
|
4046 |
+
msgid "Disable Security Features"
|
4047 |
+
msgstr "보안 기능 비활성화"
|
4048 |
+
|
4049 |
+
# @ all-in-one-wp-security-and-firewall
|
4050 |
+
#: admin/wp-security-settings-menu.php:176
|
4051 |
+
msgid ""
|
4052 |
+
"If you think that some plugin functionality on your site is broken due to a "
|
4053 |
+
"security feature you enabled in this plugin, then use the following option "
|
4054 |
+
"to turn off all the security features of this plugin."
|
4055 |
+
msgstr ""
|
4056 |
+
"이 플러그인에서 활성화 된 보안 기능으로 인해 사이트의 일부 플러그인 기능이 손"
|
4057 |
+
"상된 것으로 생각되면 다음 옵션을 사용하여이 플러그인의 모든 보안 기능을 끕니"
|
4058 |
+
"다."
|
4059 |
+
|
4060 |
+
# @ default
|
4061 |
+
#: admin/wp-security-settings-menu.php:180
|
4062 |
+
msgid "Disable All Security Features"
|
4063 |
+
msgstr "모든 보안 기능 비활성화"
|
4064 |
+
|
4065 |
+
# @ all-in-one-wp-security-and-firewall
|
4066 |
+
# @ default
|
4067 |
+
#: admin/wp-security-settings-menu.php:187
|
4068 |
+
#: admin/wp-security-settings-menu.php:197
|
4069 |
+
msgid "Disable All Firewall Rules"
|
4070 |
+
msgstr "모든 방화벽 규칙 비활성화"
|
4071 |
+
|
4072 |
+
# @ all-in-one-wp-security-and-firewall
|
4073 |
+
#: admin/wp-security-settings-menu.php:193
|
4074 |
+
msgid ""
|
4075 |
+
"This feature will disable all firewall rules which are currently active in "
|
4076 |
+
"this plugin and it will also delete these rules from your .htacess file. Use "
|
4077 |
+
"it if you think one of the firewall rules is causing an issue on your site."
|
4078 |
+
msgstr ""
|
4079 |
+
"이 기능은 현재이 플러그인에서 활성화된 모든 방화벽 규칙을 비활성화하고 ."
|
4080 |
+
"htacess 파일에서 이러한 규칙을 삭제합니다. 방화벽 규칙 중 하나가 사이트에서 "
|
4081 |
+
"문제를 일으킨다고 생각되면 사용하십시오."
|
4082 |
+
|
4083 |
+
#: admin/wp-security-settings-menu.php:204
|
4084 |
+
msgid "Debug Settings"
|
4085 |
+
msgstr "디버그 설정"
|
4086 |
+
|
4087 |
+
#: admin/wp-security-settings-menu.php:210
|
4088 |
+
msgid "This setting allows you to enable/disable debug for this plugin."
|
4089 |
+
msgstr ""
|
4090 |
+
"이 설정을 사용하면 이 플러그인에 대한 디버그를 활성화/비활성화할 수 있습니다."
|
4091 |
+
|
4092 |
+
#: admin/wp-security-settings-menu.php:216
|
4093 |
+
msgid "Enable Debug"
|
4094 |
+
msgstr "디버그 사용"
|
4095 |
+
|
4096 |
+
#: admin/wp-security-settings-menu.php:219
|
4097 |
+
msgid ""
|
4098 |
+
"Check this if you want to enable debug. You should keep this option disabled "
|
4099 |
+
"after you have finished debugging the issue."
|
4100 |
+
msgstr ""
|
4101 |
+
"디버그를 사용하도록 설정하려면 이 방법을 확인합니다. 문제 디버깅을 완료한 후"
|
4102 |
+
"에도 이 옵션을 사용하지 않도록 설정해야 합니다."
|
4103 |
+
|
4104 |
+
#: admin/wp-security-settings-menu.php:220
|
4105 |
+
msgid "Please note that the log files are reset on every plugin update."
|
4106 |
+
msgstr "로그 파일은 모든 플러그인 업데이트에서 재설정됩니다."
|
4107 |
+
|
4108 |
+
#: admin/wp-security-settings-menu.php:224
|
4109 |
+
msgid "Save Debug Settings"
|
4110 |
+
msgstr "디버그 설정 저장"
|
4111 |
+
|
4112 |
+
#: admin/wp-security-settings-menu.php:253
|
4113 |
+
msgid ""
|
4114 |
+
"Your .htaccess file was successfully backed up! Using an FTP program go to "
|
4115 |
+
"the \"/wp-content/aiowps_backups\" directory to save a copy of the file to "
|
4116 |
+
"your computer."
|
4117 |
+
msgstr ""
|
4118 |
+
".htaccess 파일이 성공적으로 백업되었습니다! FTP 프로그램을 사용하여 \"/wp-"
|
4119 |
+
"content/aiowps_backups\" 디렉터리로 이동하여 파일의 복사본을 컴퓨터에 저장합"
|
4120 |
+
"니다."
|
4121 |
+
|
4122 |
+
# @ all-in-one-wp-security-and-firewall
|
4123 |
+
#: admin/wp-security-settings-menu.php:259
|
4124 |
+
msgid ""
|
4125 |
+
"htaccess file rename failed during backup. Please check your root directory "
|
4126 |
+
"for the backup file using FTP."
|
4127 |
+
msgstr ""
|
4128 |
+
"htaccess 파일 이름 바꾸기 백업 중에 실패했습니다. FTP를 사용하여 백업 파일에 "
|
4129 |
+
"대한 루트 디렉토리를 확인하십시오."
|
4130 |
+
|
4131 |
+
# @ all-in-one-wp-security-and-firewall
|
4132 |
+
#: admin/wp-security-settings-menu.php:265
|
4133 |
+
msgid "htaccess backup failed."
|
4134 |
+
msgstr "htaccess 백업에 실패했습니다."
|
4135 |
+
|
4136 |
+
# @ all-in-one-wp-security-and-firewall
|
4137 |
+
#: admin/wp-security-settings-menu.php:280
|
4138 |
+
msgid "Please choose a .htaccess to restore from."
|
4139 |
+
msgstr "복원하려면 .htaccess를 선택하십시오."
|
4140 |
+
|
4141 |
+
# @ all-in-one-wp-security-and-firewall
|
4142 |
+
#: admin/wp-security-settings-menu.php:296
|
4143 |
+
msgid ""
|
4144 |
+
"htaccess file restore failed. Please attempt to restore the .htaccess "
|
4145 |
+
"manually using FTP."
|
4146 |
+
msgstr ""
|
4147 |
+
"htaccess 파일 복원에 실패했습니다. FTP를 사용하여 수동으로 .htaccess를 복원하"
|
4148 |
+
"십시오."
|
4149 |
+
|
4150 |
+
# @ all-in-one-wp-security-and-firewall
|
4151 |
+
#: admin/wp-security-settings-menu.php:300
|
4152 |
+
msgid "Your .htaccess file has successfully been restored!"
|
4153 |
+
msgstr ".htaccess 파일이 성공적으로 복원되었습니다!"
|
4154 |
+
|
4155 |
+
# @ all-in-one-wp-security-and-firewall
|
4156 |
+
#: admin/wp-security-settings-menu.php:306
|
4157 |
+
msgid ""
|
4158 |
+
"htaccess Restore operation failed! Please check the contents of the file you "
|
4159 |
+
"are trying to restore from."
|
4160 |
+
msgstr ""
|
4161 |
+
"htaccess 복원 작업이 실패했습니다! 복원하려는 파일의 내용을 확인하십시오."
|
4162 |
+
|
4163 |
+
# @ all-in-one-wp-security-and-firewall
|
4164 |
+
#: admin/wp-security-settings-menu.php:312
|
4165 |
+
msgid ".htaccess File Operations"
|
4166 |
+
msgstr ".htaccess 파일 작업"
|
4167 |
+
|
4168 |
+
# @ all-in-one-wp-security-and-firewall
|
4169 |
+
#: admin/wp-security-settings-menu.php:315
|
4170 |
+
msgid ""
|
4171 |
+
"Your \".htaccess\" file is a key component of your website's security and it "
|
4172 |
+
"can be modified to implement various levels of protection mechanisms."
|
4173 |
+
msgstr ""
|
4174 |
+
"\".htaccess\" 파일은 웹 사이트 보안의 핵심 구성 요소이며 다양한 수준의 보호 "
|
4175 |
+
"메커니즘을 구현하도록 수정할 수 있습니다."
|
4176 |
+
|
4177 |
+
# @ all-in-one-wp-security-and-firewall
|
4178 |
+
#: admin/wp-security-settings-menu.php:316
|
4179 |
+
msgid ""
|
4180 |
+
"This feature allows you to backup and save your currently active .htaccess "
|
4181 |
+
"file should you need to re-use the the backed up file in the future."
|
4182 |
+
msgstr ""
|
4183 |
+
"이 기능을 사용하면 나중에 백업된 파일을 다시 사용해야 하는 경우 현재 활성 ."
|
4184 |
+
"htaccess 파일을 백업하고 저장할 수 있습니다."
|
4185 |
+
|
4186 |
+
# @ all-in-one-wp-security-and-firewall
|
4187 |
+
#: admin/wp-security-settings-menu.php:317
|
4188 |
+
msgid ""
|
4189 |
+
"You can also restore your site's .htaccess settings using a backed up ."
|
4190 |
+
"htaccess file."
|
4191 |
+
msgstr ""
|
4192 |
+
"백업된 .htaccess 파일을 사용하여 사이트의 .htaccess 설정을 복원할 수도 있습니"
|
4193 |
+
"다."
|
4194 |
+
|
4195 |
+
# @ all-in-one-wp-security-and-firewall
|
4196 |
+
#: admin/wp-security-settings-menu.php:331
|
4197 |
+
msgid "Save the current .htaccess file"
|
4198 |
+
msgstr "현재 .htaccess 파일 저장"
|
4199 |
+
|
4200 |
+
# @ all-in-one-wp-security-and-firewall
|
4201 |
+
#: admin/wp-security-settings-menu.php:335
|
4202 |
+
msgid ""
|
4203 |
+
"Click the button below to backup and save the currently active .htaccess "
|
4204 |
+
"file."
|
4205 |
+
msgstr "아래 버튼을 클릭하여 현재 활성 .htaccess 파일을 백업하고 저장합니다."
|
4206 |
+
|
4207 |
+
# @ all-in-one-wp-security-and-firewall
|
4208 |
+
#: admin/wp-security-settings-menu.php:336
|
4209 |
+
msgid "Backup .htaccess File"
|
4210 |
+
msgstr "백업 .htaccess 파일"
|
4211 |
+
|
4212 |
+
# @ all-in-one-wp-security-and-firewall
|
4213 |
+
#: admin/wp-security-settings-menu.php:340
|
4214 |
+
msgid "Restore from a backed up .htaccess file"
|
4215 |
+
msgstr "백업된 .htaccess 파일에서 복원"
|
4216 |
+
|
4217 |
+
# @ all-in-one-wp-security-and-firewall
|
4218 |
+
#: admin/wp-security-settings-menu.php:346
|
4219 |
+
msgid ".htaccess file to restore from"
|
4220 |
+
msgstr "복원할 .htaccess 파일"
|
4221 |
+
|
4222 |
+
# @ all-in-one-wp-security-and-firewall
|
4223 |
+
#: admin/wp-security-settings-menu.php:352
|
4224 |
+
msgid ""
|
4225 |
+
"After selecting your file, click the button below to restore your site using "
|
4226 |
+
"the backed up htaccess file (htaccess_backup.txt)."
|
4227 |
+
msgstr ""
|
4228 |
+
"파일을 선택한 후 아래 버튼을 클릭하여 백업된 htaccess 파일(htaccess_backup."
|
4229 |
+
"txt)을 사용하여 사이트를 복원합니다."
|
4230 |
+
|
4231 |
+
# @ all-in-one-wp-security-and-firewall
|
4232 |
+
#: admin/wp-security-settings-menu.php:358
|
4233 |
+
msgid "Restore .htaccess File"
|
4234 |
+
msgstr ".htaccess 파일 복원"
|
4235 |
+
|
4236 |
+
# @ all-in-one-wp-security-and-firewall
|
4237 |
+
#: admin/wp-security-settings-menu.php:391
|
4238 |
+
msgid "Please choose a wp-config.php file to restore from."
|
4239 |
+
msgstr "복원하려면 wp-config.php 파일을 선택하십시오."
|
4240 |
+
|
4241 |
+
# @ all-in-one-wp-security-and-firewall
|
4242 |
+
#: admin/wp-security-settings-menu.php:407
|
4243 |
+
msgid ""
|
4244 |
+
"wp-config.php file restore failed. Please attempt to restore this file "
|
4245 |
+
"manually using FTP."
|
4246 |
+
msgstr ""
|
4247 |
+
"wp-config.php 파일 복원에 실패했습니다. FTP를 사용하여 수동으로 이 파일을 복"
|
4248 |
+
"원해 보십시오."
|
4249 |
+
|
4250 |
+
# @ all-in-one-wp-security-and-firewall
|
4251 |
+
#: admin/wp-security-settings-menu.php:411
|
4252 |
+
msgid "Your wp-config.php file has successfully been restored!"
|
4253 |
+
msgstr "wp-config.php 파일이 성공적으로 복원되었습니다!"
|
4254 |
+
|
4255 |
+
# @ all-in-one-wp-security-and-firewall
|
4256 |
+
#: admin/wp-security-settings-menu.php:417
|
4257 |
+
msgid ""
|
4258 |
+
"wp-config.php Restore operation failed! Please check the contents of the "
|
4259 |
+
"file you are trying to restore from."
|
4260 |
+
msgstr ""
|
4261 |
+
"wp-config.php 복원 작업이 실패했습니다! 복원하려는 파일의 내용을 확인하십시"
|
4262 |
+
"오."
|
4263 |
+
|
4264 |
+
# @ all-in-one-wp-security-and-firewall
|
4265 |
+
#: admin/wp-security-settings-menu.php:423
|
4266 |
+
msgid "wp-config.php File Operations"
|
4267 |
+
msgstr "wp-config.php 파일 작업"
|
4268 |
+
|
4269 |
+
# @ all-in-one-wp-security-and-firewall
|
4270 |
+
#: admin/wp-security-settings-menu.php:426
|
4271 |
+
msgid ""
|
4272 |
+
"Your \"wp-config.php\" file is one of the most important in your WordPress "
|
4273 |
+
"installation. It is a primary configuration file and contains crucial things "
|
4274 |
+
"such as details of your database and other critical components."
|
4275 |
+
msgstr ""
|
4276 |
+
"\"wp-config.php\" 파일은 워드 프레스 설치에서 가장 중요한 파일 중 하나입니"
|
4277 |
+
"다. 기본 구성 파일이며 데이터베이스 및 기타 중요한 구성 요소의 세부 정보와 같"
|
4278 |
+
"은 중요한 항목을 포함합니다."
|
4279 |
+
|
4280 |
+
# @ all-in-one-wp-security-and-firewall
|
4281 |
+
#: admin/wp-security-settings-menu.php:427
|
4282 |
+
msgid ""
|
4283 |
+
"This feature allows you to backup and save your currently active wp-config."
|
4284 |
+
"php file should you need to re-use the the backed up file in the future."
|
4285 |
+
msgstr ""
|
4286 |
+
"이 기능을 사용하면 나중에 백업된 파일을 다시 사용해야 하는 경우 현재 활성 중"
|
4287 |
+
"인 wp-config.php 파일을 백업하고 저장할 수 있습니다."
|
4288 |
+
|
4289 |
+
# @ all-in-one-wp-security-and-firewall
|
4290 |
+
#: admin/wp-security-settings-menu.php:428
|
4291 |
+
msgid ""
|
4292 |
+
"You can also restore your site's wp-config.php settings using a backed up wp-"
|
4293 |
+
"config.php file."
|
4294 |
+
msgstr ""
|
4295 |
+
"백업된 wp-config.php 파일을 사용하여 사이트의 wp-config.php 설정을 복원할 수"
|
4296 |
+
"도 있습니다."
|
4297 |
+
|
4298 |
+
# @ all-in-one-wp-security-and-firewall
|
4299 |
+
#: admin/wp-security-settings-menu.php:442
|
4300 |
+
msgid "Save the current wp-config.php file"
|
4301 |
+
msgstr "현재 wp-config.php 파일 저장"
|
4302 |
+
|
4303 |
+
# @ all-in-one-wp-security-and-firewall
|
4304 |
+
#: admin/wp-security-settings-menu.php:446
|
4305 |
+
msgid ""
|
4306 |
+
"Click the button below to backup and download the contents of the currently "
|
4307 |
+
"active wp-config.php file."
|
4308 |
+
msgstr ""
|
4309 |
+
"아래 버튼을 클릭하여 현재 활성 중인 wp-config.php 파일의 내용을 백업하고 다운"
|
4310 |
+
"로드합니다."
|
4311 |
+
|
4312 |
+
# @ all-in-one-wp-security-and-firewall
|
4313 |
+
#: admin/wp-security-settings-menu.php:447
|
4314 |
+
msgid "Backup wp-config.php File"
|
4315 |
+
msgstr "백업 wp-config.php 파일"
|
4316 |
+
|
4317 |
+
# @ all-in-one-wp-security-and-firewall
|
4318 |
+
#: admin/wp-security-settings-menu.php:452
|
4319 |
+
msgid "Restore from a backed up wp-config file"
|
4320 |
+
msgstr "백업된 wp-config 파일에서 복원"
|
4321 |
+
|
4322 |
+
# @ all-in-one-wp-security-and-firewall
|
4323 |
+
#: admin/wp-security-settings-menu.php:458
|
4324 |
+
msgid "wp-config file to restore from"
|
4325 |
+
msgstr ""
|
4326 |
+
|
4327 |
+
# @ all-in-one-wp-security-and-firewall
|
4328 |
+
#: admin/wp-security-settings-menu.php:464
|
4329 |
+
msgid ""
|
4330 |
+
"After selecting your file click the button below to restore your site using "
|
4331 |
+
"the backed up wp-config file (wp-config.php.backup.txt)."
|
4332 |
+
msgstr ""
|
4333 |
+
"파일을 선택한 후 아래 버튼을 클릭하여 백업된 wp-config 파일(wp-config.php."
|
4334 |
+
"backup.txt)을 사용하여 사이트를 복원합니다."
|
4335 |
+
|
4336 |
+
# @ all-in-one-wp-security-and-firewall
|
4337 |
+
#: admin/wp-security-settings-menu.php:470
|
4338 |
+
msgid "Restore wp-config File"
|
4339 |
+
msgstr "wp-config 파일 복원"
|
4340 |
+
|
4341 |
+
#: admin/wp-security-settings-menu.php:509
|
4342 |
+
msgid "WP Generator Meta Tag & Version Info"
|
4343 |
+
msgstr ""
|
4344 |
+
|
4345 |
+
# @ all-in-one-wp-security-and-firewall
|
4346 |
+
#: admin/wp-security-settings-menu.php:512
|
4347 |
+
msgid ""
|
4348 |
+
"Wordpress generator automatically adds some meta information inside the "
|
4349 |
+
"\"head\" tags of every page on your site's front end. Below is an example of "
|
4350 |
+
"this:"
|
4351 |
+
msgstr ""
|
4352 |
+
|
4353 |
+
# @ all-in-one-wp-security-and-firewall
|
4354 |
+
#: admin/wp-security-settings-menu.php:514
|
4355 |
+
msgid ""
|
4356 |
+
"The above meta information shows which version of WordPress your site is "
|
4357 |
+
"currently running and thus can help hackers or crawlers scan your site to "
|
4358 |
+
"see if you have an older version of WordPress or one with a known exploit."
|
4359 |
+
msgstr ""
|
4360 |
+
|
4361 |
+
#: admin/wp-security-settings-menu.php:515
|
4362 |
+
msgid ""
|
4363 |
+
"There are also other ways wordpress reveals version info such as during "
|
4364 |
+
"style and script loading. An example of this is:"
|
4365 |
+
msgstr ""
|
4366 |
+
|
4367 |
+
#: admin/wp-security-settings-menu.php:517
|
4368 |
+
msgid ""
|
4369 |
+
"This feature will allow you to remove the WP generator meta info and other "
|
4370 |
+
"version info from your site's pages."
|
4371 |
+
msgstr ""
|
4372 |
+
|
4373 |
+
# @ all-in-one-wp-security-and-firewall
|
4374 |
+
#: admin/wp-security-settings-menu.php:523
|
4375 |
+
msgid "WP Generator Meta Info"
|
4376 |
+
msgstr ""
|
4377 |
+
|
4378 |
+
# @ all-in-one-wp-security-and-firewall
|
4379 |
+
#: admin/wp-security-settings-menu.php:535
|
4380 |
+
msgid "Remove WP Generator Meta Info"
|
4381 |
+
msgstr ""
|
4382 |
+
|
4383 |
+
#: admin/wp-security-settings-menu.php:538
|
4384 |
+
msgid ""
|
4385 |
+
"Check this if you want to remove the version and meta info produced by WP "
|
4386 |
+
"from all pages"
|
4387 |
+
msgstr ""
|
4388 |
+
|
4389 |
+
#: admin/wp-security-settings-menu.php:568
|
4390 |
+
msgid "Please choose a file to import your settings from."
|
4391 |
+
msgstr ""
|
4392 |
+
|
4393 |
+
#: admin/wp-security-settings-menu.php:600
|
4394 |
+
msgid "Import AIOWPS settings from "
|
4395 |
+
msgstr ""
|
4396 |
+
|
4397 |
+
#: admin/wp-security-settings-menu.php:606
|
4398 |
+
#: admin/wp-security-settings-menu.php:650
|
4399 |
+
msgid ""
|
4400 |
+
"The deletion of the import file failed. Please delete this file manually via "
|
4401 |
+
"the media menu for security purposes."
|
4402 |
+
msgstr ""
|
4403 |
+
|
4404 |
+
#: admin/wp-security-settings-menu.php:608
|
4405 |
+
#: admin/wp-security-settings-menu.php:652
|
4406 |
+
msgid ""
|
4407 |
+
"The file you uploaded was also deleted for security purposes because it "
|
4408 |
+
"contains security settings details."
|
4409 |
+
msgstr ""
|
4410 |
+
|
4411 |
+
#: admin/wp-security-settings-menu.php:623
|
4412 |
+
msgid "Your AIOWPS settings were successfully imported via file input."
|
4413 |
+
msgstr ""
|
4414 |
+
|
4415 |
+
#: admin/wp-security-settings-menu.php:624
|
4416 |
+
msgid ""
|
4417 |
+
"The deletion of the import file failed. Please delete this file manually via "
|
4418 |
+
"the media menu for security purposes because it contains security settings "
|
4419 |
+
"details."
|
4420 |
+
msgstr ""
|
4421 |
+
|
4422 |
+
#: admin/wp-security-settings-menu.php:626
|
4423 |
+
msgid ""
|
4424 |
+
"Your AIOWPS settings were successfully imported. The file you uploaded was "
|
4425 |
+
"also deleted for security purposes because it contains security settings "
|
4426 |
+
"details."
|
4427 |
+
msgstr ""
|
4428 |
+
|
4429 |
+
#: admin/wp-security-settings-menu.php:629
|
4430 |
+
msgid "Your AIOWPS settings were successfully imported via text entry."
|
4431 |
+
msgstr ""
|
4432 |
+
|
4433 |
+
#: admin/wp-security-settings-menu.php:644
|
4434 |
+
msgid ""
|
4435 |
+
"The contents of your settings file appear invalid. Please check the contents "
|
4436 |
+
"of the file you are trying to import settings from."
|
4437 |
+
msgstr ""
|
4438 |
+
|
4439 |
+
#: admin/wp-security-settings-menu.php:661
|
4440 |
+
msgid "Export or Import Your AIOWPS Settings"
|
4441 |
+
msgstr "AIOWPS 설정 내보내기 또는 가져오기"
|
4442 |
+
|
4443 |
+
#: admin/wp-security-settings-menu.php:664
|
4444 |
+
msgid ""
|
4445 |
+
"This section allows you to export or import your All In One WP Security & "
|
4446 |
+
"Firewall settings."
|
4447 |
+
msgstr ""
|
4448 |
+
"이 섹션에서는 모든 WP 보안 및 방화벽 설정을 내보내거나 가져올 수 있습니다."
|
4449 |
+
|
4450 |
+
#: admin/wp-security-settings-menu.php:665
|
4451 |
+
msgid ""
|
4452 |
+
"This can be handy if you wanted to save time by applying the settings from "
|
4453 |
+
"one site to another site."
|
4454 |
+
msgstr ""
|
4455 |
+
"이 기능은 한 사이트에서 다른 사이트로 설정을 적용하여 시간을 절약하려는 경우"
|
4456 |
+
"에 유용할 수 있습니다."
|
4457 |
+
|
4458 |
+
#: admin/wp-security-settings-menu.php:666
|
4459 |
+
msgid ""
|
4460 |
+
"NOTE: Before importing, it is your responsibility to know what settings you "
|
4461 |
+
"are trying to import. Importing settings blindly can cause you to be locked "
|
4462 |
+
"out of your site."
|
4463 |
+
msgstr ""
|
4464 |
+
"참고: 가져오기 전에 가져오려는 설정을 파악하는 것은 사용자의 책임입니다. 설정"
|
4465 |
+
"을 맹목적으로 가져오면 사이트에서 잠길 수 있습니다."
|
4466 |
+
|
4467 |
+
#: admin/wp-security-settings-menu.php:667
|
4468 |
+
msgid ""
|
4469 |
+
"For Example: If a settings item relies on the domain URL then it may not "
|
4470 |
+
"work correctly when imported into a site with a different domain."
|
4471 |
+
msgstr ""
|
4472 |
+
"예를 들어 설정 항목이 도메인 URL에 의존하는 경우 다른 도메인이 있는 사이트로 "
|
4473 |
+
"가져올 때 제대로 작동하지 않을 수 있습니다."
|
4474 |
+
|
4475 |
+
#: admin/wp-security-settings-menu.php:673
|
4476 |
+
#: admin/wp-security-settings-menu.php:682
|
4477 |
+
msgid "Export AIOWPS Settings"
|
4478 |
+
msgstr "AIOWPS 설정 내보내기"
|
4479 |
+
|
4480 |
+
#: admin/wp-security-settings-menu.php:679
|
4481 |
+
msgid ""
|
4482 |
+
"To export your All In One WP Security & Firewall settings click the button "
|
4483 |
+
"below."
|
4484 |
+
msgstr "모든 WP 보안 및 방화벽 설정을 내보내려면 아래 버튼을 클릭하십시오."
|
4485 |
+
|
4486 |
+
#: admin/wp-security-settings-menu.php:686
|
4487 |
+
#: admin/wp-security-settings-menu.php:711
|
4488 |
+
msgid "Import AIOWPS Settings"
|
4489 |
+
msgstr "AIOWPS 설정 가져오기"
|
4490 |
+
|
4491 |
+
#: admin/wp-security-settings-menu.php:692
|
4492 |
+
msgid ""
|
4493 |
+
"Use this section to import your All In One WP Security & Firewall settings "
|
4494 |
+
"from a file. Alternatively, copy/paste the contents of your import file into "
|
4495 |
+
"the textarea below."
|
4496 |
+
msgstr ""
|
4497 |
+
|
4498 |
+
#: admin/wp-security-settings-menu.php:693
|
4499 |
+
msgid "Import File"
|
4500 |
+
msgstr "파일 가져오기"
|
4501 |
+
|
4502 |
+
#: admin/wp-security-settings-menu.php:699
|
4503 |
+
msgid ""
|
4504 |
+
"After selecting your file, click the button below to apply the settings to "
|
4505 |
+
"your site."
|
4506 |
+
msgstr ""
|
4507 |
+
|
4508 |
+
#: admin/wp-security-settings-menu.php:705
|
4509 |
+
msgid "Copy/Paste Import Data"
|
4510 |
+
msgstr "가져오기 데이터 복사/붙여넣기"
|
4511 |
+
|
4512 |
+
#: admin/wp-security-spam-menu.php:24
|
4513 |
+
msgid "Comment SPAM"
|
4514 |
+
msgstr ""
|
4515 |
+
|
4516 |
+
#: admin/wp-security-spam-menu.php:25
|
4517 |
+
msgid "Comment SPAM IP Monitoring"
|
4518 |
+
msgstr ""
|
4519 |
+
|
4520 |
+
#: admin/wp-security-spam-menu.php:26
|
4521 |
+
msgid "BuddyPress"
|
4522 |
+
msgstr ""
|
4523 |
+
|
4524 |
+
# @ all-in-one-wp-security-and-firewall
|
4525 |
+
#: admin/wp-security-spam-menu.php:114
|
4526 |
+
msgid "Comment SPAM Settings"
|
4527 |
+
msgstr ""
|
4528 |
+
|
4529 |
+
#: admin/wp-security-spam-menu.php:119
|
4530 |
+
msgid "Add Captcha To Comments Form"
|
4531 |
+
msgstr ""
|
4532 |
+
|
4533 |
+
#: admin/wp-security-spam-menu.php:123
|
4534 |
+
msgid ""
|
4535 |
+
"This feature will add a simple math captcha field in the WordPress comments "
|
4536 |
+
"form."
|
4537 |
+
msgstr ""
|
4538 |
+
|
4539 |
+
#: admin/wp-security-spam-menu.php:124
|
4540 |
+
msgid ""
|
4541 |
+
"Adding a captcha field in the comment form is a simple way of greatly "
|
4542 |
+
"reducing SPAM comments from bots without using .htaccess rules."
|
4543 |
+
msgstr ""
|
4544 |
+
|
4545 |
+
#: admin/wp-security-spam-menu.php:133
|
4546 |
+
msgid "Enable Captcha On Comment Forms"
|
4547 |
+
msgstr ""
|
4548 |
+
|
4549 |
+
#: admin/wp-security-spam-menu.php:136
|
4550 |
+
msgid "Check this if you want to insert a captcha field on the comment forms"
|
4551 |
+
msgstr ""
|
4552 |
+
|
4553 |
+
# @ all-in-one-wp-security-and-firewall
|
4554 |
+
#: admin/wp-security-spam-menu.php:143
|
4555 |
+
msgid "Block Spambot Comments"
|
4556 |
+
msgstr ""
|
4557 |
+
|
4558 |
+
# @ all-in-one-wp-security-and-firewall
|
4559 |
+
#: admin/wp-security-spam-menu.php:147
|
4560 |
+
msgid ""
|
4561 |
+
"A large portion of WordPress blog comment SPAM is mainly produced by "
|
4562 |
+
"automated bots and not necessarily by humans. "
|
4563 |
+
msgstr ""
|
4564 |
+
|
4565 |
+
# @ all-in-one-wp-security-and-firewall
|
4566 |
+
#: admin/wp-security-spam-menu.php:148
|
4567 |
+
msgid ""
|
4568 |
+
"This feature will greatly minimize the useless and unecessary traffic and "
|
4569 |
+
"load on your server resulting from SPAM comments by blocking all comment "
|
4570 |
+
"requests which do not originate from your domain."
|
4571 |
+
msgstr ""
|
4572 |
+
|
4573 |
+
#: admin/wp-security-spam-menu.php:149
|
4574 |
+
msgid ""
|
4575 |
+
"In other words, if the comment was not submitted by a human who physically "
|
4576 |
+
"submitted the comment on your site, the request will be blocked."
|
4577 |
+
msgstr ""
|
4578 |
+
|
4579 |
+
# @ all-in-one-wp-security-and-firewall
|
4580 |
+
#: admin/wp-security-spam-menu.php:165
|
4581 |
+
msgid "Block Spambots From Posting Comments"
|
4582 |
+
msgstr ""
|
4583 |
+
|
4584 |
+
# @ all-in-one-wp-security-and-firewall
|
4585 |
+
#: admin/wp-security-spam-menu.php:168
|
4586 |
+
msgid ""
|
4587 |
+
"Check this if you want to apply a firewall rule which will block comments "
|
4588 |
+
"originating from spambots."
|
4589 |
+
msgstr ""
|
4590 |
+
|
4591 |
+
# @ all-in-one-wp-security-and-firewall
|
4592 |
+
#: admin/wp-security-spam-menu.php:172
|
4593 |
+
msgid ""
|
4594 |
+
"This feature will implement a firewall rule to block all comment attempts "
|
4595 |
+
"which do not originate from your domain."
|
4596 |
+
msgstr ""
|
4597 |
+
|
4598 |
+
# @ all-in-one-wp-security-and-firewall
|
4599 |
+
#: admin/wp-security-spam-menu.php:173
|
4600 |
+
msgid ""
|
4601 |
+
"A legitimate comment is one which is submitted by a human who physically "
|
4602 |
+
"fills out the comment form and clicks the submit button. For such events, "
|
4603 |
+
"the HTTP_REFERRER is always set to your own domain."
|
4604 |
+
msgstr ""
|
4605 |
+
|
4606 |
+
# @ all-in-one-wp-security-and-firewall
|
4607 |
+
#: admin/wp-security-spam-menu.php:174
|
4608 |
+
msgid ""
|
4609 |
+
"A comment submitted by a spambot is done by directly calling the comments."
|
4610 |
+
"php file, which usually means that the HTTP_REFERRER value is not your "
|
4611 |
+
"domain and often times empty."
|
4612 |
+
msgstr ""
|
4613 |
+
|
4614 |
+
# @ all-in-one-wp-security-and-firewall
|
4615 |
+
#: admin/wp-security-spam-menu.php:175
|
4616 |
+
msgid ""
|
4617 |
+
"This feature will check and block comment requests which are not referred by "
|
4618 |
+
"your domain thus greatly reducing your overall blog SPAM and PHP requests "
|
4619 |
+
"done by the server to process these comments."
|
4620 |
+
msgstr ""
|
4621 |
+
|
4622 |
+
#: admin/wp-security-spam-menu.php:210
|
4623 |
+
msgid ""
|
4624 |
+
"You entered a non numeric value for the minimum number of spam comments "
|
4625 |
+
"field. It has been set to the default value."
|
4626 |
+
msgstr ""
|
4627 |
+
|
4628 |
+
#: admin/wp-security-spam-menu.php:213
|
4629 |
+
msgid ""
|
4630 |
+
"You must enter an integer greater than zero for minimum number of spam "
|
4631 |
+
"comments field. It has been set to the default value."
|
4632 |
+
msgstr ""
|
4633 |
+
|
4634 |
+
# @ all-in-one-wp-security-and-firewall
|
4635 |
+
#: admin/wp-security-spam-menu.php:242
|
4636 |
+
msgid "Nonce check failed for list SPAM comment IPs!"
|
4637 |
+
msgstr ""
|
4638 |
+
|
4639 |
+
# @ all-in-one-wp-security-and-firewall
|
4640 |
+
#: admin/wp-security-spam-menu.php:248
|
4641 |
+
msgid ""
|
4642 |
+
"You entered a non numeric value for the minimum SPAM comments per IP field. "
|
4643 |
+
"It has been set to the default value."
|
4644 |
+
msgstr ""
|
4645 |
+
|
4646 |
+
# @ all-in-one-wp-security-and-firewall
|
4647 |
+
#: admin/wp-security-spam-menu.php:260
|
4648 |
+
#, php-format
|
4649 |
+
msgid ""
|
4650 |
+
"Displaying results for IP addresses which have posted a minimum of %s SPAM "
|
4651 |
+
"comments"
|
4652 |
+
msgstr ""
|
4653 |
+
|
4654 |
+
#: admin/wp-security-spam-menu.php:275
|
4655 |
+
msgid "Auto Block SPAMMER IPs"
|
4656 |
+
msgstr ""
|
4657 |
+
|
4658 |
+
#: admin/wp-security-spam-menu.php:280
|
4659 |
+
#, php-format
|
4660 |
+
msgid ""
|
4661 |
+
"This feature has detected that %s is not active. It is highly recommended "
|
4662 |
+
"that you activate the Akismet plugin to make the most of this feature."
|
4663 |
+
msgstr ""
|
4664 |
+
|
4665 |
+
#: admin/wp-security-spam-menu.php:289
|
4666 |
+
msgid ""
|
4667 |
+
"This feature allows you to automatically and permanently block IP addresses "
|
4668 |
+
"which have exceeded a certain number of comments labelled as SPAM."
|
4669 |
+
msgstr ""
|
4670 |
+
|
4671 |
+
#: admin/wp-security-spam-menu.php:290
|
4672 |
+
msgid ""
|
4673 |
+
"Comments are usually labelled as SPAM either by the Akismet plugin or "
|
4674 |
+
"manually by the WP administrator when they mark a comment as \"spam\" from "
|
4675 |
+
"the WordPress Comments menu."
|
4676 |
+
msgstr ""
|
4677 |
+
|
4678 |
+
#: admin/wp-security-spam-menu.php:304
|
4679 |
+
msgid "You currently have no IP addresses permanently blocked due to SPAM."
|
4680 |
+
msgstr ""
|
4681 |
+
|
4682 |
+
#: admin/wp-security-spam-menu.php:317
|
4683 |
+
msgid "Spammer IPs Added To Permanent Block List Today: "
|
4684 |
+
msgstr ""
|
4685 |
+
|
4686 |
+
#: admin/wp-security-spam-menu.php:318
|
4687 |
+
msgid "All Time Total: "
|
4688 |
+
msgstr ""
|
4689 |
+
|
4690 |
+
#: admin/wp-security-spam-menu.php:332
|
4691 |
+
msgid "Enable Auto Block of SPAM Comment IPs"
|
4692 |
+
msgstr ""
|
4693 |
+
|
4694 |
+
#: admin/wp-security-spam-menu.php:335
|
4695 |
+
msgid ""
|
4696 |
+
"Check this box if you want this plugin to automatically block IP addresses "
|
4697 |
+
"which submit SPAM comments."
|
4698 |
+
msgstr ""
|
4699 |
+
|
4700 |
+
#: admin/wp-security-spam-menu.php:339
|
4701 |
+
msgid "Minimum number of SPAM comments"
|
4702 |
+
msgstr ""
|
4703 |
+
|
4704 |
+
#: admin/wp-security-spam-menu.php:341
|
4705 |
+
msgid ""
|
4706 |
+
"Specify the minimum number of SPAM comments for an IP address before it is "
|
4707 |
+
"permanently blocked."
|
4708 |
+
msgstr ""
|
4709 |
+
|
4710 |
+
#: admin/wp-security-spam-menu.php:345
|
4711 |
+
msgid ""
|
4712 |
+
"Example 1: Setting this value to \"1\" will block ALL IP addresses which "
|
4713 |
+
"were used to submit at least one SPAM comment."
|
4714 |
+
msgstr ""
|
4715 |
+
|
4716 |
+
#: admin/wp-security-spam-menu.php:346
|
4717 |
+
msgid ""
|
4718 |
+
"Example 2: Setting this value to \"5\" will block only those IP addresses "
|
4719 |
+
"which were used to submit 5 SPAM comments or more on your site."
|
4720 |
+
msgstr ""
|
4721 |
+
|
4722 |
+
# @ all-in-one-wp-security-and-firewall
|
4723 |
+
#: admin/wp-security-spam-menu.php:364
|
4724 |
+
msgid "List SPAMMER IP Addresses"
|
4725 |
+
msgstr ""
|
4726 |
+
|
4727 |
+
#: admin/wp-security-spam-menu.php:368
|
4728 |
+
msgid ""
|
4729 |
+
"This section displays a list of the IP addresses of the people or bots who "
|
4730 |
+
"have left SPAM comments on your site."
|
4731 |
+
msgstr ""
|
4732 |
+
|
4733 |
+
# @ all-in-one-wp-security-and-firewall
|
4734 |
+
#: admin/wp-security-spam-menu.php:369
|
4735 |
+
msgid ""
|
4736 |
+
"This information can be handy for identifying the most persistent IP "
|
4737 |
+
"addresses or ranges used by spammers."
|
4738 |
+
msgstr ""
|
4739 |
+
|
4740 |
+
# @ all-in-one-wp-security-and-firewall
|
4741 |
+
#: admin/wp-security-spam-menu.php:370
|
4742 |
+
msgid ""
|
4743 |
+
"By inspecting the IP address data coming from spammers you will be in a "
|
4744 |
+
"better position to determine which addresses or address ranges you should "
|
4745 |
+
"block by adding them to your blacklist."
|
4746 |
+
msgstr ""
|
4747 |
+
|
4748 |
+
#: admin/wp-security-spam-menu.php:371
|
4749 |
+
msgid ""
|
4750 |
+
"To add one or more of the IP addresses displayed in the table below to your "
|
4751 |
+
"blacklist, simply click the \"Block\" link for the individual row or select "
|
4752 |
+
"more than one address\n"
|
4753 |
+
" using the checkboxes and then choose the \"block"
|
4754 |
+
"\" option from the Bulk Actions dropdown list and click the \"Apply\" button."
|
4755 |
+
msgstr ""
|
4756 |
+
|
4757 |
+
# @ all-in-one-wp-security-and-firewall
|
4758 |
+
#: admin/wp-security-spam-menu.php:381
|
4759 |
+
msgid "Minimum number of SPAM comments per IP"
|
4760 |
+
msgstr ""
|
4761 |
+
|
4762 |
+
# @ all-in-one-wp-security-and-firewall
|
4763 |
+
#: admin/wp-security-spam-menu.php:383
|
4764 |
+
msgid ""
|
4765 |
+
"This field allows you to list only those IP addresses which have been used "
|
4766 |
+
"to post X or more SPAM comments."
|
4767 |
+
msgstr ""
|
4768 |
+
|
4769 |
+
# @ all-in-one-wp-security-and-firewall
|
4770 |
+
#: admin/wp-security-spam-menu.php:387
|
4771 |
+
msgid ""
|
4772 |
+
"Example 1: Setting this value to \"0\" or \"1\" will list ALL IP addresses "
|
4773 |
+
"which were used to submit SPAM comments."
|
4774 |
+
msgstr ""
|
4775 |
+
|
4776 |
+
# @ all-in-one-wp-security-and-firewall
|
4777 |
+
#: admin/wp-security-spam-menu.php:388
|
4778 |
+
msgid ""
|
4779 |
+
"Example 2: Setting this value to \"5\" will list only those IP addresses "
|
4780 |
+
"which were used to submit 5 SPAM comments or more on your site."
|
4781 |
+
msgstr ""
|
4782 |
+
|
4783 |
+
# @ all-in-one-wp-security-and-firewall
|
4784 |
+
#: admin/wp-security-spam-menu.php:395
|
4785 |
+
msgid "Find IP Addresses"
|
4786 |
+
msgstr ""
|
4787 |
+
|
4788 |
+
# @ all-in-one-wp-security-and-firewall
|
4789 |
+
#: admin/wp-security-spam-menu.php:399
|
4790 |
+
msgid "SPAMMER IP Address Results"
|
4791 |
+
msgstr ""
|
4792 |
+
|
4793 |
+
# @ all-in-one-wp-security-and-firewall
|
4794 |
+
#: admin/wp-security-spam-menu.php:405 classes/wp-security-utility.php:225
|
4795 |
+
msgid ""
|
4796 |
+
"The plugin has detected that you are using a Multi-Site WordPress "
|
4797 |
+
"installation."
|
4798 |
+
msgstr ""
|
4799 |
+
|
4800 |
+
# @ all-in-one-wp-security-and-firewall
|
4801 |
+
#: admin/wp-security-spam-menu.php:406
|
4802 |
+
msgid "Only the \"superadmin\" can block IP addresses from the main site."
|
4803 |
+
msgstr ""
|
4804 |
+
|
4805 |
+
# @ all-in-one-wp-security-and-firewall
|
4806 |
+
#: admin/wp-security-spam-menu.php:407
|
4807 |
+
msgid ""
|
4808 |
+
"Take note of the IP addresses you want blocked and ask the superadmin to add "
|
4809 |
+
"these to the blacklist using the \"Blacklist Manager\" on the main site."
|
4810 |
+
msgstr ""
|
4811 |
+
|
4812 |
+
#: admin/wp-security-spam-menu.php:452
|
4813 |
+
msgid "BuddyPress SPAM Settings"
|
4814 |
+
msgstr ""
|
4815 |
+
|
4816 |
+
#: admin/wp-security-spam-menu.php:457
|
4817 |
+
msgid "Add Captcha To BuddyPress Registration Form"
|
4818 |
+
msgstr ""
|
4819 |
+
|
4820 |
+
#: admin/wp-security-spam-menu.php:461
|
4821 |
+
msgid ""
|
4822 |
+
"This feature will add a simple math captcha field in the BuddyPress "
|
4823 |
+
"registration form."
|
4824 |
+
msgstr ""
|
4825 |
+
|
4826 |
+
#: admin/wp-security-spam-menu.php:462
|
4827 |
+
msgid ""
|
4828 |
+
"Adding a captcha field in the registration form is a simple way of greatly "
|
4829 |
+
"reducing SPAM signups from bots without using .htaccess rules."
|
4830 |
+
msgstr ""
|
4831 |
+
|
4832 |
+
#: admin/wp-security-spam-menu.php:472
|
4833 |
+
msgid "Enable Captcha On BuddyPress Registration Form"
|
4834 |
+
msgstr ""
|
4835 |
+
|
4836 |
+
#: admin/wp-security-spam-menu.php:475
|
4837 |
+
msgid ""
|
4838 |
+
"Check this if you want to insert a captcha field on the BuddyPress "
|
4839 |
+
"registration forms"
|
4840 |
+
msgstr ""
|
4841 |
+
|
4842 |
+
#: admin/wp-security-spam-menu.php:484
|
4843 |
+
msgid ""
|
4844 |
+
"BuddyPress is not active! In order to use this feature you will need to have "
|
4845 |
+
"BuddyPress installed and activated."
|
4846 |
+
msgstr ""
|
4847 |
+
|
4848 |
+
#: admin/wp-security-user-accounts-menu.php:29
|
4849 |
+
msgid "WP Username"
|
4850 |
+
msgstr "WP 사용자 이름"
|
4851 |
+
|
4852 |
+
#: admin/wp-security-user-accounts-menu.php:30
|
4853 |
+
msgid "Display Name"
|
4854 |
+
msgstr "표시 이름"
|
4855 |
+
|
4856 |
+
#: admin/wp-security-user-accounts-menu.php:31
|
4857 |
+
#: other-includes/wp-security-rename-login-feature.php:915
|
4858 |
+
msgid "Password"
|
4859 |
+
msgstr "비밀번호"
|
4860 |
+
|
4861 |
+
# @ all-in-one-wp-security-and-firewall
|
4862 |
+
#: admin/wp-security-user-accounts-menu.php:86
|
4863 |
+
msgid "Admin User Security"
|
4864 |
+
msgstr "관리자 사용자 보안"
|
4865 |
+
|
4866 |
+
# @ all-in-one-wp-security-and-firewall
|
4867 |
+
#: admin/wp-security-user-accounts-menu.php:89
|
4868 |
+
msgid ""
|
4869 |
+
"By default, WordPress sets the administrator username to \"admin\" at "
|
4870 |
+
"installation time."
|
4871 |
+
msgstr ""
|
4872 |
+
|
4873 |
+
# @ all-in-one-wp-security-and-firewall
|
4874 |
+
#: admin/wp-security-user-accounts-menu.php:90
|
4875 |
+
msgid ""
|
4876 |
+
"A lot of hackers try to take advantage of this information by attempting "
|
4877 |
+
"\"Brute Force Login Attacks\" where they repeatedly try to guess the "
|
4878 |
+
"password by using \"admin\" for username."
|
4879 |
+
msgstr ""
|
4880 |
+
|
4881 |
+
# @ all-in-one-wp-security-and-firewall
|
4882 |
+
#: admin/wp-security-user-accounts-menu.php:91
|
4883 |
+
msgid ""
|
4884 |
+
"From a security perspective, changing the default \"admin\" user name is one "
|
4885 |
+
"of the first and smartest things you should do on your site."
|
4886 |
+
msgstr ""
|
4887 |
+
|
4888 |
+
# @ all-in-one-wp-security-and-firewall
|
4889 |
+
#: admin/wp-security-user-accounts-menu.php:92
|
4890 |
+
msgid ""
|
4891 |
+
"This feature will allow you to change your default \"admin\" user name to a "
|
4892 |
+
"more secure name of your choosing."
|
4893 |
+
msgstr ""
|
4894 |
+
|
4895 |
+
# @ all-in-one-wp-security-and-firewall
|
4896 |
+
#: admin/wp-security-user-accounts-menu.php:99
|
4897 |
+
msgid "List of Administrator Accounts"
|
4898 |
+
msgstr "관리자 계정 목록"
|
4899 |
+
|
4900 |
+
# @ all-in-one-wp-security-and-firewall
|
4901 |
+
#: admin/wp-security-user-accounts-menu.php:108
|
4902 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:36
|
4903 |
+
msgid "Change Admin Username"
|
4904 |
+
msgstr "관리자 사용자 이름 변경"
|
4905 |
+
|
4906 |
+
# @ all-in-one-wp-security-and-firewall
|
4907 |
+
#: admin/wp-security-user-accounts-menu.php:116
|
4908 |
+
msgid ""
|
4909 |
+
"Your site currently has an account which uses the default \"admin\" "
|
4910 |
+
"username. \n"
|
4911 |
+
" It is highly recommended that you change this name to "
|
4912 |
+
"something else. \n"
|
4913 |
+
" Use the following field to change the admin username."
|
4914 |
+
msgstr ""
|
4915 |
+
|
4916 |
+
# @ all-in-one-wp-security-and-firewall
|
4917 |
+
#: admin/wp-security-user-accounts-menu.php:124
|
4918 |
+
msgid "New Admin Username"
|
4919 |
+
msgstr ""
|
4920 |
+
|
4921 |
+
# @ all-in-one-wp-security-and-firewall
|
4922 |
+
#: admin/wp-security-user-accounts-menu.php:126
|
4923 |
+
msgid "Choose a new username for admin."
|
4924 |
+
msgstr ""
|
4925 |
+
|
4926 |
+
# @ all-in-one-wp-security-and-firewall
|
4927 |
+
#: admin/wp-security-user-accounts-menu.php:130
|
4928 |
+
msgid "Change Username"
|
4929 |
+
msgstr ""
|
4930 |
+
|
4931 |
+
# @ all-in-one-wp-security-and-firewall
|
4932 |
+
#: admin/wp-security-user-accounts-menu.php:132
|
4933 |
+
msgid ""
|
4934 |
+
"NOTE: If you are currently logged in as \"admin\" you will be automatically "
|
4935 |
+
"logged out after changing your username and will be required to log back in."
|
4936 |
+
msgstr ""
|
4937 |
+
|
4938 |
+
# @ all-in-one-wp-security-and-firewall
|
4939 |
+
#: admin/wp-security-user-accounts-menu.php:139
|
4940 |
+
msgid "No action required! "
|
4941 |
+
msgstr "필요한 조치가 없습니다."
|
4942 |
+
|
4943 |
+
# @ all-in-one-wp-security-and-firewall
|
4944 |
+
#: admin/wp-security-user-accounts-menu.php:141
|
4945 |
+
msgid ""
|
4946 |
+
"Your site does not have any account which uses the default \"admin\" "
|
4947 |
+
"username. "
|
4948 |
+
msgstr "사이트에기본 \"관리자\" 사용자 이름을 사용하는 계정이 없습니다."
|
4949 |
+
|
4950 |
+
# @ all-in-one-wp-security-and-firewall
|
4951 |
+
#: admin/wp-security-user-accounts-menu.php:142
|
4952 |
+
msgid "This is good security practice."
|
4953 |
+
msgstr "이것은 좋은 보안 관행입니다."
|
4954 |
+
|
4955 |
+
# @ all-in-one-wp-security-and-firewall
|
4956 |
+
#: admin/wp-security-user-accounts-menu.php:154
|
4957 |
+
msgid "Display Name Security"
|
4958 |
+
msgstr ""
|
4959 |
+
|
4960 |
+
# @ all-in-one-wp-security-and-firewall
|
4961 |
+
#: admin/wp-security-user-accounts-menu.php:157
|
4962 |
+
msgid ""
|
4963 |
+
"When you submit a post or answer a comment, WordPress will usually display "
|
4964 |
+
"your \"nickname\"."
|
4965 |
+
msgstr ""
|
4966 |
+
|
4967 |
+
# @ all-in-one-wp-security-and-firewall
|
4968 |
+
#: admin/wp-security-user-accounts-menu.php:158
|
4969 |
+
msgid ""
|
4970 |
+
"By default the nickname is set to the login (or user) name of your account."
|
4971 |
+
msgstr ""
|
4972 |
+
|
4973 |
+
# @ all-in-one-wp-security-and-firewall
|
4974 |
+
#: admin/wp-security-user-accounts-menu.php:159
|
4975 |
+
msgid ""
|
4976 |
+
"From a security perspective, leaving your nickname the same as your user "
|
4977 |
+
"name is bad practice because it gives a hacker at least half of your "
|
4978 |
+
"account's login credentials."
|
4979 |
+
msgstr ""
|
4980 |
+
|
4981 |
+
# @ all-in-one-wp-security-and-firewall
|
4982 |
+
#: admin/wp-security-user-accounts-menu.php:160
|
4983 |
+
msgid ""
|
4984 |
+
"Therefore to further tighten your site's security you are advised to change "
|
4985 |
+
"your <strong>nickname</strong> and <strong>Display name</strong> to be "
|
4986 |
+
"different from your <strong>Username</strong>."
|
4987 |
+
msgstr ""
|
4988 |
+
|
4989 |
+
# @ all-in-one-wp-security-and-firewall
|
4990 |
+
#: admin/wp-security-user-accounts-menu.php:166
|
4991 |
+
msgid "Modify Accounts With Identical Login Name & Display Name"
|
4992 |
+
msgstr "동일한 로그인 이름 및 표시 이름으로 계정 수정"
|
4993 |
+
|
4994 |
+
# @ all-in-one-wp-security-and-firewall
|
4995 |
+
#: admin/wp-security-user-accounts-menu.php:175
|
4996 |
+
msgid ""
|
4997 |
+
"Your site currently has the following accounts which have an identical login "
|
4998 |
+
"name and display name."
|
4999 |
+
msgstr "사이트에는 현재 로그인 이름과 표시 이름이 동일한 다음 계정이 있습니다."
|
5000 |
+
|
5001 |
+
# @ all-in-one-wp-security-and-firewall
|
5002 |
+
#: admin/wp-security-user-accounts-menu.php:176
|
5003 |
+
msgid "Click on the link to edit the settings of that particular user account"
|
5004 |
+
msgstr "링크를 클릭하여 해당 특정 사용자 계정의 설정을 수정합니다."
|
5005 |
+
|
5006 |
+
# @ all-in-one-wp-security-and-firewall
|
5007 |
+
#: admin/wp-security-user-accounts-menu.php:191
|
5008 |
+
msgid "No action required."
|
5009 |
+
msgstr "필요한 조치가 없습니다."
|
5010 |
+
|
5011 |
+
# @ all-in-one-wp-security-and-firewall
|
5012 |
+
#: admin/wp-security-user-accounts-menu.php:192
|
5013 |
+
msgid ""
|
5014 |
+
"Your site does not have a user account where the display name is identical "
|
5015 |
+
"to the username."
|
5016 |
+
msgstr ""
|
5017 |
+
|
5018 |
+
# @ all-in-one-wp-security-and-firewall
|
5019 |
+
#: admin/wp-security-user-accounts-menu.php:203
|
5020 |
+
msgid "Password Tool"
|
5021 |
+
msgstr "암호 도구"
|
5022 |
+
|
5023 |
+
# @ all-in-one-wp-security-and-firewall
|
5024 |
+
#: admin/wp-security-user-accounts-menu.php:206
|
5025 |
+
msgid ""
|
5026 |
+
"Poor password selection is one of the most common weak points of many sites "
|
5027 |
+
"and is usually the first thing a hacker will try to exploit when attempting "
|
5028 |
+
"to break into your site."
|
5029 |
+
msgstr ""
|
5030 |
+
|
5031 |
+
# @ all-in-one-wp-security-and-firewall
|
5032 |
+
#: admin/wp-security-user-accounts-menu.php:207
|
5033 |
+
msgid ""
|
5034 |
+
"Many people fall into the trap of using a simple word or series of numbers "
|
5035 |
+
"as their password. Such a predictable and simple password would take a "
|
5036 |
+
"competent hacker merely minutes to guess your password by using a simple "
|
5037 |
+
"script which cycles through the easy and most common combinations."
|
5038 |
+
msgstr ""
|
5039 |
+
|
5040 |
+
# @ all-in-one-wp-security-and-firewall
|
5041 |
+
#: admin/wp-security-user-accounts-menu.php:208
|
5042 |
+
msgid ""
|
5043 |
+
"The longer and more complex your password is the harder it is for hackers to "
|
5044 |
+
"\"crack\" because more complex passwords require much greater computing "
|
5045 |
+
"power and time."
|
5046 |
+
msgstr ""
|
5047 |
+
|
5048 |
+
# @ all-in-one-wp-security-and-firewall
|
5049 |
+
#: admin/wp-security-user-accounts-menu.php:209
|
5050 |
+
msgid ""
|
5051 |
+
"This section contains a useful password strength tool which you can use to "
|
5052 |
+
"check whether your password is sufficiently strong enough."
|
5053 |
+
msgstr ""
|
5054 |
+
|
5055 |
+
# @ all-in-one-wp-security-and-firewall
|
5056 |
+
#: admin/wp-security-user-accounts-menu.php:214
|
5057 |
+
msgid "Password Strength Tool"
|
5058 |
+
msgstr "암호 강도 도구"
|
5059 |
+
|
5060 |
+
# @ all-in-one-wp-security-and-firewall
|
5061 |
+
#: admin/wp-security-user-accounts-menu.php:219
|
5062 |
+
msgid "Start typing a password."
|
5063 |
+
msgstr "암호 입력을 시작합니다."
|
5064 |
+
|
5065 |
+
#: admin/wp-security-user-accounts-menu.php:222
|
5066 |
+
msgid "It would take a desktop PC approximately"
|
5067 |
+
msgstr ""
|
5068 |
+
|
5069 |
+
#: admin/wp-security-user-accounts-menu.php:223
|
5070 |
+
msgid "1 sec"
|
5071 |
+
msgstr "1 초"
|
5072 |
+
|
5073 |
+
#: admin/wp-security-user-accounts-menu.php:223
|
5074 |
+
msgid "to crack your password!"
|
5075 |
+
msgstr ""
|
5076 |
+
|
5077 |
+
#: admin/wp-security-user-accounts-menu.php:228
|
5078 |
+
msgid "Password Strength"
|
5079 |
+
msgstr "비밀번호 보안수준"
|
5080 |
+
|
5081 |
+
# @ all-in-one-wp-security-and-firewall
|
5082 |
+
#: admin/wp-security-user-accounts-menu.php:244
|
5083 |
+
msgid "Nonce check failed on admin username change operation!"
|
5084 |
+
msgstr "Nonce 확인 관리자 사용자 이름 변경 작업에 실패!"
|
5085 |
+
|
5086 |
+
# @ all-in-one-wp-security-and-firewall
|
5087 |
+
#: admin/wp-security-user-accounts-menu.php:251
|
5088 |
+
msgid "Username "
|
5089 |
+
msgstr "이용자명"
|
5090 |
+
|
5091 |
+
# @ all-in-one-wp-security-and-firewall
|
5092 |
+
#: admin/wp-security-user-accounts-menu.php:251
|
5093 |
+
msgid " already exists. Please enter another value. "
|
5094 |
+
msgstr ""
|
5095 |
+
|
5096 |
+
# @ all-in-one-wp-security-and-firewall
|
5097 |
+
#: admin/wp-security-user-accounts-menu.php:268
|
5098 |
+
msgid "The database update operation of the user account failed!"
|
5099 |
+
msgstr ""
|
5100 |
+
|
5101 |
+
# @ all-in-one-wp-security-and-firewall
|
5102 |
+
#: admin/wp-security-user-accounts-menu.php:297
|
5103 |
+
msgid "You entered an invalid username. Please enter another value. "
|
5104 |
+
msgstr ""
|
5105 |
+
|
5106 |
+
# @ all-in-one-wp-security-and-firewall
|
5107 |
+
#: admin/wp-security-user-accounts-menu.php:301
|
5108 |
+
msgid "Please enter a value for your username. "
|
5109 |
+
msgstr ""
|
5110 |
+
|
5111 |
+
# @ all-in-one-wp-security-and-firewall
|
5112 |
+
#: admin/wp-security-user-accounts-menu.php:308
|
5113 |
+
msgid "Username Successfully Changed!"
|
5114 |
+
msgstr ""
|
5115 |
+
|
5116 |
+
# @ all-in-one-wp-security-and-firewall
|
5117 |
+
#: admin/wp-security-user-accounts-menu.php:328
|
5118 |
+
msgid "Account Login Name"
|
5119 |
+
msgstr "계정 로그인 이름"
|
5120 |
+
|
5121 |
+
# @ all-in-one-wp-security-and-firewall
|
5122 |
+
#: admin/wp-security-user-login-menu.php:26
|
5123 |
+
#: admin/wp-security-user-login-menu.php:325
|
5124 |
+
msgid "Failed Login Records"
|
5125 |
+
msgstr "실패한 로그인 레코드"
|
5126 |
+
|
5127 |
+
#: admin/wp-security-user-login-menu.php:27
|
5128 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:51
|
5129 |
+
msgid "Force Logout"
|
5130 |
+
msgstr "강제 로그아웃"
|
5131 |
+
|
5132 |
+
# @ all-in-one-wp-security-and-firewall
|
5133 |
+
#: admin/wp-security-user-login-menu.php:28
|
5134 |
+
#: admin/wp-security-user-login-menu.php:459
|
5135 |
+
msgid "Account Activity Logs"
|
5136 |
+
msgstr "계정 활동 로그"
|
5137 |
+
|
5138 |
+
# @ all-in-one-wp-security-and-firewall
|
5139 |
+
#: admin/wp-security-user-login-menu.php:97
|
5140 |
+
msgid ""
|
5141 |
+
"You entered a non numeric value for the max login attempts field. It has "
|
5142 |
+
"been set to the default value."
|
5143 |
+
msgstr ""
|
5144 |
+
|
5145 |
+
# @ all-in-one-wp-security-and-firewall
|
5146 |
+
#: admin/wp-security-user-login-menu.php:104
|
5147 |
+
msgid ""
|
5148 |
+
"You entered a non numeric value for the login retry time period field. It "
|
5149 |
+
"has been set to the default value."
|
5150 |
+
msgstr ""
|
5151 |
+
|
5152 |
+
# @ all-in-one-wp-security-and-firewall
|
5153 |
+
#: admin/wp-security-user-login-menu.php:176
|
5154 |
+
msgid "Login Lockdown Configuration"
|
5155 |
+
msgstr "로그인 잠금 구성"
|
5156 |
+
|
5157 |
+
# @ all-in-one-wp-security-and-firewall
|
5158 |
+
#: admin/wp-security-user-login-menu.php:180
|
5159 |
+
msgid "One of the ways hackers try to compromise sites is via a "
|
5160 |
+
msgstr ""
|
5161 |
+
|
5162 |
+
# @ all-in-one-wp-security-and-firewall
|
5163 |
+
#: admin/wp-security-user-login-menu.php:180
|
5164 |
+
msgid "Brute Force Login Attack"
|
5165 |
+
msgstr ""
|
5166 |
+
|
5167 |
+
# @ all-in-one-wp-security-and-firewall
|
5168 |
+
#: admin/wp-security-user-login-menu.php:180
|
5169 |
+
msgid ""
|
5170 |
+
"This is where attackers use repeated login attempts until they guess the "
|
5171 |
+
"password."
|
5172 |
+
msgstr ""
|
5173 |
+
|
5174 |
+
# @ all-in-one-wp-security-and-firewall
|
5175 |
+
#: admin/wp-security-user-login-menu.php:181
|
5176 |
+
msgid ""
|
5177 |
+
"Apart from choosing strong passwords, monitoring and blocking IP addresses "
|
5178 |
+
"which are involved in repeated login failures in a short period of time is a "
|
5179 |
+
"very effective way to stop these types of attacks."
|
5180 |
+
msgstr ""
|
5181 |
+
|
5182 |
+
# @ all-in-one-wp-security-and-firewall
|
5183 |
+
#: admin/wp-security-user-login-menu.php:182
|
5184 |
+
#, php-format
|
5185 |
+
msgid ""
|
5186 |
+
"You may also want to checkout our %s feature for another secure way to "
|
5187 |
+
"protect against these types of attacks."
|
5188 |
+
msgstr ""
|
5189 |
+
|
5190 |
+
# @ all-in-one-wp-security-and-firewall
|
5191 |
+
#: admin/wp-security-user-login-menu.php:187
|
5192 |
+
msgid "Login Lockdown Options"
|
5193 |
+
msgstr "로그인 잠금 옵션"
|
5194 |
+
|
5195 |
+
# @ all-in-one-wp-security-and-firewall
|
5196 |
+
#: admin/wp-security-user-login-menu.php:198
|
5197 |
+
msgid "Enable Login Lockdown Feature"
|
5198 |
+
msgstr "로그인 잠금 기능 사용"
|
5199 |
+
|
5200 |
+
# @ all-in-one-wp-security-and-firewall
|
5201 |
+
#: admin/wp-security-user-login-menu.php:201
|
5202 |
+
msgid ""
|
5203 |
+
"Check this if you want to enable the login lockdown feature and apply the "
|
5204 |
+
"settings below"
|
5205 |
+
msgstr ""
|
5206 |
+
"로그인 잠금 기능을 사용하도록 설정하고 아래 설정을 적용하려면 이 방법을 확인"
|
5207 |
+
"하십시오."
|
5208 |
+
|
5209 |
+
#: admin/wp-security-user-login-menu.php:205
|
5210 |
+
msgid "Allow Unlock Requests"
|
5211 |
+
msgstr "잠금 해제 요청 허용"
|
5212 |
+
|
5213 |
+
#: admin/wp-security-user-login-menu.php:208
|
5214 |
+
msgid ""
|
5215 |
+
"Check this if you want to allow users to generate an automated unlock "
|
5216 |
+
"request link which will unlock their account"
|
5217 |
+
msgstr ""
|
5218 |
+
"사용자가 계정잠금을 해제하는 자동 잠금 해제 요청 링크를 생성하도록 허용하려"
|
5219 |
+
"면 이 방법을 확인합니다."
|
5220 |
+
|
5221 |
+
# @ all-in-one-wp-security-and-firewall
|
5222 |
+
#: admin/wp-security-user-login-menu.php:212
|
5223 |
+
msgid "Max Login Attempts"
|
5224 |
+
msgstr "최대 로그인 시도"
|
5225 |
+
|
5226 |
+
# @ all-in-one-wp-security-and-firewall
|
5227 |
+
#: admin/wp-security-user-login-menu.php:214
|
5228 |
+
msgid ""
|
5229 |
+
"Set the value for the maximum login retries before IP address is locked out"
|
5230 |
+
msgstr "IP 주소가 잠기기 전에 최대 로그인 리트리에 대한 값을 설정합니다."
|
5231 |
+
|
5232 |
+
# @ all-in-one-wp-security-and-firewall
|
5233 |
+
#: admin/wp-security-user-login-menu.php:218
|
5234 |
+
msgid "Login Retry Time Period (min)"
|
5235 |
+
msgstr "로그인 재시도 기간(최소)"
|
5236 |
+
|
5237 |
+
# @ all-in-one-wp-security-and-firewall
|
5238 |
+
#: admin/wp-security-user-login-menu.php:220
|
5239 |
+
msgid ""
|
5240 |
+
"If the maximum number of failed login attempts for a particular IP address "
|
5241 |
+
"occur within this time period the plugin will lock out that address"
|
5242 |
+
msgstr ""
|
5243 |
+
"특정 IP 주소에 대한 로그인 시도가 최대 실패한 경우 이 기간 내에 플러그인이 해"
|
5244 |
+
"당 주소를 잠그게 됩니다."
|
5245 |
+
|
5246 |
+
# @ all-in-one-wp-security-and-firewall
|
5247 |
+
#: admin/wp-security-user-login-menu.php:224
|
5248 |
+
msgid "Time Length of Lockout (min)"
|
5249 |
+
msgstr "잠금 시간 (최소)"
|
5250 |
+
|
5251 |
+
# @ all-in-one-wp-security-and-firewall
|
5252 |
+
#: admin/wp-security-user-login-menu.php:226
|
5253 |
+
msgid ""
|
5254 |
+
"Set the length of time for which a particular IP address will be prevented "
|
5255 |
+
"from logging in"
|
5256 |
+
msgstr "특정 IP 주소가 로그인되지 못하도록 하는 시간 의 길이 설정"
|
5257 |
+
|
5258 |
+
# @ all-in-one-wp-security-and-firewall
|
5259 |
+
#: admin/wp-security-user-login-menu.php:230
|
5260 |
+
msgid "Display Generic Error Message"
|
5261 |
+
msgstr "일반 오류 메시지 표시"
|
5262 |
+
|
5263 |
+
# @ all-in-one-wp-security-and-firewall
|
5264 |
+
#: admin/wp-security-user-login-menu.php:233
|
5265 |
+
msgid ""
|
5266 |
+
"Check this if you want to show a generic error message when a login attempt "
|
5267 |
+
"fails"
|
5268 |
+
msgstr ""
|
5269 |
+
"로그인 시도가 실패할 때 일반 오류 메시지를 표시하려는 경우 이 방법을 확인합니"
|
5270 |
+
"다."
|
5271 |
+
|
5272 |
+
# @ all-in-one-wp-security-and-firewall
|
5273 |
+
#: admin/wp-security-user-login-menu.php:237
|
5274 |
+
msgid "Instantly Lockout Invalid Usernames"
|
5275 |
+
msgstr "즉시 잘못된 사용자 이름을 잠그기"
|
5276 |
+
|
5277 |
+
# @ all-in-one-wp-security-and-firewall
|
5278 |
+
#: admin/wp-security-user-login-menu.php:240
|
5279 |
+
msgid ""
|
5280 |
+
"Check this if you want to instantly lockout login attempts with usernames "
|
5281 |
+
"which do not exist on your system"
|
5282 |
+
msgstr ""
|
5283 |
+
"시스템에 존재하지 않는 사용자 이름으로 로그인 시도를 즉시 잠그려면 이 방법을 "
|
5284 |
+
"확인하십시오."
|
5285 |
+
|
5286 |
+
#: admin/wp-security-user-login-menu.php:244
|
5287 |
+
msgid "Instantly Lockout Specific Usernames"
|
5288 |
+
msgstr "특정 사용자 이름을 즉시 잠그기"
|
5289 |
+
|
5290 |
+
#: admin/wp-security-user-login-menu.php:253
|
5291 |
+
msgid ""
|
5292 |
+
"Insert one username per line. Existing usernames are not blocked even if "
|
5293 |
+
"present in the list."
|
5294 |
+
msgstr ""
|
5295 |
+
"줄당 하나의 사용자 이름을 삽입합니다. 목록에 있는 경우에도 기존 사용자 이름"
|
5296 |
+
"은 차단되지 않습니다."
|
5297 |
+
|
5298 |
+
# @ all-in-one-wp-security-and-firewall
|
5299 |
+
#: admin/wp-security-user-login-menu.php:257
|
5300 |
+
msgid "Notify By Email"
|
5301 |
+
msgstr "이메일로 알림"
|
5302 |
+
|
5303 |
+
# @ all-in-one-wp-security-and-firewall
|
5304 |
+
#: admin/wp-security-user-login-menu.php:260
|
5305 |
+
msgid ""
|
5306 |
+
"Check this if you want to receive an email when someone has been locked out "
|
5307 |
+
"due to maximum failed login attempts"
|
5308 |
+
msgstr ""
|
5309 |
+
"로그인 시도가 최대 실패로 인해 다른 사람이 잠긴 경우 이메일을 수신하려는 경"
|
5310 |
+
"우 이 방법을 확인하십시오."
|
5311 |
+
|
5312 |
+
# @ all-in-one-wp-security-and-firewall
|
5313 |
+
#: admin/wp-security-user-login-menu.php:270
|
5314 |
+
msgid "Currently Locked Out IP Address Ranges"
|
5315 |
+
msgstr "현재 잠긴 IP 주소 범위"
|
5316 |
+
|
5317 |
+
#: admin/wp-security-user-login-menu.php:275
|
5318 |
+
#, php-format
|
5319 |
+
msgid ""
|
5320 |
+
"To see a list of all locked IP addresses and ranges go to the %s tab in the "
|
5321 |
+
"dashboard menu."
|
5322 |
+
msgstr ""
|
5323 |
+
"잠긴 모든 IP 주소 와 범위 목록을 보려면 대시보드 메뉴의 %s 탭으로 이동합니다."
|
5324 |
+
|
5325 |
+
# @ all-in-one-wp-security-and-firewall
|
5326 |
+
#: admin/wp-security-user-login-menu.php:291
|
5327 |
+
msgid "Nonce check failed for delete all failed login records operation!"
|
5328 |
+
msgstr ""
|
5329 |
+
|
5330 |
+
# @ all-in-one-wp-security-and-firewall
|
5331 |
+
#: admin/wp-security-user-login-menu.php:300
|
5332 |
+
msgid "User Login Feature - Delete all failed login records operation failed!"
|
5333 |
+
msgstr ""
|
5334 |
+
|
5335 |
+
# @ all-in-one-wp-security-and-firewall
|
5336 |
+
#: admin/wp-security-user-login-menu.php:304
|
5337 |
+
msgid "All records from the Failed Logins table were deleted successfully!"
|
5338 |
+
msgstr ""
|
5339 |
+
|
5340 |
+
# @ all-in-one-wp-security-and-firewall
|
5341 |
+
#: admin/wp-security-user-login-menu.php:319
|
5342 |
+
msgid "This tab displays the failed login attempts for your site."
|
5343 |
+
msgstr ""
|
5344 |
+
|
5345 |
+
# @ all-in-one-wp-security-and-firewall
|
5346 |
+
#: admin/wp-security-user-login-menu.php:320
|
5347 |
+
msgid ""
|
5348 |
+
"The information below can be handy if you need to do security investigations "
|
5349 |
+
"because it will show you the IP range, username and ID (if applicable) and "
|
5350 |
+
"the time/date of the failed login attempt."
|
5351 |
+
msgstr ""
|
5352 |
+
|
5353 |
+
# @ all-in-one-wp-security-and-firewall
|
5354 |
+
#: admin/wp-security-user-login-menu.php:341
|
5355 |
+
#: admin/wp-security-user-login-menu.php:350
|
5356 |
+
msgid "Delete All Failed Login Records"
|
5357 |
+
msgstr "실패한 로그인 레코드 모두 삭제"
|
5358 |
+
|
5359 |
+
# @ all-in-one-wp-security-and-firewall
|
5360 |
+
#: admin/wp-security-user-login-menu.php:347
|
5361 |
+
msgid ""
|
5362 |
+
"Click this button if you wish to delete all failed login records in one go."
|
5363 |
+
msgstr "한 번에 모든 실패한 로그인 레코드를 삭제하려면 이 단추를 클릭합니다."
|
5364 |
+
|
5365 |
+
# @ all-in-one-wp-security-and-firewall
|
5366 |
+
#: admin/wp-security-user-login-menu.php:375
|
5367 |
+
msgid ""
|
5368 |
+
"You entered a non numeric value for the logout time period field. It has "
|
5369 |
+
"been set to the default value."
|
5370 |
+
msgstr ""
|
5371 |
+
|
5372 |
+
# @ all-in-one-wp-security-and-firewall
|
5373 |
+
#: admin/wp-security-user-login-menu.php:403
|
5374 |
+
msgid ""
|
5375 |
+
"Setting an expiry period for your WP administration session is a simple way "
|
5376 |
+
"to protect against unauthorized access to your site from your computer."
|
5377 |
+
msgstr ""
|
5378 |
+
|
5379 |
+
# @ all-in-one-wp-security-and-firewall
|
5380 |
+
#: admin/wp-security-user-login-menu.php:404
|
5381 |
+
msgid ""
|
5382 |
+
"This feature allows you to specify a time period in minutes after which the "
|
5383 |
+
"admin session will expire and the user will be forced to log back in."
|
5384 |
+
msgstr ""
|
5385 |
+
|
5386 |
+
# @ all-in-one-wp-security-and-firewall
|
5387 |
+
#: admin/wp-security-user-login-menu.php:409
|
5388 |
+
msgid "Force User Logout Options"
|
5389 |
+
msgstr "사용자 로그아웃 옵션 강제"
|
5390 |
+
|
5391 |
+
# @ all-in-one-wp-security-and-firewall
|
5392 |
+
#: admin/wp-security-user-login-menu.php:421
|
5393 |
+
msgid "Enable Force WP User Logout"
|
5394 |
+
msgstr "강제 WP 사용자 로그아웃 사용"
|
5395 |
+
|
5396 |
+
# @ all-in-one-wp-security-and-firewall
|
5397 |
+
#: admin/wp-security-user-login-menu.php:424
|
5398 |
+
msgid ""
|
5399 |
+
"Check this if you want to force a wp user to be logged out after a "
|
5400 |
+
"configured amount of time"
|
5401 |
+
msgstr ""
|
5402 |
+
"구성된 시간 이후에 WP 사용자를 강제로 로그아웃하도록 하려면 이 방법을 확인합"
|
5403 |
+
"니다."
|
5404 |
+
|
5405 |
+
# @ all-in-one-wp-security-and-firewall
|
5406 |
+
#: admin/wp-security-user-login-menu.php:428
|
5407 |
+
msgid "Logout the WP User After XX Minutes"
|
5408 |
+
msgstr "XX 분 후 WP 사용자 로그아웃"
|
5409 |
+
|
5410 |
+
# @ all-in-one-wp-security-and-firewall
|
5411 |
+
#: admin/wp-security-user-login-menu.php:430
|
5412 |
+
msgid ""
|
5413 |
+
"(Minutes) The user will be forced to log back in after this time period has "
|
5414 |
+
"elapased."
|
5415 |
+
msgstr "(분) 이 기간이 중복된 후에는 사용자가 다시 로그인해야 합니다."
|
5416 |
+
|
5417 |
+
# @ all-in-one-wp-security-and-firewall
|
5418 |
+
#: admin/wp-security-user-login-menu.php:453
|
5419 |
+
msgid ""
|
5420 |
+
"This tab displays the login activity for WordPress admin accounts registered "
|
5421 |
+
"with your site."
|
5422 |
+
msgstr ""
|
5423 |
+
|
5424 |
+
# @ all-in-one-wp-security-and-firewall
|
5425 |
+
#: admin/wp-security-user-login-menu.php:454
|
5426 |
+
msgid ""
|
5427 |
+
"The information below can be handy if you need to do security investigations "
|
5428 |
+
"because it will show you the last 50 recent login events by username, IP "
|
5429 |
+
"address and time/date."
|
5430 |
+
msgstr ""
|
5431 |
+
|
5432 |
+
# @ all-in-one-wp-security-and-firewall
|
5433 |
+
#: admin/wp-security-user-login-menu.php:497
|
5434 |
+
msgid "Nonce check failed for users logged in list!"
|
5435 |
+
msgstr ""
|
5436 |
+
|
5437 |
+
# @ all-in-one-wp-security-and-firewall
|
5438 |
+
#: admin/wp-security-user-login-menu.php:505
|
5439 |
+
msgid "Refresh Logged In User Data"
|
5440 |
+
msgstr "사용자 데이터에 로그인한 새로 고침"
|
5441 |
+
|
5442 |
+
# @ all-in-one-wp-security-and-firewall
|
5443 |
+
#: admin/wp-security-user-login-menu.php:509
|
5444 |
+
msgid "Refresh Data"
|
5445 |
+
msgstr "데이터 새로 고침"
|
5446 |
+
|
5447 |
+
# @ all-in-one-wp-security-and-firewall
|
5448 |
+
#: admin/wp-security-user-login-menu.php:515
|
5449 |
+
msgid "This tab displays all users who are currently logged into your site."
|
5450 |
+
msgstr ""
|
5451 |
+
|
5452 |
+
# @ all-in-one-wp-security-and-firewall
|
5453 |
+
#: admin/wp-security-user-login-menu.php:516
|
5454 |
+
msgid ""
|
5455 |
+
"If you suspect there is a user or users who are logged in which should not "
|
5456 |
+
"be, you can block them by inspecting the IP addresses from the data below "
|
5457 |
+
"and adding them to your blacklist."
|
5458 |
+
msgstr ""
|
5459 |
+
|
5460 |
+
#: admin/wp-security-user-login-menu.php:517
|
5461 |
+
msgid ""
|
5462 |
+
"You can also instantly log them out by clicking on the \"Force Logout\" link "
|
5463 |
+
"when you hover over the row in the User Id column."
|
5464 |
+
msgstr ""
|
5465 |
+
|
5466 |
+
# @ all-in-one-wp-security-and-firewall
|
5467 |
+
#: admin/wp-security-user-login-menu.php:522
|
5468 |
+
msgid "Currently Logged In Users"
|
5469 |
+
msgstr "현재 로그인한 사용자"
|
5470 |
+
|
5471 |
+
#: admin/wp-security-user-registration-menu.php:23
|
5472 |
+
msgid "Manual Approval"
|
5473 |
+
msgstr "수동 승인"
|
5474 |
+
|
5475 |
+
#: admin/wp-security-user-registration-menu.php:24
|
5476 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:57
|
5477 |
+
msgid "Registration Captcha"
|
5478 |
+
msgstr "등록 캡차"
|
5479 |
+
|
5480 |
+
#: admin/wp-security-user-registration-menu.php:117
|
5481 |
+
msgid "User Registration Settings"
|
5482 |
+
msgstr "사용자 등록 설정"
|
5483 |
+
|
5484 |
+
#: admin/wp-security-user-registration-menu.php:121
|
5485 |
+
msgid "Manually Approve New Registrations"
|
5486 |
+
msgstr ""
|
5487 |
+
|
5488 |
+
#: admin/wp-security-user-registration-menu.php:125
|
5489 |
+
msgid ""
|
5490 |
+
"If your site allows people to create their own accounts via the WordPress "
|
5491 |
+
"registration form, then you can minimize SPAM or bogus registrations by "
|
5492 |
+
"manually approving each registration."
|
5493 |
+
msgstr ""
|
5494 |
+
|
5495 |
+
#: admin/wp-security-user-registration-menu.php:126
|
5496 |
+
msgid ""
|
5497 |
+
"This feature will automatically set a newly registered account to \"pending"
|
5498 |
+
"\" until the administrator activates it. Therefore undesirable registrants "
|
5499 |
+
"will be unable to log in without your express approval."
|
5500 |
+
msgstr ""
|
5501 |
+
|
5502 |
+
#: admin/wp-security-user-registration-menu.php:127
|
5503 |
+
msgid ""
|
5504 |
+
"You can view all accounts which have been newly registered via the handy "
|
5505 |
+
"table below and you can also perform bulk activation/deactivation/deletion "
|
5506 |
+
"tasks on each account."
|
5507 |
+
msgstr ""
|
5508 |
+
|
5509 |
+
#: admin/wp-security-user-registration-menu.php:143
|
5510 |
+
msgid "Enable manual approval of new registrations"
|
5511 |
+
msgstr ""
|
5512 |
+
|
5513 |
+
#: admin/wp-security-user-registration-menu.php:146
|
5514 |
+
msgid ""
|
5515 |
+
"Check this if you want to automatically disable all newly registered "
|
5516 |
+
"accounts so that you can approve them manually."
|
5517 |
+
msgstr ""
|
5518 |
+
|
5519 |
+
#: admin/wp-security-user-registration-menu.php:155
|
5520 |
+
msgid "Approve Registered Users"
|
5521 |
+
msgstr ""
|
5522 |
+
|
5523 |
+
#: admin/wp-security-user-registration-menu.php:200
|
5524 |
+
msgid ""
|
5525 |
+
"This feature allows you to add a captcha form on the WordPress registration "
|
5526 |
+
"page."
|
5527 |
+
msgstr ""
|
5528 |
+
|
5529 |
+
#: admin/wp-security-user-registration-menu.php:201
|
5530 |
+
msgid ""
|
5531 |
+
"Users who attempt to register will also need to enter the answer to a simple "
|
5532 |
+
"mathematical question - if they enter the wrong answer, the plugin will not "
|
5533 |
+
"allow them to register."
|
5534 |
+
msgstr ""
|
5535 |
+
|
5536 |
+
#: admin/wp-security-user-registration-menu.php:202
|
5537 |
+
msgid ""
|
5538 |
+
"Therefore, adding a captcha form on the registration page is another "
|
5539 |
+
"effective yet simple SPAM registration prevention technique."
|
5540 |
+
msgstr ""
|
5541 |
+
|
5542 |
+
#: admin/wp-security-user-registration-menu.php:207
|
5543 |
+
msgid "Registration Page Captcha Settings"
|
5544 |
+
msgstr "등록 페이지 캡차 설정"
|
5545 |
+
|
5546 |
+
#: admin/wp-security-user-registration-menu.php:214
|
5547 |
+
msgid ""
|
5548 |
+
"The core default behaviour for WordPress Multi Site regarding user "
|
5549 |
+
"registration is that all users are registered via the main site."
|
5550 |
+
msgstr ""
|
5551 |
+
|
5552 |
+
#: admin/wp-security-user-registration-menu.php:215
|
5553 |
+
msgid ""
|
5554 |
+
"Therefore, if you would like to add a captcha form to the registration page "
|
5555 |
+
"for a Multi Site, please go to \"Registration Captcha\" settings on the main "
|
5556 |
+
"site."
|
5557 |
+
msgstr ""
|
5558 |
+
|
5559 |
+
#: admin/wp-security-user-registration-menu.php:230
|
5560 |
+
msgid "Enable Captcha On Registration Page"
|
5561 |
+
msgstr "등록시 보안 문자 사용"
|
5562 |
+
|
5563 |
+
#: admin/wp-security-user-registration-menu.php:233
|
5564 |
+
msgid ""
|
5565 |
+
"Check this if you want to insert a captcha form on the WordPress user "
|
5566 |
+
"registration page (if you allow user registration)."
|
5567 |
+
msgstr ""
|
5568 |
+
"워드 프레스 사용자 등록 페이지에 captcha 양식을 삽입하려는 경우 (사용자 등록"
|
5569 |
+
"을 허용하는 경우)을 확인하십시오."
|
5570 |
+
|
5571 |
+
#: admin/wp-security-whois-menu.php:22
|
5572 |
+
msgid "WhoIS Lookup"
|
5573 |
+
msgstr ""
|
5574 |
+
|
5575 |
+
# @ all-in-one-wp-security-and-firewall
|
5576 |
+
#: admin/wp-security-whois-menu.php:75
|
5577 |
+
msgid "WHOIS Lookup Information"
|
5578 |
+
msgstr "WHOIS 조회 정보"
|
5579 |
+
|
5580 |
+
# @ all-in-one-wp-security-and-firewall
|
5581 |
+
#: admin/wp-security-whois-menu.php:78
|
5582 |
+
msgid ""
|
5583 |
+
"This feature allows you to look up more detailed information about an IP "
|
5584 |
+
"address or domain name by querying the WHOIS API."
|
5585 |
+
msgstr ""
|
5586 |
+
"이 기능을 사용하면 WHOIS API를 쿼리하여 IP 주소 또는 도메인 이름에 대한 자세"
|
5587 |
+
"한 정보를 찾을 수 있습니다."
|
5588 |
+
|
5589 |
+
# @ all-in-one-wp-security-and-firewall
|
5590 |
+
#: admin/wp-security-whois-menu.php:84
|
5591 |
+
msgid "Perform a WHOIS Lookup for an IP or Domain Name"
|
5592 |
+
msgstr ""
|
5593 |
+
|
5594 |
+
# @ all-in-one-wp-security-and-firewall
|
5595 |
+
#: admin/wp-security-whois-menu.php:90
|
5596 |
+
msgid "Enter IP Address or Domain Name"
|
5597 |
+
msgstr ""
|
5598 |
+
|
5599 |
+
# @ all-in-one-wp-security-and-firewall
|
5600 |
+
#: admin/wp-security-whois-menu.php:92
|
5601 |
+
msgid ""
|
5602 |
+
"Enter an IP address or domain name. Example: 111.11.12.13 OR some-domain-"
|
5603 |
+
"name.com"
|
5604 |
+
msgstr ""
|
5605 |
+
|
5606 |
+
# @ all-in-one-wp-security-and-firewall
|
5607 |
+
#: admin/wp-security-whois-menu.php:96
|
5608 |
+
msgid "Perform IP or Domain Lookup"
|
5609 |
+
msgstr ""
|
5610 |
+
|
5611 |
+
# @ all-in-one-wp-security-and-firewall
|
5612 |
+
#: admin/wp-security-whois-menu.php:117
|
5613 |
+
msgid "WHOIS lookup successfully completed. Please see the results below:"
|
5614 |
+
msgstr ""
|
5615 |
+
|
5616 |
+
# @ all-in-one-wp-security-and-firewall
|
5617 |
+
#: admin/wp-security-whois-menu.php:129
|
5618 |
+
msgid ""
|
5619 |
+
"You have entered an incorrectly formatted IP address or domain name. Please "
|
5620 |
+
"try again."
|
5621 |
+
msgstr ""
|
5622 |
+
|
5623 |
+
# @ default
|
5624 |
+
#: admin/general/wp-security-list-table.php:178
|
5625 |
+
msgid "No items found."
|
5626 |
+
msgstr ""
|
5627 |
+
|
5628 |
+
# @ default
|
5629 |
+
#: admin/general/wp-security-list-table.php:281
|
5630 |
+
msgid "Bulk Actions"
|
5631 |
+
msgstr ""
|
5632 |
+
|
5633 |
+
# @ default
|
5634 |
+
#: admin/general/wp-security-list-table.php:291
|
5635 |
+
msgid "Apply"
|
5636 |
+
msgstr ""
|
5637 |
+
|
5638 |
+
# @ default
|
5639 |
+
#: admin/general/wp-security-list-table.php:365
|
5640 |
+
msgid "Show all dates"
|
5641 |
+
msgstr ""
|
5642 |
+
|
5643 |
+
# @ default
|
5644 |
+
#: admin/general/wp-security-list-table.php:378
|
5645 |
+
#, php-format
|
5646 |
+
msgid "%1$s %2$d"
|
5647 |
+
msgstr ""
|
5648 |
+
|
5649 |
+
# @ default
|
5650 |
+
#: admin/general/wp-security-list-table.php:394
|
5651 |
+
msgid "List View"
|
5652 |
+
msgstr ""
|
5653 |
+
|
5654 |
+
# @ default
|
5655 |
+
#: admin/general/wp-security-list-table.php:395
|
5656 |
+
msgid "Excerpt View"
|
5657 |
+
msgstr ""
|
5658 |
+
|
5659 |
+
# @ default
|
5660 |
+
#: admin/general/wp-security-list-table.php:421
|
5661 |
+
#, php-format
|
5662 |
+
msgid "%s pending"
|
5663 |
+
msgstr ""
|
5664 |
+
|
5665 |
+
# @ default
|
5666 |
+
#: admin/general/wp-security-list-table.php:653
|
5667 |
+
msgid "Select All"
|
5668 |
+
msgstr ""
|
5669 |
+
|
5670 |
+
# @ all-in-one-wp-security-and-firewall
|
5671 |
+
#: classes/wp-security-backup.php:235
|
5672 |
+
msgid "All In One WP Security - Site Database Backup"
|
5673 |
+
msgstr ""
|
5674 |
+
|
5675 |
+
# @ all-in-one-wp-security-and-firewall
|
5676 |
+
#: classes/wp-security-backup.php:237
|
5677 |
+
msgid "Attached is your latest DB backup file for site URL"
|
5678 |
+
msgstr ""
|
5679 |
+
|
5680 |
+
# @ all-in-one-wp-security-and-firewall
|
5681 |
+
#: classes/wp-security-backup.php:237
|
5682 |
+
msgid " generated on"
|
5683 |
+
msgstr ""
|
5684 |
+
|
5685 |
+
#: classes/wp-security-captcha.php:17
|
5686 |
+
#: classes/wp-security-general-init-tasks.php:366
|
5687 |
+
msgid "Please enter an answer in digits:"
|
5688 |
+
msgstr "숫자로 답변을 입력하십시오."
|
5689 |
+
|
5690 |
+
#: classes/wp-security-captcha.php:98
|
5691 |
+
msgid "one"
|
5692 |
+
msgstr "1"
|
5693 |
+
|
5694 |
+
#: classes/wp-security-captcha.php:99
|
5695 |
+
msgid "two"
|
5696 |
+
msgstr "2"
|
5697 |
+
|
5698 |
+
#: classes/wp-security-captcha.php:100
|
5699 |
+
msgid "three"
|
5700 |
+
msgstr "3"
|
5701 |
+
|
5702 |
+
#: classes/wp-security-captcha.php:101
|
5703 |
+
msgid "four"
|
5704 |
+
msgstr "4"
|
5705 |
+
|
5706 |
+
#: classes/wp-security-captcha.php:102
|
5707 |
+
msgid "five"
|
5708 |
+
msgstr "5"
|
5709 |
+
|
5710 |
+
#: classes/wp-security-captcha.php:103
|
5711 |
+
msgid "six"
|
5712 |
+
msgstr "6"
|
5713 |
+
|
5714 |
+
#: classes/wp-security-captcha.php:104
|
5715 |
+
msgid "seven"
|
5716 |
+
msgstr "7"
|
5717 |
+
|
5718 |
+
#: classes/wp-security-captcha.php:105
|
5719 |
+
msgid "eight"
|
5720 |
+
msgstr "8"
|
5721 |
+
|
5722 |
+
#: classes/wp-security-captcha.php:106
|
5723 |
+
msgid "nine"
|
5724 |
+
msgstr "9"
|
5725 |
+
|
5726 |
+
#: classes/wp-security-captcha.php:107
|
5727 |
+
msgid "ten"
|
5728 |
+
msgstr "10"
|
5729 |
+
|
5730 |
+
#: classes/wp-security-captcha.php:108
|
5731 |
+
msgid "eleven"
|
5732 |
+
msgstr "11"
|
5733 |
+
|
5734 |
+
#: classes/wp-security-captcha.php:109
|
5735 |
+
msgid "twelve"
|
5736 |
+
msgstr "12"
|
5737 |
+
|
5738 |
+
#: classes/wp-security-captcha.php:110
|
5739 |
+
msgid "thirteen"
|
5740 |
+
msgstr "13"
|
5741 |
+
|
5742 |
+
#: classes/wp-security-captcha.php:111
|
5743 |
+
msgid "fourteen"
|
5744 |
+
msgstr "14"
|
5745 |
+
|
5746 |
+
#: classes/wp-security-captcha.php:112
|
5747 |
+
msgid "fifteen"
|
5748 |
+
msgstr "15"
|
5749 |
+
|
5750 |
+
#: classes/wp-security-captcha.php:113
|
5751 |
+
msgid "sixteen"
|
5752 |
+
msgstr "16"
|
5753 |
+
|
5754 |
+
#: classes/wp-security-captcha.php:114
|
5755 |
+
msgid "seventeen"
|
5756 |
+
msgstr "17"
|
5757 |
+
|
5758 |
+
#: classes/wp-security-captcha.php:115
|
5759 |
+
msgid "eighteen"
|
5760 |
+
msgstr "18"
|
5761 |
+
|
5762 |
+
#: classes/wp-security-captcha.php:116
|
5763 |
+
msgid "nineteen"
|
5764 |
+
msgstr "19"
|
5765 |
+
|
5766 |
+
#: classes/wp-security-captcha.php:117
|
5767 |
+
msgid "twenty"
|
5768 |
+
msgstr "20"
|
5769 |
+
|
5770 |
+
# @ all-in-one-wp-security-and-firewall
|
5771 |
+
#: classes/wp-security-file-scan.php:60
|
5772 |
+
msgid "All In One WP Security - File change detected!"
|
5773 |
+
msgstr ""
|
5774 |
+
|
5775 |
+
# @ all-in-one-wp-security-and-firewall
|
5776 |
+
#: classes/wp-security-file-scan.php:62
|
5777 |
+
msgid "A file change was detected on your system for site URL"
|
5778 |
+
msgstr ""
|
5779 |
+
|
5780 |
+
# @ all-in-one-wp-security-and-firewall
|
5781 |
+
#: classes/wp-security-file-scan.php:62
|
5782 |
+
msgid ". Scan was generated on"
|
5783 |
+
msgstr ""
|
5784 |
+
|
5785 |
+
#: classes/wp-security-file-scan.php:63
|
5786 |
+
msgid "A summary of the scan results is shown below:"
|
5787 |
+
msgstr ""
|
5788 |
+
|
5789 |
+
# @ all-in-one-wp-security-and-firewall
|
5790 |
+
#: classes/wp-security-file-scan.php:66
|
5791 |
+
msgid "Login to your site to view the scan details."
|
5792 |
+
msgstr ""
|
5793 |
+
|
5794 |
+
#: classes/wp-security-file-scan.php:295
|
5795 |
+
msgid ""
|
5796 |
+
"Starting DB scan.....please wait while the plugin scans your database......."
|
5797 |
+
msgstr ""
|
5798 |
+
|
5799 |
+
#: classes/wp-security-file-scan.php:299
|
5800 |
+
msgid "Scanning options table........."
|
5801 |
+
msgstr ""
|
5802 |
+
|
5803 |
+
#: classes/wp-security-file-scan.php:368
|
5804 |
+
#, php-format
|
5805 |
+
msgid "%s and option_id: %s"
|
5806 |
+
msgstr ""
|
5807 |
+
|
5808 |
+
#: classes/wp-security-file-scan.php:371
|
5809 |
+
#, php-format
|
5810 |
+
msgid ""
|
5811 |
+
"Deletion of known pharma hack entry for option_name %s failed. Please delete "
|
5812 |
+
"this entry manually!"
|
5813 |
+
msgstr ""
|
5814 |
+
|
5815 |
+
#: classes/wp-security-file-scan.php:373
|
5816 |
+
#, php-format
|
5817 |
+
msgid ""
|
5818 |
+
"The options table entry with known pharma hack for option_id %s with "
|
5819 |
+
"option_name %s was successfully deleted"
|
5820 |
+
msgstr ""
|
5821 |
+
|
5822 |
+
#: classes/wp-security-file-scan.php:387
|
5823 |
+
#, php-format
|
5824 |
+
msgid "Possible suspicious entry found (for option_id: %s) - %s "
|
5825 |
+
msgstr ""
|
5826 |
+
|
5827 |
+
#: classes/wp-security-file-scan.php:396
|
5828 |
+
msgid "No suspicious entries found in options table"
|
5829 |
+
msgstr ""
|
5830 |
+
|
5831 |
+
#: classes/wp-security-file-scan.php:400
|
5832 |
+
msgid "Scanning posts table........."
|
5833 |
+
msgstr ""
|
5834 |
+
|
5835 |
+
#: classes/wp-security-file-scan.php:440
|
5836 |
+
#, php-format
|
5837 |
+
msgid ""
|
5838 |
+
"Possible suspicious entry found (for Post ID: %s) in the following column - "
|
5839 |
+
"%s "
|
5840 |
+
msgstr ""
|
5841 |
+
|
5842 |
+
#: classes/wp-security-file-scan.php:449
|
5843 |
+
msgid "No suspicious entries found in posts table"
|
5844 |
+
msgstr ""
|
5845 |
+
|
5846 |
+
#: classes/wp-security-file-scan.php:453
|
5847 |
+
msgid "Scanning links table........."
|
5848 |
+
msgstr ""
|
5849 |
+
|
5850 |
+
#: classes/wp-security-file-scan.php:492 classes/wp-security-file-scan.php:543
|
5851 |
+
#: classes/wp-security-file-scan.php:571 classes/wp-security-file-scan.php:599
|
5852 |
+
#: classes/wp-security-file-scan.php:648
|
5853 |
+
#, php-format
|
5854 |
+
msgid "Possible suspicious entry - %s "
|
5855 |
+
msgstr ""
|
5856 |
+
|
5857 |
+
#: classes/wp-security-file-scan.php:501
|
5858 |
+
msgid "No suspicious entries found in links table"
|
5859 |
+
msgstr ""
|
5860 |
+
|
5861 |
+
#: classes/wp-security-file-scan.php:505
|
5862 |
+
msgid "Scanning comments table........."
|
5863 |
+
msgstr ""
|
5864 |
+
|
5865 |
+
#: classes/wp-security-file-scan.php:552
|
5866 |
+
msgid "No suspicious entries found in comments table"
|
5867 |
+
msgstr ""
|
5868 |
+
|
5869 |
+
#: classes/wp-security-file-scan.php:556
|
5870 |
+
msgid "Scanning postmeta table........."
|
5871 |
+
msgstr ""
|
5872 |
+
|
5873 |
+
#: classes/wp-security-file-scan.php:580
|
5874 |
+
msgid "No suspicious entries found in postmeta table"
|
5875 |
+
msgstr ""
|
5876 |
+
|
5877 |
+
#: classes/wp-security-file-scan.php:584
|
5878 |
+
msgid "Scanning usermeta table........."
|
5879 |
+
msgstr ""
|
5880 |
+
|
5881 |
+
#: classes/wp-security-file-scan.php:608
|
5882 |
+
msgid "No suspicious entries found in usermeta table"
|
5883 |
+
msgstr ""
|
5884 |
+
|
5885 |
+
#: classes/wp-security-file-scan.php:612
|
5886 |
+
msgid "Scanning users table........."
|
5887 |
+
msgstr ""
|
5888 |
+
|
5889 |
+
#: classes/wp-security-file-scan.php:657
|
5890 |
+
msgid "No suspicious entries found in users table"
|
5891 |
+
msgstr ""
|
5892 |
+
|
5893 |
+
#: classes/wp-security-file-scan.php:664
|
5894 |
+
msgid ""
|
5895 |
+
"The plugin has detected that there are some potentially suspicious entries "
|
5896 |
+
"in your database."
|
5897 |
+
msgstr ""
|
5898 |
+
|
5899 |
+
#: classes/wp-security-file-scan.php:665
|
5900 |
+
msgid ""
|
5901 |
+
"Please verify the results listed below to confirm whether the entries "
|
5902 |
+
"detected are genuinely suspicious or if they are false positives."
|
5903 |
+
msgstr ""
|
5904 |
+
|
5905 |
+
#: classes/wp-security-file-scan.php:670 classes/wp-security-file-scan.php:685
|
5906 |
+
msgid "Disclaimer:"
|
5907 |
+
msgstr ""
|
5908 |
+
|
5909 |
+
#: classes/wp-security-file-scan.php:671
|
5910 |
+
msgid ""
|
5911 |
+
"Even though this database scan has revealed some suspicious entries, this "
|
5912 |
+
"does not necessarily mean that other parts of your DB or site are also not "
|
5913 |
+
"compromised."
|
5914 |
+
msgstr ""
|
5915 |
+
|
5916 |
+
#: classes/wp-security-file-scan.php:672 classes/wp-security-file-scan.php:687
|
5917 |
+
msgid ""
|
5918 |
+
"Please note that database scan performed by this feature is basic and looks "
|
5919 |
+
"for common malicious entries. Since hackers are continually evolving their "
|
5920 |
+
"methods this scan is not meant to be a guaranteed catch-all for malware."
|
5921 |
+
msgstr ""
|
5922 |
+
|
5923 |
+
#: classes/wp-security-file-scan.php:673 classes/wp-security-file-scan.php:688
|
5924 |
+
#, php-format
|
5925 |
+
msgid ""
|
5926 |
+
"It is your responsibility to do the due diligence and perform a robust %s on "
|
5927 |
+
"your site if you wish to be more certain that your site is clean."
|
5928 |
+
msgstr ""
|
5929 |
+
|
5930 |
+
#: classes/wp-security-file-scan.php:680
|
5931 |
+
msgid "DB Scan was completed successfully. No suspicious entries found."
|
5932 |
+
msgstr ""
|
5933 |
+
|
5934 |
+
#: classes/wp-security-file-scan.php:686
|
5935 |
+
msgid ""
|
5936 |
+
"Even though the database scan has not revealed any suspicious entries, this "
|
5937 |
+
"does not necessarily mean that your site is actually completely clean or not "
|
5938 |
+
"compromised."
|
5939 |
+
msgstr ""
|
5940 |
+
|
5941 |
+
#: classes/wp-security-file-scan.php:725
|
5942 |
+
msgid "The following files were added to your host"
|
5943 |
+
msgstr ""
|
5944 |
+
|
5945 |
+
#: classes/wp-security-file-scan.php:727 classes/wp-security-file-scan.php:736
|
5946 |
+
#: classes/wp-security-file-scan.php:746
|
5947 |
+
msgid "modified on: "
|
5948 |
+
msgstr ""
|
5949 |
+
|
5950 |
+
#: classes/wp-security-file-scan.php:734
|
5951 |
+
msgid "The following files were removed from your host"
|
5952 |
+
msgstr ""
|
5953 |
+
|
5954 |
+
#: classes/wp-security-file-scan.php:744
|
5955 |
+
msgid "The following files were changed on your host"
|
5956 |
+
msgstr ""
|
5957 |
+
|
5958 |
+
#: classes/wp-security-general-init-tasks.php:395
|
5959 |
+
#: classes/wp-security-general-init-tasks.php:478
|
5960 |
+
#: classes/wp-security-user-login.php:75
|
5961 |
+
#: classes/wp-security-user-registration.php:78
|
5962 |
+
#: classes/wp-security-user-registration.php:108
|
5963 |
+
msgid "<strong>ERROR</strong>: Your answer was incorrect - please try again."
|
5964 |
+
msgstr ""
|
5965 |
+
"<strong>오류</strong>: 당신의 대답은 잘못되었습니다 - 다시 시도하십시오."
|
5966 |
+
|
5967 |
+
#: classes/wp-security-general-init-tasks.php:407
|
5968 |
+
msgid "Enter something special:"
|
5969 |
+
msgstr ""
|
5970 |
+
|
5971 |
+
#: classes/wp-security-general-init-tasks.php:434
|
5972 |
+
msgid "Please enter an answer in the CAPTCHA field."
|
5973 |
+
msgstr ""
|
5974 |
+
|
5975 |
+
#: classes/wp-security-general-init-tasks.php:447
|
5976 |
+
msgid ""
|
5977 |
+
"Error: You entered an incorrect CAPTCHA answer. Please go back and try again."
|
5978 |
+
msgstr ""
|
5979 |
+
|
5980 |
+
#: classes/wp-security-general-init-tasks.php:505
|
5981 |
+
msgid "Your CAPTCHA answer was incorrect - please try again."
|
5982 |
+
msgstr ""
|
5983 |
+
|
5984 |
+
#: classes/wp-security-general-init-tasks.php:534
|
5985 |
+
msgid "Your registration is pending approval."
|
5986 |
+
msgstr ""
|
5987 |
+
|
5988 |
+
#: classes/wp-security-process-renamed-login-page.php:106
|
5989 |
+
msgid "Not available."
|
5990 |
+
msgstr ""
|
5991 |
+
|
5992 |
+
#: classes/wp-security-user-login.php:39
|
5993 |
+
msgid ""
|
5994 |
+
"<strong>ERROR</strong>: Access from your IP address has been blocked for "
|
5995 |
+
"security reasons. Please contact the administrator."
|
5996 |
+
msgstr ""
|
5997 |
+
"<strong>오류</strong>: 보안상의 이유로 IP 주소의 액세스가 차단되었습니다. 관"
|
5998 |
+
"리자에게 문의하십시오."
|
5999 |
+
|
6000 |
+
#: classes/wp-security-user-login.php:45
|
6001 |
+
msgid "Service Temporarily Unavailable"
|
6002 |
+
msgstr "일시적으로 사용할 수 없는 서비스"
|
6003 |
+
|
6004 |
+
#: classes/wp-security-user-login.php:118
|
6005 |
+
msgid ""
|
6006 |
+
"<strong>ACCOUNT PENDING</strong>: Your account is currently not active. An "
|
6007 |
+
"administrator needs to activate your account before you can login."
|
6008 |
+
msgstr ""
|
6009 |
+
|
6010 |
+
# @ all-in-one-wp-security-and-firewall
|
6011 |
+
#: classes/wp-security-user-login.php:175
|
6012 |
+
msgid "<strong>ERROR</strong>: Invalid login credentials."
|
6013 |
+
msgstr "<strong>오류</strong>: 잘못된 로그인 자격 증명."
|
6014 |
+
|
6015 |
+
# @ all-in-one-wp-security-and-firewall
|
6016 |
+
#: classes/wp-security-user-login.php:300
|
6017 |
+
msgid "Site Lockout Notification"
|
6018 |
+
msgstr "사이트 잠금 알림"
|
6019 |
+
|
6020 |
+
# @ all-in-one-wp-security-and-firewall
|
6021 |
+
#: classes/wp-security-user-login.php:301
|
6022 |
+
msgid ""
|
6023 |
+
"A lockdown event has occurred due to too many failed login attempts or "
|
6024 |
+
"invalid username:"
|
6025 |
+
msgstr ""
|
6026 |
+
"너무 많은 로그인 시도 또는 잘못된 사용자 이름으로 인해 잠금 이벤트가 발생했습"
|
6027 |
+
"니다."
|
6028 |
+
|
6029 |
+
#: classes/wp-security-user-login.php:302
|
6030 |
+
msgid "Username:"
|
6031 |
+
msgstr "사용자 이름:"
|
6032 |
+
|
6033 |
+
#: classes/wp-security-user-login.php:303
|
6034 |
+
msgid "IP Address:"
|
6035 |
+
msgstr "IP 주소:"
|
6036 |
+
|
6037 |
+
#: classes/wp-security-user-login.php:304
|
6038 |
+
msgid "IP Range:"
|
6039 |
+
msgstr "IP 범위:"
|
6040 |
+
|
6041 |
+
# @ all-in-one-wp-security-and-firewall
|
6042 |
+
#: classes/wp-security-user-login.php:305
|
6043 |
+
msgid ""
|
6044 |
+
"Log into your site's WordPress administration panel to see the duration of "
|
6045 |
+
"the lockout or to unlock the user."
|
6046 |
+
msgstr ""
|
6047 |
+
"사이트의 워드 프레스 관리 패널에 로그인하여 잠금 기간을 확인하거나 사용자의 "
|
6048 |
+
"잠금을 해제합니다."
|
6049 |
+
|
6050 |
+
#: classes/wp-security-user-login.php:377
|
6051 |
+
msgid "Unlock Request Notification"
|
6052 |
+
msgstr "요청 알림 잠금 해제"
|
6053 |
+
|
6054 |
+
#: classes/wp-security-user-login.php:379
|
6055 |
+
#, php-format
|
6056 |
+
msgid ""
|
6057 |
+
"You have requested for the account with email address %s to be unlocked. "
|
6058 |
+
"Please click the link below to unlock your account:"
|
6059 |
+
msgstr ""
|
6060 |
+
"이메일 주소 %s가 있는 계정의 잠금을 해제하도록 요청했습니다. 계정 잠금을 해제"
|
6061 |
+
"하려면 아래 링크를 클릭하십시오."
|
6062 |
+
|
6063 |
+
#: classes/wp-security-user-login.php:380
|
6064 |
+
#, php-format
|
6065 |
+
msgid "Unlock link: %s"
|
6066 |
+
msgstr "링크 잠금 해제: %s"
|
6067 |
+
|
6068 |
+
#: classes/wp-security-user-login.php:381
|
6069 |
+
msgid ""
|
6070 |
+
"After clicking the above link you will be able to login to the WordPress "
|
6071 |
+
"administration panel."
|
6072 |
+
msgstr "위의 링크를 클릭하면 WordPress 관리 패널에 로그인할 수 있습니다."
|
6073 |
+
|
6074 |
+
# @ all-in-one-wp-security-and-firewall
|
6075 |
+
#: classes/wp-security-user-login.php:538
|
6076 |
+
#, php-format
|
6077 |
+
msgid ""
|
6078 |
+
"Your session has expired because it has been over %d minutes since your last "
|
6079 |
+
"login."
|
6080 |
+
msgstr "마지막 로그인 이후 %d 분 이상되었기 때문에 세션이 만료되었습니다."
|
6081 |
+
|
6082 |
+
# @ all-in-one-wp-security-and-firewall
|
6083 |
+
#: classes/wp-security-user-login.php:539
|
6084 |
+
#: classes/wp-security-user-login.php:543
|
6085 |
+
msgid "Please log back in to continue."
|
6086 |
+
msgstr ""
|
6087 |
+
|
6088 |
+
# @ all-in-one-wp-security-and-firewall
|
6089 |
+
#: classes/wp-security-user-login.php:542
|
6090 |
+
msgid "You were logged out because you just changed the \"admin\" username."
|
6091 |
+
msgstr "방금 \"관리자\" 사용자 이름을 변경했기 때문에 로그아웃되었습니다."
|
6092 |
+
|
6093 |
+
#: classes/wp-security-user-login.php:571
|
6094 |
+
msgid "Request Unlock"
|
6095 |
+
msgstr "잠금 해제 요청"
|
6096 |
+
|
6097 |
+
#: classes/wp-security-user-registration.php:62
|
6098 |
+
#: classes/wp-security-user-registration.php:93
|
6099 |
+
msgid ""
|
6100 |
+
"<strong>ERROR</strong>: You are not allowed to register because your IP "
|
6101 |
+
"address is currently locked!"
|
6102 |
+
msgstr ""
|
6103 |
+
"<strong>오류</strong>: IP 주소가 현재 잠겨 있기 때문에 등록할 수 없습니다!"
|
6104 |
+
|
6105 |
+
# @ all-in-one-wp-security-and-firewall
|
6106 |
+
#: classes/wp-security-utility-ip-address.php:74
|
6107 |
+
#: classes/wp-security-utility-ip-address.php:89
|
6108 |
+
#: classes/wp-security-utility-ip-address.php:108
|
6109 |
+
#: classes/wp-security-utility-ip-address.php:123
|
6110 |
+
#: classes/wp-security-utility-ip-address.php:138
|
6111 |
+
msgid " is not a valid ip address format."
|
6112 |
+
msgstr "유효한 IP 주소 형식이 아닙니다."
|
6113 |
+
|
6114 |
+
# @ all-in-one-wp-security-and-firewall
|
6115 |
+
#: classes/wp-security-utility-ip-address.php:146
|
6116 |
+
msgid "You cannot ban your own IP address: "
|
6117 |
+
msgstr "자신의 IP 주소를 금지할 수 없습니다."
|
6118 |
+
|
6119 |
+
# @ all-in-one-wp-security-and-firewall
|
6120 |
+
#: classes/wp-security-utility.php:226
|
6121 |
+
msgid ""
|
6122 |
+
"This feature can only be configured by the \"superadmin\" on the main site."
|
6123 |
+
msgstr ""
|
6124 |
+
|
6125 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:29
|
6126 |
+
msgid "Remove WP Generatore Meta Tag"
|
6127 |
+
msgstr ""
|
6128 |
+
|
6129 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:38
|
6130 |
+
msgid "Change Display Name"
|
6131 |
+
msgstr "표시 이름 변경"
|
6132 |
+
|
6133 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:45
|
6134 |
+
msgid "Custom Login Captcha"
|
6135 |
+
msgstr "사용자 정의 로그인 캡타"
|
6136 |
+
|
6137 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:47
|
6138 |
+
msgid "Lost Password Captcha"
|
6139 |
+
msgstr ""
|
6140 |
+
|
6141 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:49
|
6142 |
+
msgid "Login IP Whitelisting"
|
6143 |
+
msgstr "로그인 IP 화이트리스팅"
|
6144 |
+
|
6145 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:55
|
6146 |
+
msgid "Registration Approval"
|
6147 |
+
msgstr "등록 승인"
|
6148 |
+
|
6149 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:71
|
6150 |
+
msgid "WordPress Files Access"
|
6151 |
+
msgstr "워드 프레스 파일 액세스"
|
6152 |
+
|
6153 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:75
|
6154 |
+
msgid "IP and User Agent Blacklisting"
|
6155 |
+
msgstr "IP 또는 사용자 에이전트 블랙리스트 사용"
|
6156 |
+
|
6157 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:79
|
6158 |
+
msgid "Enable Basic Firewall"
|
6159 |
+
msgstr "기본 방화벽 사용"
|
6160 |
+
|
6161 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:80
|
6162 |
+
msgid "Enable Pingback Vulnerability Protection"
|
6163 |
+
msgstr ""
|
6164 |
+
|
6165 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:82
|
6166 |
+
msgid "Enable IP blocking for 404 detection"
|
6167 |
+
msgstr ""
|
6168 |
+
|
6169 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:86
|
6170 |
+
msgid "Enable Rename Login Page"
|
6171 |
+
msgstr "이름 바꾸기 페이지 기능 사용"
|
6172 |
+
|
6173 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:88
|
6174 |
+
msgid "Enable Login Honeypot"
|
6175 |
+
msgstr "로그인 허니팟 사용"
|
6176 |
+
|
6177 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:94
|
6178 |
+
msgid "Forbid Proxy Comments"
|
6179 |
+
msgstr ""
|
6180 |
+
|
6181 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:95
|
6182 |
+
msgid "Deny Bad Queries"
|
6183 |
+
msgstr ""
|
6184 |
+
|
6185 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:97
|
6186 |
+
msgid "5G/6G Blacklist"
|
6187 |
+
msgstr ""
|
6188 |
+
|
6189 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:100
|
6190 |
+
msgid "Block Spambots"
|
6191 |
+
msgstr ""
|
6192 |
+
|
6193 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:102
|
6194 |
+
msgid "Comment Captcha"
|
6195 |
+
msgstr ""
|
6196 |
+
|
6197 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:104
|
6198 |
+
msgid "BuddyPress Registration Captcha"
|
6199 |
+
msgstr ""
|
6200 |
+
|
6201 |
+
#: classes/grade-system/wp-security-feature-item.php:28
|
6202 |
+
msgid "Basic"
|
6203 |
+
msgstr "기본"
|
6204 |
+
|
6205 |
+
#: classes/grade-system/wp-security-feature-item.php:31
|
6206 |
+
msgid "Intermediate"
|
6207 |
+
msgstr "중급"
|
6208 |
+
|
6209 |
+
#: classes/grade-system/wp-security-feature-item.php:34
|
6210 |
+
msgid "Advanced"
|
6211 |
+
msgstr "고급"
|
6212 |
+
|
6213 |
+
#: other-includes/wp-security-rename-login-feature.php:99
|
6214 |
+
msgid "https://wordpress.org/"
|
6215 |
+
msgstr "https://ko.wordpress.org/"
|
6216 |
+
|
6217 |
+
#: other-includes/wp-security-rename-login-feature.php:100
|
6218 |
+
#: other-includes/wp-security-unlock-request.php:14
|
6219 |
+
msgid "Powered by WordPress"
|
6220 |
+
msgstr ""
|
6221 |
+
|
6222 |
+
#: other-includes/wp-security-rename-login-feature.php:217
|
6223 |
+
#, php-format
|
6224 |
+
msgid "← Back to %s"
|
6225 |
+
msgstr "← %s 돌아가기"
|
6226 |
+
|
6227 |
+
#: other-includes/wp-security-rename-login-feature.php:282
|
6228 |
+
msgid "<strong>ERROR</strong>: Enter a username or e-mail address."
|
6229 |
+
msgstr "<strong>오류.</strong>: 사용자 이름 또는 이메일 주소를 입력합니다."
|
6230 |
+
|
6231 |
+
#: other-includes/wp-security-rename-login-feature.php:286
|
6232 |
+
msgid ""
|
6233 |
+
"<strong>ERROR</strong>: There is no user registered with that email address."
|
6234 |
+
msgstr ""
|
6235 |
+
|
6236 |
+
#: other-includes/wp-security-rename-login-feature.php:303
|
6237 |
+
msgid "<strong>ERROR</strong>: Invalid username or e-mail."
|
6238 |
+
msgstr "<strong>오류</strong>: 잘못된 사용자 이름 또는 이메일."
|
6239 |
+
|
6240 |
+
#: other-includes/wp-security-rename-login-feature.php:341
|
6241 |
+
msgid "Password reset is not allowed for this user"
|
6242 |
+
msgstr "비밀번호 리셋은 해당 사용자에게 허용되지 않습니다."
|
6243 |
+
|
6244 |
+
#: other-includes/wp-security-rename-login-feature.php:367
|
6245 |
+
msgid "Someone requested that the password be reset for the following account:"
|
6246 |
+
msgstr "누군가 다음 계정에 대한 암호를 재설정하도록 요청했습니다."
|
6247 |
+
|
6248 |
+
#: other-includes/wp-security-rename-login-feature.php:369
|
6249 |
+
#, php-format
|
6250 |
+
msgid "Username: %s"
|
6251 |
+
msgstr "사용자 ID: %s"
|
6252 |
+
|
6253 |
+
#: other-includes/wp-security-rename-login-feature.php:370
|
6254 |
+
msgid "If this was a mistake, just ignore this email and nothing will happen."
|
6255 |
+
msgstr "실수라면 이 이메일은 무시하셔도 됩니다."
|
6256 |
+
|
6257 |
+
#: other-includes/wp-security-rename-login-feature.php:371
|
6258 |
+
msgid "To reset your password, visit the following address:"
|
6259 |
+
msgstr "비밀번호 재설정을 원하시면, 다음 주소를 방문하세요 :"
|
6260 |
+
|
6261 |
+
#: other-includes/wp-security-rename-login-feature.php:383
|
6262 |
+
#, php-format
|
6263 |
+
msgid "[%s] Password Reset"
|
6264 |
+
msgstr ""
|
6265 |
+
|
6266 |
+
#: other-includes/wp-security-rename-login-feature.php:408
|
6267 |
+
msgid "The e-mail could not be sent."
|
6268 |
+
msgstr ""
|
6269 |
+
|
6270 |
+
#: other-includes/wp-security-rename-login-feature.php:408
|
6271 |
+
msgid "Possible reason: your host may have disabled the mail() function."
|
6272 |
+
msgstr ""
|
6273 |
+
|
6274 |
+
#: other-includes/wp-security-rename-login-feature.php:530
|
6275 |
+
msgid ""
|
6276 |
+
"Your password reset link appears to be invalid. Please request a new link "
|
6277 |
+
"below."
|
6278 |
+
msgstr ""
|
6279 |
+
|
6280 |
+
#: other-includes/wp-security-rename-login-feature.php:532
|
6281 |
+
msgid "Your password reset link has expired. Please request a new link below."
|
6282 |
+
msgstr ""
|
6283 |
+
|
6284 |
+
#: other-includes/wp-security-rename-login-feature.php:553
|
6285 |
+
msgid "Lost Password"
|
6286 |
+
msgstr ""
|
6287 |
+
|
6288 |
+
#: other-includes/wp-security-rename-login-feature.php:553
|
6289 |
+
msgid ""
|
6290 |
+
"Please enter your username or email address. You will receive a link to "
|
6291 |
+
"create a new password via email."
|
6292 |
+
msgstr ""
|
6293 |
+
|
6294 |
+
#: other-includes/wp-security-rename-login-feature.php:561
|
6295 |
+
msgid "Username or E-mail:"
|
6296 |
+
msgstr ""
|
6297 |
+
|
6298 |
+
#: other-includes/wp-security-rename-login-feature.php:576
|
6299 |
+
#: other-includes/wp-security-rename-login-feature.php:639
|
6300 |
+
#: other-includes/wp-security-rename-login-feature.php:685
|
6301 |
+
#: other-includes/wp-security-rename-login-feature.php:767
|
6302 |
+
msgid "Log in"
|
6303 |
+
msgstr ""
|
6304 |
+
|
6305 |
+
#: other-includes/wp-security-rename-login-feature.php:579
|
6306 |
+
#: other-includes/wp-security-rename-login-feature.php:688
|
6307 |
+
#: other-includes/wp-security-rename-login-feature.php:945
|
6308 |
+
msgid "Register"
|
6309 |
+
msgstr ""
|
6310 |
+
|
6311 |
+
#: other-includes/wp-security-rename-login-feature.php:624
|
6312 |
+
msgid "The passwords do not match."
|
6313 |
+
msgstr ""
|
6314 |
+
|
6315 |
+
#: other-includes/wp-security-rename-login-feature.php:639
|
6316 |
+
msgid "Password Reset"
|
6317 |
+
msgstr ""
|
6318 |
+
|
6319 |
+
#: other-includes/wp-security-rename-login-feature.php:639
|
6320 |
+
msgid "Your password has been reset."
|
6321 |
+
msgstr ""
|
6322 |
+
|
6323 |
+
#: other-includes/wp-security-rename-login-feature.php:647
|
6324 |
+
msgid "Reset Password"
|
6325 |
+
msgstr ""
|
6326 |
+
|
6327 |
+
#: other-includes/wp-security-rename-login-feature.php:647
|
6328 |
+
msgid "Enter your new password below."
|
6329 |
+
msgstr ""
|
6330 |
+
|
6331 |
+
#: other-includes/wp-security-rename-login-feature.php:654
|
6332 |
+
msgid "New password"
|
6333 |
+
msgstr ""
|
6334 |
+
|
6335 |
+
#: other-includes/wp-security-rename-login-feature.php:659
|
6336 |
+
msgid "Strength indicator"
|
6337 |
+
msgstr ""
|
6338 |
+
|
6339 |
+
#: other-includes/wp-security-rename-login-feature.php:663
|
6340 |
+
msgid "Confirm new password"
|
6341 |
+
msgstr ""
|
6342 |
+
|
6343 |
+
#: other-includes/wp-security-rename-login-feature.php:740
|
6344 |
+
msgid "Registration Form"
|
6345 |
+
msgstr ""
|
6346 |
+
|
6347 |
+
#: other-includes/wp-security-rename-login-feature.php:740
|
6348 |
+
msgid "Register For This Site"
|
6349 |
+
msgstr ""
|
6350 |
+
|
6351 |
+
#: other-includes/wp-security-rename-login-feature.php:745
|
6352 |
+
msgid "Username"
|
6353 |
+
msgstr ""
|
6354 |
+
|
6355 |
+
#: other-includes/wp-security-rename-login-feature.php:749
|
6356 |
+
msgid "E-mail"
|
6357 |
+
msgstr ""
|
6358 |
+
|
6359 |
+
#: other-includes/wp-security-rename-login-feature.php:760
|
6360 |
+
msgid "Registration confirmation will be e-mailed to you."
|
6361 |
+
msgstr ""
|
6362 |
+
|
6363 |
+
#: other-includes/wp-security-rename-login-feature.php:768
|
6364 |
+
#: other-includes/wp-security-rename-login-feature.php:951
|
6365 |
+
msgid "Lost your password?"
|
6366 |
+
msgstr ""
|
6367 |
+
|
6368 |
+
#: other-includes/wp-security-rename-login-feature.php:808
|
6369 |
+
#, php-format
|
6370 |
+
msgid ""
|
6371 |
+
"<strong>ERROR</strong>: Cookies are blocked due to unexpected output. For "
|
6372 |
+
"help, please see <a href=\"%1$s\">this documentation</a> or try the <a href="
|
6373 |
+
"\"%2$s\">support forums</a>."
|
6374 |
+
msgstr ""
|
6375 |
+
|
6376 |
+
#: other-includes/wp-security-rename-login-feature.php:809
|
6377 |
+
#: other-includes/wp-security-rename-login-feature.php:813
|
6378 |
+
msgid "https://codex.wordpress.org/Cookies"
|
6379 |
+
msgstr ""
|
6380 |
+
|
6381 |
+
#: other-includes/wp-security-rename-login-feature.php:809
|
6382 |
+
msgid "https://wordpress.org/support/"
|
6383 |
+
msgstr ""
|
6384 |
+
|
6385 |
+
#: other-includes/wp-security-rename-login-feature.php:812
|
6386 |
+
#, php-format
|
6387 |
+
msgid ""
|
6388 |
+
"<strong>ERROR</strong>: Cookies are blocked or not supported by your "
|
6389 |
+
"browser. You must <a href=\"%s\">enable cookies</a> to use WordPress."
|
6390 |
+
msgstr ""
|
6391 |
+
|
6392 |
+
#: other-includes/wp-security-rename-login-feature.php:831
|
6393 |
+
msgid "You have logged in successfully."
|
6394 |
+
msgstr ""
|
6395 |
+
|
6396 |
+
#: other-includes/wp-security-rename-login-feature.php:865
|
6397 |
+
msgid ""
|
6398 |
+
"Session expired. Please log in again. You will not move away from this page."
|
6399 |
+
msgstr ""
|
6400 |
+
|
6401 |
+
#: other-includes/wp-security-rename-login-feature.php:869
|
6402 |
+
msgid "You are now logged out."
|
6403 |
+
msgstr ""
|
6404 |
+
|
6405 |
+
#: other-includes/wp-security-rename-login-feature.php:871
|
6406 |
+
msgid "User registration is currently not allowed."
|
6407 |
+
msgstr ""
|
6408 |
+
|
6409 |
+
#: other-includes/wp-security-rename-login-feature.php:873
|
6410 |
+
msgid "Check your e-mail for the confirmation link."
|
6411 |
+
msgstr ""
|
6412 |
+
|
6413 |
+
#: other-includes/wp-security-rename-login-feature.php:875
|
6414 |
+
msgid "Check your e-mail for your new password."
|
6415 |
+
msgstr ""
|
6416 |
+
|
6417 |
+
#: other-includes/wp-security-rename-login-feature.php:877
|
6418 |
+
msgid "Registration complete. Please check your e-mail."
|
6419 |
+
msgstr ""
|
6420 |
+
|
6421 |
+
#: other-includes/wp-security-rename-login-feature.php:879
|
6422 |
+
msgid ""
|
6423 |
+
"<strong>You have successfully updated WordPress!</strong> Please log back in "
|
6424 |
+
"to see what’s new."
|
6425 |
+
msgstr ""
|
6426 |
+
|
6427 |
+
#: other-includes/wp-security-rename-login-feature.php:896
|
6428 |
+
msgid "Log In"
|
6429 |
+
msgstr ""
|
6430 |
+
|
6431 |
+
#: other-includes/wp-security-rename-login-feature.php:911
|
6432 |
+
msgid "Username or Email"
|
6433 |
+
msgstr ""
|
6434 |
+
|
6435 |
+
#: other-includes/wp-security-unlock-request.php:13
|
6436 |
+
msgid "http://wordpress.org/"
|
6437 |
+
msgstr ""
|
6438 |
+
|
6439 |
+
#: other-includes/wp-security-unlock-request.php:33
|
6440 |
+
msgid "ERROR: Unable to process your request!"
|
6441 |
+
msgstr ""
|
6442 |
+
|
6443 |
+
#: other-includes/wp-security-unlock-request.php:50
|
6444 |
+
msgid "Please enter a valid email address"
|
6445 |
+
msgstr "올바은 이메일 주소를 입력하세요"
|
6446 |
+
|
6447 |
+
#: other-includes/wp-security-unlock-request.php:62
|
6448 |
+
msgid "User account not found!"
|
6449 |
+
msgstr "계정을 찾지 못했습니다."
|
6450 |
+
|
6451 |
+
#: other-includes/wp-security-unlock-request.php:77
|
6452 |
+
msgid "Error: No locked entry was found in the DB with your IP address range!"
|
6453 |
+
msgstr ""
|
6454 |
+
|
6455 |
+
#: other-includes/wp-security-unlock-request.php:82
|
6456 |
+
msgid "An email has been sent to you with the unlock instructions."
|
6457 |
+
msgstr "잠금 해제 지침과 함께 이메일이 전송되었습니다."
|
6458 |
+
|
6459 |
+
#: other-includes/wp-security-unlock-request.php:100
|
6460 |
+
msgid ""
|
6461 |
+
"You are here because you have been locked out due to too many incorrect "
|
6462 |
+
"login attempts."
|
6463 |
+
msgstr "잘못된 로그인 시도가 너무 많아 서 잠겨 있기 때문에 여기에 있습니다."
|
6464 |
+
|
6465 |
+
#: other-includes/wp-security-unlock-request.php:101
|
6466 |
+
msgid ""
|
6467 |
+
"Please enter your email address and you will receive an email with "
|
6468 |
+
"instructions on how to unlock yourself."
|
6469 |
+
msgstr ""
|
6470 |
+
"이메일 주소를 입력하면 잠금을 해제하는 방법에 대한 지침이 있는 이메일을 받게 "
|
6471 |
+
"됩니다."
|
6472 |
+
|
6473 |
+
#: other-includes/wp-security-unlock-request.php:107
|
6474 |
+
msgid "Email Address"
|
6475 |
+
msgstr "이메일 주소"
|
6476 |
+
|
6477 |
+
#~ msgid "PHP Safe Mode"
|
6478 |
+
#~ msgstr "PHP的安全模式"
|
6479 |
+
|
6480 |
+
#~ msgid "5G Blacklist Firewall Rules"
|
6481 |
+
#~ msgstr "5G黑名单防火墙规则"
|
6482 |
+
|
6483 |
+
#~ msgid "Attention:"
|
6484 |
+
#~ msgstr "注意:"
|
6485 |
+
|
6486 |
+
#~ msgid "WP Meta Info"
|
6487 |
+
#~ msgstr "WP元信息"
|
6488 |
+
|
6489 |
+
# @ all-in-one-wp-security-and-firewall
|
6490 |
+
#~ msgid "WP Generator Meta Tag"
|
6491 |
+
#~ msgstr "WP生成的元标签"
|
6492 |
+
|
6493 |
+
# @ all-in-one-wp-security-and-firewall
|
6494 |
+
#~ msgid ""
|
6495 |
+
#~ "Check this if you want to remove the meta info produced by WP Generator "
|
6496 |
+
#~ "from all pages"
|
6497 |
+
#~ msgstr "如果要从所有页面中删除WP生成的元信息,请选中此项"
|
6498 |
+
|
6499 |
+
#~ msgid ""
|
6500 |
+
#~ "<strong>ERROR</strong>: Login failed because your IP address has been "
|
6501 |
+
#~ "blocked. Please contact the administrator."
|
6502 |
+
#~ msgstr ""
|
6503 |
+
#~ "<strong>错误</strong>:登录失败,因为您的IP地址已被锁定。请与管理员联系。"
|
languages/all-in-one-wp-security-and-firewall.pot
CHANGED
@@ -1,16 +1,16 @@
|
|
1 |
-
# Copyright (C)
|
2 |
# This file is distributed under the same license as the All In One WP Security plugin.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: All In One WP Security 4.
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/all-in-one-wp-security-and-firewall\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"POT-Creation-Date:
|
13 |
-
"PO-Revision-Date:
|
14 |
"X-Generator: WP-CLI 2.2.0\n"
|
15 |
"X-Domain: all-in-one-wp-security-and-firewall\n"
|
16 |
|
@@ -146,11 +146,11 @@ msgid "Nonce check failed for save blacklist settings!"
|
|
146 |
msgstr ""
|
147 |
|
148 |
#: admin/wp-security-blacklist-menu.php:139
|
149 |
-
#: admin/wp-security-brute-force-menu.php:
|
150 |
-
#: admin/wp-security-firewall-menu.php:
|
151 |
#: admin/wp-security-list-404.php:221
|
152 |
#: admin/wp-security-list-comment-spammer-ip.php:205
|
153 |
-
#: classes/wp-security-general-init-tasks.php:
|
154 |
msgid "The plugin was unable to write to the .htaccess file. Please edit file manually."
|
155 |
msgstr ""
|
156 |
|
@@ -179,7 +179,7 @@ msgid "Country Blocking Addon"
|
|
179 |
msgstr ""
|
180 |
|
181 |
#: admin/wp-security-blacklist-menu.php:159
|
182 |
-
#: admin/wp-security-firewall-menu.php:
|
183 |
msgid "You may also be interested in our %s."
|
184 |
msgstr ""
|
185 |
|
@@ -224,23 +224,23 @@ msgstr ""
|
|
224 |
#: admin/wp-security-brute-force-menu.php:422
|
225 |
#: admin/wp-security-brute-force-menu.php:445
|
226 |
#: admin/wp-security-brute-force-menu.php:466
|
227 |
-
#: admin/wp-security-brute-force-menu.php:
|
228 |
-
#: admin/wp-security-filescan-menu.php:
|
229 |
-
#: admin/wp-security-filescan-menu.php:
|
230 |
-
#: admin/wp-security-firewall-menu.php:
|
231 |
-
#: admin/wp-security-firewall-menu.php:
|
232 |
-
#: admin/wp-security-firewall-menu.php:
|
233 |
-
#: admin/wp-security-firewall-menu.php:
|
234 |
-
#: admin/wp-security-firewall-menu.php:
|
235 |
-
#: admin/wp-security-firewall-menu.php:
|
236 |
-
#: admin/wp-security-firewall-menu.php:
|
237 |
-
#: admin/wp-security-firewall-menu.php:
|
238 |
-
#: admin/wp-security-firewall-menu.php:
|
239 |
-
#: admin/wp-security-firewall-menu.php:
|
240 |
-
#: admin/wp-security-firewall-menu.php:
|
241 |
-
#: admin/wp-security-firewall-menu.php:
|
242 |
-
#: admin/wp-security-firewall-menu.php:
|
243 |
-
#: admin/wp-security-firewall-menu.php:
|
244 |
#: admin/wp-security-settings-menu.php:771
|
245 |
#: admin/wp-security-spam-menu.php:175
|
246 |
#: admin/wp-security-spam-menu.php:348
|
@@ -250,7 +250,7 @@ msgid "More Info"
|
|
250 |
msgstr ""
|
251 |
|
252 |
#: admin/wp-security-blacklist-menu.php:202
|
253 |
-
#: admin/wp-security-brute-force-menu.php:
|
254 |
#: admin/wp-security-user-login-menu.php:355
|
255 |
msgid "Each IP address must be on a new line."
|
256 |
msgstr ""
|
@@ -261,19 +261,19 @@ msgid "To specify an IP range use a wildcard \"*\" character. Acceptable ways to
|
|
261 |
msgstr ""
|
262 |
|
263 |
#: admin/wp-security-blacklist-menu.php:204
|
264 |
-
#: admin/wp-security-brute-force-menu.php:
|
265 |
#: admin/wp-security-user-login-menu.php:357
|
266 |
msgid "Example 1: 195.47.89.*"
|
267 |
msgstr ""
|
268 |
|
269 |
#: admin/wp-security-blacklist-menu.php:205
|
270 |
-
#: admin/wp-security-brute-force-menu.php:
|
271 |
#: admin/wp-security-user-login-menu.php:358
|
272 |
msgid "Example 2: 195.47.*.*"
|
273 |
msgstr ""
|
274 |
|
275 |
#: admin/wp-security-blacklist-menu.php:206
|
276 |
-
#: admin/wp-security-brute-force-menu.php:
|
277 |
#: admin/wp-security-user-login-menu.php:359
|
278 |
msgid "Example 3: 195.*.*.*"
|
279 |
msgstr ""
|
@@ -300,14 +300,14 @@ msgstr ""
|
|
300 |
|
301 |
#: admin/wp-security-blacklist-menu.php:233
|
302 |
#: admin/wp-security-brute-force-menu.php:228
|
303 |
-
#: admin/wp-security-brute-force-menu.php:
|
304 |
-
#: admin/wp-security-brute-force-menu.php:
|
305 |
-
#: admin/wp-security-brute-force-menu.php:
|
306 |
#: admin/wp-security-database-menu.php:358
|
307 |
-
#: admin/wp-security-filescan-menu.php:
|
308 |
#: admin/wp-security-filesystem-menu.php:249
|
309 |
-
#: admin/wp-security-firewall-menu.php:
|
310 |
-
#: admin/wp-security-firewall-menu.php:
|
311 |
#: admin/wp-security-misc-options-menu.php:174
|
312 |
#: admin/wp-security-misc-options-menu.php:225
|
313 |
#: admin/wp-security-misc-options-menu.php:285
|
@@ -327,8 +327,8 @@ msgid "Save Settings"
|
|
327 |
msgstr ""
|
328 |
|
329 |
#: admin/wp-security-brute-force-menu.php:29
|
330 |
-
#: admin/wp-security-brute-force-menu.php:
|
331 |
-
#: admin/wp-security-dashboard-menu.php:
|
332 |
msgid "Rename Login Page"
|
333 |
msgstr ""
|
334 |
|
@@ -343,7 +343,7 @@ msgid "Login Captcha"
|
|
343 |
msgstr ""
|
344 |
|
345 |
#: admin/wp-security-brute-force-menu.php:32
|
346 |
-
#: admin/wp-security-brute-force-menu.php:
|
347 |
msgid "Login Whitelist"
|
348 |
msgstr ""
|
349 |
|
@@ -365,8 +365,8 @@ msgstr ""
|
|
365 |
|
366 |
#: admin/wp-security-brute-force-menu.php:121
|
367 |
#: admin/wp-security-database-menu.php:275
|
368 |
-
#: admin/wp-security-filescan-menu.php:
|
369 |
-
#: admin/wp-security-firewall-menu.php:
|
370 |
#: admin/wp-security-spam-menu.php:226
|
371 |
#: admin/wp-security-spam-menu.php:260
|
372 |
#: admin/wp-security-user-login-menu.php:142
|
@@ -464,10 +464,10 @@ msgstr ""
|
|
464 |
|
465 |
#: admin/wp-security-brute-force-menu.php:321
|
466 |
#: admin/wp-security-filesystem-menu.php:293
|
467 |
-
#: admin/wp-security-firewall-menu.php:
|
468 |
-
#: admin/wp-security-firewall-menu.php:
|
469 |
-
#: admin/wp-security-firewall-menu.php:
|
470 |
-
#: admin/wp-security-firewall-menu.php:
|
471 |
#: admin/wp-security-settings-menu.php:636
|
472 |
#: admin/wp-security-spam-menu.php:114
|
473 |
msgid "Could not write to the .htaccess file. Please check the file permissions."
|
@@ -510,6 +510,8 @@ msgid "To learn more about how to use this feature please watch the following %s
|
|
510 |
msgstr ""
|
511 |
|
512 |
#: admin/wp-security-brute-force-menu.php:348
|
|
|
|
|
513 |
msgid "Cookie-Based Brute Force Login Prevention"
|
514 |
msgstr ""
|
515 |
|
@@ -679,7 +681,7 @@ msgid "Google reCAPTCHA Settings"
|
|
679 |
msgstr ""
|
680 |
|
681 |
#: admin/wp-security-brute-force-menu.php:575
|
682 |
-
msgid "By enabling these settings the Google reCAPTCHA v2 widget will be applied by default for all forms
|
683 |
msgstr ""
|
684 |
|
685 |
#: admin/wp-security-brute-force-menu.php:582
|
@@ -734,134 +736,134 @@ msgstr ""
|
|
734 |
msgid "Check this if you want to insert captcha on a custom login form generated by the following WP function: wp_login_form()"
|
735 |
msgstr ""
|
736 |
|
737 |
-
#: admin/wp-security-brute-force-menu.php:
|
738 |
msgid "Woocommerce Forms Captcha Settings"
|
739 |
msgstr ""
|
740 |
|
741 |
-
#: admin/wp-security-brute-force-menu.php:
|
742 |
msgid "Enable Captcha On Woocommerce Login Form"
|
743 |
msgstr ""
|
744 |
|
745 |
-
#: admin/wp-security-brute-force-menu.php:
|
746 |
msgid "Check this if you want to insert captcha on a Woocommerce login form"
|
747 |
msgstr ""
|
748 |
|
749 |
-
#: admin/wp-security-brute-force-menu.php:
|
750 |
msgid "Enable Captcha On Woocommerce Lost Password Form"
|
751 |
msgstr ""
|
752 |
|
753 |
-
#: admin/wp-security-brute-force-menu.php:
|
754 |
msgid "Check this if you want to insert captcha on a Woocommerce lost password form"
|
755 |
msgstr ""
|
756 |
|
757 |
-
#: admin/wp-security-brute-force-menu.php:
|
758 |
msgid "Enable Captcha On Woocommerce Registration Form"
|
759 |
msgstr ""
|
760 |
|
761 |
-
#: admin/wp-security-brute-force-menu.php:
|
762 |
msgid "Check this if you want to insert captcha on a Woocommerce registration form"
|
763 |
msgstr ""
|
764 |
|
765 |
-
#: admin/wp-security-brute-force-menu.php:
|
766 |
msgid "Nonce check failed for save whitelist settings!"
|
767 |
msgstr ""
|
768 |
|
769 |
-
#: admin/wp-security-brute-force-menu.php:
|
770 |
msgid "The All In One WP Security Whitelist feature gives you the option of only allowing certain IP addresses or ranges to have access to your WordPress login page."
|
771 |
msgstr ""
|
772 |
|
773 |
-
#: admin/wp-security-brute-force-menu.php:
|
774 |
msgid "This feature will deny login access for all IP addresses which are not in your whitelist as configured in the settings below."
|
775 |
msgstr ""
|
776 |
|
777 |
-
#: admin/wp-security-brute-force-menu.php:
|
778 |
msgid "The plugin achieves this by writing the appropriate directives to your .htaccess file."
|
779 |
msgstr ""
|
780 |
|
781 |
-
#: admin/wp-security-brute-force-menu.php:
|
782 |
msgid "By allowing/blocking IP addresses via the .htaccess file your are using the most secure first line of defence because login access will only be granted to whitelisted IP addresses and other addresses will be blocked as soon as they try to access your login page."
|
783 |
msgstr ""
|
784 |
|
785 |
-
#: admin/wp-security-brute-force-menu.php:
|
786 |
msgid "Attention: If in addition to enabling the white list feature, you also have one of the %s or %s features enabled, <strong>you will still need to use your secret word or special slug in the URL when trying to access your WordPress login page</strong>."
|
787 |
msgstr ""
|
788 |
|
789 |
-
#: admin/wp-security-brute-force-menu.php:
|
790 |
msgid "These features are NOT functionally related. Having both of them enabled on your site means you are creating 2 layers of security."
|
791 |
msgstr ""
|
792 |
|
793 |
-
#: admin/wp-security-brute-force-menu.php:
|
794 |
msgid "Login IP Whitelist Settings"
|
795 |
msgstr ""
|
796 |
|
797 |
-
#: admin/wp-security-brute-force-menu.php:
|
798 |
msgid "Enable IP Whitelisting"
|
799 |
msgstr ""
|
800 |
|
801 |
-
#: admin/wp-security-brute-force-menu.php:
|
802 |
#: admin/wp-security-user-login-menu.php:343
|
803 |
msgid "Check this if you want to enable the whitelisting of selected IP addresses specified in the settings below"
|
804 |
msgstr ""
|
805 |
|
806 |
-
#: admin/wp-security-brute-force-menu.php:
|
807 |
msgid "Your Current IP Address"
|
808 |
msgstr ""
|
809 |
|
810 |
-
#: admin/wp-security-brute-force-menu.php:
|
811 |
msgid "You can copy and paste this address in the text box below if you want to include it in your login whitelist."
|
812 |
msgstr ""
|
813 |
|
814 |
-
#: admin/wp-security-brute-force-menu.php:
|
815 |
#: admin/wp-security-user-login-menu.php:347
|
816 |
msgid "Enter Whitelisted IP Addresses:"
|
817 |
msgstr ""
|
818 |
|
819 |
-
#: admin/wp-security-brute-force-menu.php:
|
820 |
msgid "Enter one or more IP addresses or IP ranges you wish to include in your whitelist. Only the addresses specified here will have access to the WordPress login page."
|
821 |
msgstr ""
|
822 |
|
823 |
-
#: admin/wp-security-brute-force-menu.php:
|
824 |
msgid "To specify an IPv4 range use a wildcard \"*\" character. Acceptable ways to use wildcards is shown in the examples below:"
|
825 |
msgstr ""
|
826 |
|
827 |
-
#: admin/wp-security-brute-force-menu.php:
|
828 |
msgid "Or you can enter an IPv6 address (NOTE: ranges/wildcards are currently not supported for ipv6)"
|
829 |
msgstr ""
|
830 |
|
831 |
-
#: admin/wp-security-brute-force-menu.php:
|
832 |
msgid "Example 4: 4102:0:3ea6:79fd:b:46f8:230f:bb05"
|
833 |
msgstr ""
|
834 |
|
835 |
-
#: admin/wp-security-brute-force-menu.php:
|
836 |
msgid "Example 5: 2205:0:1ca2:810d::"
|
837 |
msgstr ""
|
838 |
|
839 |
-
#: admin/wp-security-brute-force-menu.php:
|
840 |
msgid "This feature allows you to add a special hidden \"honeypot\" field on the WordPress login page. This will only be visible to robots and not humans."
|
841 |
msgstr ""
|
842 |
|
843 |
-
#: admin/wp-security-brute-force-menu.php:
|
844 |
msgid "Since robots usually fill in every input field from a login form, they will also submit a value for the special hidden honeypot field."
|
845 |
msgstr ""
|
846 |
|
847 |
-
#: admin/wp-security-brute-force-menu.php:
|
848 |
#: admin/wp-security-user-registration-menu.php:286
|
849 |
msgid "The way honeypots work is that a hidden field is placed somewhere inside a form which only robots will submit. If that field contains a value when the form is submitted then a robot has most likely submitted the form and it is consequently dealt with."
|
850 |
msgstr ""
|
851 |
|
852 |
-
#: admin/wp-security-brute-force-menu.php:
|
853 |
msgid "Therefore, if the plugin detects that this field has a value when the login form is submitted, then the robot which is attempting to login to your site will be redirected to its localhost address - http://127.0.0.1."
|
854 |
msgstr ""
|
855 |
|
856 |
-
#: admin/wp-security-brute-force-menu.php:
|
857 |
msgid "Login Form Honeypot Settings"
|
858 |
msgstr ""
|
859 |
|
860 |
-
#: admin/wp-security-brute-force-menu.php:
|
861 |
msgid "Enable Honeypot On Login Page"
|
862 |
msgstr ""
|
863 |
|
864 |
-
#: admin/wp-security-brute-force-menu.php:
|
865 |
msgid "Check this if you want to enable the honeypot feature for the login page"
|
866 |
msgstr ""
|
867 |
|
@@ -870,7 +872,7 @@ msgid "System Info"
|
|
870 |
msgstr ""
|
871 |
|
872 |
#: admin/wp-security-dashboard-menu.php:30
|
873 |
-
#: admin/wp-security-dashboard-menu.php:
|
874 |
msgid "Locked IP Addresses"
|
875 |
msgstr ""
|
876 |
|
@@ -896,7 +898,7 @@ msgstr ""
|
|
896 |
|
897 |
#: admin/wp-security-dashboard-menu.php:109
|
898 |
#: admin/wp-security-dashboard-menu.php:113
|
899 |
-
#: admin/wp-security-dashboard-menu.php:
|
900 |
msgid "Version"
|
901 |
msgstr ""
|
902 |
|
@@ -943,7 +945,7 @@ msgstr ""
|
|
943 |
#: admin/wp-security-dashboard-menu.php:144
|
944 |
#: admin/wp-security-dashboard-menu.php:153
|
945 |
#: admin/wp-security-dashboard-menu.php:162
|
946 |
-
#: admin/wp-security-dashboard-menu.php:
|
947 |
msgid "N/A"
|
948 |
msgstr ""
|
949 |
|
@@ -961,13 +963,11 @@ msgstr ""
|
|
961 |
|
962 |
#: admin/wp-security-dashboard-menu.php:169
|
963 |
#: admin/wp-security-dashboard-menu.php:179
|
964 |
-
#: admin/wp-security-dashboard-menu.php:188
|
965 |
msgid "On"
|
966 |
msgstr ""
|
967 |
|
968 |
#: admin/wp-security-dashboard-menu.php:171
|
969 |
#: admin/wp-security-dashboard-menu.php:181
|
970 |
-
#: admin/wp-security-dashboard-menu.php:190
|
971 |
msgid "Off"
|
972 |
msgstr ""
|
973 |
|
@@ -975,248 +975,248 @@ msgstr ""
|
|
975 |
msgid "PHP Allow URL fopen"
|
976 |
msgstr ""
|
977 |
|
978 |
-
#: admin/wp-security-dashboard-menu.php:
|
979 |
msgid "PHP Display Errors"
|
980 |
msgstr ""
|
981 |
|
982 |
-
#: admin/wp-security-dashboard-menu.php:
|
983 |
msgid "PHP Max Script Execution Time"
|
984 |
msgstr ""
|
985 |
|
986 |
-
#: admin/wp-security-dashboard-menu.php:
|
987 |
msgid "Active Plugins"
|
988 |
msgstr ""
|
989 |
|
990 |
-
#: admin/wp-security-dashboard-menu.php:
|
991 |
#: admin/wp-security-filesystem-menu.php:140
|
992 |
#: admin/wp-security-filesystem-menu.php:159
|
993 |
msgid "Name"
|
994 |
msgstr ""
|
995 |
|
996 |
-
#: admin/wp-security-dashboard-menu.php:
|
997 |
msgid "Plugin URL"
|
998 |
msgstr ""
|
999 |
|
1000 |
-
#: admin/wp-security-dashboard-menu.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1001 |
msgid "This tab displays the list of all IP addresses which are currently temporarily locked out due to the Login Lockdown feature:"
|
1002 |
msgstr ""
|
1003 |
|
1004 |
-
#: admin/wp-security-dashboard-menu.php:
|
1005 |
msgid "Currently Locked Out IP Addresses and Ranges"
|
1006 |
msgstr ""
|
1007 |
|
1008 |
-
#: admin/wp-security-dashboard-menu.php:
|
1009 |
msgid "This tab displays the list of all permanently blocked IP addresses."
|
1010 |
msgstr ""
|
1011 |
|
1012 |
-
#: admin/wp-security-dashboard-menu.php:
|
1013 |
#: admin/wp-security-spam-menu.php:297
|
1014 |
msgid "NOTE: This feature does NOT use the .htaccess file to permanently block the IP addresses so it should be compatible with all web servers running WordPress."
|
1015 |
msgstr ""
|
1016 |
|
1017 |
-
#: admin/wp-security-dashboard-menu.php:
|
1018 |
msgid "Permanently Blocked IP Addresses"
|
1019 |
msgstr ""
|
1020 |
|
1021 |
-
#: admin/wp-security-dashboard-menu.php:
|
1022 |
-
#: admin/wp-security-firewall-menu.php:
|
1023 |
#: admin/wp-security-user-login-menu.php:429
|
1024 |
#: admin/wp-security-user-login-menu.php:583
|
1025 |
#: admin/wp-security-user-registration-menu.php:171
|
1026 |
msgid "Search"
|
1027 |
msgstr ""
|
1028 |
|
1029 |
-
#: admin/wp-security-dashboard-menu.php:
|
1030 |
msgid "View Logs for All In WP Security & Firewall Plugin"
|
1031 |
msgstr ""
|
1032 |
|
1033 |
-
#: admin/wp-security-dashboard-menu.php:
|
1034 |
msgid "Log File"
|
1035 |
msgstr ""
|
1036 |
|
1037 |
-
#: admin/wp-security-dashboard-menu.php:
|
1038 |
msgid "--Select a file--"
|
1039 |
msgstr ""
|
1040 |
|
1041 |
-
#: admin/wp-security-dashboard-menu.php:
|
1042 |
msgid "Select one of the log files to view the contents"
|
1043 |
msgstr ""
|
1044 |
|
1045 |
-
#: admin/wp-security-dashboard-menu.php:
|
1046 |
msgid "View Logs"
|
1047 |
msgstr ""
|
1048 |
|
1049 |
-
#: admin/wp-security-dashboard-menu.php:
|
1050 |
msgid "Error! The file you selected is not a permitted file. You can only view log files created by this plugin."
|
1051 |
msgstr ""
|
1052 |
|
1053 |
-
#: admin/wp-security-dashboard-menu.php:
|
1054 |
msgid "Log File Contents For"
|
1055 |
msgstr ""
|
1056 |
|
1057 |
-
#: admin/wp-security-dashboard-menu.php:
|
1058 |
msgid "Log file is empty!"
|
1059 |
msgstr ""
|
1060 |
|
1061 |
-
#: admin/wp-security-dashboard-menu.php:
|
1062 |
msgid "Security Strength Meter"
|
1063 |
msgstr ""
|
1064 |
|
1065 |
-
#: admin/wp-security-dashboard-menu.php:
|
1066 |
msgid "Security Points Breakdown"
|
1067 |
msgstr ""
|
1068 |
|
1069 |
-
#: admin/wp-security-dashboard-menu.php:
|
1070 |
msgid "Spread the Word"
|
1071 |
msgstr ""
|
1072 |
|
1073 |
-
#: admin/wp-security-dashboard-menu.php:
|
1074 |
msgid "Get To Know The Developers"
|
1075 |
msgstr ""
|
1076 |
|
1077 |
-
#: admin/wp-security-dashboard-menu.php:
|
1078 |
msgid "Critical Feature Status"
|
1079 |
msgstr ""
|
1080 |
|
1081 |
-
#: admin/wp-security-dashboard-menu.php:
|
1082 |
msgid "Last 5 Logins"
|
1083 |
msgstr ""
|
1084 |
|
1085 |
-
#: admin/wp-security-dashboard-menu.php:
|
1086 |
msgid "Maintenance Mode Status"
|
1087 |
msgstr ""
|
1088 |
|
1089 |
-
#: admin/wp-security-dashboard-menu.php:
|
1090 |
#: admin/wp-security-user-login-menu.php:32
|
1091 |
msgid "Logged In Users"
|
1092 |
msgstr ""
|
1093 |
|
1094 |
-
#: admin/wp-security-dashboard-menu.php:
|
1095 |
msgid "Total Achievable Points: "
|
1096 |
msgstr ""
|
1097 |
|
1098 |
-
#: admin/wp-security-dashboard-menu.php:
|
1099 |
msgid "Current Score of Your Site: "
|
1100 |
msgstr ""
|
1101 |
|
1102 |
-
#: admin/wp-security-dashboard-menu.php:
|
1103 |
msgid "We are working hard to make your WordPress site more secure. Please support us, here is how:"
|
1104 |
msgstr ""
|
1105 |
|
1106 |
-
#: admin/wp-security-dashboard-menu.php:
|
1107 |
msgid "Follow us on"
|
1108 |
msgstr ""
|
1109 |
|
1110 |
-
#: admin/wp-security-dashboard-menu.php:
|
1111 |
msgid "Post to Twitter"
|
1112 |
msgstr ""
|
1113 |
|
1114 |
-
#: admin/wp-security-dashboard-menu.php:
|
1115 |
msgid "Give us a Good Rating"
|
1116 |
msgstr ""
|
1117 |
|
1118 |
-
#: admin/wp-security-dashboard-menu.php:
|
1119 |
msgid "Wanna know more about the developers behind this plugin?"
|
1120 |
msgstr ""
|
1121 |
|
1122 |
-
#: admin/wp-security-dashboard-menu.php:
|
1123 |
msgid "Below is the current status of the critical features that you should activate on your site to achieve a minimum level of recommended security"
|
1124 |
msgstr ""
|
1125 |
|
1126 |
-
#: admin/wp-security-dashboard-menu.php:
|
1127 |
msgid "Admin Username"
|
1128 |
msgstr ""
|
1129 |
|
1130 |
-
#: admin/wp-security-dashboard-menu.php:
|
1131 |
-
#: admin/wp-security-user-login-menu.php:28
|
1132 |
-
#: classes/grade-system/wp-security-feature-item-manager.php:42
|
1133 |
-
msgid "Login Lockdown"
|
1134 |
-
msgstr ""
|
1135 |
-
|
1136 |
-
#: admin/wp-security-dashboard-menu.php:650
|
1137 |
msgid "File Permission"
|
1138 |
msgstr ""
|
1139 |
|
1140 |
-
#: admin/wp-security-dashboard-menu.php:
|
1141 |
msgid "Basic Firewall"
|
1142 |
msgstr ""
|
1143 |
|
1144 |
-
#: admin/wp-security-dashboard-menu.php:
|
1145 |
msgid "No data found!"
|
1146 |
msgstr ""
|
1147 |
|
1148 |
-
#: admin/wp-security-dashboard-menu.php:
|
1149 |
msgid "Last 5 logins summary:"
|
1150 |
msgstr ""
|
1151 |
|
1152 |
-
#: admin/wp-security-dashboard-menu.php:
|
1153 |
msgid "User"
|
1154 |
msgstr ""
|
1155 |
|
1156 |
-
#: admin/wp-security-dashboard-menu.php:
|
1157 |
#: admin/wp-security-list-404.php:88
|
1158 |
#: admin/wp-security-list-login-fails.php:57
|
1159 |
#: admin/wp-security-list-permanent-blocked-ip.php:68
|
1160 |
msgid "Date"
|
1161 |
msgstr ""
|
1162 |
|
1163 |
-
#: admin/wp-security-dashboard-menu.php:
|
1164 |
msgid "IP"
|
1165 |
msgstr ""
|
1166 |
|
1167 |
-
#: admin/wp-security-dashboard-menu.php:
|
1168 |
msgid "Maintenance mode is currently enabled. Remember to turn it off when you are done"
|
1169 |
msgstr ""
|
1170 |
|
1171 |
-
#: admin/wp-security-dashboard-menu.php:
|
1172 |
msgid "Maintenance mode is currently off."
|
1173 |
msgstr ""
|
1174 |
|
1175 |
-
#: admin/wp-security-dashboard-menu.php:
|
1176 |
msgid "Maintenance Mode"
|
1177 |
msgstr ""
|
1178 |
|
1179 |
-
#: admin/wp-security-dashboard-menu.php:
|
1180 |
msgid "Cookie-Based Brute Force"
|
1181 |
msgstr ""
|
1182 |
|
1183 |
-
#: admin/wp-security-dashboard-menu.php:
|
1184 |
-
#: admin/wp-security-dashboard-menu.php:
|
1185 |
msgid "The %s feature is currently active."
|
1186 |
msgstr ""
|
1187 |
|
1188 |
-
#: admin/wp-security-dashboard-menu.php:
|
1189 |
-
#: admin/wp-security-dashboard-menu.php:
|
1190 |
msgid "Your new WordPress login URL is now:"
|
1191 |
msgstr ""
|
1192 |
|
1193 |
-
#: admin/wp-security-dashboard-menu.php:
|
1194 |
-
msgid "Number of users currently logged
|
1195 |
msgstr ""
|
1196 |
|
1197 |
-
#: admin/wp-security-dashboard-menu.php:
|
1198 |
-
|
1199 |
-
#: admin/wp-security-dashboard-menu.php:818
|
1200 |
-
msgid "Go to the %s menu to see more details"
|
1201 |
msgstr ""
|
1202 |
|
1203 |
-
#: admin/wp-security-dashboard-menu.php:
|
1204 |
-
msgid "
|
1205 |
msgstr ""
|
1206 |
|
1207 |
-
#: admin/wp-security-dashboard-menu.php:
|
1208 |
-
msgid "
|
1209 |
msgstr ""
|
1210 |
|
1211 |
-
#: admin/wp-security-dashboard-menu.php:
|
1212 |
-
|
|
|
1213 |
msgstr ""
|
1214 |
|
1215 |
-
#: admin/wp-security-dashboard-menu.php:
|
1216 |
msgid "There are no IP addresses currently locked out."
|
1217 |
msgstr ""
|
1218 |
|
1219 |
-
#: admin/wp-security-dashboard-menu.php:
|
1220 |
msgid "Number of temporarily locked out IP addresses: "
|
1221 |
msgstr ""
|
1222 |
|
@@ -1320,7 +1320,7 @@ msgid "DB Backup failed. Please check the permissions of the backup directory."
|
|
1320 |
msgstr ""
|
1321 |
|
1322 |
#: admin/wp-security-database-menu.php:255
|
1323 |
-
#: admin/wp-security-filescan-menu.php:
|
1324 |
msgid "You entered a non numeric value for the \"backup time interval\" field. It has been set to the default value."
|
1325 |
msgstr ""
|
1326 |
|
@@ -1362,17 +1362,17 @@ msgid "Backup Time Interval"
|
|
1362 |
msgstr ""
|
1363 |
|
1364 |
#: admin/wp-security-database-menu.php:335
|
1365 |
-
#: admin/wp-security-filescan-menu.php:
|
1366 |
msgid "Hours"
|
1367 |
msgstr ""
|
1368 |
|
1369 |
#: admin/wp-security-database-menu.php:336
|
1370 |
-
#: admin/wp-security-filescan-menu.php:
|
1371 |
msgid "Days"
|
1372 |
msgstr ""
|
1373 |
|
1374 |
#: admin/wp-security-database-menu.php:337
|
1375 |
-
#: admin/wp-security-filescan-menu.php:
|
1376 |
msgid "Weeks"
|
1377 |
msgstr ""
|
1378 |
|
@@ -1434,51 +1434,51 @@ msgstr ""
|
|
1434 |
msgid "%s tables had their prefix updated successfully!"
|
1435 |
msgstr ""
|
1436 |
|
1437 |
-
#: admin/wp-security-database-menu.php:
|
1438 |
msgid "wp-config.php file was updated successfully!"
|
1439 |
msgstr ""
|
1440 |
|
1441 |
-
#: admin/wp-security-database-menu.php:
|
1442 |
msgid ""
|
1443 |
"The \"wp-config.php\" file was not able to be modified. Please modify this file manually using your favourite editor and search
|
1444 |
\n"
|
1445 |
" for variable \"$table_prefix\" and assign the following value to that variable: %s"
|
1446 |
msgstr ""
|
1447 |
|
1448 |
-
#: admin/wp-security-database-menu.php:
|
1449 |
-
#: admin/wp-security-database-menu.php:
|
1450 |
msgid "Update of table %s failed: unable to change %s to %s"
|
1451 |
msgstr ""
|
1452 |
|
1453 |
-
#: admin/wp-security-database-menu.php:
|
1454 |
msgid "The options table records which had references to the old DB prefix were updated successfully!"
|
1455 |
msgstr ""
|
1456 |
|
1457 |
-
#: admin/wp-security-database-menu.php:
|
1458 |
msgid "The %s table records which had references to the old DB prefix were updated successfully!"
|
1459 |
msgstr ""
|
1460 |
|
1461 |
-
#: admin/wp-security-database-menu.php:
|
1462 |
msgid "Error updating user_meta table where new meta_key = %s, old meta_key = %s and user_id = %s."
|
1463 |
msgstr ""
|
1464 |
|
1465 |
-
#: admin/wp-security-database-menu.php:
|
1466 |
msgid "The usermeta table records which had references to the old DB prefix were updated successfully!"
|
1467 |
msgstr ""
|
1468 |
|
1469 |
-
#: admin/wp-security-database-menu.php:
|
1470 |
msgid "DB prefix change tasks have been completed."
|
1471 |
msgstr ""
|
1472 |
|
1473 |
-
#: admin/wp-security-database-menu.php:
|
1474 |
msgid "Checking for MySQL tables of type \"view\"....."
|
1475 |
msgstr ""
|
1476 |
|
1477 |
-
#: admin/wp-security-database-menu.php:
|
1478 |
msgid "Update of the following MySQL view definition failed: %s"
|
1479 |
msgstr ""
|
1480 |
|
1481 |
-
#: admin/wp-security-database-menu.php:
|
1482 |
msgid "%s view definitions were updated successfully!"
|
1483 |
msgstr ""
|
1484 |
|
@@ -1491,278 +1491,282 @@ msgstr ""
|
|
1491 |
msgid "Malware Scan"
|
1492 |
msgstr ""
|
1493 |
|
1494 |
-
#: admin/wp-security-filescan-menu.php:
|
1495 |
msgid "There have been no file changes since the last scan."
|
1496 |
msgstr ""
|
1497 |
|
1498 |
-
#: admin/wp-security-filescan-menu.php:
|
1499 |
msgid "Nonce check failed for manual file change detection scan operation!"
|
1500 |
msgstr ""
|
1501 |
|
1502 |
-
#: admin/wp-security-filescan-menu.php:
|
1503 |
-
msgid "
|
1504 |
msgstr ""
|
1505 |
|
1506 |
-
#: admin/wp-security-filescan-menu.php:
|
|
|
|
|
|
|
|
|
1507 |
msgid "Scan Complete - There were no file changes detected!"
|
1508 |
msgstr ""
|
1509 |
|
1510 |
-
#: admin/wp-security-filescan-menu.php:
|
1511 |
msgid "The following address was removed because it is not a valid email address: "
|
1512 |
msgstr ""
|
1513 |
|
1514 |
-
#: admin/wp-security-filescan-menu.php:
|
1515 |
msgid ""
|
1516 |
"NEW SCAN COMPLETED: The plugin has detected that you have made changes to the \"File Types To Ignore\" or \"Files To Ignore\" fields.
|
1517 |
\n"
|
1518 |
" In order to ensure that future scan results are accurate, the old scan data has been refreshed."
|
1519 |
msgstr ""
|
1520 |
|
1521 |
-
#: admin/wp-security-filescan-menu.php:
|
1522 |
msgid "All In One WP Security & Firewall has detected that there was a change in your host's files."
|
1523 |
msgstr ""
|
1524 |
|
1525 |
-
#: admin/wp-security-filescan-menu.php:
|
1526 |
msgid "View Scan Details & Clear This Message"
|
1527 |
msgstr ""
|
1528 |
|
1529 |
-
#: admin/wp-security-filescan-menu.php:
|
1530 |
msgid "If given an opportunity hackers can insert their code or files into your system which they can then use to carry out malicious acts on your site."
|
1531 |
msgstr ""
|
1532 |
|
1533 |
-
#: admin/wp-security-filescan-menu.php:
|
1534 |
msgid "Being informed of any changes in your files can be a good way to quickly prevent a hacker from causing damage to your website."
|
1535 |
msgstr ""
|
1536 |
|
1537 |
-
#: admin/wp-security-filescan-menu.php:
|
1538 |
msgid "In general, WordPress core and plugin files and file types such as \".php\" or \".js\" should not change often and when they do, it is important that you are made aware when a change occurs and which file was affected."
|
1539 |
msgstr ""
|
1540 |
|
1541 |
-
#: admin/wp-security-filescan-menu.php:
|
1542 |
msgid "The \"File Change Detection Feature\" will notify you of any file change which occurs on your system, including the addition and deletion of files by performing a regular automated or manual scan of your system's files."
|
1543 |
msgstr ""
|
1544 |
|
1545 |
-
#: admin/wp-security-filescan-menu.php:
|
1546 |
msgid "This feature also allows you to exclude certain files or folders from the scan in cases where you know that they change often as part of their normal operation. (For example log files and certain caching plugin files may change often and hence you may choose to exclude such files from the file change detection scan)"
|
1547 |
msgstr ""
|
1548 |
|
1549 |
-
#: admin/wp-security-filescan-menu.php:
|
1550 |
msgid "It appears that your server is using an old PHP version which is missing the %s. The file scanner feature needs this class in order to work. If you would like to use this feature please upgrade your server PHP version to 5.3 or greater."
|
1551 |
msgstr ""
|
1552 |
|
1553 |
-
#: admin/wp-security-filescan-menu.php:
|
1554 |
msgid "Manual File Change Detection Scan"
|
1555 |
msgstr ""
|
1556 |
|
1557 |
-
#: admin/wp-security-filescan-menu.php:
|
1558 |
msgid "To perform a manual file change detection scan click on the button below."
|
1559 |
msgstr ""
|
1560 |
|
1561 |
-
#: admin/wp-security-filescan-menu.php:
|
1562 |
msgid "Perform Scan Now"
|
1563 |
msgstr ""
|
1564 |
|
1565 |
-
#: admin/wp-security-filescan-menu.php:
|
1566 |
msgid "View Last Saved File Change Results"
|
1567 |
msgstr ""
|
1568 |
|
1569 |
-
#: admin/wp-security-filescan-menu.php:
|
1570 |
msgid "Click the button below to view the saved file change results from the last scan."
|
1571 |
msgstr ""
|
1572 |
|
1573 |
-
#: admin/wp-security-filescan-menu.php:
|
1574 |
msgid "View Last File Change"
|
1575 |
msgstr ""
|
1576 |
|
1577 |
-
#: admin/wp-security-filescan-menu.php:
|
1578 |
msgid "File Change Detection Settings"
|
1579 |
msgstr ""
|
1580 |
|
1581 |
-
#: admin/wp-security-filescan-menu.php:
|
1582 |
msgid "Enable Automated File Change Detection Scan"
|
1583 |
msgstr ""
|
1584 |
|
1585 |
-
#: admin/wp-security-filescan-menu.php:
|
1586 |
msgid "Check this if you want the system to automatically/periodically scan your files to check for file changes based on the settings below"
|
1587 |
msgstr ""
|
1588 |
|
1589 |
-
#: admin/wp-security-filescan-menu.php:
|
1590 |
msgid "Scan Time Interval"
|
1591 |
msgstr ""
|
1592 |
|
1593 |
-
#: admin/wp-security-filescan-menu.php:
|
1594 |
msgid "Set the value for how often you would like a scan to occur"
|
1595 |
msgstr ""
|
1596 |
|
1597 |
-
#: admin/wp-security-filescan-menu.php:
|
1598 |
msgid "File Types To Ignore"
|
1599 |
msgstr ""
|
1600 |
|
1601 |
-
#: admin/wp-security-filescan-menu.php:
|
1602 |
msgid "Enter each file type or extension on a new line which you wish to exclude from the file change detection scan."
|
1603 |
msgstr ""
|
1604 |
|
1605 |
-
#: admin/wp-security-filescan-menu.php:
|
1606 |
msgid "You can exclude file types from the scan which would not normally pose any security threat if they were changed. These can include things such as image files."
|
1607 |
msgstr ""
|
1608 |
|
1609 |
-
#: admin/wp-security-filescan-menu.php:
|
1610 |
msgid "Example: If you want the scanner to ignore files of type jpg, png, and bmp, then you would enter the following:"
|
1611 |
msgstr ""
|
1612 |
|
1613 |
-
#: admin/wp-security-filescan-menu.php:
|
1614 |
msgid "jpg"
|
1615 |
msgstr ""
|
1616 |
|
1617 |
-
#: admin/wp-security-filescan-menu.php:
|
1618 |
msgid "png"
|
1619 |
msgstr ""
|
1620 |
|
1621 |
-
#: admin/wp-security-filescan-menu.php:
|
1622 |
msgid "bmp"
|
1623 |
msgstr ""
|
1624 |
|
1625 |
-
#: admin/wp-security-filescan-menu.php:
|
1626 |
msgid "Files/Directories To Ignore"
|
1627 |
msgstr ""
|
1628 |
|
1629 |
-
#: admin/wp-security-filescan-menu.php:
|
1630 |
msgid "Enter each file or directory on a new line which you wish to exclude from the file change detection scan."
|
1631 |
msgstr ""
|
1632 |
|
1633 |
-
#: admin/wp-security-filescan-menu.php:
|
1634 |
msgid "You can exclude specific files/directories from the scan which would not normally pose any security threat if they were changed. These can include things such as log files."
|
1635 |
msgstr ""
|
1636 |
|
1637 |
-
#: admin/wp-security-filescan-menu.php:
|
1638 |
msgid "Example: If you want the scanner to ignore certain files in different directories or whole directories, then you would enter the following:"
|
1639 |
msgstr ""
|
1640 |
|
1641 |
-
#: admin/wp-security-filescan-menu.php:
|
1642 |
msgid "cache/config/master.php"
|
1643 |
msgstr ""
|
1644 |
|
1645 |
-
#: admin/wp-security-filescan-menu.php:
|
1646 |
msgid "somedirectory"
|
1647 |
msgstr ""
|
1648 |
|
1649 |
-
#: admin/wp-security-filescan-menu.php:
|
1650 |
msgid "Send Email When Change Detected"
|
1651 |
msgstr ""
|
1652 |
|
1653 |
-
#: admin/wp-security-filescan-menu.php:
|
1654 |
msgid "Check this if you want the system to email you if a file change was detected"
|
1655 |
msgstr ""
|
1656 |
|
1657 |
-
#: admin/wp-security-filescan-menu.php:
|
1658 |
msgid "Enter one or more email addresses on a new line."
|
1659 |
msgstr ""
|
1660 |
|
1661 |
-
#: admin/wp-security-filescan-menu.php:
|
1662 |
msgid "What is Malware?"
|
1663 |
msgstr ""
|
1664 |
|
1665 |
-
#: admin/wp-security-filescan-menu.php:
|
1666 |
msgid "The word Malware stands for Malicious Software. It can consist of things like trojan horses, adware, worms, spyware and any other undesirable code which a hacker will try to inject into your website."
|
1667 |
msgstr ""
|
1668 |
|
1669 |
-
#: admin/wp-security-filescan-menu.php:
|
1670 |
msgid "Often when malware code has been inserted into your site you will normally not notice anything out of the ordinary based on appearances, but it can have a dramatic effect on your site's search ranking."
|
1671 |
msgstr ""
|
1672 |
|
1673 |
-
#: admin/wp-security-filescan-menu.php:
|
1674 |
msgid "This is because the bots and spiders from search engines such as Google have the capability to detect malware when they are indexing the pages on your site, and consequently they can blacklist your website which will in turn affect your search rankings."
|
1675 |
msgstr ""
|
1676 |
|
1677 |
-
#: admin/wp-security-filescan-menu.php:
|
1678 |
msgid "CLICK HERE"
|
1679 |
msgstr ""
|
1680 |
|
1681 |
-
#: admin/wp-security-filescan-menu.php:
|
1682 |
msgid "Scanning For Malware"
|
1683 |
msgstr ""
|
1684 |
|
1685 |
-
#: admin/wp-security-filescan-menu.php:
|
1686 |
msgid "Due to the constantly changing and complex nature of Malware, scanning for such things using a standalone plugin will not work reliably. This is something best done via an external scan of your site regularly."
|
1687 |
msgstr ""
|
1688 |
|
1689 |
-
#: admin/wp-security-filescan-menu.php:
|
1690 |
msgid "This is why we have created an easy-to-use scanning service which is hosted off our own server which will scan your site for malware once every day and notify you if it finds anything."
|
1691 |
msgstr ""
|
1692 |
|
1693 |
-
#: admin/wp-security-filescan-menu.php:
|
1694 |
msgid "When you sign up for this service you will get the following:"
|
1695 |
msgstr ""
|
1696 |
|
1697 |
-
#: admin/wp-security-filescan-menu.php:
|
1698 |
msgid "Automatic Daily Scan of 1 Website"
|
1699 |
msgstr ""
|
1700 |
|
1701 |
-
#: admin/wp-security-filescan-menu.php:
|
1702 |
msgid "Automatic Malware & Blacklist Monitoring"
|
1703 |
msgstr ""
|
1704 |
|
1705 |
-
#: admin/wp-security-filescan-menu.php:
|
1706 |
msgid "Automatic Email Alerting"
|
1707 |
msgstr ""
|
1708 |
|
1709 |
-
#: admin/wp-security-filescan-menu.php:
|
1710 |
msgid "Site uptime monitoring"
|
1711 |
msgstr ""
|
1712 |
|
1713 |
-
#: admin/wp-security-filescan-menu.php:
|
1714 |
msgid "Site response time monitoring"
|
1715 |
msgstr ""
|
1716 |
|
1717 |
-
#: admin/wp-security-filescan-menu.php:
|
1718 |
msgid "We provide advice for malware cleanup"
|
1719 |
msgstr ""
|
1720 |
|
1721 |
-
#: admin/wp-security-filescan-menu.php:
|
1722 |
msgid "Blacklist Removal"
|
1723 |
msgstr ""
|
1724 |
|
1725 |
-
#: admin/wp-security-filescan-menu.php:
|
1726 |
msgid "No Contract (Cancel Anytime)"
|
1727 |
msgstr ""
|
1728 |
|
1729 |
-
#: admin/wp-security-filescan-menu.php:
|
1730 |
msgid "To learn more please %s."
|
1731 |
msgstr ""
|
1732 |
|
1733 |
-
#: admin/wp-security-filescan-menu.php:
|
1734 |
msgid "Latest File Change Scan Results"
|
1735 |
msgstr ""
|
1736 |
|
1737 |
-
#: admin/wp-security-filescan-menu.php:
|
1738 |
msgid "The following files were added to your host."
|
1739 |
msgstr ""
|
1740 |
|
1741 |
-
#: admin/wp-security-filescan-menu.php:
|
1742 |
-
#: admin/wp-security-filescan-menu.php:
|
1743 |
-
#: admin/wp-security-filescan-menu.php:
|
1744 |
#: admin/wp-security-settings-menu.php:31
|
1745 |
#: admin/wp-security-settings-menu.php:32
|
1746 |
msgid "File"
|
1747 |
msgstr ""
|
1748 |
|
1749 |
-
#: admin/wp-security-filescan-menu.php:
|
1750 |
-
#: admin/wp-security-filescan-menu.php:
|
1751 |
-
#: admin/wp-security-filescan-menu.php:
|
1752 |
msgid "File Size"
|
1753 |
msgstr ""
|
1754 |
|
1755 |
-
#: admin/wp-security-filescan-menu.php:
|
1756 |
-
#: admin/wp-security-filescan-menu.php:
|
1757 |
-
#: admin/wp-security-filescan-menu.php:
|
1758 |
msgid "File Modified"
|
1759 |
msgstr ""
|
1760 |
|
1761 |
-
#: admin/wp-security-filescan-menu.php:
|
1762 |
msgid "The following files were removed from your host."
|
1763 |
msgstr ""
|
1764 |
|
1765 |
-
#: admin/wp-security-filescan-menu.php:
|
1766 |
msgid "The following files were changed on your host."
|
1767 |
msgstr ""
|
1768 |
|
@@ -1996,8 +2000,8 @@ msgstr ""
|
|
1996 |
msgid "Custom Rules"
|
1997 |
msgstr ""
|
1998 |
|
1999 |
-
#: admin/wp-security-firewall-menu.php:
|
2000 |
-
#: admin/wp-security-firewall-menu.php:
|
2001 |
#: admin/wp-security-spam-menu.php:110
|
2002 |
#: admin/wp-security-spam-menu.php:454
|
2003 |
#: admin/wp-security-spam-menu.php:516
|
@@ -2005,595 +2009,603 @@ msgstr ""
|
|
2005 |
msgid "Settings were successfully saved"
|
2006 |
msgstr ""
|
2007 |
|
2008 |
-
#: admin/wp-security-firewall-menu.php:
|
2009 |
-
#: admin/wp-security-firewall-menu.php:
|
2010 |
msgid "Firewall Settings"
|
2011 |
msgstr ""
|
2012 |
|
2013 |
-
#: admin/wp-security-firewall-menu.php:
|
2014 |
msgid "This should not have any impact on your site's general functionality but if you wish you can take a %s of your .htaccess file before proceeding."
|
2015 |
msgstr ""
|
2016 |
|
2017 |
-
#: admin/wp-security-firewall-menu.php:
|
2018 |
msgid "The features in this tab allow you to activate some basic firewall security protection rules for your site."
|
2019 |
msgstr ""
|
2020 |
|
2021 |
-
#: admin/wp-security-firewall-menu.php:
|
2022 |
msgid "The firewall functionality is achieved via the insertion of special code into your currently active .htaccess file."
|
2023 |
msgstr ""
|
2024 |
|
2025 |
-
#: admin/wp-security-firewall-menu.php:
|
2026 |
msgid "Attention: You have enabled the \"Completely Block Access To XMLRPC\" checkbox which means all XMLRPC functionality will be blocked."
|
2027 |
msgstr ""
|
2028 |
|
2029 |
-
#: admin/wp-security-firewall-menu.php:
|
2030 |
msgid "By leaving this feature enabled you will prevent Jetpack or Wordpress iOS or other apps which need XMLRPC from working correctly on your site."
|
2031 |
msgstr ""
|
2032 |
|
2033 |
-
#: admin/wp-security-firewall-menu.php:
|
2034 |
msgid "If you still need XMLRPC then uncheck the \"Completely Block Access To XMLRPC\" checkbox and enable only the \"Disable Pingback Functionality From XMLRPC\" checkbox."
|
2035 |
msgstr ""
|
2036 |
|
2037 |
-
#: admin/wp-security-firewall-menu.php:
|
2038 |
msgid "Basic Firewall Settings"
|
2039 |
msgstr ""
|
2040 |
|
2041 |
-
#: admin/wp-security-firewall-menu.php:
|
2042 |
msgid "Enable Basic Firewall Protection"
|
2043 |
msgstr ""
|
2044 |
|
2045 |
-
#: admin/wp-security-firewall-menu.php:
|
2046 |
msgid "Check this if you want to apply basic firewall protection to your site."
|
2047 |
msgstr ""
|
2048 |
|
2049 |
-
#: admin/wp-security-firewall-menu.php:
|
2050 |
msgid "This setting will implement the following basic firewall protection mechanisms on your site:"
|
2051 |
msgstr ""
|
2052 |
|
2053 |
-
#: admin/wp-security-firewall-menu.php:
|
2054 |
msgid "1) Protect your htaccess file by denying access to it."
|
2055 |
msgstr ""
|
2056 |
|
2057 |
-
#: admin/wp-security-firewall-menu.php:
|
2058 |
msgid "2) Disable the server signature."
|
2059 |
msgstr ""
|
2060 |
|
2061 |
-
#: admin/wp-security-firewall-menu.php:
|
2062 |
msgid "3) Limit file upload size (10MB)."
|
2063 |
msgstr ""
|
2064 |
|
2065 |
-
#: admin/wp-security-firewall-menu.php:
|
2066 |
msgid "4) Protect your wp-config.php file by denying access to it."
|
2067 |
msgstr ""
|
2068 |
|
2069 |
-
#: admin/wp-security-firewall-menu.php:
|
2070 |
msgid "The above firewall features will be applied via your .htaccess file and should not affect your site's overall functionality."
|
2071 |
msgstr ""
|
2072 |
|
2073 |
-
#: admin/wp-security-firewall-menu.php:
|
2074 |
msgid "You are still advised to take a backup of your active .htaccess file just in case."
|
2075 |
msgstr ""
|
2076 |
|
2077 |
-
#: admin/wp-security-firewall-menu.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2078 |
msgid "WordPress XMLRPC & Pingback Vulnerability Protection"
|
2079 |
msgstr ""
|
2080 |
|
2081 |
-
#: admin/wp-security-firewall-menu.php:
|
2082 |
msgid "Completely Block Access To XMLRPC"
|
2083 |
msgstr ""
|
2084 |
|
2085 |
-
#: admin/wp-security-firewall-menu.php:
|
2086 |
msgid "Check this if you are not using the WP XML-RPC functionality and you want to completely block external access to XMLRPC."
|
2087 |
msgstr ""
|
2088 |
|
2089 |
-
#: admin/wp-security-firewall-menu.php:
|
2090 |
msgid "This setting will add a directive in your .htaccess to disable access to the WordPress xmlrpc.php file which is responsible for the XML-RPC functionality in WordPress."
|
2091 |
msgstr ""
|
2092 |
|
2093 |
-
#: admin/wp-security-firewall-menu.php:
|
2094 |
msgid "Hackers can exploit various vulnerabilities in the WordPress XML-RPC API in a number of ways such as:"
|
2095 |
msgstr ""
|
2096 |
|
2097 |
-
#: admin/wp-security-firewall-menu.php:
|
2098 |
msgid "1) Denial of Service (DoS) attacks"
|
2099 |
msgstr ""
|
2100 |
|
2101 |
-
#: admin/wp-security-firewall-menu.php:
|
2102 |
msgid "2) Hacking internal routers."
|
2103 |
msgstr ""
|
2104 |
|
2105 |
-
#: admin/wp-security-firewall-menu.php:
|
2106 |
msgid "3) Scanning ports in internal networks to get info from various hosts."
|
2107 |
msgstr ""
|
2108 |
|
2109 |
-
#: admin/wp-security-firewall-menu.php:
|
2110 |
msgid "Apart from the security protection benefit, this feature may also help reduce load on your server, particularly if your site currently has a lot of unwanted traffic hitting the XML-RPC API on your installation."
|
2111 |
msgstr ""
|
2112 |
|
2113 |
-
#: admin/wp-security-firewall-menu.php:
|
2114 |
msgid "NOTE: You should only enable this feature if you are not currently using the XML-RPC functionality on your WordPress installation."
|
2115 |
msgstr ""
|
2116 |
|
2117 |
-
#: admin/wp-security-firewall-menu.php:
|
2118 |
msgid "Leave this feature disabled and use the feature below if you want pingback protection but you still need XMLRPC."
|
2119 |
msgstr ""
|
2120 |
|
2121 |
-
#: admin/wp-security-firewall-menu.php:
|
2122 |
msgid "Disable Pingback Functionality From XMLRPC"
|
2123 |
msgstr ""
|
2124 |
|
2125 |
-
#: admin/wp-security-firewall-menu.php:
|
2126 |
msgid "If you use Jetpack or WP iOS or other apps which need WP XML-RPC functionality then check this. This will enable protection against WordPress pingback vulnerabilities."
|
2127 |
msgstr ""
|
2128 |
|
2129 |
-
#: admin/wp-security-firewall-menu.php:
|
2130 |
msgid "NOTE: If you use Jetpack or the Wordpress iOS or other apps then you should enable this feature but leave the \"Completely Block Access To XMLRPC\" checkbox unchecked."
|
2131 |
msgstr ""
|
2132 |
|
2133 |
-
#: admin/wp-security-firewall-menu.php:
|
2134 |
msgid "The feature will still allow XMLRPC functionality on your site but will disable the pingback methods."
|
2135 |
msgstr ""
|
2136 |
|
2137 |
-
#: admin/wp-security-firewall-menu.php:
|
2138 |
msgid "This feature will also remove the \"X-Pingback\" header if it is present."
|
2139 |
msgstr ""
|
2140 |
|
2141 |
-
#: admin/wp-security-firewall-menu.php:
|
2142 |
msgid "Block Access to Debug Log File"
|
2143 |
msgstr ""
|
2144 |
|
2145 |
-
#: admin/wp-security-firewall-menu.php:
|
2146 |
msgid "Block Access to debug.log File"
|
2147 |
msgstr ""
|
2148 |
|
2149 |
-
#: admin/wp-security-firewall-menu.php:
|
2150 |
msgid "Check this if you want to block access to the debug.log file that WordPress creates when debug logging is enabled."
|
2151 |
msgstr ""
|
2152 |
|
2153 |
-
#: admin/wp-security-firewall-menu.php:
|
2154 |
msgid "WordPress has an option to turn on the debug logging to a file located in wp-content/debug.log. This file may contain sensitive information."
|
2155 |
msgstr ""
|
2156 |
|
2157 |
-
#: admin/wp-security-firewall-menu.php:
|
2158 |
msgid "Using this optoin will block external access to this file. You can still access this file by logging into your site via FTP"
|
2159 |
msgstr ""
|
2160 |
|
2161 |
-
#: admin/wp-security-firewall-menu.php:
|
2162 |
msgid "Save Basic Firewall Settings"
|
2163 |
msgstr ""
|
2164 |
|
2165 |
-
#: admin/wp-security-firewall-menu.php:
|
2166 |
msgid "You have successfully saved the Additional Firewall Protection configuration"
|
2167 |
msgstr ""
|
2168 |
|
2169 |
-
#: admin/wp-security-firewall-menu.php:
|
2170 |
msgid "Additional Firewall Protection"
|
2171 |
msgstr ""
|
2172 |
|
2173 |
-
#: admin/wp-security-firewall-menu.php:
|
2174 |
msgid "Due to the nature of the code being inserted to the .htaccess file, this feature may break some functionality for certain plugins and you are therefore advised to take a %s of .htaccess before applying this configuration."
|
2175 |
msgstr ""
|
2176 |
|
2177 |
-
#: admin/wp-security-firewall-menu.php:
|
2178 |
msgid "This feature allows you to activate more advanced firewall settings to your site."
|
2179 |
msgstr ""
|
2180 |
|
2181 |
-
#: admin/wp-security-firewall-menu.php:
|
2182 |
msgid "The advanced firewall rules are applied via the insertion of special code to your currently active .htaccess file."
|
2183 |
msgstr ""
|
2184 |
|
2185 |
-
#: admin/wp-security-firewall-menu.php:
|
2186 |
msgid "Listing of Directory Contents"
|
2187 |
msgstr ""
|
2188 |
|
2189 |
-
#: admin/wp-security-firewall-menu.php:
|
2190 |
#: classes/grade-system/wp-security-feature-item-manager.php:97
|
2191 |
msgid "Disable Index Views"
|
2192 |
msgstr ""
|
2193 |
|
2194 |
-
#: admin/wp-security-firewall-menu.php:
|
2195 |
msgid "Check this if you want to disable directory and file listing."
|
2196 |
msgstr ""
|
2197 |
|
2198 |
-
#: admin/wp-security-firewall-menu.php:
|
2199 |
msgid "By default, an Apache server will allow the listing of the contents of a directory if it doesn't contain an index.php file."
|
2200 |
msgstr ""
|
2201 |
|
2202 |
-
#: admin/wp-security-firewall-menu.php:
|
2203 |
msgid "This feature will prevent the listing of contents for all directories."
|
2204 |
msgstr ""
|
2205 |
|
2206 |
-
#: admin/wp-security-firewall-menu.php:
|
2207 |
msgid "NOTE: In order for this feature to work \"AllowOverride\" of the Indexes directive must be enabled in your httpd.conf file. Ask your hosting provider to check this if you don't have access to httpd.conf"
|
2208 |
msgstr ""
|
2209 |
|
2210 |
-
#: admin/wp-security-firewall-menu.php:
|
2211 |
msgid "Trace and Track"
|
2212 |
msgstr ""
|
2213 |
|
2214 |
-
#: admin/wp-security-firewall-menu.php:
|
2215 |
#: classes/grade-system/wp-security-feature-item-manager.php:98
|
2216 |
msgid "Disable Trace and Track"
|
2217 |
msgstr ""
|
2218 |
|
2219 |
-
#: admin/wp-security-firewall-menu.php:
|
2220 |
msgid "Check this if you want to disable trace and track."
|
2221 |
msgstr ""
|
2222 |
|
2223 |
-
#: admin/wp-security-firewall-menu.php:
|
2224 |
msgid "HTTP Trace attack (XST) can be used to return header requests and grab cookies and other information."
|
2225 |
msgstr ""
|
2226 |
|
2227 |
-
#: admin/wp-security-firewall-menu.php:
|
2228 |
msgid "This hacking technique is usually used together with cross site scripting attacks (XSS)."
|
2229 |
msgstr ""
|
2230 |
|
2231 |
-
#: admin/wp-security-firewall-menu.php:
|
2232 |
msgid "Disabling trace and track on your site will help prevent HTTP Trace attacks."
|
2233 |
msgstr ""
|
2234 |
|
2235 |
-
#: admin/wp-security-firewall-menu.php:
|
2236 |
msgid "Proxy Comment Posting"
|
2237 |
msgstr ""
|
2238 |
|
2239 |
-
#: admin/wp-security-firewall-menu.php:
|
2240 |
msgid "Forbid Proxy Comment Posting"
|
2241 |
msgstr ""
|
2242 |
|
2243 |
-
#: admin/wp-security-firewall-menu.php:
|
2244 |
msgid "Check this if you want to forbid proxy comment posting."
|
2245 |
msgstr ""
|
2246 |
|
2247 |
-
#: admin/wp-security-firewall-menu.php:
|
2248 |
msgid "This setting will deny any requests that use a proxy server when posting comments."
|
2249 |
msgstr ""
|
2250 |
|
2251 |
-
#: admin/wp-security-firewall-menu.php:
|
2252 |
msgid "By forbidding proxy comments you are in effect eliminating some SPAM and other proxy requests."
|
2253 |
msgstr ""
|
2254 |
|
2255 |
-
#: admin/wp-security-firewall-menu.php:
|
2256 |
msgid "Bad Query Strings"
|
2257 |
msgstr ""
|
2258 |
|
2259 |
-
#: admin/wp-security-firewall-menu.php:
|
2260 |
msgid "Deny Bad Query Strings"
|
2261 |
msgstr ""
|
2262 |
|
2263 |
-
#: admin/wp-security-firewall-menu.php:
|
2264 |
msgid "This will help protect you against malicious queries via XSS."
|
2265 |
msgstr ""
|
2266 |
|
2267 |
-
#: admin/wp-security-firewall-menu.php:
|
2268 |
msgid "This feature will write rules in your .htaccess file to prevent malicious string attacks on your site using XSS."
|
2269 |
msgstr ""
|
2270 |
|
2271 |
-
#: admin/wp-security-firewall-menu.php:
|
2272 |
msgid "NOTE: Some of these strings might be used for plugins or themes and hence this might break some functionality."
|
2273 |
msgstr ""
|
2274 |
|
2275 |
-
#: admin/wp-security-firewall-menu.php:
|
2276 |
-
#: admin/wp-security-firewall-menu.php:
|
2277 |
msgid "You are therefore strongly advised to take a backup of your active .htaccess file before applying this feature."
|
2278 |
msgstr ""
|
2279 |
|
2280 |
-
#: admin/wp-security-firewall-menu.php:
|
2281 |
#: classes/grade-system/wp-security-feature-item-manager.php:101
|
2282 |
msgid "Advanced Character String Filter"
|
2283 |
msgstr ""
|
2284 |
|
2285 |
-
#: admin/wp-security-firewall-menu.php:
|
2286 |
msgid "Enable Advanced Character String Filter"
|
2287 |
msgstr ""
|
2288 |
|
2289 |
-
#: admin/wp-security-firewall-menu.php:
|
2290 |
msgid "This will block bad character matches from XSS."
|
2291 |
msgstr ""
|
2292 |
|
2293 |
-
#: admin/wp-security-firewall-menu.php:
|
2294 |
msgid "This is an advanced character string filter to prevent malicious string attacks on your site coming from Cross Site Scripting (XSS)."
|
2295 |
msgstr ""
|
2296 |
|
2297 |
-
#: admin/wp-security-firewall-menu.php:
|
2298 |
msgid "This setting matches for common malicious string patterns and exploits and will produce a 403 error for the hacker attempting the query."
|
2299 |
msgstr ""
|
2300 |
|
2301 |
-
#: admin/wp-security-firewall-menu.php:
|
2302 |
msgid "NOTE: Some strings for this setting might break some functionality."
|
2303 |
msgstr ""
|
2304 |
|
2305 |
-
#: admin/wp-security-firewall-menu.php:
|
2306 |
msgid "Save Additional Firewall Settings"
|
2307 |
msgstr ""
|
2308 |
|
2309 |
-
#: admin/wp-security-firewall-menu.php:
|
2310 |
msgid "You have successfully saved the 5G/6G Firewall Protection configuration"
|
2311 |
msgstr ""
|
2312 |
|
2313 |
-
#: admin/wp-security-firewall-menu.php:
|
2314 |
msgid "This feature allows you to activate the %s (or legacy %s) firewall security protection rules designed and produced by %s."
|
2315 |
msgstr ""
|
2316 |
|
2317 |
-
#: admin/wp-security-firewall-menu.php:
|
2318 |
msgid "The 6G Blacklist is updated and improved version of 5G Blacklist. If you have 5G Blacklist active, you might consider activating 6G Blacklist instead."
|
2319 |
msgstr ""
|
2320 |
|
2321 |
-
#: admin/wp-security-firewall-menu.php:
|
2322 |
msgid "The 6G Blacklist is a simple, flexible blacklist that helps reduce the number of malicious URL requests that hit your website."
|
2323 |
msgstr ""
|
2324 |
|
2325 |
-
#: admin/wp-security-firewall-menu.php:
|
2326 |
msgid "The added advantage of applying the 6G firewall to your site is that it has been tested and confirmed by the people at PerishablePress.com to be an optimal and least disruptive set of .htaccess security rules for general WP sites running on an Apache server or similar."
|
2327 |
msgstr ""
|
2328 |
|
2329 |
-
#: admin/wp-security-firewall-menu.php:
|
2330 |
msgid "Therefore the 6G firewall rules should not have any impact on your site's general functionality but if you wish you can take a %s of your .htaccess file before proceeding."
|
2331 |
msgstr ""
|
2332 |
|
2333 |
-
#: admin/wp-security-firewall-menu.php:
|
2334 |
msgid "6G Blacklist/Firewall Settings"
|
2335 |
msgstr ""
|
2336 |
|
2337 |
-
#: admin/wp-security-firewall-menu.php:
|
2338 |
msgid "Enable 6G Firewall Protection"
|
2339 |
msgstr ""
|
2340 |
|
2341 |
-
#: admin/wp-security-firewall-menu.php:
|
2342 |
msgid "Check this if you want to apply the 6G Blacklist firewall protection from perishablepress.com to your site."
|
2343 |
msgstr ""
|
2344 |
|
2345 |
-
#: admin/wp-security-firewall-menu.php:
|
2346 |
msgid "This setting will implement the 6G security firewall protection mechanisms on your site which include the following things:"
|
2347 |
msgstr ""
|
2348 |
|
2349 |
-
#: admin/wp-security-firewall-menu.php:
|
2350 |
-
#: admin/wp-security-firewall-menu.php:
|
2351 |
msgid "1) Block forbidden characters commonly used in exploitative attacks."
|
2352 |
msgstr ""
|
2353 |
|
2354 |
-
#: admin/wp-security-firewall-menu.php:
|
2355 |
-
#: admin/wp-security-firewall-menu.php:
|
2356 |
msgid "2) Block malicious encoded URL characters such as the \".css(\" string."
|
2357 |
msgstr ""
|
2358 |
|
2359 |
-
#: admin/wp-security-firewall-menu.php:
|
2360 |
-
#: admin/wp-security-firewall-menu.php:
|
2361 |
msgid "3) Guard against the common patterns and specific exploits in the root portion of targeted URLs."
|
2362 |
msgstr ""
|
2363 |
|
2364 |
-
#: admin/wp-security-firewall-menu.php:
|
2365 |
-
#: admin/wp-security-firewall-menu.php:
|
2366 |
msgid "4) Stop attackers from manipulating query strings by disallowing illicit characters."
|
2367 |
msgstr ""
|
2368 |
|
2369 |
-
#: admin/wp-security-firewall-menu.php:
|
2370 |
-
#: admin/wp-security-firewall-menu.php:
|
2371 |
msgid "....and much more."
|
2372 |
msgstr ""
|
2373 |
|
2374 |
-
#: admin/wp-security-firewall-menu.php:
|
2375 |
msgid "Enable legacy 5G Firewall Protection"
|
2376 |
msgstr ""
|
2377 |
|
2378 |
-
#: admin/wp-security-firewall-menu.php:
|
2379 |
msgid "Check this if you want to apply the 5G Blacklist firewall protection from perishablepress.com to your site."
|
2380 |
msgstr ""
|
2381 |
|
2382 |
-
#: admin/wp-security-firewall-menu.php:
|
2383 |
msgid "This setting will implement the 5G security firewall protection mechanisms on your site which include the following things:"
|
2384 |
msgstr ""
|
2385 |
|
2386 |
-
#: admin/wp-security-firewall-menu.php:
|
2387 |
msgid "Save 5G/6G Firewall Settings"
|
2388 |
msgstr ""
|
2389 |
|
2390 |
-
#: admin/wp-security-firewall-menu.php:
|
2391 |
msgid "The Internet bot settings were successfully saved"
|
2392 |
msgstr ""
|
2393 |
|
2394 |
-
#: admin/wp-security-firewall-menu.php:
|
2395 |
msgid "Internet Bot Settings"
|
2396 |
msgstr ""
|
2397 |
|
2398 |
-
#: admin/wp-security-firewall-menu.php:
|
2399 |
msgid "What is an Internet Bot"
|
2400 |
msgstr ""
|
2401 |
|
2402 |
-
#: admin/wp-security-firewall-menu.php:
|
2403 |
msgid "%s?"
|
2404 |
msgstr ""
|
2405 |
|
2406 |
-
#: admin/wp-security-firewall-menu.php:
|
2407 |
msgid "A bot is a piece of software which runs on the Internet and performs automatic tasks. For example when Google indexes your pages it uses automatic bots to achieve this task."
|
2408 |
msgstr ""
|
2409 |
|
2410 |
-
#: admin/wp-security-firewall-menu.php:
|
2411 |
msgid "A lot of bots are legitimate and non-malicous but not all bots are good and often you will find some which try to impersonate legitimate bots such as \"Googlebot\" but in reality they have nohing to do with Google at all."
|
2412 |
msgstr ""
|
2413 |
|
2414 |
-
#: admin/wp-security-firewall-menu.php:
|
2415 |
msgid "Although most of the bots out there are relatively harmless sometimes website owners want to have more control over which bots they allow into their site."
|
2416 |
msgstr ""
|
2417 |
|
2418 |
-
#: admin/wp-security-firewall-menu.php:
|
2419 |
msgid "This feature allows you to block bots which are impersonating as a Googlebot but actually aren't. (In other words they are fake Google bots)"
|
2420 |
msgstr ""
|
2421 |
|
2422 |
-
#: admin/wp-security-firewall-menu.php:
|
2423 |
msgid "Googlebots have a unique indentity which cannot easily be forged and this feature will indentify any fake Google bots and block them from reading your site's pages."
|
2424 |
msgstr ""
|
2425 |
|
2426 |
-
#: admin/wp-security-firewall-menu.php:
|
2427 |
msgid "<strong>Attention</strong>: Sometimes non-malicious Internet organizations might have bots which impersonate as a \"Googlebot\"."
|
2428 |
msgstr ""
|
2429 |
|
2430 |
-
#: admin/wp-security-firewall-menu.php:
|
2431 |
msgid "Just be aware that if you activate this feature the plugin will block all bots which use the \"Googlebot\" string in their User Agent information but are NOT officially from Google (irrespective whether they are malicious or not)."
|
2432 |
msgstr ""
|
2433 |
|
2434 |
-
#: admin/wp-security-firewall-menu.php:
|
2435 |
msgid "All other bots from other organizations such as \"Yahoo\", \"Bing\" etc will not be affected by this feature."
|
2436 |
msgstr ""
|
2437 |
|
2438 |
-
#: admin/wp-security-firewall-menu.php:
|
2439 |
-
#: admin/wp-security-firewall-menu.php:
|
2440 |
#: classes/grade-system/wp-security-feature-item-manager.php:103
|
2441 |
msgid "Block Fake Googlebots"
|
2442 |
msgstr ""
|
2443 |
|
2444 |
-
#: admin/wp-security-firewall-menu.php:
|
2445 |
msgid "Check this if you want to block all fake Googlebots."
|
2446 |
msgstr ""
|
2447 |
|
2448 |
-
#: admin/wp-security-firewall-menu.php:
|
2449 |
msgid "This feature will check if the User Agent information of a bot contains the string \"Googlebot\"."
|
2450 |
msgstr ""
|
2451 |
|
2452 |
-
#: admin/wp-security-firewall-menu.php:
|
2453 |
msgid "It will then perform a few tests to verify if the bot is legitimately from Google and if so it will allow the bot to proceed."
|
2454 |
msgstr ""
|
2455 |
|
2456 |
-
#: admin/wp-security-firewall-menu.php:
|
2457 |
msgid "If the bot fails the checks then the plugin will mark it as being a fake Googlebot and it will block it"
|
2458 |
msgstr ""
|
2459 |
|
2460 |
-
#: admin/wp-security-firewall-menu.php:
|
2461 |
msgid "Save Internet Bot Settings"
|
2462 |
msgstr ""
|
2463 |
|
2464 |
-
#: admin/wp-security-firewall-menu.php:
|
2465 |
-
#: admin/wp-security-firewall-menu.php:
|
2466 |
#: classes/grade-system/wp-security-feature-item-manager.php:32
|
2467 |
msgid "Prevent Image Hotlinking"
|
2468 |
msgstr ""
|
2469 |
|
2470 |
-
#: admin/wp-security-firewall-menu.php:
|
2471 |
msgid "A Hotlink is where someone displays an image on their site which is actually located on your site by using a direct link to the source of the image on your server."
|
2472 |
msgstr ""
|
2473 |
|
2474 |
-
#: admin/wp-security-firewall-menu.php:
|
2475 |
msgid "Due to the fact that the image being displayed on the other person's site is coming from your server, this can cause leaking of bandwidth and resources for you because your server has to present this image for the people viewing it on someone elses's site."
|
2476 |
msgstr ""
|
2477 |
|
2478 |
-
#: admin/wp-security-firewall-menu.php:
|
2479 |
msgid "This feature will prevent people from directly hotlinking images from your site's pages by writing some directives in your .htaccess file."
|
2480 |
msgstr ""
|
2481 |
|
2482 |
-
#: admin/wp-security-firewall-menu.php:
|
2483 |
msgid "Prevent Hotlinking"
|
2484 |
msgstr ""
|
2485 |
|
2486 |
-
#: admin/wp-security-firewall-menu.php:
|
2487 |
msgid "Check this if you want to prevent hotlinking to images on your site."
|
2488 |
msgstr ""
|
2489 |
|
2490 |
-
#: admin/wp-security-firewall-menu.php:
|
2491 |
msgid "Nonce check failed for delete all 404 event logs operation!"
|
2492 |
msgstr ""
|
2493 |
|
2494 |
-
#: admin/wp-security-firewall-menu.php:
|
2495 |
msgid "404 Detection Feature - Delete all 404 event logs operation failed!"
|
2496 |
msgstr ""
|
2497 |
|
2498 |
-
#: admin/wp-security-firewall-menu.php:
|
2499 |
msgid "All 404 event logs were deleted from the DB successfully!"
|
2500 |
msgstr ""
|
2501 |
|
2502 |
-
#: admin/wp-security-firewall-menu.php:
|
2503 |
#: admin/wp-security-user-login-menu.php:114
|
2504 |
msgid "You entered a non numeric value for the lockout time length field. It has been set to the default value."
|
2505 |
msgstr ""
|
2506 |
|
2507 |
-
#: admin/wp-security-firewall-menu.php:
|
2508 |
msgid "You entered an incorrect format for the \"Redirect URL\" field. It has been set to the default value."
|
2509 |
msgstr ""
|
2510 |
|
2511 |
-
#: admin/wp-security-firewall-menu.php:
|
2512 |
msgid "404 Detection Configuration"
|
2513 |
msgstr ""
|
2514 |
|
2515 |
-
#: admin/wp-security-firewall-menu.php:
|
2516 |
msgid "A 404 or Not Found error occurs when somebody tries to access a non-existent page on your website."
|
2517 |
msgstr ""
|
2518 |
|
2519 |
-
#: admin/wp-security-firewall-menu.php:
|
2520 |
msgid "Typically, most 404 errors happen quite innocently when people have mis-typed a URL or used an old link to page which doesn't exist anymore."
|
2521 |
msgstr ""
|
2522 |
|
2523 |
-
#: admin/wp-security-firewall-menu.php:
|
2524 |
msgid "However, in some cases you may find many repeated 404 errors which occur in a relatively short space of time and from the same IP address which are all attempting to access a variety of non-existent page URLs."
|
2525 |
msgstr ""
|
2526 |
|
2527 |
-
#: admin/wp-security-firewall-menu.php:
|
2528 |
msgid "Such behaviour can mean that a hacker might be trying to find a particular page or URL for sinister reasons."
|
2529 |
msgstr ""
|
2530 |
|
2531 |
-
#: admin/wp-security-firewall-menu.php:
|
2532 |
msgid "This feature allows you to monitor all 404 events which occur on your site, and it also gives you the option of blocking IP addresses for a configured length of time."
|
2533 |
msgstr ""
|
2534 |
|
2535 |
-
#: admin/wp-security-firewall-menu.php:
|
2536 |
msgid "If you want to temporarily block or blacklist an IP address, simply click the \"Temp Block\" or \"Blacklist IP\" link for the applicable IP entry in the \"404 Event Logs\" table below."
|
2537 |
msgstr ""
|
2538 |
|
2539 |
-
#: admin/wp-security-firewall-menu.php:
|
2540 |
msgid "This addon allows you to automatically and permanently block IP addresses based on how many 404 errors they produce."
|
2541 |
msgstr ""
|
2542 |
|
2543 |
-
#: admin/wp-security-firewall-menu.php:
|
2544 |
msgid "404 Detection Options"
|
2545 |
msgstr ""
|
2546 |
|
2547 |
-
#: admin/wp-security-firewall-menu.php:
|
2548 |
msgid "Enable 404 IP Detection and Lockout"
|
2549 |
msgstr ""
|
2550 |
|
2551 |
-
#: admin/wp-security-firewall-menu.php:
|
2552 |
msgid "Check this if you want to enable the lockout of selected IP addresses."
|
2553 |
msgstr ""
|
2554 |
|
2555 |
-
#: admin/wp-security-firewall-menu.php:
|
2556 |
msgid "When you enable this checkbox, all 404 events on your site will be logged in the table below. You can monitor these events and select some IP addresses listed in the table below and block them for a specified amount of time. All IP addresses you select to be blocked from the \"404 Event Logs\" table section will be unable to access your site during the time specified."
|
2557 |
msgstr ""
|
2558 |
|
2559 |
-
#: admin/wp-security-firewall-menu.php:
|
2560 |
msgid "Enable 404 Event Logging"
|
2561 |
msgstr ""
|
2562 |
|
2563 |
-
#: admin/wp-security-firewall-menu.php:
|
2564 |
msgid "Check this if you want to enable the logging of 404 events"
|
2565 |
msgstr ""
|
2566 |
|
2567 |
-
#: admin/wp-security-firewall-menu.php:
|
2568 |
msgid "Time Length of 404 Lockout (min)"
|
2569 |
msgstr ""
|
2570 |
|
2571 |
-
#: admin/wp-security-firewall-menu.php:
|
2572 |
msgid "Set the length of time for which a blocked IP address will be prevented from visiting your site"
|
2573 |
msgstr ""
|
2574 |
|
2575 |
-
#: admin/wp-security-firewall-menu.php:
|
2576 |
msgid "You can lock any IP address which is recorded in the \"404 Event Logs\" table section below."
|
2577 |
msgstr ""
|
2578 |
|
2579 |
-
#: admin/wp-security-firewall-menu.php:
|
2580 |
msgid "To temporarily lock an IP address, hover over the ID column and click the \"Temp Block\" link for the applicable IP entry."
|
2581 |
msgstr ""
|
2582 |
|
2583 |
-
#: admin/wp-security-firewall-menu.php:
|
2584 |
msgid "404 Lockout Redirect URL"
|
2585 |
msgstr ""
|
2586 |
|
2587 |
-
#: admin/wp-security-firewall-menu.php:
|
2588 |
msgid "A blocked visitor will be automatically redirected to this URL."
|
2589 |
msgstr ""
|
2590 |
|
2591 |
-
#: admin/wp-security-firewall-menu.php:
|
2592 |
msgid "404 Event Logs"
|
2593 |
msgstr ""
|
2594 |
|
2595 |
-
#: admin/wp-security-firewall-menu.php:
|
2596 |
-
#: admin/wp-security-firewall-menu.php:
|
2597 |
#: admin/wp-security-user-login-menu.php:439
|
2598 |
#: admin/wp-security-user-login-menu.php:448
|
2599 |
#: admin/wp-security-user-login-menu.php:593
|
@@ -2601,82 +2613,82 @@ msgstr ""
|
|
2601 |
msgid "Export to CSV"
|
2602 |
msgstr ""
|
2603 |
|
2604 |
-
#: admin/wp-security-firewall-menu.php:
|
2605 |
#: admin/wp-security-user-login-menu.php:445
|
2606 |
#: admin/wp-security-user-login-menu.php:599
|
2607 |
msgid "Click this button if you wish to download this log in CSV format."
|
2608 |
msgstr ""
|
2609 |
|
2610 |
-
#: admin/wp-security-firewall-menu.php:
|
2611 |
-
#: admin/wp-security-firewall-menu.php:
|
2612 |
msgid "Delete All 404 Event Logs"
|
2613 |
msgstr ""
|
2614 |
|
2615 |
-
#: admin/wp-security-firewall-menu.php:
|
2616 |
msgid "Click this button if you wish to purge all 404 event logs from the DB."
|
2617 |
msgstr ""
|
2618 |
|
2619 |
-
#: admin/wp-security-firewall-menu.php:
|
2620 |
msgid "Custom .htaccess Rules Settings"
|
2621 |
msgstr ""
|
2622 |
|
2623 |
-
#: admin/wp-security-firewall-menu.php:
|
2624 |
msgid "This feature can be used to apply your own custom .htaccess rules and directives."
|
2625 |
msgstr ""
|
2626 |
|
2627 |
-
#: admin/wp-security-firewall-menu.php:
|
2628 |
msgid "It is useful for when you want to tweak our existing firewall rules or when you want to add your own."
|
2629 |
msgstr ""
|
2630 |
|
2631 |
-
#: admin/wp-security-firewall-menu.php:
|
2632 |
msgid "NOTE: This feature can only used if your site is hosted in an apache or similar web server."
|
2633 |
msgstr ""
|
2634 |
|
2635 |
-
#: admin/wp-security-firewall-menu.php:
|
2636 |
msgid "<strong>Warning</strong>: Only use this feature if you know what you are doing."
|
2637 |
msgstr ""
|
2638 |
|
2639 |
-
#: admin/wp-security-firewall-menu.php:
|
2640 |
msgid "Incorrect .htaccess rules or directives can break or prevent access to your site."
|
2641 |
msgstr ""
|
2642 |
|
2643 |
-
#: admin/wp-security-firewall-menu.php:
|
2644 |
msgid "It is your responsibility to ensure that you are entering the correct code!"
|
2645 |
msgstr ""
|
2646 |
|
2647 |
-
#: admin/wp-security-firewall-menu.php:
|
2648 |
msgid "If you break your site you will need to access your server via FTP or something similar and then edit your .htaccess file and delete the changes you made."
|
2649 |
msgstr ""
|
2650 |
|
2651 |
-
#: admin/wp-security-firewall-menu.php:
|
2652 |
msgid "Custom .htaccess Rules"
|
2653 |
msgstr ""
|
2654 |
|
2655 |
-
#: admin/wp-security-firewall-menu.php:
|
2656 |
msgid "Enable Custom .htaccess Rules"
|
2657 |
msgstr ""
|
2658 |
|
2659 |
-
#: admin/wp-security-firewall-menu.php:
|
2660 |
msgid "Check this if you want to enable custom rules entered in the text box below"
|
2661 |
msgstr ""
|
2662 |
|
2663 |
-
#: admin/wp-security-firewall-menu.php:
|
2664 |
msgid "Place custom rules at the top"
|
2665 |
msgstr ""
|
2666 |
|
2667 |
-
#: admin/wp-security-firewall-menu.php:
|
2668 |
msgid "Check this if you want to place your custom rules at the beginning of all the rules applied by this plugin"
|
2669 |
msgstr ""
|
2670 |
|
2671 |
-
#: admin/wp-security-firewall-menu.php:
|
2672 |
msgid "Enter Custom .htaccess Rules:"
|
2673 |
msgstr ""
|
2674 |
|
2675 |
-
#: admin/wp-security-firewall-menu.php:
|
2676 |
msgid "Enter your custom .htaccess rules/directives."
|
2677 |
msgstr ""
|
2678 |
|
2679 |
-
#: admin/wp-security-firewall-menu.php:
|
2680 |
msgid "Save Custom Rules"
|
2681 |
msgstr ""
|
2682 |
|
@@ -2843,7 +2855,7 @@ msgstr ""
|
|
2843 |
msgid "Nonce check failed for force user logout operation!"
|
2844 |
msgstr ""
|
2845 |
|
2846 |
-
#: admin/wp-security-list-logged-in-users.php:
|
2847 |
msgid "The selected user was logged out successfully!"
|
2848 |
msgstr ""
|
2849 |
|
@@ -3136,6 +3148,14 @@ msgstr ""
|
|
3136 |
msgid "Page"
|
3137 |
msgstr ""
|
3138 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3139 |
#: admin/wp-security-settings-menu.php:159
|
3140 |
msgid "WP Security Plugin"
|
3141 |
msgstr ""
|
@@ -3177,6 +3197,7 @@ msgid "Disable All Security Features"
|
|
3177 |
msgstr ""
|
3178 |
|
3179 |
#: admin/wp-security-settings-menu.php:192
|
|
|
3180 |
msgid "Disable All Firewall Rules"
|
3181 |
msgstr ""
|
3182 |
|
@@ -3533,7 +3554,7 @@ msgid "Add Captcha To Comments Form"
|
|
3533 |
msgstr ""
|
3534 |
|
3535 |
#: admin/wp-security-spam-menu.php:128
|
3536 |
-
msgid "This feature will add a
|
3537 |
msgstr ""
|
3538 |
|
3539 |
#: admin/wp-security-spam-menu.php:129
|
@@ -3761,7 +3782,7 @@ msgid "This feature will add a simple math captcha field in the BBPress new topi
|
|
3761 |
msgstr ""
|
3762 |
|
3763 |
#: admin/wp-security-spam-menu.php:530
|
3764 |
-
msgid "Adding a captcha field in
|
3765 |
msgstr ""
|
3766 |
|
3767 |
#: admin/wp-security-spam-menu.php:540
|
@@ -3969,6 +3990,10 @@ msgstr ""
|
|
3969 |
msgid "Account Login Name"
|
3970 |
msgstr ""
|
3971 |
|
|
|
|
|
|
|
|
|
3972 |
#: admin/wp-security-user-login-menu.php:29
|
3973 |
#: admin/wp-security-user-login-menu.php:418
|
3974 |
msgid "Failed Login Records"
|
@@ -4178,7 +4203,7 @@ msgid "This tab displays the activity for accounts registered with your site tha
|
|
4178 |
msgstr ""
|
4179 |
|
4180 |
#: admin/wp-security-user-login-menu.php:567
|
4181 |
-
msgid "The information below can be handy if you need to do security investigations because it will show you the last
|
4182 |
msgstr ""
|
4183 |
|
4184 |
#: admin/wp-security-user-login-menu.php:628
|
@@ -4435,7 +4460,7 @@ msgid " generated on"
|
|
4435 |
msgstr ""
|
4436 |
|
4437 |
#: classes/wp-security-captcha.php:42
|
4438 |
-
#: classes/wp-security-general-init-tasks.php:
|
4439 |
msgid "Please enter an answer in digits:"
|
4440 |
msgstr ""
|
4441 |
|
@@ -4519,74 +4544,81 @@ msgstr ""
|
|
4519 |
msgid "twenty"
|
4520 |
msgstr ""
|
4521 |
|
4522 |
-
#: classes/wp-security-file-scan.php:
|
4523 |
msgid "All In One WP Security - File change detected!"
|
4524 |
msgstr ""
|
4525 |
|
4526 |
-
#: classes/wp-security-file-scan.php:
|
4527 |
msgid "A file change was detected on your system for site URL"
|
4528 |
msgstr ""
|
4529 |
|
4530 |
-
#: classes/wp-security-file-scan.php:
|
4531 |
msgid ". Scan was generated on"
|
4532 |
msgstr ""
|
4533 |
|
4534 |
-
#: classes/wp-security-file-scan.php:
|
4535 |
msgid "A summary of the scan results is shown below:"
|
4536 |
msgstr ""
|
4537 |
|
4538 |
-
#: classes/wp-security-file-scan.php:
|
4539 |
msgid "Login to your site to view the scan details."
|
4540 |
msgstr ""
|
4541 |
|
4542 |
-
#: classes/wp-security-file-scan.php:
|
4543 |
msgid "The following files were added to your host"
|
4544 |
msgstr ""
|
4545 |
|
4546 |
-
#: classes/wp-security-file-scan.php:
|
4547 |
-
#: classes/wp-security-file-scan.php:
|
4548 |
-
#: classes/wp-security-file-scan.php:
|
4549 |
msgid "modified on: "
|
4550 |
msgstr ""
|
4551 |
|
4552 |
-
#: classes/wp-security-file-scan.php:
|
4553 |
msgid "The following files were removed from your host"
|
4554 |
msgstr ""
|
4555 |
|
4556 |
-
#: classes/wp-security-file-scan.php:
|
4557 |
msgid "The following files were changed on your host"
|
4558 |
msgstr ""
|
4559 |
|
4560 |
-
#: classes/wp-security-general-init-tasks.php:
|
4561 |
-
#: classes/wp-security-general-init-tasks.php:
|
4562 |
-
#: classes/wp-security-general-init-tasks.php:
|
4563 |
-
#: classes/wp-security-user-login.php:
|
4564 |
-
#: classes/wp-security-user-registration.php:
|
4565 |
-
#: classes/wp-security-user-registration.php:97
|
4566 |
msgid "<strong>ERROR</strong>: Your answer was incorrect - please try again."
|
4567 |
msgstr ""
|
4568 |
|
4569 |
-
#: classes/wp-security-general-init-tasks.php:
|
4570 |
msgid "Enter something special:"
|
4571 |
msgstr ""
|
4572 |
|
4573 |
-
#: classes/wp-security-general-init-tasks.php:
|
4574 |
msgid "Error: You entered an incorrect CAPTCHA answer. Please go back and try again."
|
4575 |
msgstr ""
|
4576 |
|
4577 |
-
#: classes/wp-security-general-init-tasks.php:
|
4578 |
msgid "Your CAPTCHA answer was incorrect - please try again."
|
4579 |
msgstr ""
|
4580 |
|
4581 |
-
#: classes/wp-security-general-init-tasks.php:
|
4582 |
msgid "<strong>ERROR</strong>: Your IP address is currently locked please contact the administrator!"
|
4583 |
msgstr ""
|
4584 |
|
4585 |
-
#: classes/wp-security-general-init-tasks.php:
|
4586 |
msgid "Would you like All In One WP Security & Firewall to re-insert the security rules in your .htaccess file which were cleared when you deactivated the plugin?"
|
4587 |
msgstr ""
|
4588 |
|
4589 |
-
#: classes/wp-security-general-init-tasks.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4590 |
msgid "Your registration is pending approval."
|
4591 |
msgstr ""
|
4592 |
|
@@ -4594,81 +4626,80 @@ msgstr ""
|
|
4594 |
msgid "Not available."
|
4595 |
msgstr ""
|
4596 |
|
4597 |
-
#: classes/wp-security-user-login.php:
|
4598 |
msgid "<strong>ERROR</strong>: Access from your IP address has been blocked for security reasons. Please contact the administrator."
|
4599 |
msgstr ""
|
4600 |
|
4601 |
-
#: classes/wp-security-user-login.php:
|
4602 |
msgid "Service Temporarily Unavailable"
|
4603 |
msgstr ""
|
4604 |
|
4605 |
-
#: classes/wp-security-user-login.php:
|
4606 |
msgid "<strong>ACCOUNT PENDING</strong>: Your account is currently not active. An administrator needs to activate your account before you can login."
|
4607 |
msgstr ""
|
4608 |
|
4609 |
-
#: classes/wp-security-user-login.php:
|
4610 |
msgid "<strong>ERROR</strong>: Invalid login credentials."
|
4611 |
msgstr ""
|
4612 |
|
4613 |
-
#: classes/wp-security-user-login.php:
|
4614 |
msgid "Site Lockout Notification"
|
4615 |
msgstr ""
|
4616 |
|
4617 |
-
#: classes/wp-security-user-login.php:
|
4618 |
msgid "A lockdown event has occurred due to too many failed login attempts or invalid username:"
|
4619 |
msgstr ""
|
4620 |
|
4621 |
-
#: classes/wp-security-user-login.php:
|
4622 |
msgid "Username:"
|
4623 |
msgstr ""
|
4624 |
|
4625 |
-
#: classes/wp-security-user-login.php:
|
4626 |
msgid "IP Address:"
|
4627 |
msgstr ""
|
4628 |
|
4629 |
-
#: classes/wp-security-user-login.php:
|
4630 |
msgid "IP Range:"
|
4631 |
msgstr ""
|
4632 |
|
4633 |
-
#: classes/wp-security-user-login.php:
|
4634 |
msgid "Log into your site's WordPress administration panel to see the duration of the lockout or to unlock the user."
|
4635 |
msgstr ""
|
4636 |
|
4637 |
-
#: classes/wp-security-user-login.php:
|
4638 |
msgid "Unlock Request Notification"
|
4639 |
msgstr ""
|
4640 |
|
4641 |
-
#: classes/wp-security-user-login.php:
|
4642 |
msgid "You have requested for the account with email address %s to be unlocked. Please click the link below to unlock your account:"
|
4643 |
msgstr ""
|
4644 |
|
4645 |
-
#: classes/wp-security-user-login.php:
|
4646 |
msgid "Unlock link: %s"
|
4647 |
msgstr ""
|
4648 |
|
4649 |
-
#: classes/wp-security-user-login.php:
|
4650 |
msgid "After clicking the above link you will be able to login to the WordPress administration panel."
|
4651 |
msgstr ""
|
4652 |
|
4653 |
-
#: classes/wp-security-user-login.php:
|
4654 |
msgid "Your session has expired because it has been over %d minutes since your last login."
|
4655 |
msgstr ""
|
4656 |
|
4657 |
-
#: classes/wp-security-user-login.php:
|
4658 |
-
#: classes/wp-security-user-login.php:
|
4659 |
msgid "Please log back in to continue."
|
4660 |
msgstr ""
|
4661 |
|
4662 |
-
#: classes/wp-security-user-login.php:
|
4663 |
msgid "You were logged out because you just changed the \"admin\" username."
|
4664 |
msgstr ""
|
4665 |
|
4666 |
-
#: classes/wp-security-user-login.php:
|
4667 |
msgid "Request Unlock"
|
4668 |
msgstr ""
|
4669 |
|
4670 |
-
#: classes/wp-security-user-registration.php:
|
4671 |
-
#: classes/wp-security-user-registration.php:90
|
4672 |
msgid "<strong>ERROR</strong>: You are not allowed to register because your IP address is currently locked!"
|
4673 |
msgstr ""
|
4674 |
|
1 |
+
# Copyright (C) 2020 Tips and Tricks HQ, Peter Petreski, Ruhul, Ivy
|
2 |
# This file is distributed under the same license as the All In One WP Security plugin.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: All In One WP Security 4.4.4\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/all-in-one-wp-security-and-firewall\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"POT-Creation-Date: 2020-12-02T21:21:20+11:00\n"
|
13 |
+
"PO-Revision-Date: 2020-12-02T21:21:20+11:00\n"
|
14 |
"X-Generator: WP-CLI 2.2.0\n"
|
15 |
"X-Domain: all-in-one-wp-security-and-firewall\n"
|
16 |
|
146 |
msgstr ""
|
147 |
|
148 |
#: admin/wp-security-blacklist-menu.php:139
|
149 |
+
#: admin/wp-security-brute-force-menu.php:771
|
150 |
+
#: admin/wp-security-firewall-menu.php:1065
|
151 |
#: admin/wp-security-list-404.php:221
|
152 |
#: admin/wp-security-list-comment-spammer-ip.php:205
|
153 |
+
#: classes/wp-security-general-init-tasks.php:288
|
154 |
msgid "The plugin was unable to write to the .htaccess file. Please edit file manually."
|
155 |
msgstr ""
|
156 |
|
179 |
msgstr ""
|
180 |
|
181 |
#: admin/wp-security-blacklist-menu.php:159
|
182 |
+
#: admin/wp-security-firewall-menu.php:901
|
183 |
msgid "You may also be interested in our %s."
|
184 |
msgstr ""
|
185 |
|
224 |
#: admin/wp-security-brute-force-menu.php:422
|
225 |
#: admin/wp-security-brute-force-menu.php:445
|
226 |
#: admin/wp-security-brute-force-menu.php:466
|
227 |
+
#: admin/wp-security-brute-force-menu.php:828
|
228 |
+
#: admin/wp-security-filescan-menu.php:318
|
229 |
+
#: admin/wp-security-filescan-menu.php:335
|
230 |
+
#: admin/wp-security-firewall-menu.php:178
|
231 |
+
#: admin/wp-security-firewall-menu.php:215
|
232 |
+
#: admin/wp-security-firewall-menu.php:235
|
233 |
+
#: admin/wp-security-firewall-menu.php:261
|
234 |
+
#: admin/wp-security-firewall-menu.php:388
|
235 |
+
#: admin/wp-security-firewall-menu.php:418
|
236 |
+
#: admin/wp-security-firewall-menu.php:449
|
237 |
+
#: admin/wp-security-firewall-menu.php:477
|
238 |
+
#: admin/wp-security-firewall-menu.php:506
|
239 |
+
#: admin/wp-security-firewall-menu.php:605
|
240 |
+
#: admin/wp-security-firewall-menu.php:623
|
241 |
+
#: admin/wp-security-firewall-menu.php:713
|
242 |
+
#: admin/wp-security-firewall-menu.php:926
|
243 |
+
#: admin/wp-security-firewall-menu.php:949
|
244 |
#: admin/wp-security-settings-menu.php:771
|
245 |
#: admin/wp-security-spam-menu.php:175
|
246 |
#: admin/wp-security-spam-menu.php:348
|
250 |
msgstr ""
|
251 |
|
252 |
#: admin/wp-security-blacklist-menu.php:202
|
253 |
+
#: admin/wp-security-brute-force-menu.php:831
|
254 |
#: admin/wp-security-user-login-menu.php:355
|
255 |
msgid "Each IP address must be on a new line."
|
256 |
msgstr ""
|
261 |
msgstr ""
|
262 |
|
263 |
#: admin/wp-security-blacklist-menu.php:204
|
264 |
+
#: admin/wp-security-brute-force-menu.php:833
|
265 |
#: admin/wp-security-user-login-menu.php:357
|
266 |
msgid "Example 1: 195.47.89.*"
|
267 |
msgstr ""
|
268 |
|
269 |
#: admin/wp-security-blacklist-menu.php:205
|
270 |
+
#: admin/wp-security-brute-force-menu.php:834
|
271 |
#: admin/wp-security-user-login-menu.php:358
|
272 |
msgid "Example 2: 195.47.*.*"
|
273 |
msgstr ""
|
274 |
|
275 |
#: admin/wp-security-blacklist-menu.php:206
|
276 |
+
#: admin/wp-security-brute-force-menu.php:835
|
277 |
#: admin/wp-security-user-login-menu.php:359
|
278 |
msgid "Example 3: 195.*.*.*"
|
279 |
msgstr ""
|
300 |
|
301 |
#: admin/wp-security-blacklist-menu.php:233
|
302 |
#: admin/wp-security-brute-force-menu.php:228
|
303 |
+
#: admin/wp-security-brute-force-menu.php:707
|
304 |
+
#: admin/wp-security-brute-force-menu.php:845
|
305 |
+
#: admin/wp-security-brute-force-menu.php:907
|
306 |
#: admin/wp-security-database-menu.php:358
|
307 |
+
#: admin/wp-security-filescan-menu.php:358
|
308 |
#: admin/wp-security-filesystem-menu.php:249
|
309 |
+
#: admin/wp-security-firewall-menu.php:791
|
310 |
+
#: admin/wp-security-firewall-menu.php:968
|
311 |
#: admin/wp-security-misc-options-menu.php:174
|
312 |
#: admin/wp-security-misc-options-menu.php:225
|
313 |
#: admin/wp-security-misc-options-menu.php:285
|
327 |
msgstr ""
|
328 |
|
329 |
#: admin/wp-security-brute-force-menu.php:29
|
330 |
+
#: admin/wp-security-brute-force-menu.php:791
|
331 |
+
#: admin/wp-security-dashboard-menu.php:759
|
332 |
msgid "Rename Login Page"
|
333 |
msgstr ""
|
334 |
|
343 |
msgstr ""
|
344 |
|
345 |
#: admin/wp-security-brute-force-menu.php:32
|
346 |
+
#: admin/wp-security-brute-force-menu.php:778
|
347 |
msgid "Login Whitelist"
|
348 |
msgstr ""
|
349 |
|
365 |
|
366 |
#: admin/wp-security-brute-force-menu.php:121
|
367 |
#: admin/wp-security-database-menu.php:275
|
368 |
+
#: admin/wp-security-filescan-menu.php:182
|
369 |
+
#: admin/wp-security-firewall-menu.php:858
|
370 |
#: admin/wp-security-spam-menu.php:226
|
371 |
#: admin/wp-security-spam-menu.php:260
|
372 |
#: admin/wp-security-user-login-menu.php:142
|
464 |
|
465 |
#: admin/wp-security-brute-force-menu.php:321
|
466 |
#: admin/wp-security-filesystem-menu.php:293
|
467 |
+
#: admin/wp-security-firewall-menu.php:129
|
468 |
+
#: admin/wp-security-firewall-menu.php:349
|
469 |
+
#: admin/wp-security-firewall-menu.php:570
|
470 |
+
#: admin/wp-security-firewall-menu.php:758
|
471 |
#: admin/wp-security-settings-menu.php:636
|
472 |
#: admin/wp-security-spam-menu.php:114
|
473 |
msgid "Could not write to the .htaccess file. Please check the file permissions."
|
510 |
msgstr ""
|
511 |
|
512 |
#: admin/wp-security-brute-force-menu.php:348
|
513 |
+
#: admin/wp-security-brute-force-menu.php:790
|
514 |
+
#: admin/wp-security-user-login-menu.php:233
|
515 |
msgid "Cookie-Based Brute Force Login Prevention"
|
516 |
msgstr ""
|
517 |
|
681 |
msgstr ""
|
682 |
|
683 |
#: admin/wp-security-brute-force-menu.php:575
|
684 |
+
msgid "By enabling these settings the Google reCAPTCHA v2 widget will be applied by default for all forms with captcha enabled."
|
685 |
msgstr ""
|
686 |
|
687 |
#: admin/wp-security-brute-force-menu.php:582
|
736 |
msgid "Check this if you want to insert captcha on a custom login form generated by the following WP function: wp_login_form()"
|
737 |
msgstr ""
|
738 |
|
739 |
+
#: admin/wp-security-brute-force-menu.php:660
|
740 |
msgid "Woocommerce Forms Captcha Settings"
|
741 |
msgstr ""
|
742 |
|
743 |
+
#: admin/wp-security-brute-force-menu.php:669
|
744 |
msgid "Enable Captcha On Woocommerce Login Form"
|
745 |
msgstr ""
|
746 |
|
747 |
+
#: admin/wp-security-brute-force-menu.php:672
|
748 |
msgid "Check this if you want to insert captcha on a Woocommerce login form"
|
749 |
msgstr ""
|
750 |
|
751 |
+
#: admin/wp-security-brute-force-menu.php:682
|
752 |
msgid "Enable Captcha On Woocommerce Lost Password Form"
|
753 |
msgstr ""
|
754 |
|
755 |
+
#: admin/wp-security-brute-force-menu.php:685
|
756 |
msgid "Check this if you want to insert captcha on a Woocommerce lost password form"
|
757 |
msgstr ""
|
758 |
|
759 |
+
#: admin/wp-security-brute-force-menu.php:695
|
760 |
msgid "Enable Captcha On Woocommerce Registration Form"
|
761 |
msgstr ""
|
762 |
|
763 |
+
#: admin/wp-security-brute-force-menu.php:698
|
764 |
msgid "Check this if you want to insert captcha on a Woocommerce registration form"
|
765 |
msgstr ""
|
766 |
|
767 |
+
#: admin/wp-security-brute-force-menu.php:724
|
768 |
msgid "Nonce check failed for save whitelist settings!"
|
769 |
msgstr ""
|
770 |
|
771 |
+
#: admin/wp-security-brute-force-menu.php:781
|
772 |
msgid "The All In One WP Security Whitelist feature gives you the option of only allowing certain IP addresses or ranges to have access to your WordPress login page."
|
773 |
msgstr ""
|
774 |
|
775 |
+
#: admin/wp-security-brute-force-menu.php:782
|
776 |
msgid "This feature will deny login access for all IP addresses which are not in your whitelist as configured in the settings below."
|
777 |
msgstr ""
|
778 |
|
779 |
+
#: admin/wp-security-brute-force-menu.php:783
|
780 |
msgid "The plugin achieves this by writing the appropriate directives to your .htaccess file."
|
781 |
msgstr ""
|
782 |
|
783 |
+
#: admin/wp-security-brute-force-menu.php:784
|
784 |
msgid "By allowing/blocking IP addresses via the .htaccess file your are using the most secure first line of defence because login access will only be granted to whitelisted IP addresses and other addresses will be blocked as soon as they try to access your login page."
|
785 |
msgstr ""
|
786 |
|
787 |
+
#: admin/wp-security-brute-force-menu.php:792
|
788 |
msgid "Attention: If in addition to enabling the white list feature, you also have one of the %s or %s features enabled, <strong>you will still need to use your secret word or special slug in the URL when trying to access your WordPress login page</strong>."
|
789 |
msgstr ""
|
790 |
|
791 |
+
#: admin/wp-security-brute-force-menu.php:793
|
792 |
msgid "These features are NOT functionally related. Having both of them enabled on your site means you are creating 2 layers of security."
|
793 |
msgstr ""
|
794 |
|
795 |
+
#: admin/wp-security-brute-force-menu.php:798
|
796 |
msgid "Login IP Whitelist Settings"
|
797 |
msgstr ""
|
798 |
|
799 |
+
#: admin/wp-security-brute-force-menu.php:809
|
800 |
msgid "Enable IP Whitelisting"
|
801 |
msgstr ""
|
802 |
|
803 |
+
#: admin/wp-security-brute-force-menu.php:812
|
804 |
#: admin/wp-security-user-login-menu.php:343
|
805 |
msgid "Check this if you want to enable the whitelisting of selected IP addresses specified in the settings below"
|
806 |
msgstr ""
|
807 |
|
808 |
+
#: admin/wp-security-brute-force-menu.php:816
|
809 |
msgid "Your Current IP Address"
|
810 |
msgstr ""
|
811 |
|
812 |
+
#: admin/wp-security-brute-force-menu.php:819
|
813 |
msgid "You can copy and paste this address in the text box below if you want to include it in your login whitelist."
|
814 |
msgstr ""
|
815 |
|
816 |
+
#: admin/wp-security-brute-force-menu.php:823
|
817 |
#: admin/wp-security-user-login-menu.php:347
|
818 |
msgid "Enter Whitelisted IP Addresses:"
|
819 |
msgstr ""
|
820 |
|
821 |
+
#: admin/wp-security-brute-force-menu.php:827
|
822 |
msgid "Enter one or more IP addresses or IP ranges you wish to include in your whitelist. Only the addresses specified here will have access to the WordPress login page."
|
823 |
msgstr ""
|
824 |
|
825 |
+
#: admin/wp-security-brute-force-menu.php:832
|
826 |
msgid "To specify an IPv4 range use a wildcard \"*\" character. Acceptable ways to use wildcards is shown in the examples below:"
|
827 |
msgstr ""
|
828 |
|
829 |
+
#: admin/wp-security-brute-force-menu.php:836
|
830 |
msgid "Or you can enter an IPv6 address (NOTE: ranges/wildcards are currently not supported for ipv6)"
|
831 |
msgstr ""
|
832 |
|
833 |
+
#: admin/wp-security-brute-force-menu.php:837
|
834 |
msgid "Example 4: 4102:0:3ea6:79fd:b:46f8:230f:bb05"
|
835 |
msgstr ""
|
836 |
|
837 |
+
#: admin/wp-security-brute-force-menu.php:838
|
838 |
msgid "Example 5: 2205:0:1ca2:810d::"
|
839 |
msgstr ""
|
840 |
|
841 |
+
#: admin/wp-security-brute-force-menu.php:878
|
842 |
msgid "This feature allows you to add a special hidden \"honeypot\" field on the WordPress login page. This will only be visible to robots and not humans."
|
843 |
msgstr ""
|
844 |
|
845 |
+
#: admin/wp-security-brute-force-menu.php:879
|
846 |
msgid "Since robots usually fill in every input field from a login form, they will also submit a value for the special hidden honeypot field."
|
847 |
msgstr ""
|
848 |
|
849 |
+
#: admin/wp-security-brute-force-menu.php:880
|
850 |
#: admin/wp-security-user-registration-menu.php:286
|
851 |
msgid "The way honeypots work is that a hidden field is placed somewhere inside a form which only robots will submit. If that field contains a value when the form is submitted then a robot has most likely submitted the form and it is consequently dealt with."
|
852 |
msgstr ""
|
853 |
|
854 |
+
#: admin/wp-security-brute-force-menu.php:881
|
855 |
msgid "Therefore, if the plugin detects that this field has a value when the login form is submitted, then the robot which is attempting to login to your site will be redirected to its localhost address - http://127.0.0.1."
|
856 |
msgstr ""
|
857 |
|
858 |
+
#: admin/wp-security-brute-force-menu.php:887
|
859 |
msgid "Login Form Honeypot Settings"
|
860 |
msgstr ""
|
861 |
|
862 |
+
#: admin/wp-security-brute-force-menu.php:898
|
863 |
msgid "Enable Honeypot On Login Page"
|
864 |
msgstr ""
|
865 |
|
866 |
+
#: admin/wp-security-brute-force-menu.php:901
|
867 |
msgid "Check this if you want to enable the honeypot feature for the login page"
|
868 |
msgstr ""
|
869 |
|
872 |
msgstr ""
|
873 |
|
874 |
#: admin/wp-security-dashboard-menu.php:30
|
875 |
+
#: admin/wp-security-dashboard-menu.php:481
|
876 |
msgid "Locked IP Addresses"
|
877 |
msgstr ""
|
878 |
|
898 |
|
899 |
#: admin/wp-security-dashboard-menu.php:109
|
900 |
#: admin/wp-security-dashboard-menu.php:113
|
901 |
+
#: admin/wp-security-dashboard-menu.php:213
|
902 |
msgid "Version"
|
903 |
msgstr ""
|
904 |
|
945 |
#: admin/wp-security-dashboard-menu.php:144
|
946 |
#: admin/wp-security-dashboard-menu.php:153
|
947 |
#: admin/wp-security-dashboard-menu.php:162
|
948 |
+
#: admin/wp-security-dashboard-menu.php:191
|
949 |
msgid "N/A"
|
950 |
msgstr ""
|
951 |
|
963 |
|
964 |
#: admin/wp-security-dashboard-menu.php:169
|
965 |
#: admin/wp-security-dashboard-menu.php:179
|
|
|
966 |
msgid "On"
|
967 |
msgstr ""
|
968 |
|
969 |
#: admin/wp-security-dashboard-menu.php:171
|
970 |
#: admin/wp-security-dashboard-menu.php:181
|
|
|
971 |
msgid "Off"
|
972 |
msgstr ""
|
973 |
|
975 |
msgid "PHP Allow URL fopen"
|
976 |
msgstr ""
|
977 |
|
978 |
+
#: admin/wp-security-dashboard-menu.php:184
|
979 |
msgid "PHP Display Errors"
|
980 |
msgstr ""
|
981 |
|
982 |
+
#: admin/wp-security-dashboard-menu.php:194
|
983 |
msgid "PHP Max Script Execution Time"
|
984 |
msgstr ""
|
985 |
|
986 |
+
#: admin/wp-security-dashboard-menu.php:201
|
987 |
msgid "Active Plugins"
|
988 |
msgstr ""
|
989 |
|
990 |
+
#: admin/wp-security-dashboard-menu.php:212
|
991 |
#: admin/wp-security-filesystem-menu.php:140
|
992 |
#: admin/wp-security-filesystem-menu.php:159
|
993 |
msgid "Name"
|
994 |
msgstr ""
|
995 |
|
996 |
+
#: admin/wp-security-dashboard-menu.php:214
|
997 |
msgid "Plugin URL"
|
998 |
msgstr ""
|
999 |
|
1000 |
+
#: admin/wp-security-dashboard-menu.php:251
|
1001 |
+
#: admin/wp-security-dashboard-menu.php:626
|
1002 |
+
#: admin/wp-security-user-login-menu.php:28
|
1003 |
+
#: classes/grade-system/wp-security-feature-item-manager.php:42
|
1004 |
+
msgid "Login Lockdown"
|
1005 |
+
msgstr ""
|
1006 |
+
|
1007 |
+
#: admin/wp-security-dashboard-menu.php:252
|
1008 |
msgid "This tab displays the list of all IP addresses which are currently temporarily locked out due to the Login Lockdown feature:"
|
1009 |
msgstr ""
|
1010 |
|
1011 |
+
#: admin/wp-security-dashboard-menu.php:259
|
1012 |
msgid "Currently Locked Out IP Addresses and Ranges"
|
1013 |
msgstr ""
|
1014 |
|
1015 |
+
#: admin/wp-security-dashboard-menu.php:303
|
1016 |
msgid "This tab displays the list of all permanently blocked IP addresses."
|
1017 |
msgstr ""
|
1018 |
|
1019 |
+
#: admin/wp-security-dashboard-menu.php:304
|
1020 |
#: admin/wp-security-spam-menu.php:297
|
1021 |
msgid "NOTE: This feature does NOT use the .htaccess file to permanently block the IP addresses so it should be compatible with all web servers running WordPress."
|
1022 |
msgstr ""
|
1023 |
|
1024 |
+
#: admin/wp-security-dashboard-menu.php:310
|
1025 |
msgid "Permanently Blocked IP Addresses"
|
1026 |
msgstr ""
|
1027 |
|
1028 |
+
#: admin/wp-security-dashboard-menu.php:322
|
1029 |
+
#: admin/wp-security-firewall-menu.php:983
|
1030 |
#: admin/wp-security-user-login-menu.php:429
|
1031 |
#: admin/wp-security-user-login-menu.php:583
|
1032 |
#: admin/wp-security-user-registration-menu.php:171
|
1033 |
msgid "Search"
|
1034 |
msgstr ""
|
1035 |
|
1036 |
+
#: admin/wp-security-dashboard-menu.php:344
|
1037 |
msgid "View Logs for All In WP Security & Firewall Plugin"
|
1038 |
msgstr ""
|
1039 |
|
1040 |
+
#: admin/wp-security-dashboard-menu.php:352
|
1041 |
msgid "Log File"
|
1042 |
msgstr ""
|
1043 |
|
1044 |
+
#: admin/wp-security-dashboard-menu.php:356
|
1045 |
msgid "--Select a file--"
|
1046 |
msgstr ""
|
1047 |
|
1048 |
+
#: admin/wp-security-dashboard-menu.php:367
|
1049 |
msgid "Select one of the log files to view the contents"
|
1050 |
msgstr ""
|
1051 |
|
1052 |
+
#: admin/wp-security-dashboard-menu.php:372
|
1053 |
msgid "View Logs"
|
1054 |
msgstr ""
|
1055 |
|
1056 |
+
#: admin/wp-security-dashboard-menu.php:393
|
1057 |
msgid "Error! The file you selected is not a permitted file. You can only view log files created by this plugin."
|
1058 |
msgstr ""
|
1059 |
|
1060 |
+
#: admin/wp-security-dashboard-menu.php:400
|
1061 |
msgid "Log File Contents For"
|
1062 |
msgstr ""
|
1063 |
|
1064 |
+
#: admin/wp-security-dashboard-menu.php:414
|
1065 |
msgid "Log file is empty!"
|
1066 |
msgstr ""
|
1067 |
|
1068 |
+
#: admin/wp-security-dashboard-menu.php:469
|
1069 |
msgid "Security Strength Meter"
|
1070 |
msgstr ""
|
1071 |
|
1072 |
+
#: admin/wp-security-dashboard-menu.php:470
|
1073 |
msgid "Security Points Breakdown"
|
1074 |
msgstr ""
|
1075 |
|
1076 |
+
#: admin/wp-security-dashboard-menu.php:471
|
1077 |
msgid "Spread the Word"
|
1078 |
msgstr ""
|
1079 |
|
1080 |
+
#: admin/wp-security-dashboard-menu.php:472
|
1081 |
msgid "Get To Know The Developers"
|
1082 |
msgstr ""
|
1083 |
|
1084 |
+
#: admin/wp-security-dashboard-menu.php:473
|
1085 |
msgid "Critical Feature Status"
|
1086 |
msgstr ""
|
1087 |
|
1088 |
+
#: admin/wp-security-dashboard-menu.php:474
|
1089 |
msgid "Last 5 Logins"
|
1090 |
msgstr ""
|
1091 |
|
1092 |
+
#: admin/wp-security-dashboard-menu.php:475
|
1093 |
msgid "Maintenance Mode Status"
|
1094 |
msgstr ""
|
1095 |
|
1096 |
+
#: admin/wp-security-dashboard-menu.php:480
|
1097 |
#: admin/wp-security-user-login-menu.php:32
|
1098 |
msgid "Logged In Users"
|
1099 |
msgstr ""
|
1100 |
|
1101 |
+
#: admin/wp-security-dashboard-menu.php:524
|
1102 |
msgid "Total Achievable Points: "
|
1103 |
msgstr ""
|
1104 |
|
1105 |
+
#: admin/wp-security-dashboard-menu.php:526
|
1106 |
msgid "Current Score of Your Site: "
|
1107 |
msgstr ""
|
1108 |
|
1109 |
+
#: admin/wp-security-dashboard-menu.php:579
|
1110 |
msgid "We are working hard to make your WordPress site more secure. Please support us, here is how:"
|
1111 |
msgstr ""
|
1112 |
|
1113 |
+
#: admin/wp-security-dashboard-menu.php:580
|
1114 |
msgid "Follow us on"
|
1115 |
msgstr ""
|
1116 |
|
1117 |
+
#: admin/wp-security-dashboard-menu.php:584
|
1118 |
msgid "Post to Twitter"
|
1119 |
msgstr ""
|
1120 |
|
1121 |
+
#: admin/wp-security-dashboard-menu.php:588
|
1122 |
msgid "Give us a Good Rating"
|
1123 |
msgstr ""
|
1124 |
|
1125 |
+
#: admin/wp-security-dashboard-menu.php:595
|
1126 |
msgid "Wanna know more about the developers behind this plugin?"
|
1127 |
msgstr ""
|
1128 |
|
1129 |
+
#: admin/wp-security-dashboard-menu.php:607
|
1130 |
msgid "Below is the current status of the critical features that you should activate on your site to achieve a minimum level of recommended security"
|
1131 |
msgstr ""
|
1132 |
|
1133 |
+
#: admin/wp-security-dashboard-menu.php:611
|
1134 |
msgid "Admin Username"
|
1135 |
msgstr ""
|
1136 |
|
1137 |
+
#: admin/wp-security-dashboard-menu.php:641
|
|
|
|
|
|
|
|
|
|
|
|
|
1138 |
msgid "File Permission"
|
1139 |
msgstr ""
|
1140 |
|
1141 |
+
#: admin/wp-security-dashboard-menu.php:656
|
1142 |
msgid "Basic Firewall"
|
1143 |
msgstr ""
|
1144 |
|
1145 |
+
#: admin/wp-security-dashboard-menu.php:685
|
1146 |
msgid "No data found!"
|
1147 |
msgstr ""
|
1148 |
|
1149 |
+
#: admin/wp-security-dashboard-menu.php:689
|
1150 |
msgid "Last 5 logins summary:"
|
1151 |
msgstr ""
|
1152 |
|
1153 |
+
#: admin/wp-security-dashboard-menu.php:693
|
1154 |
msgid "User"
|
1155 |
msgstr ""
|
1156 |
|
1157 |
+
#: admin/wp-security-dashboard-menu.php:694
|
1158 |
#: admin/wp-security-list-404.php:88
|
1159 |
#: admin/wp-security-list-login-fails.php:57
|
1160 |
#: admin/wp-security-list-permanent-blocked-ip.php:68
|
1161 |
msgid "Date"
|
1162 |
msgstr ""
|
1163 |
|
1164 |
+
#: admin/wp-security-dashboard-menu.php:695
|
1165 |
msgid "IP"
|
1166 |
msgstr ""
|
1167 |
|
1168 |
+
#: admin/wp-security-dashboard-menu.php:716
|
1169 |
msgid "Maintenance mode is currently enabled. Remember to turn it off when you are done"
|
1170 |
msgstr ""
|
1171 |
|
1172 |
+
#: admin/wp-security-dashboard-menu.php:718
|
1173 |
msgid "Maintenance mode is currently off."
|
1174 |
msgstr ""
|
1175 |
|
1176 |
+
#: admin/wp-security-dashboard-menu.php:722
|
1177 |
msgid "Maintenance Mode"
|
1178 |
msgstr ""
|
1179 |
|
1180 |
+
#: admin/wp-security-dashboard-menu.php:740
|
1181 |
msgid "Cookie-Based Brute Force"
|
1182 |
msgstr ""
|
1183 |
|
1184 |
+
#: admin/wp-security-dashboard-menu.php:744
|
1185 |
+
#: admin/wp-security-dashboard-menu.php:762
|
1186 |
msgid "The %s feature is currently active."
|
1187 |
msgstr ""
|
1188 |
|
1189 |
+
#: admin/wp-security-dashboard-menu.php:745
|
1190 |
+
#: admin/wp-security-dashboard-menu.php:763
|
1191 |
msgid "Your new WordPress login URL is now:"
|
1192 |
msgstr ""
|
1193 |
|
1194 |
+
#: admin/wp-security-dashboard-menu.php:774
|
1195 |
+
msgid "Number of users currently logged into your site (including you) is:"
|
1196 |
msgstr ""
|
1197 |
|
1198 |
+
#: admin/wp-security-dashboard-menu.php:775
|
1199 |
+
msgid "There are no other users currently logged in."
|
|
|
|
|
1200 |
msgstr ""
|
1201 |
|
1202 |
+
#: admin/wp-security-dashboard-menu.php:788
|
1203 |
+
msgid "Number of users currently logged in site-wide (including you) is:"
|
1204 |
msgstr ""
|
1205 |
|
1206 |
+
#: admin/wp-security-dashboard-menu.php:789
|
1207 |
+
msgid "There are no other site-wide users currently logged in."
|
1208 |
msgstr ""
|
1209 |
|
1210 |
+
#: admin/wp-security-dashboard-menu.php:802
|
1211 |
+
#: admin/wp-security-dashboard-menu.php:819
|
1212 |
+
msgid "Go to the %s menu to see more details"
|
1213 |
msgstr ""
|
1214 |
|
1215 |
+
#: admin/wp-security-dashboard-menu.php:815
|
1216 |
msgid "There are no IP addresses currently locked out."
|
1217 |
msgstr ""
|
1218 |
|
1219 |
+
#: admin/wp-security-dashboard-menu.php:818
|
1220 |
msgid "Number of temporarily locked out IP addresses: "
|
1221 |
msgstr ""
|
1222 |
|
1320 |
msgstr ""
|
1321 |
|
1322 |
#: admin/wp-security-database-menu.php:255
|
1323 |
+
#: admin/wp-security-filescan-menu.php:140
|
1324 |
msgid "You entered a non numeric value for the \"backup time interval\" field. It has been set to the default value."
|
1325 |
msgstr ""
|
1326 |
|
1362 |
msgstr ""
|
1363 |
|
1364 |
#: admin/wp-security-database-menu.php:335
|
1365 |
+
#: admin/wp-security-filescan-menu.php:306
|
1366 |
msgid "Hours"
|
1367 |
msgstr ""
|
1368 |
|
1369 |
#: admin/wp-security-database-menu.php:336
|
1370 |
+
#: admin/wp-security-filescan-menu.php:307
|
1371 |
msgid "Days"
|
1372 |
msgstr ""
|
1373 |
|
1374 |
#: admin/wp-security-database-menu.php:337
|
1375 |
+
#: admin/wp-security-filescan-menu.php:308
|
1376 |
msgid "Weeks"
|
1377 |
msgstr ""
|
1378 |
|
1434 |
msgid "%s tables had their prefix updated successfully!"
|
1435 |
msgstr ""
|
1436 |
|
1437 |
+
#: admin/wp-security-database-menu.php:464
|
1438 |
msgid "wp-config.php file was updated successfully!"
|
1439 |
msgstr ""
|
1440 |
|
1441 |
+
#: admin/wp-security-database-menu.php:467
|
1442 |
msgid ""
|
1443 |
"The \"wp-config.php\" file was not able to be modified. Please modify this file manually using your favourite editor and search
|
1444 |
\n"
|
1445 |
" for variable \"$table_prefix\" and assign the following value to that variable: %s"
|
1446 |
msgstr ""
|
1447 |
|
1448 |
+
#: admin/wp-security-database-menu.php:479
|
1449 |
+
#: admin/wp-security-database-menu.php:498
|
1450 |
msgid "Update of table %s failed: unable to change %s to %s"
|
1451 |
msgstr ""
|
1452 |
|
1453 |
+
#: admin/wp-security-database-menu.php:483
|
1454 |
msgid "The options table records which had references to the old DB prefix were updated successfully!"
|
1455 |
msgstr ""
|
1456 |
|
1457 |
+
#: admin/wp-security-database-menu.php:502
|
1458 |
msgid "The %s table records which had references to the old DB prefix were updated successfully!"
|
1459 |
msgstr ""
|
1460 |
|
1461 |
+
#: admin/wp-security-database-menu.php:530
|
1462 |
msgid "Error updating user_meta table where new meta_key = %s, old meta_key = %s and user_id = %s."
|
1463 |
msgstr ""
|
1464 |
|
1465 |
+
#: admin/wp-security-database-menu.php:535
|
1466 |
msgid "The usermeta table records which had references to the old DB prefix were updated successfully!"
|
1467 |
msgstr ""
|
1468 |
|
1469 |
+
#: admin/wp-security-database-menu.php:537
|
1470 |
msgid "DB prefix change tasks have been completed."
|
1471 |
msgstr ""
|
1472 |
|
1473 |
+
#: admin/wp-security-database-menu.php:581
|
1474 |
msgid "Checking for MySQL tables of type \"view\"....."
|
1475 |
msgstr ""
|
1476 |
|
1477 |
+
#: admin/wp-security-database-menu.php:598
|
1478 |
msgid "Update of the following MySQL view definition failed: %s"
|
1479 |
msgstr ""
|
1480 |
|
1481 |
+
#: admin/wp-security-database-menu.php:605
|
1482 |
msgid "%s view definitions were updated successfully!"
|
1483 |
msgstr ""
|
1484 |
|
1491 |
msgid "Malware Scan"
|
1492 |
msgstr ""
|
1493 |
|
1494 |
+
#: admin/wp-security-filescan-menu.php:95
|
1495 |
msgid "There have been no file changes since the last scan."
|
1496 |
msgstr ""
|
1497 |
|
1498 |
+
#: admin/wp-security-filescan-menu.php:105
|
1499 |
msgid "Nonce check failed for manual file change detection scan operation!"
|
1500 |
msgstr ""
|
1501 |
|
1502 |
+
#: admin/wp-security-filescan-menu.php:111
|
1503 |
+
msgid "There was an error during the file change detection scan. Please check the aiowps logs."
|
1504 |
msgstr ""
|
1505 |
|
1506 |
+
#: admin/wp-security-filescan-menu.php:117
|
1507 |
+
msgid "The plugin has detected that this is your first file change detection scan. The file details from this scan will be used to detect file changes for future scans."
|
1508 |
+
msgstr ""
|
1509 |
+
|
1510 |
+
#: admin/wp-security-filescan-menu.php:119
|
1511 |
msgid "Scan Complete - There were no file changes detected!"
|
1512 |
msgstr ""
|
1513 |
|
1514 |
+
#: admin/wp-security-filescan-menu.php:174
|
1515 |
msgid "The following address was removed because it is not a valid email address: "
|
1516 |
msgstr ""
|
1517 |
|
1518 |
+
#: admin/wp-security-filescan-menu.php:214
|
1519 |
msgid ""
|
1520 |
"NEW SCAN COMPLETED: The plugin has detected that you have made changes to the \"File Types To Ignore\" or \"Files To Ignore\" fields.
|
1521 |
\n"
|
1522 |
" In order to ensure that future scan results are accurate, the old scan data has been refreshed."
|
1523 |
msgstr ""
|
1524 |
|
1525 |
+
#: admin/wp-security-filescan-menu.php:224
|
1526 |
msgid "All In One WP Security & Firewall has detected that there was a change in your host's files."
|
1527 |
msgstr ""
|
1528 |
|
1529 |
+
#: admin/wp-security-filescan-menu.php:226
|
1530 |
msgid "View Scan Details & Clear This Message"
|
1531 |
msgstr ""
|
1532 |
|
1533 |
+
#: admin/wp-security-filescan-menu.php:235
|
1534 |
msgid "If given an opportunity hackers can insert their code or files into your system which they can then use to carry out malicious acts on your site."
|
1535 |
msgstr ""
|
1536 |
|
1537 |
+
#: admin/wp-security-filescan-menu.php:236
|
1538 |
msgid "Being informed of any changes in your files can be a good way to quickly prevent a hacker from causing damage to your website."
|
1539 |
msgstr ""
|
1540 |
|
1541 |
+
#: admin/wp-security-filescan-menu.php:237
|
1542 |
msgid "In general, WordPress core and plugin files and file types such as \".php\" or \".js\" should not change often and when they do, it is important that you are made aware when a change occurs and which file was affected."
|
1543 |
msgstr ""
|
1544 |
|
1545 |
+
#: admin/wp-security-filescan-menu.php:238
|
1546 |
msgid "The \"File Change Detection Feature\" will notify you of any file change which occurs on your system, including the addition and deletion of files by performing a regular automated or manual scan of your system's files."
|
1547 |
msgstr ""
|
1548 |
|
1549 |
+
#: admin/wp-security-filescan-menu.php:239
|
1550 |
msgid "This feature also allows you to exclude certain files or folders from the scan in cases where you know that they change often as part of their normal operation. (For example log files and certain caching plugin files may change often and hence you may choose to exclude such files from the file change detection scan)"
|
1551 |
msgstr ""
|
1552 |
|
1553 |
+
#: admin/wp-security-filescan-menu.php:250
|
1554 |
msgid "It appears that your server is using an old PHP version which is missing the %s. The file scanner feature needs this class in order to work. If you would like to use this feature please upgrade your server PHP version to 5.3 or greater."
|
1555 |
msgstr ""
|
1556 |
|
1557 |
+
#: admin/wp-security-filescan-menu.php:258
|
1558 |
msgid "Manual File Change Detection Scan"
|
1559 |
msgstr ""
|
1560 |
|
1561 |
+
#: admin/wp-security-filescan-menu.php:264
|
1562 |
msgid "To perform a manual file change detection scan click on the button below."
|
1563 |
msgstr ""
|
1564 |
|
1565 |
+
#: admin/wp-security-filescan-menu.php:267
|
1566 |
msgid "Perform Scan Now"
|
1567 |
msgstr ""
|
1568 |
|
1569 |
+
#: admin/wp-security-filescan-menu.php:271
|
1570 |
msgid "View Last Saved File Change Results"
|
1571 |
msgstr ""
|
1572 |
|
1573 |
+
#: admin/wp-security-filescan-menu.php:277
|
1574 |
msgid "Click the button below to view the saved file change results from the last scan."
|
1575 |
msgstr ""
|
1576 |
|
1577 |
+
#: admin/wp-security-filescan-menu.php:280
|
1578 |
msgid "View Last File Change"
|
1579 |
msgstr ""
|
1580 |
|
1581 |
+
#: admin/wp-security-filescan-menu.php:284
|
1582 |
msgid "File Change Detection Settings"
|
1583 |
msgstr ""
|
1584 |
|
1585 |
+
#: admin/wp-security-filescan-menu.php:296
|
1586 |
msgid "Enable Automated File Change Detection Scan"
|
1587 |
msgstr ""
|
1588 |
|
1589 |
+
#: admin/wp-security-filescan-menu.php:299
|
1590 |
msgid "Check this if you want the system to automatically/periodically scan your files to check for file changes based on the settings below"
|
1591 |
msgstr ""
|
1592 |
|
1593 |
+
#: admin/wp-security-filescan-menu.php:303
|
1594 |
msgid "Scan Time Interval"
|
1595 |
msgstr ""
|
1596 |
|
1597 |
+
#: admin/wp-security-filescan-menu.php:310
|
1598 |
msgid "Set the value for how often you would like a scan to occur"
|
1599 |
msgstr ""
|
1600 |
|
1601 |
+
#: admin/wp-security-filescan-menu.php:314
|
1602 |
msgid "File Types To Ignore"
|
1603 |
msgstr ""
|
1604 |
|
1605 |
+
#: admin/wp-security-filescan-menu.php:317
|
1606 |
msgid "Enter each file type or extension on a new line which you wish to exclude from the file change detection scan."
|
1607 |
msgstr ""
|
1608 |
|
1609 |
+
#: admin/wp-security-filescan-menu.php:321
|
1610 |
msgid "You can exclude file types from the scan which would not normally pose any security threat if they were changed. These can include things such as image files."
|
1611 |
msgstr ""
|
1612 |
|
1613 |
+
#: admin/wp-security-filescan-menu.php:322
|
1614 |
msgid "Example: If you want the scanner to ignore files of type jpg, png, and bmp, then you would enter the following:"
|
1615 |
msgstr ""
|
1616 |
|
1617 |
+
#: admin/wp-security-filescan-menu.php:323
|
1618 |
msgid "jpg"
|
1619 |
msgstr ""
|
1620 |
|
1621 |
+
#: admin/wp-security-filescan-menu.php:324
|
1622 |
msgid "png"
|
1623 |
msgstr ""
|
1624 |
|
1625 |
+
#: admin/wp-security-filescan-menu.php:325
|
1626 |
msgid "bmp"
|
1627 |
msgstr ""
|
1628 |
|
1629 |
+
#: admin/wp-security-filescan-menu.php:331
|
1630 |
msgid "Files/Directories To Ignore"
|
1631 |
msgstr ""
|
1632 |
|
1633 |
+
#: admin/wp-security-filescan-menu.php:334
|
1634 |
msgid "Enter each file or directory on a new line which you wish to exclude from the file change detection scan."
|
1635 |
msgstr ""
|
1636 |
|
1637 |
+
#: admin/wp-security-filescan-menu.php:338
|
1638 |
msgid "You can exclude specific files/directories from the scan which would not normally pose any security threat if they were changed. These can include things such as log files."
|
1639 |
msgstr ""
|
1640 |
|
1641 |
+
#: admin/wp-security-filescan-menu.php:339
|
1642 |
msgid "Example: If you want the scanner to ignore certain files in different directories or whole directories, then you would enter the following:"
|
1643 |
msgstr ""
|
1644 |
|
1645 |
+
#: admin/wp-security-filescan-menu.php:340
|
1646 |
msgid "cache/config/master.php"
|
1647 |
msgstr ""
|
1648 |
|
1649 |
+
#: admin/wp-security-filescan-menu.php:341
|
1650 |
msgid "somedirectory"
|
1651 |
msgstr ""
|
1652 |
|
1653 |
+
#: admin/wp-security-filescan-menu.php:347
|
1654 |
msgid "Send Email When Change Detected"
|
1655 |
msgstr ""
|
1656 |
|
1657 |
+
#: admin/wp-security-filescan-menu.php:350
|
1658 |
msgid "Check this if you want the system to email you if a file change was detected"
|
1659 |
msgstr ""
|
1660 |
|
1661 |
+
#: admin/wp-security-filescan-menu.php:354
|
1662 |
msgid "Enter one or more email addresses on a new line."
|
1663 |
msgstr ""
|
1664 |
|
1665 |
+
#: admin/wp-security-filescan-menu.php:371
|
1666 |
msgid "What is Malware?"
|
1667 |
msgstr ""
|
1668 |
|
1669 |
+
#: admin/wp-security-filescan-menu.php:372
|
1670 |
msgid "The word Malware stands for Malicious Software. It can consist of things like trojan horses, adware, worms, spyware and any other undesirable code which a hacker will try to inject into your website."
|
1671 |
msgstr ""
|
1672 |
|
1673 |
+
#: admin/wp-security-filescan-menu.php:373
|
1674 |
msgid "Often when malware code has been inserted into your site you will normally not notice anything out of the ordinary based on appearances, but it can have a dramatic effect on your site's search ranking."
|
1675 |
msgstr ""
|
1676 |
|
1677 |
+
#: admin/wp-security-filescan-menu.php:374
|
1678 |
msgid "This is because the bots and spiders from search engines such as Google have the capability to detect malware when they are indexing the pages on your site, and consequently they can blacklist your website which will in turn affect your search rankings."
|
1679 |
msgstr ""
|
1680 |
|
1681 |
+
#: admin/wp-security-filescan-menu.php:376
|
1682 |
msgid "CLICK HERE"
|
1683 |
msgstr ""
|
1684 |
|
1685 |
+
#: admin/wp-security-filescan-menu.php:378
|
1686 |
msgid "Scanning For Malware"
|
1687 |
msgstr ""
|
1688 |
|
1689 |
+
#: admin/wp-security-filescan-menu.php:379
|
1690 |
msgid "Due to the constantly changing and complex nature of Malware, scanning for such things using a standalone plugin will not work reliably. This is something best done via an external scan of your site regularly."
|
1691 |
msgstr ""
|
1692 |
|
1693 |
+
#: admin/wp-security-filescan-menu.php:380
|
1694 |
msgid "This is why we have created an easy-to-use scanning service which is hosted off our own server which will scan your site for malware once every day and notify you if it finds anything."
|
1695 |
msgstr ""
|
1696 |
|
1697 |
+
#: admin/wp-security-filescan-menu.php:381
|
1698 |
msgid "When you sign up for this service you will get the following:"
|
1699 |
msgstr ""
|
1700 |
|
1701 |
+
#: admin/wp-security-filescan-menu.php:383
|
1702 |
msgid "Automatic Daily Scan of 1 Website"
|
1703 |
msgstr ""
|
1704 |
|
1705 |
+
#: admin/wp-security-filescan-menu.php:384
|
1706 |
msgid "Automatic Malware & Blacklist Monitoring"
|
1707 |
msgstr ""
|
1708 |
|
1709 |
+
#: admin/wp-security-filescan-menu.php:385
|
1710 |
msgid "Automatic Email Alerting"
|
1711 |
msgstr ""
|
1712 |
|
1713 |
+
#: admin/wp-security-filescan-menu.php:386
|
1714 |
msgid "Site uptime monitoring"
|
1715 |
msgstr ""
|
1716 |
|
1717 |
+
#: admin/wp-security-filescan-menu.php:387
|
1718 |
msgid "Site response time monitoring"
|
1719 |
msgstr ""
|
1720 |
|
1721 |
+
#: admin/wp-security-filescan-menu.php:388
|
1722 |
msgid "We provide advice for malware cleanup"
|
1723 |
msgstr ""
|
1724 |
|
1725 |
+
#: admin/wp-security-filescan-menu.php:389
|
1726 |
msgid "Blacklist Removal"
|
1727 |
msgstr ""
|
1728 |
|
1729 |
+
#: admin/wp-security-filescan-menu.php:390
|
1730 |
msgid "No Contract (Cancel Anytime)"
|
1731 |
msgstr ""
|
1732 |
|
1733 |
+
#: admin/wp-security-filescan-menu.php:392
|
1734 |
msgid "To learn more please %s."
|
1735 |
msgstr ""
|
1736 |
|
1737 |
+
#: admin/wp-security-filescan-menu.php:413
|
1738 |
msgid "Latest File Change Scan Results"
|
1739 |
msgstr ""
|
1740 |
|
1741 |
+
#: admin/wp-security-filescan-menu.php:423
|
1742 |
msgid "The following files were added to your host."
|
1743 |
msgstr ""
|
1744 |
|
1745 |
+
#: admin/wp-security-filescan-menu.php:426
|
1746 |
+
#: admin/wp-security-filescan-menu.php:447
|
1747 |
+
#: admin/wp-security-filescan-menu.php:471
|
1748 |
#: admin/wp-security-settings-menu.php:31
|
1749 |
#: admin/wp-security-settings-menu.php:32
|
1750 |
msgid "File"
|
1751 |
msgstr ""
|
1752 |
|
1753 |
+
#: admin/wp-security-filescan-menu.php:427
|
1754 |
+
#: admin/wp-security-filescan-menu.php:448
|
1755 |
+
#: admin/wp-security-filescan-menu.php:472
|
1756 |
msgid "File Size"
|
1757 |
msgstr ""
|
1758 |
|
1759 |
+
#: admin/wp-security-filescan-menu.php:428
|
1760 |
+
#: admin/wp-security-filescan-menu.php:449
|
1761 |
+
#: admin/wp-security-filescan-menu.php:473
|
1762 |
msgid "File Modified"
|
1763 |
msgstr ""
|
1764 |
|
1765 |
+
#: admin/wp-security-filescan-menu.php:444
|
1766 |
msgid "The following files were removed from your host."
|
1767 |
msgstr ""
|
1768 |
|
1769 |
+
#: admin/wp-security-filescan-menu.php:468
|
1770 |
msgid "The following files were changed on your host."
|
1771 |
msgstr ""
|
1772 |
|
2000 |
msgid "Custom Rules"
|
2001 |
msgstr ""
|
2002 |
|
2003 |
+
#: admin/wp-security-firewall-menu.php:125
|
2004 |
+
#: admin/wp-security-firewall-menu.php:754
|
2005 |
#: admin/wp-security-spam-menu.php:110
|
2006 |
#: admin/wp-security-spam-menu.php:454
|
2007 |
#: admin/wp-security-spam-menu.php:516
|
2009 |
msgid "Settings were successfully saved"
|
2010 |
msgstr ""
|
2011 |
|
2012 |
+
#: admin/wp-security-firewall-menu.php:134
|
2013 |
+
#: admin/wp-security-firewall-menu.php:575
|
2014 |
msgid "Firewall Settings"
|
2015 |
msgstr ""
|
2016 |
|
2017 |
+
#: admin/wp-security-firewall-menu.php:141
|
2018 |
msgid "This should not have any impact on your site's general functionality but if you wish you can take a %s of your .htaccess file before proceeding."
|
2019 |
msgstr ""
|
2020 |
|
2021 |
+
#: admin/wp-security-firewall-menu.php:142
|
2022 |
msgid "The features in this tab allow you to activate some basic firewall security protection rules for your site."
|
2023 |
msgstr ""
|
2024 |
|
2025 |
+
#: admin/wp-security-firewall-menu.php:143
|
2026 |
msgid "The firewall functionality is achieved via the insertion of special code into your currently active .htaccess file."
|
2027 |
msgstr ""
|
2028 |
|
2029 |
+
#: admin/wp-security-firewall-menu.php:154
|
2030 |
msgid "Attention: You have enabled the \"Completely Block Access To XMLRPC\" checkbox which means all XMLRPC functionality will be blocked."
|
2031 |
msgstr ""
|
2032 |
|
2033 |
+
#: admin/wp-security-firewall-menu.php:155
|
2034 |
msgid "By leaving this feature enabled you will prevent Jetpack or Wordpress iOS or other apps which need XMLRPC from working correctly on your site."
|
2035 |
msgstr ""
|
2036 |
|
2037 |
+
#: admin/wp-security-firewall-menu.php:156
|
2038 |
msgid "If you still need XMLRPC then uncheck the \"Completely Block Access To XMLRPC\" checkbox and enable only the \"Disable Pingback Functionality From XMLRPC\" checkbox."
|
2039 |
msgstr ""
|
2040 |
|
2041 |
+
#: admin/wp-security-firewall-menu.php:166
|
2042 |
msgid "Basic Firewall Settings"
|
2043 |
msgstr ""
|
2044 |
|
2045 |
+
#: admin/wp-security-firewall-menu.php:174
|
2046 |
msgid "Enable Basic Firewall Protection"
|
2047 |
msgstr ""
|
2048 |
|
2049 |
+
#: admin/wp-security-firewall-menu.php:177
|
2050 |
msgid "Check this if you want to apply basic firewall protection to your site."
|
2051 |
msgstr ""
|
2052 |
|
2053 |
+
#: admin/wp-security-firewall-menu.php:181
|
2054 |
msgid "This setting will implement the following basic firewall protection mechanisms on your site:"
|
2055 |
msgstr ""
|
2056 |
|
2057 |
+
#: admin/wp-security-firewall-menu.php:182
|
2058 |
msgid "1) Protect your htaccess file by denying access to it."
|
2059 |
msgstr ""
|
2060 |
|
2061 |
+
#: admin/wp-security-firewall-menu.php:183
|
2062 |
msgid "2) Disable the server signature."
|
2063 |
msgstr ""
|
2064 |
|
2065 |
+
#: admin/wp-security-firewall-menu.php:184
|
2066 |
msgid "3) Limit file upload size (10MB)."
|
2067 |
msgstr ""
|
2068 |
|
2069 |
+
#: admin/wp-security-firewall-menu.php:185
|
2070 |
msgid "4) Protect your wp-config.php file by denying access to it."
|
2071 |
msgstr ""
|
2072 |
|
2073 |
+
#: admin/wp-security-firewall-menu.php:186
|
2074 |
msgid "The above firewall features will be applied via your .htaccess file and should not affect your site's overall functionality."
|
2075 |
msgstr ""
|
2076 |
|
2077 |
+
#: admin/wp-security-firewall-menu.php:187
|
2078 |
msgid "You are still advised to take a backup of your active .htaccess file just in case."
|
2079 |
msgstr ""
|
2080 |
|
2081 |
+
#: admin/wp-security-firewall-menu.php:193
|
2082 |
+
msgid "Max File Upload Size (MB)"
|
2083 |
+
msgstr ""
|
2084 |
+
|
2085 |
+
#: admin/wp-security-firewall-menu.php:195
|
2086 |
+
msgid "The value for the maximum file upload size used in the .htaccess file. (Defaults to 10MB if left blank)"
|
2087 |
+
msgstr ""
|
2088 |
+
|
2089 |
+
#: admin/wp-security-firewall-menu.php:203
|
2090 |
msgid "WordPress XMLRPC & Pingback Vulnerability Protection"
|
2091 |
msgstr ""
|
2092 |
|
2093 |
+
#: admin/wp-security-firewall-menu.php:211
|
2094 |
msgid "Completely Block Access To XMLRPC"
|
2095 |
msgstr ""
|
2096 |
|
2097 |
+
#: admin/wp-security-firewall-menu.php:214
|
2098 |
msgid "Check this if you are not using the WP XML-RPC functionality and you want to completely block external access to XMLRPC."
|
2099 |
msgstr ""
|
2100 |
|
2101 |
+
#: admin/wp-security-firewall-menu.php:218
|
2102 |
msgid "This setting will add a directive in your .htaccess to disable access to the WordPress xmlrpc.php file which is responsible for the XML-RPC functionality in WordPress."
|
2103 |
msgstr ""
|
2104 |
|
2105 |
+
#: admin/wp-security-firewall-menu.php:219
|
2106 |
msgid "Hackers can exploit various vulnerabilities in the WordPress XML-RPC API in a number of ways such as:"
|
2107 |
msgstr ""
|
2108 |
|
2109 |
+
#: admin/wp-security-firewall-menu.php:220
|
2110 |
msgid "1) Denial of Service (DoS) attacks"
|
2111 |
msgstr ""
|
2112 |
|
2113 |
+
#: admin/wp-security-firewall-menu.php:221
|
2114 |
msgid "2) Hacking internal routers."
|
2115 |
msgstr ""
|
2116 |
|
2117 |
+
#: admin/wp-security-firewall-menu.php:222
|
2118 |
msgid "3) Scanning ports in internal networks to get info from various hosts."
|
2119 |
msgstr ""
|
2120 |
|
2121 |
+
#: admin/wp-security-firewall-menu.php:223
|
2122 |
msgid "Apart from the security protection benefit, this feature may also help reduce load on your server, particularly if your site currently has a lot of unwanted traffic hitting the XML-RPC API on your installation."
|
2123 |
msgstr ""
|
2124 |
|
2125 |
+
#: admin/wp-security-firewall-menu.php:224
|
2126 |
msgid "NOTE: You should only enable this feature if you are not currently using the XML-RPC functionality on your WordPress installation."
|
2127 |
msgstr ""
|
2128 |
|
2129 |
+
#: admin/wp-security-firewall-menu.php:225
|
2130 |
msgid "Leave this feature disabled and use the feature below if you want pingback protection but you still need XMLRPC."
|
2131 |
msgstr ""
|
2132 |
|
2133 |
+
#: admin/wp-security-firewall-menu.php:231
|
2134 |
msgid "Disable Pingback Functionality From XMLRPC"
|
2135 |
msgstr ""
|
2136 |
|
2137 |
+
#: admin/wp-security-firewall-menu.php:234
|
2138 |
msgid "If you use Jetpack or WP iOS or other apps which need WP XML-RPC functionality then check this. This will enable protection against WordPress pingback vulnerabilities."
|
2139 |
msgstr ""
|
2140 |
|
2141 |
+
#: admin/wp-security-firewall-menu.php:238
|
2142 |
msgid "NOTE: If you use Jetpack or the Wordpress iOS or other apps then you should enable this feature but leave the \"Completely Block Access To XMLRPC\" checkbox unchecked."
|
2143 |
msgstr ""
|
2144 |
|
2145 |
+
#: admin/wp-security-firewall-menu.php:239
|
2146 |
msgid "The feature will still allow XMLRPC functionality on your site but will disable the pingback methods."
|
2147 |
msgstr ""
|
2148 |
|
2149 |
+
#: admin/wp-security-firewall-menu.php:240
|
2150 |
msgid "This feature will also remove the \"X-Pingback\" header if it is present."
|
2151 |
msgstr ""
|
2152 |
|
2153 |
+
#: admin/wp-security-firewall-menu.php:249
|
2154 |
msgid "Block Access to Debug Log File"
|
2155 |
msgstr ""
|
2156 |
|
2157 |
+
#: admin/wp-security-firewall-menu.php:257
|
2158 |
msgid "Block Access to debug.log File"
|
2159 |
msgstr ""
|
2160 |
|
2161 |
+
#: admin/wp-security-firewall-menu.php:260
|
2162 |
msgid "Check this if you want to block access to the debug.log file that WordPress creates when debug logging is enabled."
|
2163 |
msgstr ""
|
2164 |
|
2165 |
+
#: admin/wp-security-firewall-menu.php:264
|
2166 |
msgid "WordPress has an option to turn on the debug logging to a file located in wp-content/debug.log. This file may contain sensitive information."
|
2167 |
msgstr ""
|
2168 |
|
2169 |
+
#: admin/wp-security-firewall-menu.php:265
|
2170 |
msgid "Using this optoin will block external access to this file. You can still access this file by logging into your site via FTP"
|
2171 |
msgstr ""
|
2172 |
|
2173 |
+
#: admin/wp-security-firewall-menu.php:273
|
2174 |
msgid "Save Basic Firewall Settings"
|
2175 |
msgstr ""
|
2176 |
|
2177 |
+
#: admin/wp-security-firewall-menu.php:345
|
2178 |
msgid "You have successfully saved the Additional Firewall Protection configuration"
|
2179 |
msgstr ""
|
2180 |
|
2181 |
+
#: admin/wp-security-firewall-menu.php:359
|
2182 |
msgid "Additional Firewall Protection"
|
2183 |
msgstr ""
|
2184 |
|
2185 |
+
#: admin/wp-security-firewall-menu.php:363
|
2186 |
msgid "Due to the nature of the code being inserted to the .htaccess file, this feature may break some functionality for certain plugins and you are therefore advised to take a %s of .htaccess before applying this configuration."
|
2187 |
msgstr ""
|
2188 |
|
2189 |
+
#: admin/wp-security-firewall-menu.php:365
|
2190 |
msgid "This feature allows you to activate more advanced firewall settings to your site."
|
2191 |
msgstr ""
|
2192 |
|
2193 |
+
#: admin/wp-security-firewall-menu.php:366
|
2194 |
msgid "The advanced firewall rules are applied via the insertion of special code to your currently active .htaccess file."
|
2195 |
msgstr ""
|
2196 |
|
2197 |
+
#: admin/wp-security-firewall-menu.php:375
|
2198 |
msgid "Listing of Directory Contents"
|
2199 |
msgstr ""
|
2200 |
|
2201 |
+
#: admin/wp-security-firewall-menu.php:384
|
2202 |
#: classes/grade-system/wp-security-feature-item-manager.php:97
|
2203 |
msgid "Disable Index Views"
|
2204 |
msgstr ""
|
2205 |
|
2206 |
+
#: admin/wp-security-firewall-menu.php:387
|
2207 |
msgid "Check this if you want to disable directory and file listing."
|
2208 |
msgstr ""
|
2209 |
|
2210 |
+
#: admin/wp-security-firewall-menu.php:392
|
2211 |
msgid "By default, an Apache server will allow the listing of the contents of a directory if it doesn't contain an index.php file."
|
2212 |
msgstr ""
|
2213 |
|
2214 |
+
#: admin/wp-security-firewall-menu.php:394
|
2215 |
msgid "This feature will prevent the listing of contents for all directories."
|
2216 |
msgstr ""
|
2217 |
|
2218 |
+
#: admin/wp-security-firewall-menu.php:396
|
2219 |
msgid "NOTE: In order for this feature to work \"AllowOverride\" of the Indexes directive must be enabled in your httpd.conf file. Ask your hosting provider to check this if you don't have access to httpd.conf"
|
2220 |
msgstr ""
|
2221 |
|
2222 |
+
#: admin/wp-security-firewall-menu.php:405
|
2223 |
msgid "Trace and Track"
|
2224 |
msgstr ""
|
2225 |
|
2226 |
+
#: admin/wp-security-firewall-menu.php:414
|
2227 |
#: classes/grade-system/wp-security-feature-item-manager.php:98
|
2228 |
msgid "Disable Trace and Track"
|
2229 |
msgstr ""
|
2230 |
|
2231 |
+
#: admin/wp-security-firewall-menu.php:417
|
2232 |
msgid "Check this if you want to disable trace and track."
|
2233 |
msgstr ""
|
2234 |
|
2235 |
+
#: admin/wp-security-firewall-menu.php:422
|
2236 |
msgid "HTTP Trace attack (XST) can be used to return header requests and grab cookies and other information."
|
2237 |
msgstr ""
|
2238 |
|
2239 |
+
#: admin/wp-security-firewall-menu.php:424
|
2240 |
msgid "This hacking technique is usually used together with cross site scripting attacks (XSS)."
|
2241 |
msgstr ""
|
2242 |
|
2243 |
+
#: admin/wp-security-firewall-menu.php:426
|
2244 |
msgid "Disabling trace and track on your site will help prevent HTTP Trace attacks."
|
2245 |
msgstr ""
|
2246 |
|
2247 |
+
#: admin/wp-security-firewall-menu.php:435
|
2248 |
msgid "Proxy Comment Posting"
|
2249 |
msgstr ""
|
2250 |
|
2251 |
+
#: admin/wp-security-firewall-menu.php:445
|
2252 |
msgid "Forbid Proxy Comment Posting"
|
2253 |
msgstr ""
|
2254 |
|
2255 |
+
#: admin/wp-security-firewall-menu.php:448
|
2256 |
msgid "Check this if you want to forbid proxy comment posting."
|
2257 |
msgstr ""
|
2258 |
|
2259 |
+
#: admin/wp-security-firewall-menu.php:453
|
2260 |
msgid "This setting will deny any requests that use a proxy server when posting comments."
|
2261 |
msgstr ""
|
2262 |
|
2263 |
+
#: admin/wp-security-firewall-menu.php:454
|
2264 |
msgid "By forbidding proxy comments you are in effect eliminating some SPAM and other proxy requests."
|
2265 |
msgstr ""
|
2266 |
|
2267 |
+
#: admin/wp-security-firewall-menu.php:463
|
2268 |
msgid "Bad Query Strings"
|
2269 |
msgstr ""
|
2270 |
|
2271 |
+
#: admin/wp-security-firewall-menu.php:473
|
2272 |
msgid "Deny Bad Query Strings"
|
2273 |
msgstr ""
|
2274 |
|
2275 |
+
#: admin/wp-security-firewall-menu.php:476
|
2276 |
msgid "This will help protect you against malicious queries via XSS."
|
2277 |
msgstr ""
|
2278 |
|
2279 |
+
#: admin/wp-security-firewall-menu.php:481
|
2280 |
msgid "This feature will write rules in your .htaccess file to prevent malicious string attacks on your site using XSS."
|
2281 |
msgstr ""
|
2282 |
|
2283 |
+
#: admin/wp-security-firewall-menu.php:482
|
2284 |
msgid "NOTE: Some of these strings might be used for plugins or themes and hence this might break some functionality."
|
2285 |
msgstr ""
|
2286 |
|
2287 |
+
#: admin/wp-security-firewall-menu.php:483
|
2288 |
+
#: admin/wp-security-firewall-menu.php:513
|
2289 |
msgid "You are therefore strongly advised to take a backup of your active .htaccess file before applying this feature."
|
2290 |
msgstr ""
|
2291 |
|
2292 |
+
#: admin/wp-security-firewall-menu.php:492
|
2293 |
#: classes/grade-system/wp-security-feature-item-manager.php:101
|
2294 |
msgid "Advanced Character String Filter"
|
2295 |
msgstr ""
|
2296 |
|
2297 |
+
#: admin/wp-security-firewall-menu.php:502
|
2298 |
msgid "Enable Advanced Character String Filter"
|
2299 |
msgstr ""
|
2300 |
|
2301 |
+
#: admin/wp-security-firewall-menu.php:505
|
2302 |
msgid "This will block bad character matches from XSS."
|
2303 |
msgstr ""
|
2304 |
|
2305 |
+
#: admin/wp-security-firewall-menu.php:510
|
2306 |
msgid "This is an advanced character string filter to prevent malicious string attacks on your site coming from Cross Site Scripting (XSS)."
|
2307 |
msgstr ""
|
2308 |
|
2309 |
+
#: admin/wp-security-firewall-menu.php:511
|
2310 |
msgid "This setting matches for common malicious string patterns and exploits and will produce a 403 error for the hacker attempting the query."
|
2311 |
msgstr ""
|
2312 |
|
2313 |
+
#: admin/wp-security-firewall-menu.php:512
|
2314 |
msgid "NOTE: Some strings for this setting might break some functionality."
|
2315 |
msgstr ""
|
2316 |
|
2317 |
+
#: admin/wp-security-firewall-menu.php:521
|
2318 |
msgid "Save Additional Firewall Settings"
|
2319 |
msgstr ""
|
2320 |
|
2321 |
+
#: admin/wp-security-firewall-menu.php:564
|
2322 |
msgid "You have successfully saved the 5G/6G Firewall Protection configuration"
|
2323 |
msgstr ""
|
2324 |
|
2325 |
+
#: admin/wp-security-firewall-menu.php:579
|
2326 |
msgid "This feature allows you to activate the %s (or legacy %s) firewall security protection rules designed and produced by %s."
|
2327 |
msgstr ""
|
2328 |
|
2329 |
+
#: admin/wp-security-firewall-menu.php:580
|
2330 |
msgid "The 6G Blacklist is updated and improved version of 5G Blacklist. If you have 5G Blacklist active, you might consider activating 6G Blacklist instead."
|
2331 |
msgstr ""
|
2332 |
|
2333 |
+
#: admin/wp-security-firewall-menu.php:581
|
2334 |
msgid "The 6G Blacklist is a simple, flexible blacklist that helps reduce the number of malicious URL requests that hit your website."
|
2335 |
msgstr ""
|
2336 |
|
2337 |
+
#: admin/wp-security-firewall-menu.php:582
|
2338 |
msgid "The added advantage of applying the 6G firewall to your site is that it has been tested and confirmed by the people at PerishablePress.com to be an optimal and least disruptive set of .htaccess security rules for general WP sites running on an Apache server or similar."
|
2339 |
msgstr ""
|
2340 |
|
2341 |
+
#: admin/wp-security-firewall-menu.php:583
|
2342 |
msgid "Therefore the 6G firewall rules should not have any impact on your site's general functionality but if you wish you can take a %s of your .htaccess file before proceeding."
|
2343 |
msgstr ""
|
2344 |
|
2345 |
+
#: admin/wp-security-firewall-menu.php:589
|
2346 |
msgid "6G Blacklist/Firewall Settings"
|
2347 |
msgstr ""
|
2348 |
|
2349 |
+
#: admin/wp-security-firewall-menu.php:601
|
2350 |
msgid "Enable 6G Firewall Protection"
|
2351 |
msgstr ""
|
2352 |
|
2353 |
+
#: admin/wp-security-firewall-menu.php:604
|
2354 |
msgid "Check this if you want to apply the 6G Blacklist firewall protection from perishablepress.com to your site."
|
2355 |
msgstr ""
|
2356 |
|
2357 |
+
#: admin/wp-security-firewall-menu.php:608
|
2358 |
msgid "This setting will implement the 6G security firewall protection mechanisms on your site which include the following things:"
|
2359 |
msgstr ""
|
2360 |
|
2361 |
+
#: admin/wp-security-firewall-menu.php:609
|
2362 |
+
#: admin/wp-security-firewall-menu.php:627
|
2363 |
msgid "1) Block forbidden characters commonly used in exploitative attacks."
|
2364 |
msgstr ""
|
2365 |
|
2366 |
+
#: admin/wp-security-firewall-menu.php:610
|
2367 |
+
#: admin/wp-security-firewall-menu.php:628
|
2368 |
msgid "2) Block malicious encoded URL characters such as the \".css(\" string."
|
2369 |
msgstr ""
|
2370 |
|
2371 |
+
#: admin/wp-security-firewall-menu.php:611
|
2372 |
+
#: admin/wp-security-firewall-menu.php:629
|
2373 |
msgid "3) Guard against the common patterns and specific exploits in the root portion of targeted URLs."
|
2374 |
msgstr ""
|
2375 |
|
2376 |
+
#: admin/wp-security-firewall-menu.php:612
|
2377 |
+
#: admin/wp-security-firewall-menu.php:630
|
2378 |
msgid "4) Stop attackers from manipulating query strings by disallowing illicit characters."
|
2379 |
msgstr ""
|
2380 |
|
2381 |
+
#: admin/wp-security-firewall-menu.php:613
|
2382 |
+
#: admin/wp-security-firewall-menu.php:631
|
2383 |
msgid "....and much more."
|
2384 |
msgstr ""
|
2385 |
|
2386 |
+
#: admin/wp-security-firewall-menu.php:619
|
2387 |
msgid "Enable legacy 5G Firewall Protection"
|
2388 |
msgstr ""
|
2389 |
|
2390 |
+
#: admin/wp-security-firewall-menu.php:622
|
2391 |
msgid "Check this if you want to apply the 5G Blacklist firewall protection from perishablepress.com to your site."
|
2392 |
msgstr ""
|
2393 |
|
2394 |
+
#: admin/wp-security-firewall-menu.php:626
|
2395 |
msgid "This setting will implement the 5G security firewall protection mechanisms on your site which include the following things:"
|
2396 |
msgstr ""
|
2397 |
|
2398 |
+
#: admin/wp-security-firewall-menu.php:637
|
2399 |
msgid "Save 5G/6G Firewall Settings"
|
2400 |
msgstr ""
|
2401 |
|
2402 |
+
#: admin/wp-security-firewall-menu.php:668
|
2403 |
msgid "The Internet bot settings were successfully saved"
|
2404 |
msgstr ""
|
2405 |
|
2406 |
+
#: admin/wp-security-firewall-menu.php:672
|
2407 |
msgid "Internet Bot Settings"
|
2408 |
msgstr ""
|
2409 |
|
2410 |
+
#: admin/wp-security-firewall-menu.php:678
|
2411 |
msgid "What is an Internet Bot"
|
2412 |
msgstr ""
|
2413 |
|
2414 |
+
#: admin/wp-security-firewall-menu.php:679
|
2415 |
msgid "%s?"
|
2416 |
msgstr ""
|
2417 |
|
2418 |
+
#: admin/wp-security-firewall-menu.php:681
|
2419 |
msgid "A bot is a piece of software which runs on the Internet and performs automatic tasks. For example when Google indexes your pages it uses automatic bots to achieve this task."
|
2420 |
msgstr ""
|
2421 |
|
2422 |
+
#: admin/wp-security-firewall-menu.php:682
|
2423 |
msgid "A lot of bots are legitimate and non-malicous but not all bots are good and often you will find some which try to impersonate legitimate bots such as \"Googlebot\" but in reality they have nohing to do with Google at all."
|
2424 |
msgstr ""
|
2425 |
|
2426 |
+
#: admin/wp-security-firewall-menu.php:683
|
2427 |
msgid "Although most of the bots out there are relatively harmless sometimes website owners want to have more control over which bots they allow into their site."
|
2428 |
msgstr ""
|
2429 |
|
2430 |
+
#: admin/wp-security-firewall-menu.php:684
|
2431 |
msgid "This feature allows you to block bots which are impersonating as a Googlebot but actually aren't. (In other words they are fake Google bots)"
|
2432 |
msgstr ""
|
2433 |
|
2434 |
+
#: admin/wp-security-firewall-menu.php:685
|
2435 |
msgid "Googlebots have a unique indentity which cannot easily be forged and this feature will indentify any fake Google bots and block them from reading your site's pages."
|
2436 |
msgstr ""
|
2437 |
|
2438 |
+
#: admin/wp-security-firewall-menu.php:691
|
2439 |
msgid "<strong>Attention</strong>: Sometimes non-malicious Internet organizations might have bots which impersonate as a \"Googlebot\"."
|
2440 |
msgstr ""
|
2441 |
|
2442 |
+
#: admin/wp-security-firewall-menu.php:692
|
2443 |
msgid "Just be aware that if you activate this feature the plugin will block all bots which use the \"Googlebot\" string in their User Agent information but are NOT officially from Google (irrespective whether they are malicious or not)."
|
2444 |
msgstr ""
|
2445 |
|
2446 |
+
#: admin/wp-security-firewall-menu.php:693
|
2447 |
msgid "All other bots from other organizations such as \"Yahoo\", \"Bing\" etc will not be affected by this feature."
|
2448 |
msgstr ""
|
2449 |
|
2450 |
+
#: admin/wp-security-firewall-menu.php:699
|
2451 |
+
#: admin/wp-security-firewall-menu.php:709
|
2452 |
#: classes/grade-system/wp-security-feature-item-manager.php:103
|
2453 |
msgid "Block Fake Googlebots"
|
2454 |
msgstr ""
|
2455 |
|
2456 |
+
#: admin/wp-security-firewall-menu.php:712
|
2457 |
msgid "Check this if you want to block all fake Googlebots."
|
2458 |
msgstr ""
|
2459 |
|
2460 |
+
#: admin/wp-security-firewall-menu.php:716
|
2461 |
msgid "This feature will check if the User Agent information of a bot contains the string \"Googlebot\"."
|
2462 |
msgstr ""
|
2463 |
|
2464 |
+
#: admin/wp-security-firewall-menu.php:717
|
2465 |
msgid "It will then perform a few tests to verify if the bot is legitimately from Google and if so it will allow the bot to proceed."
|
2466 |
msgstr ""
|
2467 |
|
2468 |
+
#: admin/wp-security-firewall-menu.php:718
|
2469 |
msgid "If the bot fails the checks then the plugin will mark it as being a fake Googlebot and it will block it"
|
2470 |
msgstr ""
|
2471 |
|
2472 |
+
#: admin/wp-security-firewall-menu.php:725
|
2473 |
msgid "Save Internet Bot Settings"
|
2474 |
msgstr ""
|
2475 |
|
2476 |
+
#: admin/wp-security-firewall-menu.php:762
|
2477 |
+
#: admin/wp-security-firewall-menu.php:784
|
2478 |
#: classes/grade-system/wp-security-feature-item-manager.php:32
|
2479 |
msgid "Prevent Image Hotlinking"
|
2480 |
msgstr ""
|
2481 |
|
2482 |
+
#: admin/wp-security-firewall-menu.php:765
|
2483 |
msgid "A Hotlink is where someone displays an image on their site which is actually located on your site by using a direct link to the source of the image on your server."
|
2484 |
msgstr ""
|
2485 |
|
2486 |
+
#: admin/wp-security-firewall-menu.php:766
|
2487 |
msgid "Due to the fact that the image being displayed on the other person's site is coming from your server, this can cause leaking of bandwidth and resources for you because your server has to present this image for the people viewing it on someone elses's site."
|
2488 |
msgstr ""
|
2489 |
|
2490 |
+
#: admin/wp-security-firewall-menu.php:767
|
2491 |
msgid "This feature will prevent people from directly hotlinking images from your site's pages by writing some directives in your .htaccess file."
|
2492 |
msgstr ""
|
2493 |
|
2494 |
+
#: admin/wp-security-firewall-menu.php:772
|
2495 |
msgid "Prevent Hotlinking"
|
2496 |
msgstr ""
|
2497 |
|
2498 |
+
#: admin/wp-security-firewall-menu.php:787
|
2499 |
msgid "Check this if you want to prevent hotlinking to images on your site."
|
2500 |
msgstr ""
|
2501 |
|
2502 |
+
#: admin/wp-security-firewall-menu.php:807
|
2503 |
msgid "Nonce check failed for delete all 404 event logs operation!"
|
2504 |
msgstr ""
|
2505 |
|
2506 |
+
#: admin/wp-security-firewall-menu.php:818
|
2507 |
msgid "404 Detection Feature - Delete all 404 event logs operation failed!"
|
2508 |
msgstr ""
|
2509 |
|
2510 |
+
#: admin/wp-security-firewall-menu.php:822
|
2511 |
msgid "All 404 event logs were deleted from the DB successfully!"
|
2512 |
msgstr ""
|
2513 |
|
2514 |
+
#: admin/wp-security-firewall-menu.php:846
|
2515 |
#: admin/wp-security-user-login-menu.php:114
|
2516 |
msgid "You entered a non numeric value for the lockout time length field. It has been set to the default value."
|
2517 |
msgstr ""
|
2518 |
|
2519 |
+
#: admin/wp-security-firewall-menu.php:852
|
2520 |
msgid "You entered an incorrect format for the \"Redirect URL\" field. It has been set to the default value."
|
2521 |
msgstr ""
|
2522 |
|
2523 |
+
#: admin/wp-security-firewall-menu.php:887
|
2524 |
msgid "404 Detection Configuration"
|
2525 |
msgstr ""
|
2526 |
|
2527 |
+
#: admin/wp-security-firewall-menu.php:890
|
2528 |
msgid "A 404 or Not Found error occurs when somebody tries to access a non-existent page on your website."
|
2529 |
msgstr ""
|
2530 |
|
2531 |
+
#: admin/wp-security-firewall-menu.php:891
|
2532 |
msgid "Typically, most 404 errors happen quite innocently when people have mis-typed a URL or used an old link to page which doesn't exist anymore."
|
2533 |
msgstr ""
|
2534 |
|
2535 |
+
#: admin/wp-security-firewall-menu.php:892
|
2536 |
msgid "However, in some cases you may find many repeated 404 errors which occur in a relatively short space of time and from the same IP address which are all attempting to access a variety of non-existent page URLs."
|
2537 |
msgstr ""
|
2538 |
|
2539 |
+
#: admin/wp-security-firewall-menu.php:893
|
2540 |
msgid "Such behaviour can mean that a hacker might be trying to find a particular page or URL for sinister reasons."
|
2541 |
msgstr ""
|
2542 |
|
2543 |
+
#: admin/wp-security-firewall-menu.php:894
|
2544 |
msgid "This feature allows you to monitor all 404 events which occur on your site, and it also gives you the option of blocking IP addresses for a configured length of time."
|
2545 |
msgstr ""
|
2546 |
|
2547 |
+
#: admin/wp-security-firewall-menu.php:895
|
2548 |
msgid "If you want to temporarily block or blacklist an IP address, simply click the \"Temp Block\" or \"Blacklist IP\" link for the applicable IP entry in the \"404 Event Logs\" table below."
|
2549 |
msgstr ""
|
2550 |
|
2551 |
+
#: admin/wp-security-firewall-menu.php:902
|
2552 |
msgid "This addon allows you to automatically and permanently block IP addresses based on how many 404 errors they produce."
|
2553 |
msgstr ""
|
2554 |
|
2555 |
+
#: admin/wp-security-firewall-menu.php:910
|
2556 |
msgid "404 Detection Options"
|
2557 |
msgstr ""
|
2558 |
|
2559 |
+
#: admin/wp-security-firewall-menu.php:922
|
2560 |
msgid "Enable 404 IP Detection and Lockout"
|
2561 |
msgstr ""
|
2562 |
|
2563 |
+
#: admin/wp-security-firewall-menu.php:925
|
2564 |
msgid "Check this if you want to enable the lockout of selected IP addresses."
|
2565 |
msgstr ""
|
2566 |
|
2567 |
+
#: admin/wp-security-firewall-menu.php:930
|
2568 |
msgid "When you enable this checkbox, all 404 events on your site will be logged in the table below. You can monitor these events and select some IP addresses listed in the table below and block them for a specified amount of time. All IP addresses you select to be blocked from the \"404 Event Logs\" table section will be unable to access your site during the time specified."
|
2569 |
msgstr ""
|
2570 |
|
2571 |
+
#: admin/wp-security-firewall-menu.php:938
|
2572 |
msgid "Enable 404 Event Logging"
|
2573 |
msgstr ""
|
2574 |
|
2575 |
+
#: admin/wp-security-firewall-menu.php:941
|
2576 |
msgid "Check this if you want to enable the logging of 404 events"
|
2577 |
msgstr ""
|
2578 |
|
2579 |
+
#: admin/wp-security-firewall-menu.php:946
|
2580 |
msgid "Time Length of 404 Lockout (min)"
|
2581 |
msgstr ""
|
2582 |
|
2583 |
+
#: admin/wp-security-firewall-menu.php:948
|
2584 |
msgid "Set the length of time for which a blocked IP address will be prevented from visiting your site"
|
2585 |
msgstr ""
|
2586 |
|
2587 |
+
#: admin/wp-security-firewall-menu.php:953
|
2588 |
msgid "You can lock any IP address which is recorded in the \"404 Event Logs\" table section below."
|
2589 |
msgstr ""
|
2590 |
|
2591 |
+
#: admin/wp-security-firewall-menu.php:955
|
2592 |
msgid "To temporarily lock an IP address, hover over the ID column and click the \"Temp Block\" link for the applicable IP entry."
|
2593 |
msgstr ""
|
2594 |
|
2595 |
+
#: admin/wp-security-firewall-menu.php:962
|
2596 |
msgid "404 Lockout Redirect URL"
|
2597 |
msgstr ""
|
2598 |
|
2599 |
+
#: admin/wp-security-firewall-menu.php:964
|
2600 |
msgid "A blocked visitor will be automatically redirected to this URL."
|
2601 |
msgstr ""
|
2602 |
|
2603 |
+
#: admin/wp-security-firewall-menu.php:973
|
2604 |
msgid "404 Event Logs"
|
2605 |
msgstr ""
|
2606 |
|
2607 |
+
#: admin/wp-security-firewall-menu.php:995
|
2608 |
+
#: admin/wp-security-firewall-menu.php:1004
|
2609 |
#: admin/wp-security-user-login-menu.php:439
|
2610 |
#: admin/wp-security-user-login-menu.php:448
|
2611 |
#: admin/wp-security-user-login-menu.php:593
|
2613 |
msgid "Export to CSV"
|
2614 |
msgstr ""
|
2615 |
|
2616 |
+
#: admin/wp-security-firewall-menu.php:1001
|
2617 |
#: admin/wp-security-user-login-menu.php:445
|
2618 |
#: admin/wp-security-user-login-menu.php:599
|
2619 |
msgid "Click this button if you wish to download this log in CSV format."
|
2620 |
msgstr ""
|
2621 |
|
2622 |
+
#: admin/wp-security-firewall-menu.php:1008
|
2623 |
+
#: admin/wp-security-firewall-menu.php:1017
|
2624 |
msgid "Delete All 404 Event Logs"
|
2625 |
msgstr ""
|
2626 |
|
2627 |
+
#: admin/wp-security-firewall-menu.php:1014
|
2628 |
msgid "Click this button if you wish to purge all 404 event logs from the DB."
|
2629 |
msgstr ""
|
2630 |
|
2631 |
+
#: admin/wp-security-firewall-menu.php:1073
|
2632 |
msgid "Custom .htaccess Rules Settings"
|
2633 |
msgstr ""
|
2634 |
|
2635 |
+
#: admin/wp-security-firewall-menu.php:1080
|
2636 |
msgid "This feature can be used to apply your own custom .htaccess rules and directives."
|
2637 |
msgstr ""
|
2638 |
|
2639 |
+
#: admin/wp-security-firewall-menu.php:1081
|
2640 |
msgid "It is useful for when you want to tweak our existing firewall rules or when you want to add your own."
|
2641 |
msgstr ""
|
2642 |
|
2643 |
+
#: admin/wp-security-firewall-menu.php:1082
|
2644 |
msgid "NOTE: This feature can only used if your site is hosted in an apache or similar web server."
|
2645 |
msgstr ""
|
2646 |
|
2647 |
+
#: admin/wp-security-firewall-menu.php:1088
|
2648 |
msgid "<strong>Warning</strong>: Only use this feature if you know what you are doing."
|
2649 |
msgstr ""
|
2650 |
|
2651 |
+
#: admin/wp-security-firewall-menu.php:1089
|
2652 |
msgid "Incorrect .htaccess rules or directives can break or prevent access to your site."
|
2653 |
msgstr ""
|
2654 |
|
2655 |
+
#: admin/wp-security-firewall-menu.php:1090
|
2656 |
msgid "It is your responsibility to ensure that you are entering the correct code!"
|
2657 |
msgstr ""
|
2658 |
|
2659 |
+
#: admin/wp-security-firewall-menu.php:1091
|
2660 |
msgid "If you break your site you will need to access your server via FTP or something similar and then edit your .htaccess file and delete the changes you made."
|
2661 |
msgstr ""
|
2662 |
|
2663 |
+
#: admin/wp-security-firewall-menu.php:1097
|
2664 |
msgid "Custom .htaccess Rules"
|
2665 |
msgstr ""
|
2666 |
|
2667 |
+
#: admin/wp-security-firewall-menu.php:1101
|
2668 |
msgid "Enable Custom .htaccess Rules"
|
2669 |
msgstr ""
|
2670 |
|
2671 |
+
#: admin/wp-security-firewall-menu.php:1104
|
2672 |
msgid "Check this if you want to enable custom rules entered in the text box below"
|
2673 |
msgstr ""
|
2674 |
|
2675 |
+
#: admin/wp-security-firewall-menu.php:1108
|
2676 |
msgid "Place custom rules at the top"
|
2677 |
msgstr ""
|
2678 |
|
2679 |
+
#: admin/wp-security-firewall-menu.php:1111
|
2680 |
msgid "Check this if you want to place your custom rules at the beginning of all the rules applied by this plugin"
|
2681 |
msgstr ""
|
2682 |
|
2683 |
+
#: admin/wp-security-firewall-menu.php:1115
|
2684 |
msgid "Enter Custom .htaccess Rules:"
|
2685 |
msgstr ""
|
2686 |
|
2687 |
+
#: admin/wp-security-firewall-menu.php:1119
|
2688 |
msgid "Enter your custom .htaccess rules/directives."
|
2689 |
msgstr ""
|
2690 |
|
2691 |
+
#: admin/wp-security-firewall-menu.php:1124
|
2692 |
msgid "Save Custom Rules"
|
2693 |
msgstr ""
|
2694 |
|
2855 |
msgid "Nonce check failed for force user logout operation!"
|
2856 |
msgstr ""
|
2857 |
|
2858 |
+
#: admin/wp-security-list-logged-in-users.php:96
|
2859 |
msgid "The selected user was logged out successfully!"
|
2860 |
msgstr ""
|
2861 |
|
3148 |
msgid "Page"
|
3149 |
msgstr ""
|
3150 |
|
3151 |
+
#: admin/wp-security-settings-menu.php:155
|
3152 |
+
msgid "Follow us"
|
3153 |
+
msgstr ""
|
3154 |
+
|
3155 |
+
#: admin/wp-security-settings-menu.php:155
|
3156 |
+
msgid "on Twitter, Google+ or via Email to stay up to date about the new security features of this plugin."
|
3157 |
+
msgstr ""
|
3158 |
+
|
3159 |
#: admin/wp-security-settings-menu.php:159
|
3160 |
msgid "WP Security Plugin"
|
3161 |
msgstr ""
|
3197 |
msgstr ""
|
3198 |
|
3199 |
#: admin/wp-security-settings-menu.php:192
|
3200 |
+
#: admin/wp-security-settings-menu.php:202
|
3201 |
msgid "Disable All Firewall Rules"
|
3202 |
msgstr ""
|
3203 |
|
3554 |
msgstr ""
|
3555 |
|
3556 |
#: admin/wp-security-spam-menu.php:128
|
3557 |
+
msgid "This feature will add a captcha field in the WordPress comments form."
|
3558 |
msgstr ""
|
3559 |
|
3560 |
#: admin/wp-security-spam-menu.php:129
|
3782 |
msgstr ""
|
3783 |
|
3784 |
#: admin/wp-security-spam-menu.php:530
|
3785 |
+
msgid "Adding a captcha field in this form is a simple way of greatly reducing SPAM submitted from bots."
|
3786 |
msgstr ""
|
3787 |
|
3788 |
#: admin/wp-security-spam-menu.php:540
|
3990 |
msgid "Account Login Name"
|
3991 |
msgstr ""
|
3992 |
|
3993 |
+
#: admin/wp-security-user-accounts-menu.php:338
|
3994 |
+
msgid "Edit User"
|
3995 |
+
msgstr ""
|
3996 |
+
|
3997 |
#: admin/wp-security-user-login-menu.php:29
|
3998 |
#: admin/wp-security-user-login-menu.php:418
|
3999 |
msgid "Failed Login Records"
|
4203 |
msgstr ""
|
4204 |
|
4205 |
#: admin/wp-security-user-login-menu.php:567
|
4206 |
+
msgid "The information below can be handy if you need to do security investigations because it will show you the last 100 recent login events by username, IP address and time/date."
|
4207 |
msgstr ""
|
4208 |
|
4209 |
#: admin/wp-security-user-login-menu.php:628
|
4460 |
msgstr ""
|
4461 |
|
4462 |
#: classes/wp-security-captcha.php:42
|
4463 |
+
#: classes/wp-security-general-init-tasks.php:389
|
4464 |
msgid "Please enter an answer in digits:"
|
4465 |
msgstr ""
|
4466 |
|
4544 |
msgid "twenty"
|
4545 |
msgstr ""
|
4546 |
|
4547 |
+
#: classes/wp-security-file-scan.php:88
|
4548 |
msgid "All In One WP Security - File change detected!"
|
4549 |
msgstr ""
|
4550 |
|
4551 |
+
#: classes/wp-security-file-scan.php:90
|
4552 |
msgid "A file change was detected on your system for site URL"
|
4553 |
msgstr ""
|
4554 |
|
4555 |
+
#: classes/wp-security-file-scan.php:90
|
4556 |
msgid ". Scan was generated on"
|
4557 |
msgstr ""
|
4558 |
|
4559 |
+
#: classes/wp-security-file-scan.php:91
|
4560 |
msgid "A summary of the scan results is shown below:"
|
4561 |
msgstr ""
|
4562 |
|
4563 |
+
#: classes/wp-security-file-scan.php:94
|
4564 |
msgid "Login to your site to view the scan details."
|
4565 |
msgstr ""
|
4566 |
|
4567 |
+
#: classes/wp-security-file-scan.php:334
|
4568 |
msgid "The following files were added to your host"
|
4569 |
msgstr ""
|
4570 |
|
4571 |
+
#: classes/wp-security-file-scan.php:336
|
4572 |
+
#: classes/wp-security-file-scan.php:345
|
4573 |
+
#: classes/wp-security-file-scan.php:355
|
4574 |
msgid "modified on: "
|
4575 |
msgstr ""
|
4576 |
|
4577 |
+
#: classes/wp-security-file-scan.php:343
|
4578 |
msgid "The following files were removed from your host"
|
4579 |
msgstr ""
|
4580 |
|
4581 |
+
#: classes/wp-security-file-scan.php:353
|
4582 |
msgid "The following files were changed on your host"
|
4583 |
msgstr ""
|
4584 |
|
4585 |
+
#: classes/wp-security-general-init-tasks.php:412
|
4586 |
+
#: classes/wp-security-general-init-tasks.php:500
|
4587 |
+
#: classes/wp-security-general-init-tasks.php:535
|
4588 |
+
#: classes/wp-security-user-login.php:84
|
4589 |
+
#: classes/wp-security-user-registration.php:75
|
|
|
4590 |
msgid "<strong>ERROR</strong>: Your answer was incorrect - please try again."
|
4591 |
msgstr ""
|
4592 |
|
4593 |
+
#: classes/wp-security-general-init-tasks.php:447
|
4594 |
msgid "Enter something special:"
|
4595 |
msgstr ""
|
4596 |
|
4597 |
+
#: classes/wp-security-general-init-tasks.php:473
|
4598 |
msgid "Error: You entered an incorrect CAPTCHA answer. Please go back and try again."
|
4599 |
msgstr ""
|
4600 |
|
4601 |
+
#: classes/wp-security-general-init-tasks.php:519
|
4602 |
msgid "Your CAPTCHA answer was incorrect - please try again."
|
4603 |
msgstr ""
|
4604 |
|
4605 |
+
#: classes/wp-security-general-init-tasks.php:528
|
4606 |
msgid "<strong>ERROR</strong>: Your IP address is currently locked please contact the administrator!"
|
4607 |
msgstr ""
|
4608 |
|
4609 |
+
#: classes/wp-security-general-init-tasks.php:565
|
4610 |
msgid "Would you like All In One WP Security & Firewall to re-insert the security rules in your .htaccess file which were cleared when you deactivated the plugin?"
|
4611 |
msgstr ""
|
4612 |
|
4613 |
+
#: classes/wp-security-general-init-tasks.php:565
|
4614 |
+
msgid "Yes"
|
4615 |
+
msgstr ""
|
4616 |
+
|
4617 |
+
#: classes/wp-security-general-init-tasks.php:565
|
4618 |
+
msgid "No"
|
4619 |
+
msgstr ""
|
4620 |
+
|
4621 |
+
#: classes/wp-security-general-init-tasks.php:582
|
4622 |
msgid "Your registration is pending approval."
|
4623 |
msgstr ""
|
4624 |
|
4626 |
msgid "Not available."
|
4627 |
msgstr ""
|
4628 |
|
4629 |
+
#: classes/wp-security-user-login.php:46
|
4630 |
msgid "<strong>ERROR</strong>: Access from your IP address has been blocked for security reasons. Please contact the administrator."
|
4631 |
msgstr ""
|
4632 |
|
4633 |
+
#: classes/wp-security-user-login.php:55
|
4634 |
msgid "Service Temporarily Unavailable"
|
4635 |
msgstr ""
|
4636 |
|
4637 |
+
#: classes/wp-security-user-login.php:110
|
4638 |
msgid "<strong>ACCOUNT PENDING</strong>: Your account is currently not active. An administrator needs to activate your account before you can login."
|
4639 |
msgstr ""
|
4640 |
|
4641 |
+
#: classes/wp-security-user-login.php:178
|
4642 |
msgid "<strong>ERROR</strong>: Invalid login credentials."
|
4643 |
msgstr ""
|
4644 |
|
4645 |
+
#: classes/wp-security-user-login.php:301
|
4646 |
msgid "Site Lockout Notification"
|
4647 |
msgstr ""
|
4648 |
|
4649 |
+
#: classes/wp-security-user-login.php:302
|
4650 |
msgid "A lockdown event has occurred due to too many failed login attempts or invalid username:"
|
4651 |
msgstr ""
|
4652 |
|
4653 |
+
#: classes/wp-security-user-login.php:303
|
4654 |
msgid "Username:"
|
4655 |
msgstr ""
|
4656 |
|
4657 |
+
#: classes/wp-security-user-login.php:304
|
4658 |
msgid "IP Address:"
|
4659 |
msgstr ""
|
4660 |
|
4661 |
+
#: classes/wp-security-user-login.php:305
|
4662 |
msgid "IP Range:"
|
4663 |
msgstr ""
|
4664 |
|
4665 |
+
#: classes/wp-security-user-login.php:306
|
4666 |
msgid "Log into your site's WordPress administration panel to see the duration of the lockout or to unlock the user."
|
4667 |
msgstr ""
|
4668 |
|
4669 |
+
#: classes/wp-security-user-login.php:410
|
4670 |
msgid "Unlock Request Notification"
|
4671 |
msgstr ""
|
4672 |
|
4673 |
+
#: classes/wp-security-user-login.php:412
|
4674 |
msgid "You have requested for the account with email address %s to be unlocked. Please click the link below to unlock your account:"
|
4675 |
msgstr ""
|
4676 |
|
4677 |
+
#: classes/wp-security-user-login.php:413
|
4678 |
msgid "Unlock link: %s"
|
4679 |
msgstr ""
|
4680 |
|
4681 |
+
#: classes/wp-security-user-login.php:414
|
4682 |
msgid "After clicking the above link you will be able to login to the WordPress administration panel."
|
4683 |
msgstr ""
|
4684 |
|
4685 |
+
#: classes/wp-security-user-login.php:653
|
4686 |
msgid "Your session has expired because it has been over %d minutes since your last login."
|
4687 |
msgstr ""
|
4688 |
|
4689 |
+
#: classes/wp-security-user-login.php:654
|
4690 |
+
#: classes/wp-security-user-login.php:658
|
4691 |
msgid "Please log back in to continue."
|
4692 |
msgstr ""
|
4693 |
|
4694 |
+
#: classes/wp-security-user-login.php:657
|
4695 |
msgid "You were logged out because you just changed the \"admin\" username."
|
4696 |
msgstr ""
|
4697 |
|
4698 |
+
#: classes/wp-security-user-login.php:689
|
4699 |
msgid "Request Unlock"
|
4700 |
msgstr ""
|
4701 |
|
4702 |
+
#: classes/wp-security-user-registration.php:68
|
|
|
4703 |
msgid "<strong>ERROR</strong>: You are not allowed to register because your IP address is currently locked!"
|
4704 |
msgstr ""
|
4705 |
|
other-includes/wp-security-rename-login-feature-pre-5-7.php
ADDED
@@ -0,0 +1,1573 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* WordPress User Page
|
4 |
+
*
|
5 |
+
* Handles authentication, registering, resetting passwords, forgot password,
|
6 |
+
* and other user handling.
|
7 |
+
*
|
8 |
+
* @package WordPress
|
9 |
+
*/
|
10 |
+
|
11 |
+
/** Make sure that the WordPress bootstrap has run before continuing. */
|
12 |
+
|
13 |
+
// aiowps - for our special case we do not want to include wp-load.php
|
14 |
+
//require __DIR__ . '/wp-load.php';
|
15 |
+
|
16 |
+
// Redirect to HTTPS login if forced to use SSL.
|
17 |
+
if ( force_ssl_admin() && ! is_ssl() ) {
|
18 |
+
if ( 0 === strpos( $_SERVER['REQUEST_URI'], 'http' ) ) {
|
19 |
+
wp_safe_redirect( set_url_scheme( $_SERVER['REQUEST_URI'], 'https' ) );
|
20 |
+
exit;
|
21 |
+
} else {
|
22 |
+
wp_safe_redirect( 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
|
23 |
+
exit;
|
24 |
+
}
|
25 |
+
}
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Output the login page header.
|
29 |
+
*
|
30 |
+
* @since 2.1.0
|
31 |
+
*
|
32 |
+
* @global string $error Login error message set by deprecated pluggable wp_login() function
|
33 |
+
* or plugins replacing it.
|
34 |
+
* @global bool|string $interim_login Whether interim login modal is being displayed. String 'success'
|
35 |
+
* upon successful login.
|
36 |
+
* @global string $action The action that brought the visitor to the login page.
|
37 |
+
*
|
38 |
+
* @param string $title Optional. WordPress login Page title to display in the `<title>` element.
|
39 |
+
* Default 'Log In'.
|
40 |
+
* @param string $message Optional. Message to display in header. Default empty.
|
41 |
+
* @param WP_Error $wp_error Optional. The error to pass. Default is a WP_Error instance.
|
42 |
+
*/
|
43 |
+
function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
44 |
+
global $error, $interim_login, $action;
|
45 |
+
|
46 |
+
// Don't index any of these forms.
|
47 |
+
add_action( 'login_head', 'wp_sensitive_page_meta' );
|
48 |
+
|
49 |
+
add_action( 'login_head', 'wp_login_viewport_meta' );
|
50 |
+
|
51 |
+
if ( ! is_wp_error( $wp_error ) ) {
|
52 |
+
$wp_error = new WP_Error();
|
53 |
+
}
|
54 |
+
|
55 |
+
// Shake it!
|
56 |
+
$shake_error_codes = array( 'empty_password', 'empty_email', 'invalid_email', 'invalidcombo', 'empty_username', 'invalid_username', 'incorrect_password', 'retrieve_password_email_failure' );
|
57 |
+
/**
|
58 |
+
* Filters the error codes array for shaking the login form.
|
59 |
+
*
|
60 |
+
* @since 3.0.0
|
61 |
+
*
|
62 |
+
* @param array $shake_error_codes Error codes that shake the login form.
|
63 |
+
*/
|
64 |
+
$shake_error_codes = apply_filters( 'shake_error_codes', $shake_error_codes );
|
65 |
+
|
66 |
+
if ( $shake_error_codes && $wp_error->has_errors() && in_array( $wp_error->get_error_code(), $shake_error_codes, true ) ) {
|
67 |
+
add_action( 'login_footer', 'wp_shake_js', 12 );
|
68 |
+
}
|
69 |
+
|
70 |
+
$login_title = get_bloginfo( 'name', 'display' );
|
71 |
+
|
72 |
+
/* translators: Login screen title. 1: Login screen name, 2: Network or site name. */
|
73 |
+
$login_title = sprintf( __( '%1$s ‹ %2$s — WordPress' ), $title, $login_title );
|
74 |
+
|
75 |
+
if ( wp_is_recovery_mode() ) {
|
76 |
+
/* translators: %s: Login screen title. */
|
77 |
+
$login_title = sprintf( __( 'Recovery Mode — %s' ), $login_title );
|
78 |
+
}
|
79 |
+
|
80 |
+
/**
|
81 |
+
* Filters the title tag content for login page.
|
82 |
+
*
|
83 |
+
* @since 4.9.0
|
84 |
+
*
|
85 |
+
* @param string $login_title The page title, with extra context added.
|
86 |
+
* @param string $title The original page title.
|
87 |
+
*/
|
88 |
+
$login_title = apply_filters( 'login_title', $login_title, $title );
|
89 |
+
|
90 |
+
?><!DOCTYPE html>
|
91 |
+
<html <?php language_attributes(); ?>>
|
92 |
+
<head>
|
93 |
+
<meta http-equiv="Content-Type" content="<?php bloginfo( 'html_type' ); ?>; charset=<?php bloginfo( 'charset' ); ?>" />
|
94 |
+
<title><?php echo $login_title; ?></title>
|
95 |
+
<?php
|
96 |
+
|
97 |
+
wp_enqueue_style( 'login' );
|
98 |
+
|
99 |
+
/*
|
100 |
+
* Remove all stored post data on logging out.
|
101 |
+
* This could be added by add_action('login_head'...) like wp_shake_js(),
|
102 |
+
* but maybe better if it's not removable by plugins.
|
103 |
+
*/
|
104 |
+
if ( 'loggedout' === $wp_error->get_error_code() ) {
|
105 |
+
?>
|
106 |
+
<script>if("sessionStorage" in window){try{for(var key in sessionStorage){if(key.indexOf("wp-autosave-")!=-1){sessionStorage.removeItem(key)}}}catch(e){}};</script>
|
107 |
+
<?php
|
108 |
+
}
|
109 |
+
|
110 |
+
/**
|
111 |
+
* Enqueue scripts and styles for the login page.
|
112 |
+
*
|
113 |
+
* @since 3.1.0
|
114 |
+
*/
|
115 |
+
do_action( 'login_enqueue_scripts' );
|
116 |
+
|
117 |
+
/**
|
118 |
+
* Fires in the login page header after scripts are enqueued.
|
119 |
+
*
|
120 |
+
* @since 2.1.0
|
121 |
+
*/
|
122 |
+
do_action( 'login_head' );
|
123 |
+
|
124 |
+
$login_header_url = __( 'https://wordpress.org/' );
|
125 |
+
|
126 |
+
/**
|
127 |
+
* Filters link URL of the header logo above login form.
|
128 |
+
*
|
129 |
+
* @since 2.1.0
|
130 |
+
*
|
131 |
+
* @param string $login_header_url Login header logo URL.
|
132 |
+
*/
|
133 |
+
$login_header_url = apply_filters( 'login_headerurl', $login_header_url );
|
134 |
+
|
135 |
+
$login_header_title = '';
|
136 |
+
|
137 |
+
/**
|
138 |
+
* Filters the title attribute of the header logo above login form.
|
139 |
+
*
|
140 |
+
* @since 2.1.0
|
141 |
+
* @deprecated 5.2.0 Use {@see 'login_headertext'} instead.
|
142 |
+
*
|
143 |
+
* @param string $login_header_title Login header logo title attribute.
|
144 |
+
*/
|
145 |
+
$login_header_title = apply_filters_deprecated(
|
146 |
+
'login_headertitle',
|
147 |
+
array( $login_header_title ),
|
148 |
+
'5.2.0',
|
149 |
+
'login_headertext',
|
150 |
+
__( 'Usage of the title attribute on the login logo is not recommended for accessibility reasons. Use the link text instead.' )
|
151 |
+
);
|
152 |
+
|
153 |
+
$login_header_text = empty( $login_header_title ) ? __( 'Powered by WordPress' ) : $login_header_title;
|
154 |
+
|
155 |
+
/**
|
156 |
+
* Filters the link text of the header logo above the login form.
|
157 |
+
*
|
158 |
+
* @since 5.2.0
|
159 |
+
*
|
160 |
+
* @param string $login_header_text The login header logo link text.
|
161 |
+
*/
|
162 |
+
$login_header_text = apply_filters( 'login_headertext', $login_header_text );
|
163 |
+
|
164 |
+
$classes = array( 'login-action-' . $action, 'wp-core-ui' );
|
165 |
+
|
166 |
+
if ( is_rtl() ) {
|
167 |
+
$classes[] = 'rtl';
|
168 |
+
}
|
169 |
+
|
170 |
+
if ( $interim_login ) {
|
171 |
+
$classes[] = 'interim-login';
|
172 |
+
|
173 |
+
?>
|
174 |
+
<style type="text/css">html{background-color: transparent;}</style>
|
175 |
+
<?php
|
176 |
+
|
177 |
+
if ( 'success' === $interim_login ) {
|
178 |
+
$classes[] = 'interim-login-success';
|
179 |
+
}
|
180 |
+
}
|
181 |
+
|
182 |
+
$classes[] = ' locale-' . sanitize_html_class( strtolower( str_replace( '_', '-', get_locale() ) ) );
|
183 |
+
|
184 |
+
/**
|
185 |
+
* Filters the login page body classes.
|
186 |
+
*
|
187 |
+
* @since 3.5.0
|
188 |
+
*
|
189 |
+
* @param array $classes An array of body classes.
|
190 |
+
* @param string $action The action that brought the visitor to the login page.
|
191 |
+
*/
|
192 |
+
$classes = apply_filters( 'login_body_class', $classes, $action );
|
193 |
+
|
194 |
+
?>
|
195 |
+
</head>
|
196 |
+
<body class="login no-js <?php echo esc_attr( implode( ' ', $classes ) ); ?>">
|
197 |
+
<script type="text/javascript">
|
198 |
+
document.body.className = document.body.className.replace('no-js','js');
|
199 |
+
</script>
|
200 |
+
<?php
|
201 |
+
/**
|
202 |
+
* Fires in the login page header after the body tag is opened.
|
203 |
+
*
|
204 |
+
* @since 4.6.0
|
205 |
+
*/
|
206 |
+
do_action( 'login_header' );
|
207 |
+
|
208 |
+
?>
|
209 |
+
<div id="login">
|
210 |
+
<h1><a href="<?php echo esc_url( $login_header_url ); ?>"><?php echo $login_header_text; ?></a></h1>
|
211 |
+
<?php
|
212 |
+
/**
|
213 |
+
* Filters the message to display above the login form.
|
214 |
+
*
|
215 |
+
* @since 2.1.0
|
216 |
+
*
|
217 |
+
* @param string $message Login message text.
|
218 |
+
*/
|
219 |
+
$message = apply_filters( 'login_message', $message );
|
220 |
+
|
221 |
+
if ( ! empty( $message ) ) {
|
222 |
+
echo $message . "\n";
|
223 |
+
}
|
224 |
+
|
225 |
+
// In case a plugin uses $error rather than the $wp_errors object.
|
226 |
+
if ( ! empty( $error ) ) {
|
227 |
+
$wp_error->add( 'error', $error );
|
228 |
+
unset( $error );
|
229 |
+
}
|
230 |
+
|
231 |
+
if ( $wp_error->has_errors() ) {
|
232 |
+
$errors = '';
|
233 |
+
$messages = '';
|
234 |
+
|
235 |
+
foreach ( $wp_error->get_error_codes() as $code ) {
|
236 |
+
$severity = $wp_error->get_error_data( $code );
|
237 |
+
foreach ( $wp_error->get_error_messages( $code ) as $error_message ) {
|
238 |
+
if ( 'message' === $severity ) {
|
239 |
+
$messages .= ' ' . $error_message . "<br />\n";
|
240 |
+
} else {
|
241 |
+
$errors .= ' ' . $error_message . "<br />\n";
|
242 |
+
}
|
243 |
+
}
|
244 |
+
}
|
245 |
+
|
246 |
+
if ( ! empty( $errors ) ) {
|
247 |
+
/**
|
248 |
+
* Filters the error messages displayed above the login form.
|
249 |
+
*
|
250 |
+
* @since 2.1.0
|
251 |
+
*
|
252 |
+
* @param string $errors Login error message.
|
253 |
+
*/
|
254 |
+
echo '<div id="login_error">' . apply_filters( 'login_errors', $errors ) . "</div>\n";
|
255 |
+
}
|
256 |
+
|
257 |
+
if ( ! empty( $messages ) ) {
|
258 |
+
/**
|
259 |
+
* Filters instructional messages displayed above the login form.
|
260 |
+
*
|
261 |
+
* @since 2.5.0
|
262 |
+
*
|
263 |
+
* @param string $messages Login messages.
|
264 |
+
*/
|
265 |
+
echo '<p class="message">' . apply_filters( 'login_messages', $messages ) . "</p>\n";
|
266 |
+
}
|
267 |
+
}
|
268 |
+
} // End of login_header().
|
269 |
+
|
270 |
+
/**
|
271 |
+
* Outputs the footer for the login page.
|
272 |
+
*
|
273 |
+
* @since 3.1.0
|
274 |
+
*
|
275 |
+
* @global bool|string $interim_login Whether interim login modal is being displayed. String 'success'
|
276 |
+
* upon successful login.
|
277 |
+
*
|
278 |
+
* @param string $input_id Which input to auto-focus.
|
279 |
+
*/
|
280 |
+
function login_footer( $input_id = '' ) {
|
281 |
+
global $interim_login;
|
282 |
+
|
283 |
+
// Don't allow interim logins to navigate away from the page.
|
284 |
+
if ( ! $interim_login ) {
|
285 |
+
?>
|
286 |
+
<p id="backtoblog"><a href="<?php echo esc_url( home_url( '/' ) ); ?>">
|
287 |
+
<?php
|
288 |
+
|
289 |
+
/* translators: %s: Site title. */
|
290 |
+
printf( _x( '← Go to %s', 'site' ), get_bloginfo( 'title', 'display' ) );
|
291 |
+
|
292 |
+
?>
|
293 |
+
</a></p>
|
294 |
+
<?php
|
295 |
+
|
296 |
+
the_privacy_policy_link( '<div class="privacy-policy-page-link">', '</div>' );
|
297 |
+
}
|
298 |
+
|
299 |
+
?>
|
300 |
+
</div><?php // End of <div id="login">. ?>
|
301 |
+
|
302 |
+
<?php
|
303 |
+
|
304 |
+
if ( ! empty( $input_id ) ) {
|
305 |
+
?>
|
306 |
+
<script type="text/javascript">
|
307 |
+
try{document.getElementById('<?php echo $input_id; ?>').focus();}catch(e){}
|
308 |
+
if(typeof wpOnload=='function')wpOnload();
|
309 |
+
</script>
|
310 |
+
<?php
|
311 |
+
}
|
312 |
+
|
313 |
+
/**
|
314 |
+
* Fires in the login page footer.
|
315 |
+
*
|
316 |
+
* @since 3.1.0
|
317 |
+
*/
|
318 |
+
do_action( 'login_footer' );
|
319 |
+
|
320 |
+
?>
|
321 |
+
<div class="clear"></div>
|
322 |
+
</body>
|
323 |
+
</html>
|
324 |
+
<?php
|
325 |
+
}
|
326 |
+
|
327 |
+
/**
|
328 |
+
* Outputs the Javascript to handle the form shaking on the login page.
|
329 |
+
*
|
330 |
+
* @since 3.0.0
|
331 |
+
*/
|
332 |
+
function wp_shake_js() {
|
333 |
+
?>
|
334 |
+
<script type="text/javascript">
|
335 |
+
document.querySelector('form').classList.add('shake');
|
336 |
+
</script>
|
337 |
+
<?php
|
338 |
+
}
|
339 |
+
|
340 |
+
/**
|
341 |
+
* Outputs the viewport meta tag for the login page.
|
342 |
+
*
|
343 |
+
* @since 3.7.0
|
344 |
+
*/
|
345 |
+
function wp_login_viewport_meta() {
|
346 |
+
?>
|
347 |
+
<meta name="viewport" content="width=device-width" />
|
348 |
+
<?php
|
349 |
+
}
|
350 |
+
|
351 |
+
/**
|
352 |
+
* Handles sending a password retrieval email to a user.
|
353 |
+
*
|
354 |
+
* @since 2.5.0
|
355 |
+
*
|
356 |
+
* @return true|WP_Error True when finished, WP_Error object on error.
|
357 |
+
*/
|
358 |
+
function retrieve_password() {
|
359 |
+
$errors = new WP_Error();
|
360 |
+
$user_data = false;
|
361 |
+
|
362 |
+
if ( empty( $_POST['user_login'] ) || ! is_string( $_POST['user_login'] ) ) {
|
363 |
+
$errors->add( 'empty_username', __( '<strong>Error</strong>: Please enter a username or email address.' ) );
|
364 |
+
} elseif ( strpos( $_POST['user_login'], '@' ) ) {
|
365 |
+
$user_data = get_user_by( 'email', trim( wp_unslash( $_POST['user_login'] ) ) );
|
366 |
+
if ( empty( $user_data ) ) {
|
367 |
+
$errors->add( 'invalid_email', __( '<strong>Error</strong>: There is no account with that username or email address.' ) );
|
368 |
+
}
|
369 |
+
} else {
|
370 |
+
$login = trim( wp_unslash( $_POST['user_login'] ) );
|
371 |
+
$user_data = get_user_by( 'login', $login );
|
372 |
+
}
|
373 |
+
|
374 |
+
/**
|
375 |
+
* Fires before errors are returned from a password reset request.
|
376 |
+
*
|
377 |
+
* @since 2.1.0
|
378 |
+
* @since 4.4.0 Added the `$errors` parameter.
|
379 |
+
* @since 5.4.0 Added the `$user_data` parameter.
|
380 |
+
*
|
381 |
+
* @param WP_Error $errors A WP_Error object containing any errors generated
|
382 |
+
* by using invalid credentials.
|
383 |
+
* @param WP_User|false $user_data WP_User object if found, false if the user does not exist.
|
384 |
+
*/
|
385 |
+
do_action( 'lostpassword_post', $errors, $user_data );
|
386 |
+
|
387 |
+
/**
|
388 |
+
* Filters the errors encountered on a password reset request.
|
389 |
+
*
|
390 |
+
* The filtered WP_Error object may, for example, contain errors for an invalid
|
391 |
+
* username or email address. A WP_Error object should always be returned,
|
392 |
+
* but may or may not contain errors.
|
393 |
+
*
|
394 |
+
* If any errors are present in $errors, this will abort the password reset request.
|
395 |
+
*
|
396 |
+
* @since 5.5.0
|
397 |
+
*
|
398 |
+
* @param WP_Error $errors A WP_Error object containing any errors generated
|
399 |
+
* by using invalid credentials.
|
400 |
+
* @param WP_User|false $user_data WP_User object if found, false if the user does not exist.
|
401 |
+
*/
|
402 |
+
$errors = apply_filters( 'lostpassword_errors', $errors, $user_data );
|
403 |
+
|
404 |
+
if ( $errors->has_errors() ) {
|
405 |
+
return $errors;
|
406 |
+
}
|
407 |
+
|
408 |
+
if ( ! $user_data ) {
|
409 |
+
$errors->add( 'invalidcombo', __( '<strong>Error</strong>: There is no account with that username or email address.' ) );
|
410 |
+
return $errors;
|
411 |
+
}
|
412 |
+
|
413 |
+
// Redefining user_login ensures we return the right case in the email.
|
414 |
+
$user_login = $user_data->user_login;
|
415 |
+
$user_email = $user_data->user_email;
|
416 |
+
$key = get_password_reset_key( $user_data );
|
417 |
+
|
418 |
+
if ( is_wp_error( $key ) ) {
|
419 |
+
return $key;
|
420 |
+
}
|
421 |
+
|
422 |
+
if ( is_multisite() ) {
|
423 |
+
$site_name = get_network()->site_name;
|
424 |
+
} else {
|
425 |
+
/*
|
426 |
+
* The blogname option is escaped with esc_html on the way into the database
|
427 |
+
* in sanitize_option. We want to reverse this for the plain text arena of emails.
|
428 |
+
*/
|
429 |
+
$site_name = wp_specialchars_decode( get_option( 'blogname' ), ENT_QUOTES );
|
430 |
+
}
|
431 |
+
|
432 |
+
$message = __( 'Someone has requested a password reset for the following account:' ) . "\r\n\r\n";
|
433 |
+
/* translators: %s: Site name. */
|
434 |
+
$message .= sprintf( __( 'Site Name: %s' ), $site_name ) . "\r\n\r\n";
|
435 |
+
/* translators: %s: User login. */
|
436 |
+
$message .= sprintf( __( 'Username: %s' ), $user_login ) . "\r\n\r\n";
|
437 |
+
$message .= __( 'If this was a mistake, ignore this email and nothing will happen.' ) . "\r\n\r\n";
|
438 |
+
$message .= __( 'To reset your password, visit the following address:' ) . "\r\n\r\n";
|
439 |
+
$message .= network_site_url( "wp-login.php?action=rp&key=$key&login=" . rawurlencode( $user_login ), 'login' ) . "\r\n\r\n";
|
440 |
+
|
441 |
+
$requester_ip = $_SERVER['REMOTE_ADDR'];
|
442 |
+
if ( $requester_ip ) {
|
443 |
+
$message .= sprintf(
|
444 |
+
/* translators: %s: IP address of password reset requester. */
|
445 |
+
__( 'This password reset request originated from the IP address %s.' ),
|
446 |
+
$requester_ip
|
447 |
+
) . "\r\n";
|
448 |
+
}
|
449 |
+
|
450 |
+
/* translators: Password reset notification email subject. %s: Site title. */
|
451 |
+
$title = sprintf( __( '[%s] Password Reset' ), $site_name );
|
452 |
+
|
453 |
+
/**
|
454 |
+
* Filters the subject of the password reset email.
|
455 |
+
*
|
456 |
+
* @since 2.8.0
|
457 |
+
* @since 4.4.0 Added the `$user_login` and `$user_data` parameters.
|
458 |
+
*
|
459 |
+
* @param string $title Email subject.
|
460 |
+
* @param string $user_login The username for the user.
|
461 |
+
* @param WP_User $user_data WP_User object.
|
462 |
+
*/
|
463 |
+
$title = apply_filters( 'retrieve_password_title', $title, $user_login, $user_data );
|
464 |
+
|
465 |
+
/**
|
466 |
+
* Filters the message body of the password reset mail.
|
467 |
+
*
|
468 |
+
* If the filtered message is empty, the password reset email will not be sent.
|
469 |
+
*
|
470 |
+
* @since 2.8.0
|
471 |
+
* @since 4.1.0 Added `$user_login` and `$user_data` parameters.
|
472 |
+
*
|
473 |
+
* @param string $message Email message.
|
474 |
+
* @param string $key The activation key.
|
475 |
+
* @param string $user_login The username for the user.
|
476 |
+
* @param WP_User $user_data WP_User object.
|
477 |
+
*/
|
478 |
+
$message = apply_filters( 'retrieve_password_message', $message, $key, $user_login, $user_data );
|
479 |
+
|
480 |
+
if ( $message && ! wp_mail( $user_email, wp_specialchars_decode( $title ), $message ) ) {
|
481 |
+
$errors->add(
|
482 |
+
'retrieve_password_email_failure',
|
483 |
+
sprintf(
|
484 |
+
/* translators: %s: Documentation URL. */
|
485 |
+
__( '<strong>Error</strong>: The email could not be sent. Your site may not be correctly configured to send emails. <a href="%s">Get support for resetting your password</a>.' ),
|
486 |
+
esc_url( __( 'https://wordpress.org/support/article/resetting-your-password/' ) )
|
487 |
+
)
|
488 |
+
);
|
489 |
+
return $errors;
|
490 |
+
}
|
491 |
+
|
492 |
+
return true;
|
493 |
+
}
|
494 |
+
|
495 |
+
//
|
496 |
+
// Main.
|
497 |
+
//
|
498 |
+
|
499 |
+
$action = isset( $_REQUEST['action'] ) ? $_REQUEST['action'] : 'login';
|
500 |
+
$errors = new WP_Error();
|
501 |
+
|
502 |
+
if ( isset( $_GET['key'] ) ) {
|
503 |
+
$action = 'resetpass';
|
504 |
+
}
|
505 |
+
|
506 |
+
if ( isset( $_GET['checkemail'] ) ) {
|
507 |
+
$action = 'checkemail';
|
508 |
+
}
|
509 |
+
|
510 |
+
$default_actions = array(
|
511 |
+
'confirm_admin_email',
|
512 |
+
'postpass',
|
513 |
+
'logout',
|
514 |
+
'lostpassword',
|
515 |
+
'retrievepassword',
|
516 |
+
'resetpass',
|
517 |
+
'rp',
|
518 |
+
'register',
|
519 |
+
'checkemail',
|
520 |
+
'confirmaction',
|
521 |
+
'login',
|
522 |
+
WP_Recovery_Mode_Link_Service::LOGIN_ACTION_ENTERED,
|
523 |
+
);
|
524 |
+
|
525 |
+
// Validate action so as to default to the login screen.
|
526 |
+
if ( ! in_array( $action, $default_actions, true ) && false === has_filter( 'login_form_' . $action ) ) {
|
527 |
+
$action = 'login';
|
528 |
+
}
|
529 |
+
|
530 |
+
nocache_headers();
|
531 |
+
|
532 |
+
header( 'Content-Type: ' . get_bloginfo( 'html_type' ) . '; charset=' . get_bloginfo( 'charset' ) );
|
533 |
+
|
534 |
+
if ( defined( 'RELOCATE' ) && RELOCATE ) { // Move flag is set.
|
535 |
+
if ( isset( $_SERVER['PATH_INFO'] ) && ( $_SERVER['PATH_INFO'] !== $_SERVER['PHP_SELF'] ) ) {
|
536 |
+
$_SERVER['PHP_SELF'] = str_replace( $_SERVER['PATH_INFO'], '', $_SERVER['PHP_SELF'] );
|
537 |
+
}
|
538 |
+
|
539 |
+
$url = dirname( set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] ) );
|
540 |
+
|
541 |
+
if ( get_option( 'siteurl' ) !== $url ) {
|
542 |
+
update_option( 'siteurl', $url );
|
543 |
+
}
|
544 |
+
}
|
545 |
+
|
546 |
+
// Set a cookie now to see if they are supported by the browser.
|
547 |
+
$secure = ( 'https' === parse_url( wp_login_url(), PHP_URL_SCHEME ) );
|
548 |
+
setcookie( TEST_COOKIE, 'WP Cookie check', 0, COOKIEPATH, COOKIE_DOMAIN, $secure );
|
549 |
+
|
550 |
+
if ( SITECOOKIEPATH !== COOKIEPATH ) {
|
551 |
+
setcookie( TEST_COOKIE, 'WP Cookie check', 0, SITECOOKIEPATH, COOKIE_DOMAIN, $secure );
|
552 |
+
}
|
553 |
+
|
554 |
+
/**
|
555 |
+
* Fires when the login form is initialized.
|
556 |
+
*
|
557 |
+
* @since 3.2.0
|
558 |
+
*/
|
559 |
+
do_action( 'login_init' );
|
560 |
+
|
561 |
+
/**
|
562 |
+
* Fires before a specified login form action.
|
563 |
+
*
|
564 |
+
* The dynamic portion of the hook name, `$action`, refers to the action
|
565 |
+
* that brought the visitor to the login form. Actions include 'postpass',
|
566 |
+
* 'logout', 'lostpassword', etc.
|
567 |
+
*
|
568 |
+
* @since 2.8.0
|
569 |
+
*/
|
570 |
+
do_action( "login_form_{$action}" );
|
571 |
+
|
572 |
+
$http_post = ( 'POST' === $_SERVER['REQUEST_METHOD'] );
|
573 |
+
$interim_login = isset( $_REQUEST['interim-login'] );
|
574 |
+
|
575 |
+
/**
|
576 |
+
* Filters the separator used between login form navigation links.
|
577 |
+
*
|
578 |
+
* @since 4.9.0
|
579 |
+
*
|
580 |
+
* @param string $login_link_separator The separator used between login form navigation links.
|
581 |
+
*/
|
582 |
+
$login_link_separator = apply_filters( 'login_link_separator', ' | ' );
|
583 |
+
|
584 |
+
switch ( $action ) {
|
585 |
+
|
586 |
+
case 'confirm_admin_email':
|
587 |
+
/*
|
588 |
+
* Note that `is_user_logged_in()` will return false immediately after logging in
|
589 |
+
* as the current user is not set, see wp-includes/pluggable.php.
|
590 |
+
* However this action runs on a redirect after logging in.
|
591 |
+
*/
|
592 |
+
if ( ! is_user_logged_in() ) {
|
593 |
+
wp_safe_redirect( wp_login_url() );
|
594 |
+
exit;
|
595 |
+
}
|
596 |
+
|
597 |
+
if ( ! empty( $_REQUEST['redirect_to'] ) ) {
|
598 |
+
$redirect_to = $_REQUEST['redirect_to'];
|
599 |
+
} else {
|
600 |
+
$redirect_to = admin_url();
|
601 |
+
}
|
602 |
+
|
603 |
+
if ( current_user_can( 'manage_options' ) ) {
|
604 |
+
$admin_email = get_option( 'admin_email' );
|
605 |
+
} else {
|
606 |
+
wp_safe_redirect( $redirect_to );
|
607 |
+
exit;
|
608 |
+
}
|
609 |
+
|
610 |
+
/**
|
611 |
+
* Filters the interval for dismissing the admin email confirmation screen.
|
612 |
+
*
|
613 |
+
* If `0` (zero) is returned, the "Remind me later" link will not be displayed.
|
614 |
+
*
|
615 |
+
* @since 5.3.1
|
616 |
+
*
|
617 |
+
* @param int $interval Interval time (in seconds). Default is 3 days.
|
618 |
+
*/
|
619 |
+
$remind_interval = (int) apply_filters( 'admin_email_remind_interval', 3 * DAY_IN_SECONDS );
|
620 |
+
|
621 |
+
if ( ! empty( $_GET['remind_me_later'] ) ) {
|
622 |
+
if ( ! wp_verify_nonce( $_GET['remind_me_later'], 'remind_me_later_nonce' ) ) {
|
623 |
+
wp_safe_redirect( wp_login_url() );
|
624 |
+
exit;
|
625 |
+
}
|
626 |
+
|
627 |
+
if ( $remind_interval > 0 ) {
|
628 |
+
update_option( 'admin_email_lifespan', time() + $remind_interval );
|
629 |
+
}
|
630 |
+
|
631 |
+
$redirect_to = add_query_arg( 'admin_email_remind_later', 1, $redirect_to );
|
632 |
+
wp_safe_redirect( $redirect_to );
|
633 |
+
exit;
|
634 |
+
}
|
635 |
+
|
636 |
+
if ( ! empty( $_POST['correct-admin-email'] ) ) {
|
637 |
+
if ( ! check_admin_referer( 'confirm_admin_email', 'confirm_admin_email_nonce' ) ) {
|
638 |
+
wp_safe_redirect( wp_login_url() );
|
639 |
+
exit;
|
640 |
+
}
|
641 |
+
|
642 |
+
/**
|
643 |
+
* Filters the interval for redirecting the user to the admin email confirmation screen.
|
644 |
+
*
|
645 |
+
* If `0` (zero) is returned, the user will not be redirected.
|
646 |
+
*
|
647 |
+
* @since 5.3.0
|
648 |
+
*
|
649 |
+
* @param int $interval Interval time (in seconds). Default is 6 months.
|
650 |
+
*/
|
651 |
+
$admin_email_check_interval = (int) apply_filters( 'admin_email_check_interval', 6 * MONTH_IN_SECONDS );
|
652 |
+
|
653 |
+
if ( $admin_email_check_interval > 0 ) {
|
654 |
+
update_option( 'admin_email_lifespan', time() + $admin_email_check_interval );
|
655 |
+
}
|
656 |
+
|
657 |
+
wp_safe_redirect( $redirect_to );
|
658 |
+
exit;
|
659 |
+
}
|
660 |
+
|
661 |
+
login_header( __( 'Confirm your administration email' ), '', $errors );
|
662 |
+
|
663 |
+
/**
|
664 |
+
* Fires before the admin email confirm form.
|
665 |
+
*
|
666 |
+
* @since 5.3.0
|
667 |
+
*
|
668 |
+
* @param WP_Error $errors A `WP_Error` object containing any errors generated by using invalid
|
669 |
+
* credentials. Note that the error object may not contain any errors.
|
670 |
+
*/
|
671 |
+
do_action( 'admin_email_confirm', $errors );
|
672 |
+
|
673 |
+
?>
|
674 |
+
|
675 |
+
<form class="admin-email-confirm-form" name="admin-email-confirm-form" action="<?php echo esc_url( site_url( 'wp-login.php?action=confirm_admin_email', 'login_post' ) ); ?>" method="post">
|
676 |
+
<?php
|
677 |
+
/**
|
678 |
+
* Fires inside the admin-email-confirm-form form tags, before the hidden fields.
|
679 |
+
*
|
680 |
+
* @since 5.3.0
|
681 |
+
*/
|
682 |
+
do_action( 'admin_email_confirm_form' );
|
683 |
+
|
684 |
+
wp_nonce_field( 'confirm_admin_email', 'confirm_admin_email_nonce' );
|
685 |
+
|
686 |
+
?>
|
687 |
+
<input type="hidden" name="redirect_to" value="<?php echo esc_attr( $redirect_to ); ?>" />
|
688 |
+
|
689 |
+
<h1 class="admin-email__heading">
|
690 |
+
<?php _e( 'Administration email verification' ); ?>
|
691 |
+
</h1>
|
692 |
+
<p class="admin-email__details">
|
693 |
+
<?php _e( 'Please verify that the <strong>administration email</strong> for this website is still correct.' ); ?>
|
694 |
+
<?php
|
695 |
+
|
696 |
+
/* translators: URL to the WordPress help section about admin email. */
|
697 |
+
$admin_email_help_url = __( 'https://wordpress.org/support/article/settings-general-screen/#email-address' );
|
698 |
+
|
699 |
+
/* translators: Accessibility text. */
|
700 |
+
$accessibility_text = sprintf( '<span class="screen-reader-text"> %s</span>', __( '(opens in a new tab)' ) );
|
701 |
+
|
702 |
+
printf(
|
703 |
+
'<a href="%s" rel="noopener" target="_blank">%s%s</a>',
|
704 |
+
esc_url( $admin_email_help_url ),
|
705 |
+
__( 'Why is this important?' ),
|
706 |
+
$accessibility_text
|
707 |
+
);
|
708 |
+
|
709 |
+
?>
|
710 |
+
</p>
|
711 |
+
<p class="admin-email__details">
|
712 |
+
<?php
|
713 |
+
|
714 |
+
printf(
|
715 |
+
/* translators: %s: Admin email address. */
|
716 |
+
__( 'Current administration email: %s' ),
|
717 |
+
'<strong>' . esc_html( $admin_email ) . '</strong>'
|
718 |
+
);
|
719 |
+
|
720 |
+
?>
|
721 |
+
</p>
|
722 |
+
<p class="admin-email__details">
|
723 |
+
<?php _e( 'This email may be different from your personal email address.' ); ?>
|
724 |
+
</p>
|
725 |
+
|
726 |
+
<div class="admin-email__actions">
|
727 |
+
<div class="admin-email__actions-primary">
|
728 |
+
<?php
|
729 |
+
|
730 |
+
$change_link = admin_url( 'options-general.php' );
|
731 |
+
$change_link = add_query_arg( 'highlight', 'confirm_admin_email', $change_link );
|
732 |
+
|
733 |
+
?>
|
734 |
+
<a class="button button-large" href="<?php echo esc_url( $change_link ); ?>"><?php _e( 'Update' ); ?></a>
|
735 |
+
<input type="submit" name="correct-admin-email" id="correct-admin-email" class="button button-primary button-large" value="<?php esc_attr_e( 'The email is correct' ); ?>" />
|
736 |
+
</div>
|
737 |
+
<?php if ( $remind_interval > 0 ) : ?>
|
738 |
+
<div class="admin-email__actions-secondary">
|
739 |
+
<?php
|
740 |
+
|
741 |
+
$remind_me_link = wp_login_url( $redirect_to );
|
742 |
+
$remind_me_link = add_query_arg(
|
743 |
+
array(
|
744 |
+
'action' => 'confirm_admin_email',
|
745 |
+
'remind_me_later' => wp_create_nonce( 'remind_me_later_nonce' ),
|
746 |
+
),
|
747 |
+
$remind_me_link
|
748 |
+
);
|
749 |
+
|
750 |
+
?>
|
751 |
+
<a href="<?php echo esc_url( $remind_me_link ); ?>"><?php _e( 'Remind me later' ); ?></a>
|
752 |
+
</div>
|
753 |
+
<?php endif; ?>
|
754 |
+
</div>
|
755 |
+
</form>
|
756 |
+
|
757 |
+
<?php
|
758 |
+
|
759 |
+
login_footer();
|
760 |
+
break;
|
761 |
+
|
762 |
+
case 'postpass':
|
763 |
+
if ( ! array_key_exists( 'post_password', $_POST ) ) {
|
764 |
+
wp_safe_redirect( wp_get_referer() );
|
765 |
+
exit;
|
766 |
+
}
|
767 |
+
|
768 |
+
require_once ABSPATH . WPINC . '/class-phpass.php';
|
769 |
+
$hasher = new PasswordHash( 8, true );
|
770 |
+
|
771 |
+
/**
|
772 |
+
* Filters the life span of the post password cookie.
|
773 |
+
*
|
774 |
+
* By default, the cookie expires 10 days from creation. To turn this
|
775 |
+
* into a session cookie, return 0.
|
776 |
+
*
|
777 |
+
* @since 3.7.0
|
778 |
+
*
|
779 |
+
* @param int $expires The expiry time, as passed to setcookie().
|
780 |
+
*/
|
781 |
+
$expire = apply_filters( 'post_password_expires', time() + 10 * DAY_IN_SECONDS );
|
782 |
+
$referer = wp_get_referer();
|
783 |
+
|
784 |
+
if ( $referer ) {
|
785 |
+
$secure = ( 'https' === parse_url( $referer, PHP_URL_SCHEME ) );
|
786 |
+
} else {
|
787 |
+
$secure = false;
|
788 |
+
}
|
789 |
+
|
790 |
+
setcookie( 'wp-postpass_' . COOKIEHASH, $hasher->HashPassword( wp_unslash( $_POST['post_password'] ) ), $expire, COOKIEPATH, COOKIE_DOMAIN, $secure );
|
791 |
+
|
792 |
+
wp_safe_redirect( wp_get_referer() );
|
793 |
+
exit;
|
794 |
+
|
795 |
+
case 'logout':
|
796 |
+
check_admin_referer( 'log-out' );
|
797 |
+
|
798 |
+
$user = wp_get_current_user();
|
799 |
+
|
800 |
+
wp_logout();
|
801 |
+
|
802 |
+
if ( ! empty( $_REQUEST['redirect_to'] ) ) {
|
803 |
+
$redirect_to = $_REQUEST['redirect_to'];
|
804 |
+
$requested_redirect_to = $redirect_to;
|
805 |
+
} else {
|
806 |
+
$redirect_to = add_query_arg(
|
807 |
+
array(
|
808 |
+
'loggedout' => 'true',
|
809 |
+
'wp_lang' => get_user_locale( $user ),
|
810 |
+
),
|
811 |
+
wp_login_url()
|
812 |
+
);
|
813 |
+
|
814 |
+
$requested_redirect_to = '';
|
815 |
+
}
|
816 |
+
|
817 |
+
/**
|
818 |
+
* Filters the log out redirect URL.
|
819 |
+
*
|
820 |
+
* @since 4.2.0
|
821 |
+
*
|
822 |
+
* @param string $redirect_to The redirect destination URL.
|
823 |
+
* @param string $requested_redirect_to The requested redirect destination URL passed as a parameter.
|
824 |
+
* @param WP_User $user The WP_User object for the user that's logging out.
|
825 |
+
*/
|
826 |
+
$redirect_to = apply_filters( 'logout_redirect', $redirect_to, $requested_redirect_to, $user );
|
827 |
+
|
828 |
+
wp_safe_redirect( $redirect_to );
|
829 |
+
exit;
|
830 |
+
|
831 |
+
case 'lostpassword':
|
832 |
+
case 'retrievepassword':
|
833 |
+
if ( $http_post ) {
|
834 |
+
$errors = retrieve_password();
|
835 |
+
|
836 |
+
if ( ! is_wp_error( $errors ) ) {
|
837 |
+
$redirect_to = ! empty( $_REQUEST['redirect_to'] ) ? $_REQUEST['redirect_to'] : 'wp-login.php?checkemail=confirm';
|
838 |
+
wp_safe_redirect( $redirect_to );
|
839 |
+
exit;
|
840 |
+
}
|
841 |
+
}
|
842 |
+
|
843 |
+
if ( isset( $_GET['error'] ) ) {
|
844 |
+
if ( 'invalidkey' === $_GET['error'] ) {
|
845 |
+
$errors->add( 'invalidkey', __( 'Your password reset link appears to be invalid. Please request a new link below.' ) );
|
846 |
+
} elseif ( 'expiredkey' === $_GET['error'] ) {
|
847 |
+
$errors->add( 'expiredkey', __( 'Your password reset link has expired. Please request a new link below.' ) );
|
848 |
+
}
|
849 |
+
}
|
850 |
+
|
851 |
+
$lostpassword_redirect = ! empty( $_REQUEST['redirect_to'] ) ? $_REQUEST['redirect_to'] : '';
|
852 |
+
/**
|
853 |
+
* Filters the URL redirected to after submitting the lostpassword/retrievepassword form.
|
854 |
+
*
|
855 |
+
* @since 3.0.0
|
856 |
+
*
|
857 |
+
* @param string $lostpassword_redirect The redirect destination URL.
|
858 |
+
*/
|
859 |
+
$redirect_to = apply_filters( 'lostpassword_redirect', $lostpassword_redirect );
|
860 |
+
|
861 |
+
/**
|
862 |
+
* Fires before the lost password form.
|
863 |
+
*
|
864 |
+
* @since 1.5.1
|
865 |
+
* @since 5.1.0 Added the `$errors` parameter.
|
866 |
+
*
|
867 |
+
* @param WP_Error $errors A `WP_Error` object containing any errors generated by using invalid
|
868 |
+
* credentials. Note that the error object may not contain any errors.
|
869 |
+
*/
|
870 |
+
do_action( 'lost_password', $errors );
|
871 |
+
|
872 |
+
login_header( __( 'Lost Password' ), '<p class="message">' . __( 'Please enter your username or email address. You will receive an email message with instructions on how to reset your password.' ) . '</p>', $errors );
|
873 |
+
|
874 |
+
$user_login = '';
|
875 |
+
|
876 |
+
if ( isset( $_POST['user_login'] ) && is_string( $_POST['user_login'] ) ) {
|
877 |
+
$user_login = wp_unslash( $_POST['user_login'] );
|
878 |
+
}
|
879 |
+
|
880 |
+
?>
|
881 |
+
|
882 |
+
<form name="lostpasswordform" id="lostpasswordform" action="<?php echo esc_url( network_site_url( 'wp-login.php?action=lostpassword', 'login_post' ) ); ?>" method="post">
|
883 |
+
<p>
|
884 |
+
<label for="user_login"><?php _e( 'Username or Email Address' ); ?></label>
|
885 |
+
<input type="text" name="user_login" id="user_login" class="input" value="<?php echo esc_attr( $user_login ); ?>" size="20" autocapitalize="off" />
|
886 |
+
</p>
|
887 |
+
<?php
|
888 |
+
|
889 |
+
/**
|
890 |
+
* Fires inside the lostpassword form tags, before the hidden fields.
|
891 |
+
*
|
892 |
+
* @since 2.1.0
|
893 |
+
*/
|
894 |
+
do_action( 'lostpassword_form' );
|
895 |
+
|
896 |
+
?>
|
897 |
+
<input type="hidden" name="redirect_to" value="<?php echo esc_attr( $redirect_to ); ?>" />
|
898 |
+
<p class="submit">
|
899 |
+
<input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="<?php esc_attr_e( 'Get New Password' ); ?>" />
|
900 |
+
</p>
|
901 |
+
</form>
|
902 |
+
|
903 |
+
<p id="nav">
|
904 |
+
<a href="<?php echo esc_url( wp_login_url() ); ?>"><?php _e( 'Log in' ); ?></a>
|
905 |
+
<?php
|
906 |
+
|
907 |
+
if ( get_option( 'users_can_register' ) ) {
|
908 |
+
$registration_url = sprintf( '<a href="%s">%s</a>', esc_url( wp_registration_url() ), __( 'Register' ) );
|
909 |
+
|
910 |
+
echo esc_html( $login_link_separator );
|
911 |
+
|
912 |
+
/** This filter is documented in wp-includes/general-template.php */
|
913 |
+
echo apply_filters( 'register', $registration_url );
|
914 |
+
}
|
915 |
+
|
916 |
+
?>
|
917 |
+
</p>
|
918 |
+
<?php
|
919 |
+
|
920 |
+
login_footer( 'user_login' );
|
921 |
+
break;
|
922 |
+
|
923 |
+
case 'resetpass':
|
924 |
+
case 'rp':
|
925 |
+
list( $rp_path ) = explode( '?', wp_unslash( $_SERVER['REQUEST_URI'] ) );
|
926 |
+
$rp_cookie = 'wp-resetpass-' . COOKIEHASH;
|
927 |
+
|
928 |
+
if ( isset( $_GET['key'] ) ) {
|
929 |
+
$value = sprintf( '%s:%s', wp_unslash( $_GET['login'] ), wp_unslash( $_GET['key'] ) );
|
930 |
+
setcookie( $rp_cookie, $value, 0, $rp_path, COOKIE_DOMAIN, is_ssl(), true );
|
931 |
+
|
932 |
+
wp_safe_redirect( remove_query_arg( array( 'key', 'login' ) ) );
|
933 |
+
exit;
|
934 |
+
}
|
935 |
+
|
936 |
+
if ( isset( $_COOKIE[ $rp_cookie ] ) && 0 < strpos( $_COOKIE[ $rp_cookie ], ':' ) ) {
|
937 |
+
list( $rp_login, $rp_key ) = explode( ':', wp_unslash( $_COOKIE[ $rp_cookie ] ), 2 );
|
938 |
+
|
939 |
+
$user = check_password_reset_key( $rp_key, $rp_login );
|
940 |
+
|
941 |
+
if ( isset( $_POST['pass1'] ) && ! hash_equals( $rp_key, $_POST['rp_key'] ) ) {
|
942 |
+
$user = false;
|
943 |
+
}
|
944 |
+
} else {
|
945 |
+
$user = false;
|
946 |
+
}
|
947 |
+
|
948 |
+
if ( ! $user || is_wp_error( $user ) ) {
|
949 |
+
setcookie( $rp_cookie, ' ', time() - YEAR_IN_SECONDS, $rp_path, COOKIE_DOMAIN, is_ssl(), true );
|
950 |
+
|
951 |
+
if ( $user && $user->get_error_code() === 'expired_key' ) {
|
952 |
+
wp_redirect( site_url( 'wp-login.php?action=lostpassword&error=expiredkey' ) );
|
953 |
+
} else {
|
954 |
+
wp_redirect( site_url( 'wp-login.php?action=lostpassword&error=invalidkey' ) );
|
955 |
+
}
|
956 |
+
|
957 |
+
exit;
|
958 |
+
}
|
959 |
+
|
960 |
+
$errors = new WP_Error();
|
961 |
+
|
962 |
+
if ( isset( $_POST['pass1'] ) && $_POST['pass1'] !== $_POST['pass2'] ) {
|
963 |
+
$errors->add( 'password_reset_mismatch', __( 'The passwords do not match.' ) );
|
964 |
+
}
|
965 |
+
|
966 |
+
/**
|
967 |
+
* Fires before the password reset procedure is validated.
|
968 |
+
*
|
969 |
+
* @since 3.5.0
|
970 |
+
*
|
971 |
+
* @param WP_Error $errors WP Error object.
|
972 |
+
* @param WP_User|WP_Error $user WP_User object if the login and reset key match. WP_Error object otherwise.
|
973 |
+
*/
|
974 |
+
do_action( 'validate_password_reset', $errors, $user );
|
975 |
+
|
976 |
+
if ( ( ! $errors->has_errors() ) && isset( $_POST['pass1'] ) && ! empty( $_POST['pass1'] ) ) {
|
977 |
+
reset_password( $user, $_POST['pass1'] );
|
978 |
+
setcookie( $rp_cookie, ' ', time() - YEAR_IN_SECONDS, $rp_path, COOKIE_DOMAIN, is_ssl(), true );
|
979 |
+
login_header( __( 'Password Reset' ), '<p class="message reset-pass">' . __( 'Your password has been reset.' ) . ' <a href="' . esc_url( wp_login_url() ) . '">' . __( 'Log in' ) . '</a></p>' );
|
980 |
+
login_footer();
|
981 |
+
exit;
|
982 |
+
}
|
983 |
+
|
984 |
+
wp_enqueue_script( 'utils' );
|
985 |
+
wp_enqueue_script( 'user-profile' );
|
986 |
+
|
987 |
+
login_header( __( 'Reset Password' ), '<p class="message reset-pass">' . __( 'Enter your new password below.' ) . '</p>', $errors );
|
988 |
+
|
989 |
+
?>
|
990 |
+
<form name="resetpassform" id="resetpassform" action="<?php echo esc_url( network_site_url( 'wp-login.php?action=resetpass', 'login_post' ) ); ?>" method="post" autocomplete="off">
|
991 |
+
<input type="hidden" id="user_login" value="<?php echo esc_attr( $rp_login ); ?>" autocomplete="off" />
|
992 |
+
|
993 |
+
<div class="user-pass1-wrap">
|
994 |
+
<p>
|
995 |
+
<label for="pass1"><?php _e( 'New password' ); ?></label>
|
996 |
+
</p>
|
997 |
+
|
998 |
+
<div class="wp-pwd">
|
999 |
+
<input type="password" data-reveal="1" data-pw="<?php echo esc_attr( wp_generate_password( 16 ) ); ?>" name="pass1" id="pass1" class="input password-input" size="24" value="" autocomplete="off" aria-describedby="pass-strength-result" />
|
1000 |
+
|
1001 |
+
<button type="button" class="button button-secondary wp-hide-pw hide-if-no-js" data-toggle="0" aria-label="<?php esc_attr_e( 'Hide password' ); ?>">
|
1002 |
+
<span class="dashicons dashicons-hidden" aria-hidden="true"></span>
|
1003 |
+
</button>
|
1004 |
+
<div id="pass-strength-result" class="hide-if-no-js" aria-live="polite"><?php _e( 'Strength indicator' ); ?></div>
|
1005 |
+
</div>
|
1006 |
+
<div class="pw-weak">
|
1007 |
+
<input type="checkbox" name="pw_weak" id="pw-weak" class="pw-checkbox" />
|
1008 |
+
<label for="pw-weak"><?php _e( 'Confirm use of weak password' ); ?></label>
|
1009 |
+
</div>
|
1010 |
+
</div>
|
1011 |
+
|
1012 |
+
<p class="user-pass2-wrap">
|
1013 |
+
<label for="pass2"><?php _e( 'Confirm new password' ); ?></label>
|
1014 |
+
<input type="password" name="pass2" id="pass2" class="input" size="20" value="" autocomplete="off" />
|
1015 |
+
</p>
|
1016 |
+
|
1017 |
+
<p class="description indicator-hint"><?php echo wp_get_password_hint(); ?></p>
|
1018 |
+
<br class="clear" />
|
1019 |
+
|
1020 |
+
<?php
|
1021 |
+
|
1022 |
+
/**
|
1023 |
+
* Fires following the 'Strength indicator' meter in the user password reset form.
|
1024 |
+
*
|
1025 |
+
* @since 3.9.0
|
1026 |
+
*
|
1027 |
+
* @param WP_User $user User object of the user whose password is being reset.
|
1028 |
+
*/
|
1029 |
+
do_action( 'resetpass_form', $user );
|
1030 |
+
|
1031 |
+
?>
|
1032 |
+
<input type="hidden" name="rp_key" value="<?php echo esc_attr( $rp_key ); ?>" />
|
1033 |
+
<p class="submit">
|
1034 |
+
<input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="<?php esc_attr_e( 'Reset Password' ); ?>" />
|
1035 |
+
</p>
|
1036 |
+
</form>
|
1037 |
+
|
1038 |
+
<p id="nav">
|
1039 |
+
<a href="<?php echo esc_url( wp_login_url() ); ?>"><?php _e( 'Log in' ); ?></a>
|
1040 |
+
<?php
|
1041 |
+
|
1042 |
+
if ( get_option( 'users_can_register' ) ) {
|
1043 |
+
$registration_url = sprintf( '<a href="%s">%s</a>', esc_url( wp_registration_url() ), __( 'Register' ) );
|
1044 |
+
|
1045 |
+
echo esc_html( $login_link_separator );
|
1046 |
+
|
1047 |
+
/** This filter is documented in wp-includes/general-template.php */
|
1048 |
+
echo apply_filters( 'register', $registration_url );
|
1049 |
+
}
|
1050 |
+
|
1051 |
+
?>
|
1052 |
+
</p>
|
1053 |
+
<?php
|
1054 |
+
|
1055 |
+
login_footer( 'user_pass' );
|
1056 |
+
break;
|
1057 |
+
|
1058 |
+
case 'register':
|
1059 |
+
if ( is_multisite() ) {
|
1060 |
+
/**
|
1061 |
+
* Filters the Multisite sign up URL.
|
1062 |
+
*
|
1063 |
+
* @since 3.0.0
|
1064 |
+
*
|
1065 |
+
* @param string $sign_up_url The sign up URL.
|
1066 |
+
*/
|
1067 |
+
wp_redirect( apply_filters( 'wp_signup_location', network_site_url( 'wp-signup.php' ) ) );
|
1068 |
+
exit;
|
1069 |
+
}
|
1070 |
+
|
1071 |
+
if ( ! get_option( 'users_can_register' ) ) {
|
1072 |
+
wp_redirect( site_url( 'wp-login.php?registration=disabled' ) );
|
1073 |
+
exit;
|
1074 |
+
}
|
1075 |
+
|
1076 |
+
$user_login = '';
|
1077 |
+
$user_email = '';
|
1078 |
+
|
1079 |
+
if ( $http_post ) {
|
1080 |
+
if ( isset( $_POST['user_login'] ) && is_string( $_POST['user_login'] ) ) {
|
1081 |
+
$user_login = wp_unslash( $_POST['user_login'] );
|
1082 |
+
}
|
1083 |
+
|
1084 |
+
if ( isset( $_POST['user_email'] ) && is_string( $_POST['user_email'] ) ) {
|
1085 |
+
$user_email = wp_unslash( $_POST['user_email'] );
|
1086 |
+
}
|
1087 |
+
|
1088 |
+
$errors = register_new_user( $user_login, $user_email );
|
1089 |
+
|
1090 |
+
if ( ! is_wp_error( $errors ) ) {
|
1091 |
+
$redirect_to = ! empty( $_POST['redirect_to'] ) ? $_POST['redirect_to'] : 'wp-login.php?checkemail=registered';
|
1092 |
+
wp_safe_redirect( $redirect_to );
|
1093 |
+
exit;
|
1094 |
+
}
|
1095 |
+
}
|
1096 |
+
|
1097 |
+
$registration_redirect = ! empty( $_REQUEST['redirect_to'] ) ? $_REQUEST['redirect_to'] : '';
|
1098 |
+
|
1099 |
+
/**
|
1100 |
+
* Filters the registration redirect URL.
|
1101 |
+
*
|
1102 |
+
* @since 3.0.0
|
1103 |
+
*
|
1104 |
+
* @param string $registration_redirect The redirect destination URL.
|
1105 |
+
*/
|
1106 |
+
$redirect_to = apply_filters( 'registration_redirect', $registration_redirect );
|
1107 |
+
|
1108 |
+
login_header( __( 'Registration Form' ), '<p class="message register">' . __( 'Register For This Site' ) . '</p>', $errors );
|
1109 |
+
|
1110 |
+
?>
|
1111 |
+
<form name="registerform" id="registerform" action="<?php echo esc_url( site_url( 'wp-login.php?action=register', 'login_post' ) ); ?>" method="post" novalidate="novalidate">
|
1112 |
+
<p>
|
1113 |
+
<label for="user_login"><?php _e( 'Username' ); ?></label>
|
1114 |
+
<input type="text" name="user_login" id="user_login" class="input" value="<?php echo esc_attr( wp_unslash( $user_login ) ); ?>" size="20" autocapitalize="off" />
|
1115 |
+
</p>
|
1116 |
+
<p>
|
1117 |
+
<label for="user_email"><?php _e( 'Email' ); ?></label>
|
1118 |
+
<input type="email" name="user_email" id="user_email" class="input" value="<?php echo esc_attr( wp_unslash( $user_email ) ); ?>" size="25" />
|
1119 |
+
</p>
|
1120 |
+
<?php
|
1121 |
+
|
1122 |
+
/**
|
1123 |
+
* Fires following the 'Email' field in the user registration form.
|
1124 |
+
*
|
1125 |
+
* @since 2.1.0
|
1126 |
+
*/
|
1127 |
+
do_action( 'register_form' );
|
1128 |
+
|
1129 |
+
?>
|
1130 |
+
<p id="reg_passmail">
|
1131 |
+
<?php _e( 'Registration confirmation will be emailed to you.' ); ?>
|
1132 |
+
</p>
|
1133 |
+
<br class="clear" />
|
1134 |
+
<input type="hidden" name="redirect_to" value="<?php echo esc_attr( $redirect_to ); ?>" />
|
1135 |
+
<p class="submit">
|
1136 |
+
<input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="<?php esc_attr_e( 'Register' ); ?>" />
|
1137 |
+
</p>
|
1138 |
+
</form>
|
1139 |
+
|
1140 |
+
<p id="nav">
|
1141 |
+
<a href="<?php echo esc_url( wp_login_url() ); ?>"><?php _e( 'Log in' ); ?></a>
|
1142 |
+
<?php echo esc_html( $login_link_separator ); ?>
|
1143 |
+
<a href="<?php echo esc_url( wp_lostpassword_url() ); ?>"><?php _e( 'Lost your password?' ); ?></a>
|
1144 |
+
</p>
|
1145 |
+
<?php
|
1146 |
+
|
1147 |
+
login_footer( 'user_login' );
|
1148 |
+
break;
|
1149 |
+
|
1150 |
+
case 'checkemail':
|
1151 |
+
$redirect_to = admin_url();
|
1152 |
+
$errors = new WP_Error();
|
1153 |
+
|
1154 |
+
if ( 'confirm' === $_GET['checkemail'] ) {
|
1155 |
+
$errors->add(
|
1156 |
+
'confirm',
|
1157 |
+
sprintf(
|
1158 |
+
/* translators: %s: Link to the login page. */
|
1159 |
+
__( 'Check your email for the confirmation link, then visit the <a href="%s">login page</a>.' ),
|
1160 |
+
wp_login_url()
|
1161 |
+
),
|
1162 |
+
'message'
|
1163 |
+
);
|
1164 |
+
} elseif ( 'registered' === $_GET['checkemail'] ) {
|
1165 |
+
$errors->add(
|
1166 |
+
'registered',
|
1167 |
+
sprintf(
|
1168 |
+
/* translators: %s: Link to the login page. */
|
1169 |
+
__( 'Registration complete. Please check your email, then visit the <a href="%s">login page</a>.' ),
|
1170 |
+
wp_login_url()
|
1171 |
+
),
|
1172 |
+
'message'
|
1173 |
+
);
|
1174 |
+
}
|
1175 |
+
|
1176 |
+
/** This action is documented in wp-login.php */
|
1177 |
+
$errors = apply_filters( 'wp_login_errors', $errors, $redirect_to );
|
1178 |
+
|
1179 |
+
login_header( __( 'Check your email' ), '', $errors );
|
1180 |
+
login_footer();
|
1181 |
+
break;
|
1182 |
+
|
1183 |
+
case 'confirmaction':
|
1184 |
+
if ( ! isset( $_GET['request_id'] ) ) {
|
1185 |
+
wp_die( __( 'Missing request ID.' ) );
|
1186 |
+
}
|
1187 |
+
|
1188 |
+
if ( ! isset( $_GET['confirm_key'] ) ) {
|
1189 |
+
wp_die( __( 'Missing confirm key.' ) );
|
1190 |
+
}
|
1191 |
+
|
1192 |
+
$request_id = (int) $_GET['request_id'];
|
1193 |
+
$key = sanitize_text_field( wp_unslash( $_GET['confirm_key'] ) );
|
1194 |
+
$result = wp_validate_user_request_key( $request_id, $key );
|
1195 |
+
|
1196 |
+
if ( is_wp_error( $result ) ) {
|
1197 |
+
wp_die( $result );
|
1198 |
+
}
|
1199 |
+
|
1200 |
+
/**
|
1201 |
+
* Fires an action hook when the account action has been confirmed by the user.
|
1202 |
+
*
|
1203 |
+
* Using this you can assume the user has agreed to perform the action by
|
1204 |
+
* clicking on the link in the confirmation email.
|
1205 |
+
*
|
1206 |
+
* After firing this action hook the page will redirect to wp-login a callback
|
1207 |
+
* redirects or exits first.
|
1208 |
+
*
|
1209 |
+
* @since 4.9.6
|
1210 |
+
*
|
1211 |
+
* @param int $request_id Request ID.
|
1212 |
+
*/
|
1213 |
+
do_action( 'user_request_action_confirmed', $request_id );
|
1214 |
+
|
1215 |
+
$message = _wp_privacy_account_request_confirmed_message( $request_id );
|
1216 |
+
|
1217 |
+
login_header( __( 'User action confirmed.' ), $message );
|
1218 |
+
login_footer();
|
1219 |
+
exit;
|
1220 |
+
|
1221 |
+
case 'login':
|
1222 |
+
default:
|
1223 |
+
$secure_cookie = '';
|
1224 |
+
$customize_login = isset( $_REQUEST['customize-login'] );
|
1225 |
+
|
1226 |
+
if ( $customize_login ) {
|
1227 |
+
wp_enqueue_script( 'customize-base' );
|
1228 |
+
}
|
1229 |
+
|
1230 |
+
// If the user wants SSL but the session is not SSL, force a secure cookie.
|
1231 |
+
if ( ! empty( $_POST['log'] ) && ! force_ssl_admin() ) {
|
1232 |
+
$user_name = sanitize_user( wp_unslash( $_POST['log'] ) );
|
1233 |
+
$user = get_user_by( 'login', $user_name );
|
1234 |
+
|
1235 |
+
if ( ! $user && strpos( $user_name, '@' ) ) {
|
1236 |
+
$user = get_user_by( 'email', $user_name );
|
1237 |
+
}
|
1238 |
+
|
1239 |
+
if ( $user ) {
|
1240 |
+
if ( get_user_option( 'use_ssl', $user->ID ) ) {
|
1241 |
+
$secure_cookie = true;
|
1242 |
+
force_ssl_admin( true );
|
1243 |
+
}
|
1244 |
+
}
|
1245 |
+
}
|
1246 |
+
|
1247 |
+
if ( isset( $_REQUEST['redirect_to'] ) ) {
|
1248 |
+
$redirect_to = $_REQUEST['redirect_to'];
|
1249 |
+
// Redirect to HTTPS if user wants SSL.
|
1250 |
+
if ( $secure_cookie && false !== strpos( $redirect_to, 'wp-admin' ) ) {
|
1251 |
+
$redirect_to = preg_replace( '|^http://|', 'https://', $redirect_to );
|
1252 |
+
}
|
1253 |
+
} else {
|
1254 |
+
$redirect_to = admin_url();
|
1255 |
+
}
|
1256 |
+
|
1257 |
+
$reauth = empty( $_REQUEST['reauth'] ) ? false : true;
|
1258 |
+
|
1259 |
+
$user = wp_signon( array(), $secure_cookie );
|
1260 |
+
|
1261 |
+
if ( empty( $_COOKIE[ LOGGED_IN_COOKIE ] ) ) {
|
1262 |
+
if ( headers_sent() ) {
|
1263 |
+
$user = new WP_Error(
|
1264 |
+
'test_cookie',
|
1265 |
+
sprintf(
|
1266 |
+
/* translators: 1: Browser cookie documentation URL, 2: Support forums URL. */
|
1267 |
+
__( '<strong>Error</strong>: Cookies are blocked due to unexpected output. For help, please see <a href="%1$s">this documentation</a> or try the <a href="%2$s">support forums</a>.' ),
|
1268 |
+
__( 'https://wordpress.org/support/article/cookies/' ),
|
1269 |
+
__( 'https://wordpress.org/support/forums/' )
|
1270 |
+
)
|
1271 |
+
);
|
1272 |
+
} elseif ( isset( $_POST['testcookie'] ) && empty( $_COOKIE[ TEST_COOKIE ] ) ) {
|
1273 |
+
// If cookies are disabled, we can't log in even with a valid user and password.
|
1274 |
+
$user = new WP_Error(
|
1275 |
+
'test_cookie',
|
1276 |
+
sprintf(
|
1277 |
+
/* translators: %s: Browser cookie documentation URL. */
|
1278 |
+
__( '<strong>Error</strong>: Cookies are blocked or not supported by your browser. You must <a href="%s">enable cookies</a> to use WordPress.' ),
|
1279 |
+
__( 'https://wordpress.org/support/article/cookies/#enable-cookies-in-your-browser' )
|
1280 |
+
)
|
1281 |
+
);
|
1282 |
+
}
|
1283 |
+
}
|
1284 |
+
|
1285 |
+
$requested_redirect_to = isset( $_REQUEST['redirect_to'] ) ? $_REQUEST['redirect_to'] : '';
|
1286 |
+
/**
|
1287 |
+
* Filters the login redirect URL.
|
1288 |
+
*
|
1289 |
+
* @since 3.0.0
|
1290 |
+
*
|
1291 |
+
* @param string $redirect_to The redirect destination URL.
|
1292 |
+
* @param string $requested_redirect_to The requested redirect destination URL passed as a parameter.
|
1293 |
+
* @param WP_User|WP_Error $user WP_User object if login was successful, WP_Error object otherwise.
|
1294 |
+
*/
|
1295 |
+
$redirect_to = apply_filters( 'login_redirect', $redirect_to, $requested_redirect_to, $user );
|
1296 |
+
|
1297 |
+
if ( ! is_wp_error( $user ) && ! $reauth ) {
|
1298 |
+
if ( $interim_login ) {
|
1299 |
+
$message = '<p class="message">' . __( 'You have logged in successfully.' ) . '</p>';
|
1300 |
+
$interim_login = 'success';
|
1301 |
+
login_header( '', $message );
|
1302 |
+
|
1303 |
+
?>
|
1304 |
+
</div>
|
1305 |
+
<?php
|
1306 |
+
|
1307 |
+
/** This action is documented in wp-login.php */
|
1308 |
+
do_action( 'login_footer' );
|
1309 |
+
|
1310 |
+
if ( $customize_login ) {
|
1311 |
+
?>
|
1312 |
+
<script type="text/javascript">setTimeout( function(){ new wp.customize.Messenger({ url: '<?php echo wp_customize_url(); ?>', channel: 'login' }).send('login') }, 1000 );</script>
|
1313 |
+
<?php
|
1314 |
+
}
|
1315 |
+
|
1316 |
+
?>
|
1317 |
+
</body></html>
|
1318 |
+
<?php
|
1319 |
+
|
1320 |
+
exit;
|
1321 |
+
}
|
1322 |
+
|
1323 |
+
// Check if it is time to add a redirect to the admin email confirmation screen.
|
1324 |
+
if ( is_a( $user, 'WP_User' ) && $user->exists() && $user->has_cap( 'manage_options' ) ) {
|
1325 |
+
$admin_email_lifespan = (int) get_option( 'admin_email_lifespan' );
|
1326 |
+
|
1327 |
+
// If `0` (or anything "falsey" as it is cast to int) is returned, the user will not be redirected
|
1328 |
+
// to the admin email confirmation screen.
|
1329 |
+
/** This filter is documented in wp-login.php */
|
1330 |
+
$admin_email_check_interval = (int) apply_filters( 'admin_email_check_interval', 6 * MONTH_IN_SECONDS );
|
1331 |
+
|
1332 |
+
if ( $admin_email_check_interval > 0 && time() > $admin_email_lifespan ) {
|
1333 |
+
$redirect_to = add_query_arg(
|
1334 |
+
array(
|
1335 |
+
'action' => 'confirm_admin_email',
|
1336 |
+
'wp_lang' => get_user_locale( $user ),
|
1337 |
+
),
|
1338 |
+
wp_login_url( $redirect_to )
|
1339 |
+
);
|
1340 |
+
}
|
1341 |
+
}
|
1342 |
+
|
1343 |
+
if ( ( empty( $redirect_to ) || 'wp-admin/' === $redirect_to || admin_url() === $redirect_to ) ) {
|
1344 |
+
// If the user doesn't belong to a blog, send them to user admin. If the user can't edit posts, send them to their profile.
|
1345 |
+
if ( is_multisite() && ! get_active_blog_for_user( $user->ID ) && ! is_super_admin( $user->ID ) ) {
|
1346 |
+
$redirect_to = user_admin_url();
|
1347 |
+
} elseif ( is_multisite() && ! $user->has_cap( 'read' ) ) {
|
1348 |
+
$redirect_to = get_dashboard_url( $user->ID );
|
1349 |
+
} elseif ( ! $user->has_cap( 'edit_posts' ) ) {
|
1350 |
+
$redirect_to = $user->has_cap( 'read' ) ? admin_url( 'profile.php' ) : home_url();
|
1351 |
+
}
|
1352 |
+
|
1353 |
+
wp_redirect( $redirect_to );
|
1354 |
+
exit;
|
1355 |
+
}
|
1356 |
+
|
1357 |
+
wp_safe_redirect( $redirect_to );
|
1358 |
+
exit;
|
1359 |
+
}
|
1360 |
+
|
1361 |
+
$errors = $user;
|
1362 |
+
// Clear errors if loggedout is set.
|
1363 |
+
if ( ! empty( $_GET['loggedout'] ) || $reauth ) {
|
1364 |
+
$errors = new WP_Error();
|
1365 |
+
}
|
1366 |
+
|
1367 |
+
if ( empty( $_POST ) && $errors->get_error_codes() === array( 'empty_username', 'empty_password' ) ) {
|
1368 |
+
$errors = new WP_Error( '', '' );
|
1369 |
+
}
|
1370 |
+
|
1371 |
+
if ( $interim_login ) {
|
1372 |
+
if ( ! $errors->has_errors() ) {
|
1373 |
+
$errors->add( 'expired', __( 'Your session has expired. Please log in to continue where you left off.' ), 'message' );
|
1374 |
+
}
|
1375 |
+
} else {
|
1376 |
+
// Some parts of this script use the main login form to display a message.
|
1377 |
+
if ( isset( $_GET['loggedout'] ) && $_GET['loggedout'] ) {
|
1378 |
+
$errors->add( 'loggedout', __( 'You are now logged out.' ), 'message' );
|
1379 |
+
} elseif ( isset( $_GET['registration'] ) && 'disabled' === $_GET['registration'] ) {
|
1380 |
+
$errors->add( 'registerdisabled', __( 'User registration is currently not allowed.' ) );
|
1381 |
+
} elseif ( strpos( $redirect_to, 'about.php?updated' ) ) {
|
1382 |
+
$errors->add( 'updated', __( '<strong>You have successfully updated WordPress!</strong> Please log back in to see what’s new.' ), 'message' );
|
1383 |
+
} elseif ( WP_Recovery_Mode_Link_Service::LOGIN_ACTION_ENTERED === $action ) {
|
1384 |
+
$errors->add( 'enter_recovery_mode', __( 'Recovery Mode Initialized. Please log in to continue.' ), 'message' );
|
1385 |
+
} elseif ( isset( $_GET['redirect_to'] ) && false !== strpos( $_GET['redirect_to'], 'wp-admin/authorize-application.php' ) ) {
|
1386 |
+
$query_component = wp_parse_url( $_GET['redirect_to'], PHP_URL_QUERY );
|
1387 |
+
parse_str( $query_component, $query );
|
1388 |
+
|
1389 |
+
if ( ! empty( $query['app_name'] ) ) {
|
1390 |
+
/* translators: 1: Website name, 2: Application name. */
|
1391 |
+
$message = sprintf( 'Please log in to %1$s to authorize %2$s to connect to your account.', get_bloginfo( 'name', 'display' ), '<strong>' . esc_html( $query['app_name'] ) . '</strong>' );
|
1392 |
+
} else {
|
1393 |
+
/* translators: %s: Website name. */
|
1394 |
+
$message = sprintf( 'Please log in to %s to proceed with authorization.', get_bloginfo( 'name', 'display' ) );
|
1395 |
+
}
|
1396 |
+
|
1397 |
+
$errors->add( 'authorize_application', $message, 'message' );
|
1398 |
+
}
|
1399 |
+
}
|
1400 |
+
|
1401 |
+
/**
|
1402 |
+
* Filters the login page errors.
|
1403 |
+
*
|
1404 |
+
* @since 3.6.0
|
1405 |
+
*
|
1406 |
+
* @param WP_Error $errors WP Error object.
|
1407 |
+
* @param string $redirect_to Redirect destination URL.
|
1408 |
+
*/
|
1409 |
+
$errors = apply_filters( 'wp_login_errors', $errors, $redirect_to );
|
1410 |
+
|
1411 |
+
// Clear any stale cookies.
|
1412 |
+
if ( $reauth ) {
|
1413 |
+
wp_clear_auth_cookie();
|
1414 |
+
}
|
1415 |
+
|
1416 |
+
login_header( __( 'Log In' ), '', $errors );
|
1417 |
+
|
1418 |
+
if ( isset( $_POST['log'] ) ) {
|
1419 |
+
$user_login = ( 'incorrect_password' === $errors->get_error_code() || 'empty_password' === $errors->get_error_code() ) ? esc_attr( wp_unslash( $_POST['log'] ) ) : '';
|
1420 |
+
}
|
1421 |
+
|
1422 |
+
$rememberme = ! empty( $_POST['rememberme'] );
|
1423 |
+
|
1424 |
+
if ( $errors->has_errors() ) {
|
1425 |
+
$aria_describedby_error = ' aria-describedby="login_error"';
|
1426 |
+
} else {
|
1427 |
+
$aria_describedby_error = '';
|
1428 |
+
}
|
1429 |
+
|
1430 |
+
wp_enqueue_script( 'user-profile' );
|
1431 |
+
|
1432 |
+
//aiowps - this check is necessary because otherwise if variables are undefined we get a warning!
|
1433 |
+
if(empty($user_login)){
|
1434 |
+
$user_login = '';
|
1435 |
+
}
|
1436 |
+
if(empty($error)){
|
1437 |
+
$error = '';
|
1438 |
+
}
|
1439 |
+
?>
|
1440 |
+
|
1441 |
+
<form name="loginform" id="loginform" action="<?php echo esc_url( site_url( 'wp-login.php', 'login_post' ) ); ?>" method="post">
|
1442 |
+
<p>
|
1443 |
+
<label for="user_login"><?php _e( 'Username or Email Address' ); ?></label>
|
1444 |
+
<input type="text" name="log" id="user_login"<?php echo $aria_describedby_error; ?> class="input" value="<?php echo esc_attr( $user_login ); ?>" size="20" autocapitalize="off" />
|
1445 |
+
</p>
|
1446 |
+
|
1447 |
+
<div class="user-pass-wrap">
|
1448 |
+
<label for="user_pass"><?php _e( 'Password' ); ?></label>
|
1449 |
+
<div class="wp-pwd">
|
1450 |
+
<input type="password" name="pwd" id="user_pass"<?php echo $aria_describedby_error; ?> class="input password-input" value="" size="20" />
|
1451 |
+
<button type="button" class="button button-secondary wp-hide-pw hide-if-no-js" data-toggle="0" aria-label="<?php esc_attr_e( 'Show password' ); ?>">
|
1452 |
+
<span class="dashicons dashicons-visibility" aria-hidden="true"></span>
|
1453 |
+
</button>
|
1454 |
+
</div>
|
1455 |
+
</div>
|
1456 |
+
<?php
|
1457 |
+
|
1458 |
+
/**
|
1459 |
+
* Fires following the 'Password' field in the login form.
|
1460 |
+
*
|
1461 |
+
* @since 2.1.0
|
1462 |
+
*/
|
1463 |
+
do_action( 'login_form' );
|
1464 |
+
|
1465 |
+
?>
|
1466 |
+
<p class="forgetmenot"><input name="rememberme" type="checkbox" id="rememberme" value="forever" <?php checked( $rememberme ); ?> /> <label for="rememberme"><?php esc_html_e( 'Remember Me' ); ?></label></p>
|
1467 |
+
<p class="submit">
|
1468 |
+
<input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="<?php esc_attr_e( 'Log In' ); ?>" />
|
1469 |
+
<?php
|
1470 |
+
|
1471 |
+
if ( $interim_login ) {
|
1472 |
+
?>
|
1473 |
+
<input type="hidden" name="interim-login" value="1" />
|
1474 |
+
<?php
|
1475 |
+
} else {
|
1476 |
+
?>
|
1477 |
+
<input type="hidden" name="redirect_to" value="<?php echo esc_attr( $redirect_to ); ?>" />
|
1478 |
+
<?php
|
1479 |
+
}
|
1480 |
+
|
1481 |
+
if ( $customize_login ) {
|
1482 |
+
?>
|
1483 |
+
<input type="hidden" name="customize-login" value="1" />
|
1484 |
+
<?php
|
1485 |
+
}
|
1486 |
+
|
1487 |
+
?>
|
1488 |
+
<input type="hidden" name="testcookie" value="1" />
|
1489 |
+
</p>
|
1490 |
+
</form>
|
1491 |
+
|
1492 |
+
<?php
|
1493 |
+
|
1494 |
+
if ( ! $interim_login ) {
|
1495 |
+
?>
|
1496 |
+
<p id="nav">
|
1497 |
+
<?php
|
1498 |
+
|
1499 |
+
if ( get_option( 'users_can_register' ) ) {
|
1500 |
+
$registration_url = sprintf( '<a href="%s">%s</a>', esc_url( wp_registration_url() ), __( 'Register' ) );
|
1501 |
+
|
1502 |
+
/** This filter is documented in wp-includes/general-template.php */
|
1503 |
+
echo apply_filters( 'register', $registration_url );
|
1504 |
+
|
1505 |
+
echo esc_html( $login_link_separator );
|
1506 |
+
}
|
1507 |
+
|
1508 |
+
?>
|
1509 |
+
<a href="<?php echo esc_url( wp_lostpassword_url() ); ?>"><?php _e( 'Lost your password?' ); ?></a>
|
1510 |
+
</p>
|
1511 |
+
<?php
|
1512 |
+
}
|
1513 |
+
|
1514 |
+
$login_script = 'function wp_attempt_focus() {';
|
1515 |
+
$login_script .= 'setTimeout( function() {';
|
1516 |
+
$login_script .= 'try {';
|
1517 |
+
|
1518 |
+
if ( $user_login ) {
|
1519 |
+
$login_script .= 'd = document.getElementById( "user_pass" ); d.value = "";';
|
1520 |
+
} else {
|
1521 |
+
$login_script .= 'd = document.getElementById( "user_login" );';
|
1522 |
+
|
1523 |
+
if ( $errors->get_error_code() === 'invalid_username' ) {
|
1524 |
+
$login_script .= 'd.value = "";';
|
1525 |
+
}
|
1526 |
+
}
|
1527 |
+
|
1528 |
+
$login_script .= 'd.focus(); d.select();';
|
1529 |
+
$login_script .= '} catch( er ) {}';
|
1530 |
+
$login_script .= '}, 200);';
|
1531 |
+
$login_script .= "}\n"; // End of wp_attempt_focus().
|
1532 |
+
|
1533 |
+
/**
|
1534 |
+
* Filters whether to print the call to `wp_attempt_focus()` on the login screen.
|
1535 |
+
*
|
1536 |
+
* @since 4.8.0
|
1537 |
+
*
|
1538 |
+
* @param bool $print Whether to print the function call. Default true.
|
1539 |
+
*/
|
1540 |
+
if ( apply_filters( 'enable_login_autofocus', true ) && ! $error ) {
|
1541 |
+
$login_script .= "wp_attempt_focus();\n";
|
1542 |
+
}
|
1543 |
+
|
1544 |
+
// Run `wpOnload()` if defined.
|
1545 |
+
$login_script .= "if ( typeof wpOnload === 'function' ) { wpOnload() }";
|
1546 |
+
|
1547 |
+
?>
|
1548 |
+
<script type="text/javascript">
|
1549 |
+
<?php echo $login_script; ?>
|
1550 |
+
</script>
|
1551 |
+
<?php
|
1552 |
+
|
1553 |
+
if ( $interim_login ) {
|
1554 |
+
?>
|
1555 |
+
<script type="text/javascript">
|
1556 |
+
( function() {
|
1557 |
+
try {
|
1558 |
+
var i, links = document.getElementsByTagName( 'a' );
|
1559 |
+
for ( i in links ) {
|
1560 |
+
if ( links[i].href ) {
|
1561 |
+
links[i].target = '_blank';
|
1562 |
+
links[i].rel = 'noopener';
|
1563 |
+
}
|
1564 |
+
}
|
1565 |
+
} catch( er ) {}
|
1566 |
+
}());
|
1567 |
+
</script>
|
1568 |
+
<?php
|
1569 |
+
}
|
1570 |
+
|
1571 |
+
login_footer();
|
1572 |
+
break;
|
1573 |
+
} // End action switch.
|
other-includes/wp-security-rename-login-feature.php
CHANGED
@@ -10,14 +10,17 @@
|
|
10 |
|
11 |
/** Make sure that the WordPress bootstrap has run before continuing. */
|
12 |
|
|
|
|
|
|
|
13 |
// Redirect to HTTPS login if forced to use SSL.
|
14 |
if ( force_ssl_admin() && ! is_ssl() ) {
|
15 |
if ( 0 === strpos( $_SERVER['REQUEST_URI'], 'http' ) ) {
|
16 |
wp_safe_redirect( set_url_scheme( $_SERVER['REQUEST_URI'], 'https' ) );
|
17 |
-
exit
|
18 |
} else {
|
19 |
wp_safe_redirect( 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
|
20 |
-
exit
|
21 |
}
|
22 |
}
|
23 |
|
@@ -26,6 +29,12 @@ if ( force_ssl_admin() && ! is_ssl() ) {
|
|
26 |
*
|
27 |
* @since 2.1.0
|
28 |
*
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
* @param string $title Optional. WordPress login Page title to display in the `<title>` element.
|
30 |
* Default 'Log In'.
|
31 |
* @param string $message Optional. Message to display in header. Default empty.
|
@@ -34,8 +43,9 @@ if ( force_ssl_admin() && ! is_ssl() ) {
|
|
34 |
function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
35 |
global $error, $interim_login, $action;
|
36 |
|
37 |
-
// Don't index any of these forms
|
38 |
-
|
|
|
39 |
|
40 |
add_action( 'login_head', 'wp_login_viewport_meta' );
|
41 |
|
@@ -44,7 +54,7 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
44 |
}
|
45 |
|
46 |
// Shake it!
|
47 |
-
$shake_error_codes = array( 'empty_password', 'empty_email', 'invalid_email', 'invalidcombo', 'empty_username', 'invalid_username', 'incorrect_password' );
|
48 |
/**
|
49 |
* Filters the error codes array for shaking the login form.
|
50 |
*
|
@@ -54,13 +64,13 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
54 |
*/
|
55 |
$shake_error_codes = apply_filters( 'shake_error_codes', $shake_error_codes );
|
56 |
|
57 |
-
if ( $shake_error_codes && $wp_error->has_errors() && in_array( $wp_error->get_error_code(), $shake_error_codes ) ) {
|
58 |
-
add_action( '
|
59 |
}
|
60 |
|
61 |
$login_title = get_bloginfo( 'name', 'display' );
|
62 |
|
63 |
-
/* translators: Login screen title. 1: Login screen name, 2: Network or site name */
|
64 |
$login_title = sprintf( __( '%1$s ‹ %2$s — WordPress' ), $title, $login_title );
|
65 |
|
66 |
if ( wp_is_recovery_mode() ) {
|
@@ -79,12 +89,7 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
79 |
$login_title = apply_filters( 'login_title', $login_title, $title );
|
80 |
|
81 |
?><!DOCTYPE html>
|
82 |
-
|
83 |
-
<html xmlns="http://www.w3.org/1999/xhtml" class="ie8" <?php language_attributes(); ?>>
|
84 |
-
<![endif]-->
|
85 |
-
<!--[if !(IE 8) ]><!-->
|
86 |
-
<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
|
87 |
-
<!--<![endif]-->
|
88 |
<head>
|
89 |
<meta http-equiv="Content-Type" content="<?php bloginfo( 'html_type' ); ?>; charset=<?php bloginfo( 'charset' ); ?>" />
|
90 |
<title><?php echo $login_title; ?></title>
|
@@ -97,7 +102,7 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
97 |
* This could be added by add_action('login_head'...) like wp_shake_js(),
|
98 |
* but maybe better if it's not removable by plugins.
|
99 |
*/
|
100 |
-
if ( 'loggedout'
|
101 |
?>
|
102 |
<script>if("sessionStorage" in window){try{for(var key in sessionStorage){if(key.indexOf("wp-autosave-")!=-1){sessionStorage.removeItem(key)}}}catch(e){}};</script>
|
103 |
<?php
|
@@ -134,7 +139,7 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
134 |
* Filters the title attribute of the header logo above login form.
|
135 |
*
|
136 |
* @since 2.1.0
|
137 |
-
* @deprecated 5.2.0 Use login_headertext
|
138 |
*
|
139 |
* @param string $login_header_title Login header logo title attribute.
|
140 |
*/
|
@@ -158,11 +163,14 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
158 |
$login_header_text = apply_filters( 'login_headertext', $login_header_text );
|
159 |
|
160 |
$classes = array( 'login-action-' . $action, 'wp-core-ui' );
|
|
|
161 |
if ( is_rtl() ) {
|
162 |
$classes[] = 'rtl';
|
163 |
}
|
|
|
164 |
if ( $interim_login ) {
|
165 |
$classes[] = 'interim-login';
|
|
|
166 |
?>
|
167 |
<style type="text/css">html{background-color: transparent;}</style>
|
168 |
<?php
|
@@ -171,6 +179,7 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
171 |
$classes[] = 'interim-login-success';
|
172 |
}
|
173 |
}
|
|
|
174 |
$classes[] = ' locale-' . sanitize_html_class( strtolower( str_replace( '_', '-', get_locale() ) ) );
|
175 |
|
176 |
/**
|
@@ -185,7 +194,10 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
185 |
|
186 |
?>
|
187 |
</head>
|
188 |
-
<body class="login <?php echo esc_attr( implode( ' ', $classes ) ); ?>">
|
|
|
|
|
|
|
189 |
<?php
|
190 |
/**
|
191 |
* Fires in the login page header after the body tag is opened.
|
@@ -193,6 +205,7 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
193 |
* @since 4.6.0
|
194 |
*/
|
195 |
do_action( 'login_header' );
|
|
|
196 |
?>
|
197 |
<div id="login">
|
198 |
<h1><a href="<?php echo esc_url( $login_header_url ); ?>"><?php echo $login_header_text; ?></a></h1>
|
@@ -205,6 +218,7 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
205 |
* @param string $message Login message text.
|
206 |
*/
|
207 |
$message = apply_filters( 'login_message', $message );
|
|
|
208 |
if ( ! empty( $message ) ) {
|
209 |
echo $message . "\n";
|
210 |
}
|
@@ -218,16 +232,18 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
218 |
if ( $wp_error->has_errors() ) {
|
219 |
$errors = '';
|
220 |
$messages = '';
|
|
|
221 |
foreach ( $wp_error->get_error_codes() as $code ) {
|
222 |
$severity = $wp_error->get_error_data( $code );
|
223 |
foreach ( $wp_error->get_error_messages( $code ) as $error_message ) {
|
224 |
-
if ( 'message'
|
225 |
$messages .= ' ' . $error_message . "<br />\n";
|
226 |
} else {
|
227 |
$errors .= ' ' . $error_message . "<br />\n";
|
228 |
}
|
229 |
}
|
230 |
}
|
|
|
231 |
if ( ! empty( $errors ) ) {
|
232 |
/**
|
233 |
* Filters the error messages displayed above the login form.
|
@@ -238,6 +254,7 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
238 |
*/
|
239 |
echo '<div id="login_error">' . apply_filters( 'login_errors', $errors ) . "</div>\n";
|
240 |
}
|
|
|
241 |
if ( ! empty( $messages ) ) {
|
242 |
/**
|
243 |
* Filters instructional messages displayed above the login form.
|
@@ -249,46 +266,58 @@ function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
|
249 |
echo '<p class="message">' . apply_filters( 'login_messages', $messages ) . "</p>\n";
|
250 |
}
|
251 |
}
|
252 |
-
} // End of login_header()
|
253 |
|
254 |
/**
|
255 |
* Outputs the footer for the login page.
|
256 |
*
|
257 |
* @since 3.1.0
|
258 |
*
|
|
|
|
|
|
|
259 |
* @param string $input_id Which input to auto-focus.
|
260 |
*/
|
261 |
function login_footer( $input_id = '' ) {
|
262 |
global $interim_login;
|
263 |
|
264 |
// Don't allow interim logins to navigate away from the page.
|
265 |
-
if ( ! $interim_login )
|
266 |
?>
|
267 |
-
|
268 |
<?php
|
269 |
-
|
270 |
-
|
|
|
|
|
271 |
?>
|
272 |
-
|
273 |
-
<?php
|
274 |
-
<?php endif; ?>
|
275 |
|
276 |
-
|
|
|
277 |
|
278 |
-
|
279 |
-
<
|
280 |
-
try{document.getElementById('<?php echo $input_id; ?>').focus();}catch(e){}
|
281 |
-
if(typeof wpOnload=='function')wpOnload();
|
282 |
-
</script>
|
283 |
-
<?php endif; ?>
|
284 |
|
285 |
<?php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
286 |
/**
|
287 |
* Fires in the login page footer.
|
288 |
*
|
289 |
* @since 3.1.0
|
290 |
*/
|
291 |
do_action( 'login_footer' );
|
|
|
292 |
?>
|
293 |
<div class="clear"></div>
|
294 |
</body>
|
@@ -297,24 +326,20 @@ function login_footer( $input_id = '' ) {
|
|
297 |
}
|
298 |
|
299 |
/**
|
300 |
-
* Outputs the Javascript to handle the form shaking.
|
301 |
*
|
302 |
* @since 3.0.0
|
303 |
*/
|
304 |
function wp_shake_js() {
|
305 |
?>
|
306 |
-
<script type="text/javascript">
|
307 |
-
|
308 |
-
|
309 |
-
function g(id){return document.getElementById(id).style;}
|
310 |
-
function shake(id,a,d){c=a.shift();s(id,c);if(a.length>0){setTimeout(function(){shake(id,a,d);},d);}else{try{g(id).position='static';wp_attempt_focus();}catch(e){}}}
|
311 |
-
addLoadEvent(function(){ var p=new Array(15,30,15,0,-15,-30,-15,0);p=p.concat(p.concat(p));var i=document.forms[0].id;g(i).position='relative';shake(i,p,20);});
|
312 |
-
</script>
|
313 |
<?php
|
314 |
}
|
315 |
|
316 |
/**
|
317 |
-
* Outputs the viewport meta tag.
|
318 |
*
|
319 |
* @since 3.7.0
|
320 |
*/
|
@@ -324,112 +349,6 @@ function wp_login_viewport_meta() {
|
|
324 |
<?php
|
325 |
}
|
326 |
|
327 |
-
/**
|
328 |
-
* Handles sending password retrieval email to user.
|
329 |
-
*
|
330 |
-
* @since 2.5.0
|
331 |
-
*
|
332 |
-
* @return bool|WP_Error True: when finish. WP_Error on error
|
333 |
-
*/
|
334 |
-
function retrieve_password() {
|
335 |
-
$errors = new WP_Error();
|
336 |
-
|
337 |
-
if ( empty( $_POST['user_login'] ) || ! is_string( $_POST['user_login'] ) ) {
|
338 |
-
$errors->add( 'empty_username', __( '<strong>ERROR</strong>: Enter a username or email address.' ) );
|
339 |
-
} elseif ( strpos( $_POST['user_login'], '@' ) ) {
|
340 |
-
$user_data = get_user_by( 'email', trim( wp_unslash( $_POST['user_login'] ) ) );
|
341 |
-
if ( empty( $user_data ) ) {
|
342 |
-
$errors->add( 'invalid_email', __( '<strong>ERROR</strong>: There is no account with that username or email address.' ) );
|
343 |
-
}
|
344 |
-
} else {
|
345 |
-
$login = trim( $_POST['user_login'] );
|
346 |
-
$user_data = get_user_by( 'login', $login );
|
347 |
-
}
|
348 |
-
|
349 |
-
/**
|
350 |
-
* Fires before errors are returned from a password reset request.
|
351 |
-
*
|
352 |
-
* @since 2.1.0
|
353 |
-
* @since 4.4.0 Added the `$errors` parameter.
|
354 |
-
*
|
355 |
-
* @param WP_Error $errors A WP_Error object containing any errors generated
|
356 |
-
* by using invalid credentials.
|
357 |
-
*/
|
358 |
-
do_action( 'lostpassword_post', $errors );
|
359 |
-
|
360 |
-
if ( $errors->has_errors() ) {
|
361 |
-
return $errors;
|
362 |
-
}
|
363 |
-
|
364 |
-
if ( ! $user_data ) {
|
365 |
-
$errors->add( 'invalidcombo', __( '<strong>ERROR</strong>: There is no account with that username or email address.' ) );
|
366 |
-
return $errors;
|
367 |
-
}
|
368 |
-
|
369 |
-
// Redefining user_login ensures we return the right case in the email.
|
370 |
-
$user_login = $user_data->user_login;
|
371 |
-
$user_email = $user_data->user_email;
|
372 |
-
$key = get_password_reset_key( $user_data );
|
373 |
-
|
374 |
-
if ( is_wp_error( $key ) ) {
|
375 |
-
return $key;
|
376 |
-
}
|
377 |
-
|
378 |
-
if ( is_multisite() ) {
|
379 |
-
$site_name = get_network()->site_name;
|
380 |
-
} else {
|
381 |
-
/*
|
382 |
-
* The blogname option is escaped with esc_html on the way into the database
|
383 |
-
* in sanitize_option we want to reverse this for the plain text arena of emails.
|
384 |
-
*/
|
385 |
-
$site_name = wp_specialchars_decode( get_option( 'blogname' ), ENT_QUOTES );
|
386 |
-
}
|
387 |
-
|
388 |
-
$message = __( 'Someone has requested a password reset for the following account:' ) . "\r\n\r\n";
|
389 |
-
/* translators: %s: site name */
|
390 |
-
$message .= sprintf( __( 'Site Name: %s' ), $site_name ) . "\r\n\r\n";
|
391 |
-
/* translators: %s: user login */
|
392 |
-
$message .= sprintf( __( 'Username: %s' ), $user_login ) . "\r\n\r\n";
|
393 |
-
$message .= __( 'If this was a mistake, just ignore this email and nothing will happen.' ) . "\r\n\r\n";
|
394 |
-
$message .= __( 'To reset your password, visit the following address:' ) . "\r\n\r\n";
|
395 |
-
$message .= '<' . network_site_url( "wp-login.php?action=rp&key=$key&login=" . rawurlencode( $user_login ), 'login' ) . ">\r\n";
|
396 |
-
|
397 |
-
/* translators: Password reset notification email subject. %s: Site title */
|
398 |
-
$title = sprintf( __( '[%s] Password Reset' ), $site_name );
|
399 |
-
|
400 |
-
/**
|
401 |
-
* Filters the subject of the password reset email.
|
402 |
-
*
|
403 |
-
* @since 2.8.0
|
404 |
-
* @since 4.4.0 Added the `$user_login` and `$user_data` parameters.
|
405 |
-
*
|
406 |
-
* @param string $title Default email title.
|
407 |
-
* @param string $user_login The username for the user.
|
408 |
-
* @param WP_User $user_data WP_User object.
|
409 |
-
*/
|
410 |
-
$title = apply_filters( 'retrieve_password_title', $title, $user_login, $user_data );
|
411 |
-
|
412 |
-
/**
|
413 |
-
* Filters the message body of the password reset mail.
|
414 |
-
*
|
415 |
-
* If the filtered message is empty, the password reset email will not be sent.
|
416 |
-
*
|
417 |
-
* @since 2.8.0
|
418 |
-
* @since 4.1.0 Added `$user_login` and `$user_data` parameters.
|
419 |
-
*
|
420 |
-
* @param string $message Default mail message.
|
421 |
-
* @param string $key The activation key.
|
422 |
-
* @param string $user_login The username for the user.
|
423 |
-
* @param WP_User $user_data WP_User object.
|
424 |
-
*/
|
425 |
-
$message = apply_filters( 'retrieve_password_message', $message, $key, $user_login, $user_data );
|
426 |
-
|
427 |
-
if ( $message && ! wp_mail( $user_email, wp_specialchars_decode( $title ), $message ) ) {
|
428 |
-
wp_die( __( 'The email could not be sent.' ) . "<br />\n" . __( 'Possible reason: your host may have disabled the mail() function.' ) );
|
429 |
-
}
|
430 |
-
|
431 |
-
return true;
|
432 |
-
}
|
433 |
|
434 |
//
|
435 |
// Main.
|
@@ -442,8 +361,27 @@ if ( isset( $_GET['key'] ) ) {
|
|
442 |
$action = 'resetpass';
|
443 |
}
|
444 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
445 |
// Validate action so as to default to the login screen.
|
446 |
-
if ( ! in_array( $action,
|
447 |
$action = 'login';
|
448 |
}
|
449 |
|
@@ -451,21 +389,23 @@ nocache_headers();
|
|
451 |
|
452 |
header( 'Content-Type: ' . get_bloginfo( 'html_type' ) . '; charset=' . get_bloginfo( 'charset' ) );
|
453 |
|
454 |
-
if ( defined( 'RELOCATE' ) && RELOCATE ) { // Move flag is set
|
455 |
-
if ( isset( $_SERVER['PATH_INFO'] ) && ( $_SERVER['PATH_INFO']
|
456 |
$_SERVER['PHP_SELF'] = str_replace( $_SERVER['PATH_INFO'], '', $_SERVER['PHP_SELF'] );
|
457 |
}
|
458 |
|
459 |
$url = dirname( set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] ) );
|
460 |
-
|
|
|
461 |
update_option( 'siteurl', $url );
|
462 |
}
|
463 |
}
|
464 |
|
465 |
-
//Set a cookie now to see if they are supported by the browser.
|
466 |
$secure = ( 'https' === parse_url( wp_login_url(), PHP_URL_SCHEME ) );
|
467 |
setcookie( TEST_COOKIE, 'WP Cookie check', 0, COOKIEPATH, COOKIE_DOMAIN, $secure );
|
468 |
-
|
|
|
469 |
setcookie( TEST_COOKIE, 'WP Cookie check', 0, SITECOOKIEPATH, COOKIE_DOMAIN, $secure );
|
470 |
}
|
471 |
|
@@ -487,7 +427,7 @@ do_action( 'login_init' );
|
|
487 |
*/
|
488 |
do_action( "login_form_{$action}" );
|
489 |
|
490 |
-
$http_post = ( 'POST'
|
491 |
$interim_login = isset( $_REQUEST['interim-login'] );
|
492 |
|
493 |
/**
|
@@ -501,10 +441,186 @@ $login_link_separator = apply_filters( 'login_link_separator', ' | ' );
|
|
501 |
|
502 |
switch ( $action ) {
|
503 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
504 |
case 'postpass':
|
505 |
if ( ! array_key_exists( 'post_password', $_POST ) ) {
|
506 |
wp_safe_redirect( wp_get_referer() );
|
507 |
-
exit
|
508 |
}
|
509 |
|
510 |
require_once ABSPATH . WPINC . '/class-phpass.php';
|
@@ -522,15 +638,17 @@ switch ( $action ) {
|
|
522 |
*/
|
523 |
$expire = apply_filters( 'post_password_expires', time() + 10 * DAY_IN_SECONDS );
|
524 |
$referer = wp_get_referer();
|
|
|
525 |
if ( $referer ) {
|
526 |
$secure = ( 'https' === parse_url( $referer, PHP_URL_SCHEME ) );
|
527 |
} else {
|
528 |
$secure = false;
|
529 |
}
|
|
|
530 |
setcookie( 'wp-postpass_' . COOKIEHASH, $hasher->HashPassword( wp_unslash( $_POST['post_password'] ) ), $expire, COOKIEPATH, COOKIE_DOMAIN, $secure );
|
531 |
|
532 |
wp_safe_redirect( wp_get_referer() );
|
533 |
-
exit
|
534 |
|
535 |
case 'logout':
|
536 |
check_admin_referer( 'log-out' );
|
@@ -540,9 +658,17 @@ switch ( $action ) {
|
|
540 |
wp_logout();
|
541 |
|
542 |
if ( ! empty( $_REQUEST['redirect_to'] ) ) {
|
543 |
-
$redirect_to
|
|
|
544 |
} else {
|
545 |
-
$redirect_to
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
546 |
$requested_redirect_to = '';
|
547 |
}
|
548 |
|
@@ -556,24 +682,26 @@ switch ( $action ) {
|
|
556 |
* @param WP_User $user The WP_User object for the user that's logging out.
|
557 |
*/
|
558 |
$redirect_to = apply_filters( 'logout_redirect', $redirect_to, $requested_redirect_to, $user );
|
|
|
559 |
wp_safe_redirect( $redirect_to );
|
560 |
-
exit
|
561 |
|
562 |
case 'lostpassword':
|
563 |
case 'retrievepassword':
|
564 |
if ( $http_post ) {
|
565 |
$errors = retrieve_password();
|
|
|
566 |
if ( ! is_wp_error( $errors ) ) {
|
567 |
$redirect_to = ! empty( $_REQUEST['redirect_to'] ) ? $_REQUEST['redirect_to'] : 'wp-login.php?checkemail=confirm';
|
568 |
wp_safe_redirect( $redirect_to );
|
569 |
-
exit
|
570 |
}
|
571 |
}
|
572 |
|
573 |
if ( isset( $_GET['error'] ) ) {
|
574 |
-
if ( 'invalidkey'
|
575 |
$errors->add( 'invalidkey', __( 'Your password reset link appears to be invalid. Please request a new link below.' ) );
|
576 |
-
} elseif ( 'expiredkey'
|
577 |
$errors->add( 'expiredkey', __( 'Your password reset link has expired. Please request a new link below.' ) );
|
578 |
}
|
579 |
}
|
@@ -599,7 +727,7 @@ switch ( $action ) {
|
|
599 |
*/
|
600 |
do_action( 'lost_password', $errors );
|
601 |
|
602 |
-
login_header( __( 'Lost Password' ), '<p class="message">' . __( 'Please enter your username or email address. You will receive
|
603 |
|
604 |
$user_login = '';
|
605 |
|
@@ -609,56 +737,65 @@ switch ( $action ) {
|
|
609 |
|
610 |
?>
|
611 |
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
|
618 |
-
/**
|
619 |
-
* Fires inside the lostpassword form tags, before the hidden fields.
|
620 |
-
*
|
621 |
-
* @since 2.1.0
|
622 |
-
*/
|
623 |
-
do_action( 'lostpassword_form' );
|
624 |
-
?>
|
625 |
-
<input type="hidden" name="redirect_to" value="<?php echo esc_attr( $redirect_to ); ?>" />
|
626 |
-
<p class="submit"><input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="<?php esc_attr_e( 'Get New Password' ); ?>" /></p>
|
627 |
-
</form>
|
628 |
|
629 |
-
|
630 |
-
|
631 |
-
|
632 |
-
|
633 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
634 |
|
635 |
-
|
|
|
636 |
|
637 |
-
|
638 |
-
echo apply_filters( 'register', $registration_url );
|
639 |
-
endif;
|
640 |
-
?>
|
641 |
-
</p>
|
642 |
|
|
|
|
|
|
|
|
|
|
|
|
|
643 |
<?php
|
644 |
-
login_footer( 'user_login' );
|
645 |
|
|
|
646 |
break;
|
647 |
|
648 |
case 'resetpass':
|
649 |
case 'rp':
|
650 |
list( $rp_path ) = explode( '?', wp_unslash( $_SERVER['REQUEST_URI'] ) );
|
651 |
$rp_cookie = 'wp-resetpass-' . COOKIEHASH;
|
|
|
652 |
if ( isset( $_GET['key'] ) ) {
|
653 |
$value = sprintf( '%s:%s', wp_unslash( $_GET['login'] ), wp_unslash( $_GET['key'] ) );
|
654 |
setcookie( $rp_cookie, $value, 0, $rp_path, COOKIE_DOMAIN, is_ssl(), true );
|
|
|
655 |
wp_safe_redirect( remove_query_arg( array( 'key', 'login' ) ) );
|
656 |
exit;
|
657 |
}
|
658 |
|
659 |
if ( isset( $_COOKIE[ $rp_cookie ] ) && 0 < strpos( $_COOKIE[ $rp_cookie ], ':' ) ) {
|
660 |
list( $rp_login, $rp_key ) = explode( ':', wp_unslash( $_COOKIE[ $rp_cookie ] ), 2 );
|
661 |
-
|
|
|
|
|
662 |
if ( isset( $_POST['pass1'] ) && ! hash_equals( $rp_key, $_POST['rp_key'] ) ) {
|
663 |
$user = false;
|
664 |
}
|
@@ -668,17 +805,19 @@ switch ( $action ) {
|
|
668 |
|
669 |
if ( ! $user || is_wp_error( $user ) ) {
|
670 |
setcookie( $rp_cookie, ' ', time() - YEAR_IN_SECONDS, $rp_path, COOKIE_DOMAIN, is_ssl(), true );
|
|
|
671 |
if ( $user && $user->get_error_code() === 'expired_key' ) {
|
672 |
wp_redirect( site_url( 'wp-login.php?action=lostpassword&error=expiredkey' ) );
|
673 |
} else {
|
674 |
wp_redirect( site_url( 'wp-login.php?action=lostpassword&error=invalidkey' ) );
|
675 |
}
|
|
|
676 |
exit;
|
677 |
}
|
678 |
|
679 |
$errors = new WP_Error();
|
680 |
|
681 |
-
if ( isset( $_POST['pass1'] ) && $_POST['pass1']
|
682 |
$errors->add( 'password_reset_mismatch', __( 'The passwords do not match.' ) );
|
683 |
}
|
684 |
|
@@ -687,7 +826,7 @@ switch ( $action ) {
|
|
687 |
*
|
688 |
* @since 3.5.0
|
689 |
*
|
690 |
-
* @param
|
691 |
* @param WP_User|WP_Error $user WP_User object if the login and reset key match. WP_Error object otherwise.
|
692 |
*/
|
693 |
do_action( 'validate_password_reset', $errors, $user );
|
@@ -706,70 +845,72 @@ switch ( $action ) {
|
|
706 |
login_header( __( 'Reset Password' ), '<p class="message reset-pass">' . __( 'Enter your new password below.' ) . '</p>', $errors );
|
707 |
|
708 |
?>
|
709 |
-
|
710 |
-
|
711 |
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
|
721 |
-
|
722 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
723 |
</div>
|
724 |
-
<div id="pass-strength-result" class="hide-if-no-js" aria-live="polite"><?php _e( 'Strength indicator' ); ?></div>
|
725 |
-
</div>
|
726 |
-
<div class="pw-weak">
|
727 |
-
<label>
|
728 |
-
<input type="checkbox" name="pw_weak" class="pw-checkbox" />
|
729 |
-
<?php _e( 'Confirm use of weak password' ); ?>
|
730 |
-
</label>
|
731 |
-
</div>
|
732 |
-
</div>
|
733 |
-
|
734 |
-
<p class="user-pass2-wrap">
|
735 |
-
<label for="pass2"><?php _e( 'Confirm new password' ); ?></label><br />
|
736 |
-
<input type="password" name="pass2" id="pass2" class="input" size="20" value="" autocomplete="off" />
|
737 |
-
</p>
|
738 |
-
|
739 |
-
<p class="description indicator-hint"><?php echo wp_get_password_hint(); ?></p>
|
740 |
-
<br class="clear" />
|
741 |
|
742 |
-
|
743 |
-
|
744 |
-
|
745 |
-
|
746 |
-
* @since 3.9.0
|
747 |
-
*
|
748 |
-
* @param WP_User $user User object of the user whose password is being reset.
|
749 |
-
*/
|
750 |
-
do_action( 'resetpass_form', $user );
|
751 |
-
?>
|
752 |
-
<input type="hidden" name="rp_key" value="<?php echo esc_attr( $rp_key ); ?>" />
|
753 |
-
<p class="submit"><input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="<?php esc_attr_e( 'Reset Password' ); ?>" /></p>
|
754 |
-
</form>
|
755 |
|
756 |
-
|
757 |
-
|
758 |
-
<?php
|
759 |
-
if ( get_option( 'users_can_register' ) ) :
|
760 |
-
$registration_url = sprintf( '<a href="%s">%s</a>', esc_url( wp_registration_url() ), __( 'Register' ) );
|
761 |
|
762 |
-
|
763 |
|
764 |
-
/**
|
765 |
-
|
766 |
-
|
767 |
-
|
768 |
-
|
|
|
|
|
|
|
769 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
770 |
<?php
|
771 |
-
login_footer( 'user_pass' );
|
772 |
|
|
|
773 |
break;
|
774 |
|
775 |
case 'register':
|
@@ -787,7 +928,7 @@ switch ( $action ) {
|
|
787 |
|
788 |
if ( ! get_option( 'users_can_register' ) ) {
|
789 |
wp_redirect( site_url( 'wp-login.php?registration=disabled' ) );
|
790 |
-
exit
|
791 |
}
|
792 |
|
793 |
$user_login = '';
|
@@ -795,7 +936,7 @@ switch ( $action ) {
|
|
795 |
|
796 |
if ( $http_post ) {
|
797 |
if ( isset( $_POST['user_login'] ) && is_string( $_POST['user_login'] ) ) {
|
798 |
-
$user_login = $_POST['user_login'];
|
799 |
}
|
800 |
|
801 |
if ( isset( $_POST['user_email'] ) && is_string( $_POST['user_email'] ) ) {
|
@@ -803,14 +944,16 @@ switch ( $action ) {
|
|
803 |
}
|
804 |
|
805 |
$errors = register_new_user( $user_login, $user_email );
|
|
|
806 |
if ( ! is_wp_error( $errors ) ) {
|
807 |
$redirect_to = ! empty( $_POST['redirect_to'] ) ? $_POST['redirect_to'] : 'wp-login.php?checkemail=registered';
|
808 |
wp_safe_redirect( $redirect_to );
|
809 |
-
exit
|
810 |
}
|
811 |
}
|
812 |
|
813 |
$registration_redirect = ! empty( $_REQUEST['redirect_to'] ) ? $_REQUEST['redirect_to'] : '';
|
|
|
814 |
/**
|
815 |
* Filters the registration redirect URL.
|
816 |
*
|
@@ -819,40 +962,80 @@ switch ( $action ) {
|
|
819 |
* @param string $registration_redirect The redirect destination URL.
|
820 |
*/
|
821 |
$redirect_to = apply_filters( 'registration_redirect', $registration_redirect );
|
|
|
822 |
login_header( __( 'Registration Form' ), '<p class="message register">' . __( 'Register For This Site' ) . '</p>', $errors );
|
|
|
823 |
?>
|
824 |
-
|
825 |
-
|
826 |
-
|
827 |
-
|
828 |
-
|
829 |
-
|
830 |
-
|
831 |
-
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
|
839 |
-
|
840 |
-
|
841 |
-
<p id="reg_passmail"><?php _e( 'Registration confirmation will be emailed to you.' ); ?></p>
|
842 |
-
<br class="clear" />
|
843 |
-
<input type="hidden" name="redirect_to" value="<?php echo esc_attr( $redirect_to ); ?>" />
|
844 |
-
<p class="submit"><input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="<?php esc_attr_e( 'Register' ); ?>" /></p>
|
845 |
-
</form>
|
846 |
-
|
847 |
-
<p id="nav">
|
848 |
-
<a href="<?php echo esc_url( wp_login_url() ); ?>"><?php _e( 'Log in' ); ?></a>
|
849 |
-
<?php echo esc_html( $login_link_separator ); ?>
|
850 |
-
<a href="<?php echo esc_url( wp_lostpassword_url() ); ?>"><?php _e( 'Lost your password?' ); ?></a>
|
851 |
-
</p>
|
852 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
853 |
<?php
|
|
|
854 |
login_footer( 'user_login' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
855 |
|
|
|
|
|
856 |
break;
|
857 |
|
858 |
case 'confirmaction':
|
@@ -897,13 +1080,14 @@ switch ( $action ) {
|
|
897 |
default:
|
898 |
$secure_cookie = '';
|
899 |
$customize_login = isset( $_REQUEST['customize-login'] );
|
|
|
900 |
if ( $customize_login ) {
|
901 |
wp_enqueue_script( 'customize-base' );
|
902 |
}
|
903 |
|
904 |
// If the user wants SSL but the session is not SSL, force a secure cookie.
|
905 |
if ( ! empty( $_POST['log'] ) && ! force_ssl_admin() ) {
|
906 |
-
$user_name = sanitize_user( $_POST['log'] );
|
907 |
$user = get_user_by( 'login', $user_name );
|
908 |
|
909 |
if ( ! $user && strpos( $user_name, '@' ) ) {
|
@@ -931,26 +1115,25 @@ switch ( $action ) {
|
|
931 |
$reauth = empty( $_REQUEST['reauth'] ) ? false : true;
|
932 |
|
933 |
$user = wp_signon( array(), $secure_cookie );
|
934 |
-
|
935 |
|
936 |
if ( empty( $_COOKIE[ LOGGED_IN_COOKIE ] ) ) {
|
937 |
if ( headers_sent() ) {
|
938 |
$user = new WP_Error(
|
939 |
'test_cookie',
|
940 |
sprintf(
|
941 |
-
/* translators: 1: Browser cookie documentation URL, 2: Support forums URL */
|
942 |
-
__( '<strong>
|
943 |
__( 'https://wordpress.org/support/article/cookies/' ),
|
944 |
-
__( 'https://wordpress.org/support/' )
|
945 |
)
|
946 |
);
|
947 |
} elseif ( isset( $_POST['testcookie'] ) && empty( $_COOKIE[ TEST_COOKIE ] ) ) {
|
948 |
-
// If cookies are disabled we can't log in even with a valid user
|
949 |
$user = new WP_Error(
|
950 |
'test_cookie',
|
951 |
sprintf(
|
952 |
-
/* translators: %s: Browser cookie documentation URL */
|
953 |
-
__( '<strong>
|
954 |
__( 'https://wordpress.org/support/article/cookies/#enable-cookies-in-your-browser' )
|
955 |
)
|
956 |
);
|
@@ -974,21 +1157,48 @@ switch ( $action ) {
|
|
974 |
$message = '<p class="message">' . __( 'You have logged in successfully.' ) . '</p>';
|
975 |
$interim_login = 'success';
|
976 |
login_header( '', $message );
|
|
|
977 |
?>
|
978 |
</div>
|
979 |
<?php
|
|
|
980 |
/** This action is documented in wp-login.php */
|
981 |
do_action( 'login_footer' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
982 |
?>
|
983 |
-
<?php if ( $customize_login ) : ?>
|
984 |
-
<script type="text/javascript">setTimeout( function(){ new wp.customize.Messenger({ url: '<?php echo wp_customize_url(); ?>', channel: 'login' }).send('login') }, 1000 );</script>
|
985 |
-
<?php endif; ?>
|
986 |
</body></html>
|
987 |
<?php
|
|
|
988 |
exit;
|
989 |
}
|
990 |
|
991 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
992 |
// If the user doesn't belong to a blog, send them to user admin. If the user can't edit posts, send them to their profile.
|
993 |
if ( is_multisite() && ! get_active_blog_for_user( $user->ID ) && ! is_super_admin( $user->ID ) ) {
|
994 |
$redirect_to = user_admin_url();
|
@@ -999,10 +1209,11 @@ switch ( $action ) {
|
|
999 |
}
|
1000 |
|
1001 |
wp_redirect( $redirect_to );
|
1002 |
-
exit
|
1003 |
}
|
|
|
1004 |
wp_safe_redirect( $redirect_to );
|
1005 |
-
exit
|
1006 |
}
|
1007 |
|
1008 |
$errors = $user;
|
@@ -1021,20 +1232,27 @@ switch ( $action ) {
|
|
1021 |
}
|
1022 |
} else {
|
1023 |
// Some parts of this script use the main login form to display a message.
|
1024 |
-
if ( isset( $_GET['loggedout'] ) &&
|
1025 |
$errors->add( 'loggedout', __( 'You are now logged out.' ), 'message' );
|
1026 |
-
} elseif ( isset( $_GET['registration'] ) && 'disabled'
|
1027 |
$errors->add( 'registerdisabled', __( 'User registration is currently not allowed.' ) );
|
1028 |
-
} elseif ( isset( $_GET['checkemail'] ) && 'confirm' == $_GET['checkemail'] ) {
|
1029 |
-
$errors->add( 'confirm', __( 'Check your email for the confirmation link.' ), 'message' );
|
1030 |
-
} elseif ( isset( $_GET['checkemail'] ) && 'newpass' == $_GET['checkemail'] ) {
|
1031 |
-
$errors->add( 'newpass', __( 'Check your email for your new password.' ), 'message' );
|
1032 |
-
} elseif ( isset( $_GET['checkemail'] ) && 'registered' == $_GET['checkemail'] ) {
|
1033 |
-
$errors->add( 'registered', __( 'Registration complete. Please check your email.' ), 'message' );
|
1034 |
} elseif ( strpos( $redirect_to, 'about.php?updated' ) ) {
|
1035 |
$errors->add( 'updated', __( '<strong>You have successfully updated WordPress!</strong> Please log back in to see what’s new.' ), 'message' );
|
1036 |
} elseif ( WP_Recovery_Mode_Link_Service::LOGIN_ACTION_ENTERED === $action ) {
|
1037 |
$errors->add( 'enter_recovery_mode', __( 'Recovery Mode Initialized. Please log in to continue.' ), 'message' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1038 |
}
|
1039 |
}
|
1040 |
|
@@ -1043,8 +1261,8 @@ switch ( $action ) {
|
|
1043 |
*
|
1044 |
* @since 3.6.0
|
1045 |
*
|
1046 |
-
* @param
|
1047 |
-
* @param string
|
1048 |
*/
|
1049 |
$errors = apply_filters( 'wp_login_errors', $errors, $redirect_to );
|
1050 |
|
@@ -1056,8 +1274,9 @@ switch ( $action ) {
|
|
1056 |
login_header( __( 'Log In' ), '', $errors );
|
1057 |
|
1058 |
if ( isset( $_POST['log'] ) ) {
|
1059 |
-
$user_login = ( 'incorrect_password'
|
1060 |
}
|
|
|
1061 |
$rememberme = ! empty( $_POST['rememberme'] );
|
1062 |
|
1063 |
if ( $errors->has_errors() ) {
|
@@ -1065,89 +1284,110 @@ switch ( $action ) {
|
|
1065 |
} else {
|
1066 |
$aria_describedby_error = '';
|
1067 |
}
|
1068 |
-
|
1069 |
-
//aiowps - this check is necessary because otherwise if variables are undefined we get a warning!
|
1070 |
-
if(empty($user_login)){
|
1071 |
-
$user_login = '';
|
1072 |
-
}
|
1073 |
-
if(empty($error)){
|
1074 |
-
$error = '';
|
1075 |
-
}
|
1076 |
-
|
1077 |
-
?>
|
1078 |
|
1079 |
-
|
1080 |
-
|
1081 |
-
|
1082 |
-
|
1083 |
-
|
1084 |
-
|
1085 |
-
|
1086 |
-
|
1087 |
-
|
1088 |
-
<?php
|
1089 |
-
/**
|
1090 |
-
* Fires following the 'Password' field in the login form.
|
1091 |
-
*
|
1092 |
-
* @since 2.1.0
|
1093 |
-
*/
|
1094 |
-
do_action( 'login_form' );
|
1095 |
?>
|
1096 |
-
|
1097 |
-
|
1098 |
-
|
1099 |
-
|
1100 |
-
|
1101 |
-
|
1102 |
-
|
1103 |
-
|
1104 |
-
|
1105 |
-
|
1106 |
-
|
1107 |
-
|
1108 |
-
|
1109 |
-
|
1110 |
-
|
1111 |
-
|
1112 |
-
<p id="nav">
|
1113 |
<?php
|
1114 |
-
|
1115 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1116 |
$registration_url = sprintf( '<a href="%s">%s</a>', esc_url( wp_registration_url() ), __( 'Register' ) );
|
1117 |
|
1118 |
/** This filter is documented in wp-includes/general-template.php */
|
1119 |
echo apply_filters( 'register', $registration_url );
|
1120 |
|
1121 |
echo esc_html( $login_link_separator );
|
1122 |
-
|
|
|
1123 |
?>
|
1124 |
-
|
1125 |
-
|
1126 |
-
|
1127 |
-
|
1128 |
|
1129 |
-
|
1130 |
-
|
1131 |
-
|
1132 |
-
|
1133 |
-
|
1134 |
-
|
1135 |
-
|
1136 |
-
|
1137 |
-
|
1138 |
-
|
1139 |
-
|
1140 |
-
<?php
|
1141 |
}
|
1142 |
-
|
1143 |
-
|
1144 |
-
|
1145 |
-
|
1146 |
-
|
1147 |
-
|
1148 |
-
}
|
1149 |
|
1150 |
-
<?php
|
1151 |
/**
|
1152 |
* Filters whether to print the call to `wp_attempt_focus()` on the login screen.
|
1153 |
*
|
@@ -1156,25 +1396,36 @@ switch ( $action ) {
|
|
1156 |
* @param bool $print Whether to print the function call. Default true.
|
1157 |
*/
|
1158 |
if ( apply_filters( 'enable_login_autofocus', true ) && ! $error ) {
|
1159 |
-
|
1160 |
-
wp_attempt_focus();
|
1161 |
-
<?php } ?>
|
1162 |
-
if(typeof wpOnload=='function')wpOnload();
|
1163 |
-
<?php if ( $interim_login ) { ?>
|
1164 |
-
(function(){
|
1165 |
-
try {
|
1166 |
-
var i, links = document.getElementsByTagName('a');
|
1167 |
-
for ( i in links ) {
|
1168 |
-
if ( links[i].href )
|
1169 |
-
links[i].target = '_blank';
|
1170 |
}
|
1171 |
-
} catch(e){}
|
1172 |
-
}());
|
1173 |
-
<?php } ?>
|
1174 |
-
</script>
|
1175 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1176 |
<?php
|
1177 |
-
login_footer();
|
1178 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1179 |
break;
|
1180 |
} // End action switch.
|
10 |
|
11 |
/** Make sure that the WordPress bootstrap has run before continuing. */
|
12 |
|
13 |
+
// aiowps - for our special case we do not want to include wp-load.php
|
14 |
+
//require __DIR__ . '/wp-load.php';
|
15 |
+
|
16 |
// Redirect to HTTPS login if forced to use SSL.
|
17 |
if ( force_ssl_admin() && ! is_ssl() ) {
|
18 |
if ( 0 === strpos( $_SERVER['REQUEST_URI'], 'http' ) ) {
|
19 |
wp_safe_redirect( set_url_scheme( $_SERVER['REQUEST_URI'], 'https' ) );
|
20 |
+
exit;
|
21 |
} else {
|
22 |
wp_safe_redirect( 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
|
23 |
+
exit;
|
24 |
}
|
25 |
}
|
26 |
|
29 |
*
|
30 |
* @since 2.1.0
|
31 |
*
|
32 |
+
* @global string $error Login error message set by deprecated pluggable wp_login() function
|
33 |
+
* or plugins replacing it.
|
34 |
+
* @global bool|string $interim_login Whether interim login modal is being displayed. String 'success'
|
35 |
+
* upon successful login.
|
36 |
+
* @global string $action The action that brought the visitor to the login page.
|
37 |
+
*
|
38 |
* @param string $title Optional. WordPress login Page title to display in the `<title>` element.
|
39 |
* Default 'Log In'.
|
40 |
* @param string $message Optional. Message to display in header. Default empty.
|
43 |
function login_header( $title = 'Log In', $message = '', $wp_error = null ) {
|
44 |
global $error, $interim_login, $action;
|
45 |
|
46 |
+
// Don't index any of these forms.
|
47 |
+
add_filter( 'wp_robots', 'wp_robots_sensitive_page' );
|
48 |
+
add_action( 'login_head', 'wp_strict_cross_origin_referrer' );
|
49 |
|
50 |
add_action( 'login_head', 'wp_login_viewport_meta' );
|
51 |
|
54 |
}
|
55 |
|
56 |
// Shake it!
|
57 |
+
$shake_error_codes = array( 'empty_password', 'empty_email', 'invalid_email', 'invalidcombo', 'empty_username', 'invalid_username', 'incorrect_password', 'retrieve_password_email_failure' );
|
58 |
/**
|
59 |
* Filters the error codes array for shaking the login form.
|
60 |
*
|
64 |
*/
|
65 |
$shake_error_codes = apply_filters( 'shake_error_codes', $shake_error_codes );
|
66 |
|
67 |
+
if ( $shake_error_codes && $wp_error->has_errors() && in_array( $wp_error->get_error_code(), $shake_error_codes, true ) ) {
|
68 |
+
add_action( 'login_footer', 'wp_shake_js', 12 );
|
69 |
}
|
70 |
|
71 |
$login_title = get_bloginfo( 'name', 'display' );
|
72 |
|
73 |
+
/* translators: Login screen title. 1: Login screen name, 2: Network or site name. */
|
74 |
$login_title = sprintf( __( '%1$s ‹ %2$s — WordPress' ), $title, $login_title );
|
75 |
|
76 |
if ( wp_is_recovery_mode() ) {
|
89 |
$login_title = apply_filters( 'login_title', $login_title, $title );
|
90 |
|
91 |
?><!DOCTYPE html>
|
92 |
+
<html <?php language_attributes(); ?>>
|
|
|
|
|
|
|
|
|
|
|
93 |
<head>
|
94 |
<meta http-equiv="Content-Type" content="<?php bloginfo( 'html_type' ); ?>; charset=<?php bloginfo( 'charset' ); ?>" />
|
95 |
<title><?php echo $login_title; ?></title>
|
102 |
* This could be added by add_action('login_head'...) like wp_shake_js(),
|
103 |
* but maybe better if it's not removable by plugins.
|
104 |
*/
|
105 |
+
if ( 'loggedout' === $wp_error->get_error_code() ) {
|
106 |
?>
|
107 |
<script>if("sessionStorage" in window){try{for(var key in sessionStorage){if(key.indexOf("wp-autosave-")!=-1){sessionStorage.removeItem(key)}}}catch(e){}};</script>
|
108 |
<?php
|
139 |
* Filters the title attribute of the header logo above login form.
|
140 |
*
|
141 |
* @since 2.1.0
|
142 |
+
* @deprecated 5.2.0 Use {@see 'login_headertext'} instead.
|
143 |
*
|
144 |
* @param string $login_header_title Login header logo title attribute.
|
145 |
*/
|
163 |
$login_header_text = apply_filters( 'login_headertext', $login_header_text );
|
164 |
|
165 |
$classes = array( 'login-action-' . $action, 'wp-core-ui' );
|
166 |
+
|
167 |
if ( is_rtl() ) {
|
168 |
$classes[] = 'rtl';
|
169 |
}
|
170 |
+
|
171 |
if ( $interim_login ) {
|
172 |
$classes[] = 'interim-login';
|
173 |
+
|
174 |
?>
|
175 |
<style type="text/css">html{background-color: transparent;}</style>
|
176 |
<?php
|
179 |
$classes[] = 'interim-login-success';
|
180 |
}
|
181 |
}
|
182 |
+
|
183 |
$classes[] = ' locale-' . sanitize_html_class( strtolower( str_replace( '_', '-', get_locale() ) ) );
|
184 |
|
185 |
/**
|
194 |
|
195 |
?>
|
196 |
</head>
|
197 |
+
<body class="login no-js <?php echo esc_attr( implode( ' ', $classes ) ); ?>">
|
198 |
+
<script type="text/javascript">
|
199 |
+
document.body.className = document.body.className.replace('no-js','js');
|
200 |
+
</script>
|
201 |
<?php
|
202 |
/**
|
203 |
* Fires in the login page header after the body tag is opened.
|
205 |
* @since 4.6.0
|
206 |
*/
|
207 |
do_action( 'login_header' );
|
208 |
+
|
209 |
?>
|
210 |
<div id="login">
|
211 |
<h1><a href="<?php echo esc_url( $login_header_url ); ?>"><?php echo $login_header_text; ?></a></h1>
|
218 |
* @param string $message Login message text.
|
219 |
*/
|
220 |
$message = apply_filters( 'login_message', $message );
|
221 |
+
|
222 |
if ( ! empty( $message ) ) {
|
223 |
echo $message . "\n";
|
224 |
}
|
232 |
if ( $wp_error->has_errors() ) {
|
233 |
$errors = '';
|
234 |
$messages = '';
|
235 |
+
|
236 |
foreach ( $wp_error->get_error_codes() as $code ) {
|
237 |
$severity = $wp_error->get_error_data( $code );
|
238 |
foreach ( $wp_error->get_error_messages( $code ) as $error_message ) {
|
239 |
+
if ( 'message' === $severity ) {
|
240 |
$messages .= ' ' . $error_message . "<br />\n";
|
241 |
} else {
|
242 |
$errors .= ' ' . $error_message . "<br />\n";
|
243 |
}
|
244 |
}
|
245 |
}
|
246 |
+
|
247 |
if ( ! empty( $errors ) ) {
|
248 |
/**
|
249 |
* Filters the error messages displayed above the login form.
|
254 |
*/
|
255 |
echo '<div id="login_error">' . apply_filters( 'login_errors', $errors ) . "</div>\n";
|
256 |
}
|
257 |
+
|
258 |
if ( ! empty( $messages ) ) {
|
259 |
/**
|
260 |
* Filters instructional messages displayed above the login form.
|
266 |
echo '<p class="message">' . apply_filters( 'login_messages', $messages ) . "</p>\n";
|
267 |
}
|
268 |
}
|
269 |
+
} // End of login_header().
|
270 |
|
271 |
/**
|
272 |
* Outputs the footer for the login page.
|
273 |
*
|
274 |
* @since 3.1.0
|
275 |
*
|
276 |
+
* @global bool|string $interim_login Whether interim login modal is being displayed. String 'success'
|
277 |
+
* upon successful login.
|
278 |
+
*
|
279 |
* @param string $input_id Which input to auto-focus.
|
280 |
*/
|
281 |
function login_footer( $input_id = '' ) {
|
282 |
global $interim_login;
|
283 |
|
284 |
// Don't allow interim logins to navigate away from the page.
|
285 |
+
if ( ! $interim_login ) {
|
286 |
?>
|
287 |
+
<p id="backtoblog"><a href="<?php echo esc_url( home_url( '/' ) ); ?>">
|
288 |
<?php
|
289 |
+
|
290 |
+
/* translators: %s: Site title. */
|
291 |
+
printf( _x( '← Go to %s', 'site' ), get_bloginfo( 'title', 'display' ) );
|
292 |
+
|
293 |
?>
|
294 |
+
</a></p>
|
295 |
+
<?php
|
|
|
296 |
|
297 |
+
the_privacy_policy_link( '<div class="privacy-policy-page-link">', '</div>' );
|
298 |
+
}
|
299 |
|
300 |
+
?>
|
301 |
+
</div><?php // End of <div id="login">. ?>
|
|
|
|
|
|
|
|
|
302 |
|
303 |
<?php
|
304 |
+
|
305 |
+
if ( ! empty( $input_id ) ) {
|
306 |
+
?>
|
307 |
+
<script type="text/javascript">
|
308 |
+
try{document.getElementById('<?php echo $input_id; ?>').focus();}catch(e){}
|
309 |
+
if(typeof wpOnload=='function')wpOnload();
|
310 |
+
</script>
|
311 |
+
<?php
|
312 |
+
}
|
313 |
+
|
314 |
/**
|
315 |
* Fires in the login page footer.
|
316 |
*
|
317 |
* @since 3.1.0
|
318 |
*/
|
319 |
do_action( 'login_footer' );
|
320 |
+
|
321 |
?>
|
322 |
<div class="clear"></div>
|
323 |
</body>
|
326 |
}
|
327 |
|
328 |
/**
|
329 |
+
* Outputs the Javascript to handle the form shaking on the login page.
|
330 |
*
|
331 |
* @since 3.0.0
|
332 |
*/
|
333 |
function wp_shake_js() {
|
334 |
?>
|
335 |
+
<script type="text/javascript">
|
336 |
+
document.querySelector('form').classList.add('shake');
|
337 |
+
</script>
|
|
|
|
|
|
|
|
|
338 |
<?php
|
339 |
}
|
340 |
|
341 |
/**
|
342 |
+
* Outputs the viewport meta tag for the login page.
|
343 |
*
|
344 |
* @since 3.7.0
|
345 |
*/
|
349 |
<?php
|
350 |
}
|
351 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
352 |
|
353 |
//
|
354 |
// Main.
|
361 |
$action = 'resetpass';
|
362 |
}
|
363 |
|
364 |
+
if ( isset( $_GET['checkemail'] ) ) {
|
365 |
+
$action = 'checkemail';
|
366 |
+
}
|
367 |
+
|
368 |
+
$default_actions = array(
|
369 |
+
'confirm_admin_email',
|
370 |
+
'postpass',
|
371 |
+
'logout',
|
372 |
+
'lostpassword',
|
373 |
+
'retrievepassword',
|
374 |
+
'resetpass',
|
375 |
+
'rp',
|
376 |
+
'register',
|
377 |
+
'checkemail',
|
378 |
+
'confirmaction',
|
379 |
+
'login',
|
380 |
+
WP_Recovery_Mode_Link_Service::LOGIN_ACTION_ENTERED,
|
381 |
+
);
|
382 |
+
|
383 |
// Validate action so as to default to the login screen.
|
384 |
+
if ( ! in_array( $action, $default_actions, true ) && false === has_filter( 'login_form_' . $action ) ) {
|
385 |
$action = 'login';
|
386 |
}
|
387 |
|
389 |
|
390 |
header( 'Content-Type: ' . get_bloginfo( 'html_type' ) . '; charset=' . get_bloginfo( 'charset' ) );
|
391 |
|
392 |
+
if ( defined( 'RELOCATE' ) && RELOCATE ) { // Move flag is set.
|
393 |
+
if ( isset( $_SERVER['PATH_INFO'] ) && ( $_SERVER['PATH_INFO'] !== $_SERVER['PHP_SELF'] ) ) {
|
394 |
$_SERVER['PHP_SELF'] = str_replace( $_SERVER['PATH_INFO'], '', $_SERVER['PHP_SELF'] );
|
395 |
}
|
396 |
|
397 |
$url = dirname( set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] ) );
|
398 |
+
|
399 |
+
if ( get_option( 'siteurl' ) !== $url ) {
|
400 |
update_option( 'siteurl', $url );
|
401 |
}
|
402 |
}
|
403 |
|
404 |
+
// Set a cookie now to see if they are supported by the browser.
|
405 |
$secure = ( 'https' === parse_url( wp_login_url(), PHP_URL_SCHEME ) );
|
406 |
setcookie( TEST_COOKIE, 'WP Cookie check', 0, COOKIEPATH, COOKIE_DOMAIN, $secure );
|
407 |
+
|
408 |
+
if ( SITECOOKIEPATH !== COOKIEPATH ) {
|
409 |
setcookie( TEST_COOKIE, 'WP Cookie check', 0, SITECOOKIEPATH, COOKIE_DOMAIN, $secure );
|
410 |
}
|
411 |
|
427 |
*/
|
428 |
do_action( "login_form_{$action}" );
|
429 |
|
430 |
+
$http_post = ( 'POST' === $_SERVER['REQUEST_METHOD'] );
|
431 |
$interim_login = isset( $_REQUEST['interim-login'] );
|
432 |
|
433 |
/**
|
441 |
|
442 |
switch ( $action ) {
|
443 |
|
444 |
+
case 'confirm_admin_email':
|
445 |
+
/*
|
446 |
+
* Note that `is_user_logged_in()` will return false immediately after logging in
|
447 |
+
* as the current user is not set, see wp-includes/pluggable.php.
|
448 |
+
* However this action runs on a redirect after logging in.
|
449 |
+
*/
|
450 |
+
if ( ! is_user_logged_in() ) {
|
451 |
+
wp_safe_redirect( wp_login_url() );
|
452 |
+
exit;
|
453 |
+
}
|
454 |
+
|
455 |
+
if ( ! empty( $_REQUEST['redirect_to'] ) ) {
|
456 |
+
$redirect_to = $_REQUEST['redirect_to'];
|
457 |
+
} else {
|
458 |
+
$redirect_to = admin_url();
|
459 |
+
}
|
460 |
+
|
461 |
+
if ( current_user_can( 'manage_options' ) ) {
|
462 |
+
$admin_email = get_option( 'admin_email' );
|
463 |
+
} else {
|
464 |
+
wp_safe_redirect( $redirect_to );
|
465 |
+
exit;
|
466 |
+
}
|
467 |
+
|
468 |
+
/**
|
469 |
+
* Filters the interval for dismissing the admin email confirmation screen.
|
470 |
+
*
|
471 |
+
* If `0` (zero) is returned, the "Remind me later" link will not be displayed.
|
472 |
+
*
|
473 |
+
* @since 5.3.1
|
474 |
+
*
|
475 |
+
* @param int $interval Interval time (in seconds). Default is 3 days.
|
476 |
+
*/
|
477 |
+
$remind_interval = (int) apply_filters( 'admin_email_remind_interval', 3 * DAY_IN_SECONDS );
|
478 |
+
|
479 |
+
if ( ! empty( $_GET['remind_me_later'] ) ) {
|
480 |
+
if ( ! wp_verify_nonce( $_GET['remind_me_later'], 'remind_me_later_nonce' ) ) {
|
481 |
+
wp_safe_redirect( wp_login_url() );
|
482 |
+
exit;
|
483 |
+
}
|
484 |
+
|
485 |
+
if ( $remind_interval > 0 ) {
|
486 |
+
update_option( 'admin_email_lifespan', time() + $remind_interval );
|
487 |
+
}
|
488 |
+
|
489 |
+
$redirect_to = add_query_arg( 'admin_email_remind_later', 1, $redirect_to );
|
490 |
+
wp_safe_redirect( $redirect_to );
|
491 |
+
exit;
|
492 |
+
}
|
493 |
+
|
494 |
+
if ( ! empty( $_POST['correct-admin-email'] ) ) {
|
495 |
+
if ( ! check_admin_referer( 'confirm_admin_email', 'confirm_admin_email_nonce' ) ) {
|
496 |
+
wp_safe_redirect( wp_login_url() );
|
497 |
+
exit;
|
498 |
+
}
|
499 |
+
|
500 |
+
/**
|
501 |
+
* Filters the interval for redirecting the user to the admin email confirmation screen.
|
502 |
+
*
|
503 |
+
* If `0` (zero) is returned, the user will not be redirected.
|
504 |
+
*
|
505 |
+
* @since 5.3.0
|
506 |
+
*
|
507 |
+
* @param int $interval Interval time (in seconds). Default is 6 months.
|
508 |
+
*/
|
509 |
+
$admin_email_check_interval = (int) apply_filters( 'admin_email_check_interval', 6 * MONTH_IN_SECONDS );
|
510 |
+
|
511 |
+
if ( $admin_email_check_interval > 0 ) {
|
512 |
+
update_option( 'admin_email_lifespan', time() + $admin_email_check_interval );
|
513 |
+
}
|
514 |
+
|
515 |
+
wp_safe_redirect( $redirect_to );
|
516 |
+
exit;
|
517 |
+
}
|
518 |
+
|
519 |
+
login_header( __( 'Confirm your administration email' ), '', $errors );
|
520 |
+
|
521 |
+
/**
|
522 |
+
* Fires before the admin email confirm form.
|
523 |
+
*
|
524 |
+
* @since 5.3.0
|
525 |
+
*
|
526 |
+
* @param WP_Error $errors A `WP_Error` object containing any errors generated by using invalid
|
527 |
+
* credentials. Note that the error object may not contain any errors.
|
528 |
+
*/
|
529 |
+
do_action( 'admin_email_confirm', $errors );
|
530 |
+
|
531 |
+
?>
|
532 |
+
|
533 |
+
<form class="admin-email-confirm-form" name="admin-email-confirm-form" action="<?php echo esc_url( site_url( 'wp-login.php?action=confirm_admin_email', 'login_post' ) ); ?>" method="post">
|
534 |
+
<?php
|
535 |
+
/**
|
536 |
+
* Fires inside the admin-email-confirm-form form tags, before the hidden fields.
|
537 |
+
*
|
538 |
+
* @since 5.3.0
|
539 |
+
*/
|
540 |
+
do_action( 'admin_email_confirm_form' );
|
541 |
+
|
542 |
+
wp_nonce_field( 'confirm_admin_email', 'confirm_admin_email_nonce' );
|
543 |
+
|
544 |
+
?>
|
545 |
+
<input type="hidden" name="redirect_to" value="<?php echo esc_attr( $redirect_to ); ?>" />
|
546 |
+
|
547 |
+
<h1 class="admin-email__heading">
|
548 |
+
<?php _e( 'Administration email verification' ); ?>
|
549 |
+
</h1>
|
550 |
+
<p class="admin-email__details">
|
551 |
+
<?php _e( 'Please verify that the <strong>administration email</strong> for this website is still correct.' ); ?>
|
552 |
+
<?php
|
553 |
+
|
554 |
+
/* translators: URL to the WordPress help section about admin email. */
|
555 |
+
$admin_email_help_url = __( 'https://wordpress.org/support/article/settings-general-screen/#email-address' );
|
556 |
+
|
557 |
+
/* translators: Accessibility text. */
|
558 |
+
$accessibility_text = sprintf( '<span class="screen-reader-text"> %s</span>', __( '(opens in a new tab)' ) );
|
559 |
+
|
560 |
+
printf(
|
561 |
+
'<a href="%s" rel="noopener" target="_blank">%s%s</a>',
|
562 |
+
esc_url( $admin_email_help_url ),
|
563 |
+
__( 'Why is this important?' ),
|
564 |
+
$accessibility_text
|
565 |
+
);
|
566 |
+
|
567 |
+
?>
|
568 |
+
</p>
|
569 |
+
<p class="admin-email__details">
|
570 |
+
<?php
|
571 |
+
|
572 |
+
printf(
|
573 |
+
/* translators: %s: Admin email address. */
|
574 |
+
__( 'Current administration email: %s' ),
|
575 |
+
'<strong>' . esc_html( $admin_email ) . '</strong>'
|
576 |
+
);
|
577 |
+
|
578 |
+
?>
|
579 |
+
</p>
|
580 |
+
<p class="admin-email__details">
|
581 |
+
<?php _e( 'This email may be different from your personal email address.' ); ?>
|
582 |
+
</p>
|
583 |
+
|
584 |
+
<div class="admin-email__actions">
|
585 |
+
<div class="admin-email__actions-primary">
|
586 |
+
<?php
|
587 |
+
|
588 |
+
$change_link = admin_url( 'options-general.php' );
|
589 |
+
$change_link = add_query_arg( 'highlight', 'confirm_admin_email', $change_link );
|
590 |
+
|
591 |
+
?>
|
592 |
+
<a class="button button-large" href="<?php echo esc_url( $change_link ); ?>"><?php _e( 'Update' ); ?></a>
|
593 |
+
<input type="submit" name="correct-admin-email" id="correct-admin-email" class="button button-primary button-large" value="<?php esc_attr_e( 'The email is correct' ); ?>" />
|
594 |
+
</div>
|
595 |
+
<?php if ( $remind_interval > 0 ) : ?>
|
596 |
+
<div class="admin-email__actions-secondary">
|
597 |
+
<?php
|
598 |
+
|
599 |
+
$remind_me_link = wp_login_url( $redirect_to );
|
600 |
+
$remind_me_link = add_query_arg(
|
601 |
+
array(
|
602 |
+
'action' => 'confirm_admin_email',
|
603 |
+
'remind_me_later' => wp_create_nonce( 'remind_me_later_nonce' ),
|
604 |
+
),
|
605 |
+
$remind_me_link
|
606 |
+
);
|
607 |
+
|
608 |
+
?>
|
609 |
+
<a href="<?php echo esc_url( $remind_me_link ); ?>"><?php _e( 'Remind me later' ); ?></a>
|
610 |
+
</div>
|
611 |
+
<?php endif; ?>
|
612 |
+
</div>
|
613 |
+
</form>
|
614 |
+
|
615 |
+
<?php
|
616 |
+
|
617 |
+
login_footer();
|
618 |
+
break;
|
619 |
+
|
620 |
case 'postpass':
|
621 |
if ( ! array_key_exists( 'post_password', $_POST ) ) {
|
622 |
wp_safe_redirect( wp_get_referer() );
|
623 |
+
exit;
|
624 |
}
|
625 |
|
626 |
require_once ABSPATH . WPINC . '/class-phpass.php';
|
638 |
*/
|
639 |
$expire = apply_filters( 'post_password_expires', time() + 10 * DAY_IN_SECONDS );
|
640 |
$referer = wp_get_referer();
|
641 |
+
|
642 |
if ( $referer ) {
|
643 |
$secure = ( 'https' === parse_url( $referer, PHP_URL_SCHEME ) );
|
644 |
} else {
|
645 |
$secure = false;
|
646 |
}
|
647 |
+
|
648 |
setcookie( 'wp-postpass_' . COOKIEHASH, $hasher->HashPassword( wp_unslash( $_POST['post_password'] ) ), $expire, COOKIEPATH, COOKIE_DOMAIN, $secure );
|
649 |
|
650 |
wp_safe_redirect( wp_get_referer() );
|
651 |
+
exit;
|
652 |
|
653 |
case 'logout':
|
654 |
check_admin_referer( 'log-out' );
|
658 |
wp_logout();
|
659 |
|
660 |
if ( ! empty( $_REQUEST['redirect_to'] ) ) {
|
661 |
+
$redirect_to = $_REQUEST['redirect_to'];
|
662 |
+
$requested_redirect_to = $redirect_to;
|
663 |
} else {
|
664 |
+
$redirect_to = add_query_arg(
|
665 |
+
array(
|
666 |
+
'loggedout' => 'true',
|
667 |
+
'wp_lang' => get_user_locale( $user ),
|
668 |
+
),
|
669 |
+
wp_login_url()
|
670 |
+
);
|
671 |
+
|
672 |
$requested_redirect_to = '';
|
673 |
}
|
674 |
|
682 |
* @param WP_User $user The WP_User object for the user that's logging out.
|
683 |
*/
|
684 |
$redirect_to = apply_filters( 'logout_redirect', $redirect_to, $requested_redirect_to, $user );
|
685 |
+
|
686 |
wp_safe_redirect( $redirect_to );
|
687 |
+
exit;
|
688 |
|
689 |
case 'lostpassword':
|
690 |
case 'retrievepassword':
|
691 |
if ( $http_post ) {
|
692 |
$errors = retrieve_password();
|
693 |
+
|
694 |
if ( ! is_wp_error( $errors ) ) {
|
695 |
$redirect_to = ! empty( $_REQUEST['redirect_to'] ) ? $_REQUEST['redirect_to'] : 'wp-login.php?checkemail=confirm';
|
696 |
wp_safe_redirect( $redirect_to );
|
697 |
+
exit;
|
698 |
}
|
699 |
}
|
700 |
|
701 |
if ( isset( $_GET['error'] ) ) {
|
702 |
+
if ( 'invalidkey' === $_GET['error'] ) {
|
703 |
$errors->add( 'invalidkey', __( 'Your password reset link appears to be invalid. Please request a new link below.' ) );
|
704 |
+
} elseif ( 'expiredkey' === $_GET['error'] ) {
|
705 |
$errors->add( 'expiredkey', __( 'Your password reset link has expired. Please request a new link below.' ) );
|
706 |
}
|
707 |
}
|
727 |
*/
|
728 |
do_action( 'lost_password', $errors );
|
729 |
|
730 |
+
login_header( __( 'Lost Password' ), '<p class="message">' . __( 'Please enter your username or email address. You will receive an email message with instructions on how to reset your password.' ) . '</p>', $errors );
|
731 |
|
732 |
$user_login = '';
|
733 |
|
737 |
|
738 |
?>
|
739 |
|
740 |
+
<form name="lostpasswordform" id="lostpasswordform" action="<?php echo esc_url( network_site_url( 'wp-login.php?action=lostpassword', 'login_post' ) ); ?>" method="post">
|
741 |
+
<p>
|
742 |
+
<label for="user_login"><?php _e( 'Username or Email Address' ); ?></label>
|
743 |
+
<input type="text" name="user_login" id="user_login" class="input" value="<?php echo esc_attr( $user_login ); ?>" size="20" autocapitalize="off" />
|
744 |
+
</p>
|
745 |
+
<?php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
746 |
|
747 |
+
/**
|
748 |
+
* Fires inside the lostpassword form tags, before the hidden fields.
|
749 |
+
*
|
750 |
+
* @since 2.1.0
|
751 |
+
*/
|
752 |
+
do_action( 'lostpassword_form' );
|
753 |
+
|
754 |
+
?>
|
755 |
+
<input type="hidden" name="redirect_to" value="<?php echo esc_attr( $redirect_to ); ?>" />
|
756 |
+
<p class="submit">
|
757 |
+
<input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="<?php esc_attr_e( 'Get New Password' ); ?>" />
|
758 |
+
</p>
|
759 |
+
</form>
|
760 |
+
|
761 |
+
<p id="nav">
|
762 |
+
<a href="<?php echo esc_url( wp_login_url() ); ?>"><?php _e( 'Log in' ); ?></a>
|
763 |
+
<?php
|
764 |
|
765 |
+
if ( get_option( 'users_can_register' ) ) {
|
766 |
+
$registration_url = sprintf( '<a href="%s">%s</a>', esc_url( wp_registration_url() ), __( 'Register' ) );
|
767 |
|
768 |
+
echo esc_html( $login_link_separator );
|
|
|
|
|
|
|
|
|
769 |
|
770 |
+
/** This filter is documented in wp-includes/general-template.php */
|
771 |
+
echo apply_filters( 'register', $registration_url );
|
772 |
+
}
|
773 |
+
|
774 |
+
?>
|
775 |
+
</p>
|
776 |
<?php
|
|
|
777 |
|
778 |
+
login_footer( 'user_login' );
|
779 |
break;
|
780 |
|
781 |
case 'resetpass':
|
782 |
case 'rp':
|
783 |
list( $rp_path ) = explode( '?', wp_unslash( $_SERVER['REQUEST_URI'] ) );
|
784 |
$rp_cookie = 'wp-resetpass-' . COOKIEHASH;
|
785 |
+
|
786 |
if ( isset( $_GET['key'] ) ) {
|
787 |
$value = sprintf( '%s:%s', wp_unslash( $_GET['login'] ), wp_unslash( $_GET['key'] ) );
|
788 |
setcookie( $rp_cookie, $value, 0, $rp_path, COOKIE_DOMAIN, is_ssl(), true );
|
789 |
+
|
790 |
wp_safe_redirect( remove_query_arg( array( 'key', 'login' ) ) );
|
791 |
exit;
|
792 |
}
|
793 |
|
794 |
if ( isset( $_COOKIE[ $rp_cookie ] ) && 0 < strpos( $_COOKIE[ $rp_cookie ], ':' ) ) {
|
795 |
list( $rp_login, $rp_key ) = explode( ':', wp_unslash( $_COOKIE[ $rp_cookie ] ), 2 );
|
796 |
+
|
797 |
+
$user = check_password_reset_key( $rp_key, $rp_login );
|
798 |
+
|
799 |
if ( isset( $_POST['pass1'] ) && ! hash_equals( $rp_key, $_POST['rp_key'] ) ) {
|
800 |
$user = false;
|
801 |
}
|
805 |
|
806 |
if ( ! $user || is_wp_error( $user ) ) {
|
807 |
setcookie( $rp_cookie, ' ', time() - YEAR_IN_SECONDS, $rp_path, COOKIE_DOMAIN, is_ssl(), true );
|
808 |
+
|
809 |
if ( $user && $user->get_error_code() === 'expired_key' ) {
|
810 |
wp_redirect( site_url( 'wp-login.php?action=lostpassword&error=expiredkey' ) );
|
811 |
} else {
|
812 |
wp_redirect( site_url( 'wp-login.php?action=lostpassword&error=invalidkey' ) );
|
813 |
}
|
814 |
+
|
815 |
exit;
|
816 |
}
|
817 |
|
818 |
$errors = new WP_Error();
|
819 |
|
820 |
+
if ( isset( $_POST['pass1'] ) && $_POST['pass1'] !== $_POST['pass2'] ) {
|
821 |
$errors->add( 'password_reset_mismatch', __( 'The passwords do not match.' ) );
|
822 |
}
|
823 |
|
826 |
*
|
827 |
* @since 3.5.0
|
828 |
*
|
829 |
+
* @param WP_Error $errors WP Error object.
|
830 |
* @param WP_User|WP_Error $user WP_User object if the login and reset key match. WP_Error object otherwise.
|
831 |
*/
|
832 |
do_action( 'validate_password_reset', $errors, $user );
|
845 |
login_header( __( 'Reset Password' ), '<p class="message reset-pass">' . __( 'Enter your new password below.' ) . '</p>', $errors );
|
846 |
|
847 |
?>
|
848 |
+
<form name="resetpassform" id="resetpassform" action="<?php echo esc_url( network_site_url( 'wp-login.php?action=resetpass', 'login_post' ) ); ?>" method="post" autocomplete="off">
|
849 |
+
<input type="hidden" id="user_login" value="<?php echo esc_attr( $rp_login ); ?>" autocomplete="off" />
|
850 |
|
851 |
+
<div class="user-pass1-wrap">
|
852 |
+
<p>
|
853 |
+
<label for="pass1"><?php _e( 'New password' ); ?></label>
|
854 |
+
</p>
|
855 |
|
856 |
+
<div class="wp-pwd">
|
857 |
+
<input type="password" data-reveal="1" data-pw="<?php echo esc_attr( wp_generate_password( 16 ) ); ?>" name="pass1" id="pass1" class="input password-input" size="24" value="" autocomplete="off" aria-describedby="pass-strength-result" />
|
858 |
+
|
859 |
+
<button type="button" class="button button-secondary wp-hide-pw hide-if-no-js" data-toggle="0" aria-label="<?php esc_attr_e( 'Hide password' ); ?>">
|
860 |
+
<span class="dashicons dashicons-hidden" aria-hidden="true"></span>
|
861 |
+
</button>
|
862 |
+
<div id="pass-strength-result" class="hide-if-no-js" aria-live="polite"><?php _e( 'Strength indicator' ); ?></div>
|
863 |
+
</div>
|
864 |
+
<div class="pw-weak">
|
865 |
+
<input type="checkbox" name="pw_weak" id="pw-weak" class="pw-checkbox" />
|
866 |
+
<label for="pw-weak"><?php _e( 'Confirm use of weak password' ); ?></label>
|
867 |
+
</div>
|
868 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
869 |
|
870 |
+
<p class="user-pass2-wrap">
|
871 |
+
<label for="pass2"><?php _e( 'Confirm new password' ); ?></label>
|
872 |
+
<input type="password" name="pass2" id="pass2" class="input" size="20" value="" autocomplete="off" />
|
873 |
+
</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
874 |
|
875 |
+
<p class="description indicator-hint"><?php echo wp_get_password_hint(); ?></p>
|
876 |
+
<br class="clear" />
|
|
|
|
|
|
|
877 |
|
878 |
+
<?php
|
879 |
|
880 |
+
/**
|
881 |
+
* Fires following the 'Strength indicator' meter in the user password reset form.
|
882 |
+
*
|
883 |
+
* @since 3.9.0
|
884 |
+
*
|
885 |
+
* @param WP_User $user User object of the user whose password is being reset.
|
886 |
+
*/
|
887 |
+
do_action( 'resetpass_form', $user );
|
888 |
|
889 |
+
?>
|
890 |
+
<input type="hidden" name="rp_key" value="<?php echo esc_attr( $rp_key ); ?>" />
|
891 |
+
<p class="submit">
|
892 |
+
<input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="<?php esc_attr_e( 'Reset Password' ); ?>" />
|
893 |
+
</p>
|
894 |
+
</form>
|
895 |
+
|
896 |
+
<p id="nav">
|
897 |
+
<a href="<?php echo esc_url( wp_login_url() ); ?>"><?php _e( 'Log in' ); ?></a>
|
898 |
+
<?php
|
899 |
+
|
900 |
+
if ( get_option( 'users_can_register' ) ) {
|
901 |
+
$registration_url = sprintf( '<a href="%s">%s</a>', esc_url( wp_registration_url() ), __( 'Register' ) );
|
902 |
+
|
903 |
+
echo esc_html( $login_link_separator );
|
904 |
+
|
905 |
+
/** This filter is documented in wp-includes/general-template.php */
|
906 |
+
echo apply_filters( 'register', $registration_url );
|
907 |
+
}
|
908 |
+
|
909 |
+
?>
|
910 |
+
</p>
|
911 |
<?php
|
|
|
912 |
|
913 |
+
login_footer( 'user_pass' );
|
914 |
break;
|
915 |
|
916 |
case 'register':
|
928 |
|
929 |
if ( ! get_option( 'users_can_register' ) ) {
|
930 |
wp_redirect( site_url( 'wp-login.php?registration=disabled' ) );
|
931 |
+
exit;
|
932 |
}
|
933 |
|
934 |
$user_login = '';
|
936 |
|
937 |
if ( $http_post ) {
|
938 |
if ( isset( $_POST['user_login'] ) && is_string( $_POST['user_login'] ) ) {
|
939 |
+
$user_login = wp_unslash( $_POST['user_login'] );
|
940 |
}
|
941 |
|
942 |
if ( isset( $_POST['user_email'] ) && is_string( $_POST['user_email'] ) ) {
|
944 |
}
|
945 |
|
946 |
$errors = register_new_user( $user_login, $user_email );
|
947 |
+
|
948 |
if ( ! is_wp_error( $errors ) ) {
|
949 |
$redirect_to = ! empty( $_POST['redirect_to'] ) ? $_POST['redirect_to'] : 'wp-login.php?checkemail=registered';
|
950 |
wp_safe_redirect( $redirect_to );
|
951 |
+
exit;
|
952 |
}
|
953 |
}
|
954 |
|
955 |
$registration_redirect = ! empty( $_REQUEST['redirect_to'] ) ? $_REQUEST['redirect_to'] : '';
|
956 |
+
|
957 |
/**
|
958 |
* Filters the registration redirect URL.
|
959 |
*
|
962 |
* @param string $registration_redirect The redirect destination URL.
|
963 |
*/
|
964 |
$redirect_to = apply_filters( 'registration_redirect', $registration_redirect );
|
965 |
+
|
966 |
login_header( __( 'Registration Form' ), '<p class="message register">' . __( 'Register For This Site' ) . '</p>', $errors );
|
967 |
+
|
968 |
?>
|
969 |
+
<form name="registerform" id="registerform" action="<?php echo esc_url( site_url( 'wp-login.php?action=register', 'login_post' ) ); ?>" method="post" novalidate="novalidate">
|
970 |
+
<p>
|
971 |
+
<label for="user_login"><?php _e( 'Username' ); ?></label>
|
972 |
+
<input type="text" name="user_login" id="user_login" class="input" value="<?php echo esc_attr( wp_unslash( $user_login ) ); ?>" size="20" autocapitalize="off" />
|
973 |
+
</p>
|
974 |
+
<p>
|
975 |
+
<label for="user_email"><?php _e( 'Email' ); ?></label>
|
976 |
+
<input type="email" name="user_email" id="user_email" class="input" value="<?php echo esc_attr( wp_unslash( $user_email ) ); ?>" size="25" />
|
977 |
+
</p>
|
978 |
+
<?php
|
979 |
+
|
980 |
+
/**
|
981 |
+
* Fires following the 'Email' field in the user registration form.
|
982 |
+
*
|
983 |
+
* @since 2.1.0
|
984 |
+
*/
|
985 |
+
do_action( 'register_form' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
986 |
|
987 |
+
?>
|
988 |
+
<p id="reg_passmail">
|
989 |
+
<?php _e( 'Registration confirmation will be emailed to you.' ); ?>
|
990 |
+
</p>
|
991 |
+
<br class="clear" />
|
992 |
+
<input type="hidden" name="redirect_to" value="<?php echo esc_attr( $redirect_to ); ?>" />
|
993 |
+
<p class="submit">
|
994 |
+
<input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="<?php esc_attr_e( 'Register' ); ?>" />
|
995 |
+
</p>
|
996 |
+
</form>
|
997 |
+
|
998 |
+
<p id="nav">
|
999 |
+
<a href="<?php echo esc_url( wp_login_url() ); ?>"><?php _e( 'Log in' ); ?></a>
|
1000 |
+
<?php echo esc_html( $login_link_separator ); ?>
|
1001 |
+
<a href="<?php echo esc_url( wp_lostpassword_url() ); ?>"><?php _e( 'Lost your password?' ); ?></a>
|
1002 |
+
</p>
|
1003 |
<?php
|
1004 |
+
|
1005 |
login_footer( 'user_login' );
|
1006 |
+
break;
|
1007 |
+
|
1008 |
+
case 'checkemail':
|
1009 |
+
$redirect_to = admin_url();
|
1010 |
+
$errors = new WP_Error();
|
1011 |
+
|
1012 |
+
if ( 'confirm' === $_GET['checkemail'] ) {
|
1013 |
+
$errors->add(
|
1014 |
+
'confirm',
|
1015 |
+
sprintf(
|
1016 |
+
/* translators: %s: Link to the login page. */
|
1017 |
+
__( 'Check your email for the confirmation link, then visit the <a href="%s">login page</a>.' ),
|
1018 |
+
wp_login_url()
|
1019 |
+
),
|
1020 |
+
'message'
|
1021 |
+
);
|
1022 |
+
} elseif ( 'registered' === $_GET['checkemail'] ) {
|
1023 |
+
$errors->add(
|
1024 |
+
'registered',
|
1025 |
+
sprintf(
|
1026 |
+
/* translators: %s: Link to the login page. */
|
1027 |
+
__( 'Registration complete. Please check your email, then visit the <a href="%s">login page</a>.' ),
|
1028 |
+
wp_login_url()
|
1029 |
+
),
|
1030 |
+
'message'
|
1031 |
+
);
|
1032 |
+
}
|
1033 |
+
|
1034 |
+
/** This action is documented in wp-login.php */
|
1035 |
+
$errors = apply_filters( 'wp_login_errors', $errors, $redirect_to );
|
1036 |
|
1037 |
+
login_header( __( 'Check your email' ), '', $errors );
|
1038 |
+
login_footer();
|
1039 |
break;
|
1040 |
|
1041 |
case 'confirmaction':
|
1080 |
default:
|
1081 |
$secure_cookie = '';
|
1082 |
$customize_login = isset( $_REQUEST['customize-login'] );
|
1083 |
+
|
1084 |
if ( $customize_login ) {
|
1085 |
wp_enqueue_script( 'customize-base' );
|
1086 |
}
|
1087 |
|
1088 |
// If the user wants SSL but the session is not SSL, force a secure cookie.
|
1089 |
if ( ! empty( $_POST['log'] ) && ! force_ssl_admin() ) {
|
1090 |
+
$user_name = sanitize_user( wp_unslash( $_POST['log'] ) );
|
1091 |
$user = get_user_by( 'login', $user_name );
|
1092 |
|
1093 |
if ( ! $user && strpos( $user_name, '@' ) ) {
|
1115 |
$reauth = empty( $_REQUEST['reauth'] ) ? false : true;
|
1116 |
|
1117 |
$user = wp_signon( array(), $secure_cookie );
|
|
|
1118 |
|
1119 |
if ( empty( $_COOKIE[ LOGGED_IN_COOKIE ] ) ) {
|
1120 |
if ( headers_sent() ) {
|
1121 |
$user = new WP_Error(
|
1122 |
'test_cookie',
|
1123 |
sprintf(
|
1124 |
+
/* translators: 1: Browser cookie documentation URL, 2: Support forums URL. */
|
1125 |
+
__( '<strong>Error</strong>: Cookies are blocked due to unexpected output. For help, please see <a href="%1$s">this documentation</a> or try the <a href="%2$s">support forums</a>.' ),
|
1126 |
__( 'https://wordpress.org/support/article/cookies/' ),
|
1127 |
+
__( 'https://wordpress.org/support/forums/' )
|
1128 |
)
|
1129 |
);
|
1130 |
} elseif ( isset( $_POST['testcookie'] ) && empty( $_COOKIE[ TEST_COOKIE ] ) ) {
|
1131 |
+
// If cookies are disabled, we can't log in even with a valid user and password.
|
1132 |
$user = new WP_Error(
|
1133 |
'test_cookie',
|
1134 |
sprintf(
|
1135 |
+
/* translators: %s: Browser cookie documentation URL. */
|
1136 |
+
__( '<strong>Error</strong>: Cookies are blocked or not supported by your browser. You must <a href="%s">enable cookies</a> to use WordPress.' ),
|
1137 |
__( 'https://wordpress.org/support/article/cookies/#enable-cookies-in-your-browser' )
|
1138 |
)
|
1139 |
);
|
1157 |
$message = '<p class="message">' . __( 'You have logged in successfully.' ) . '</p>';
|
1158 |
$interim_login = 'success';
|
1159 |
login_header( '', $message );
|
1160 |
+
|
1161 |
?>
|
1162 |
</div>
|
1163 |
<?php
|
1164 |
+
|
1165 |
/** This action is documented in wp-login.php */
|
1166 |
do_action( 'login_footer' );
|
1167 |
+
|
1168 |
+
if ( $customize_login ) {
|
1169 |
+
?>
|
1170 |
+
<script type="text/javascript">setTimeout( function(){ new wp.customize.Messenger({ url: '<?php echo wp_customize_url(); ?>', channel: 'login' }).send('login') }, 1000 );</script>
|
1171 |
+
<?php
|
1172 |
+
}
|
1173 |
+
|
1174 |
?>
|
|
|
|
|
|
|
1175 |
</body></html>
|
1176 |
<?php
|
1177 |
+
|
1178 |
exit;
|
1179 |
}
|
1180 |
|
1181 |
+
// Check if it is time to add a redirect to the admin email confirmation screen.
|
1182 |
+
if ( is_a( $user, 'WP_User' ) && $user->exists() && $user->has_cap( 'manage_options' ) ) {
|
1183 |
+
$admin_email_lifespan = (int) get_option( 'admin_email_lifespan' );
|
1184 |
+
|
1185 |
+
// If `0` (or anything "falsey" as it is cast to int) is returned, the user will not be redirected
|
1186 |
+
// to the admin email confirmation screen.
|
1187 |
+
/** This filter is documented in wp-login.php */
|
1188 |
+
$admin_email_check_interval = (int) apply_filters( 'admin_email_check_interval', 6 * MONTH_IN_SECONDS );
|
1189 |
+
|
1190 |
+
if ( $admin_email_check_interval > 0 && time() > $admin_email_lifespan ) {
|
1191 |
+
$redirect_to = add_query_arg(
|
1192 |
+
array(
|
1193 |
+
'action' => 'confirm_admin_email',
|
1194 |
+
'wp_lang' => get_user_locale( $user ),
|
1195 |
+
),
|
1196 |
+
wp_login_url( $redirect_to )
|
1197 |
+
);
|
1198 |
+
}
|
1199 |
+
}
|
1200 |
+
|
1201 |
+
if ( ( empty( $redirect_to ) || 'wp-admin/' === $redirect_to || admin_url() === $redirect_to ) ) {
|
1202 |
// If the user doesn't belong to a blog, send them to user admin. If the user can't edit posts, send them to their profile.
|
1203 |
if ( is_multisite() && ! get_active_blog_for_user( $user->ID ) && ! is_super_admin( $user->ID ) ) {
|
1204 |
$redirect_to = user_admin_url();
|
1209 |
}
|
1210 |
|
1211 |
wp_redirect( $redirect_to );
|
1212 |
+
exit;
|
1213 |
}
|
1214 |
+
|
1215 |
wp_safe_redirect( $redirect_to );
|
1216 |
+
exit;
|
1217 |
}
|
1218 |
|
1219 |
$errors = $user;
|
1232 |
}
|
1233 |
} else {
|
1234 |
// Some parts of this script use the main login form to display a message.
|
1235 |
+
if ( isset( $_GET['loggedout'] ) && $_GET['loggedout'] ) {
|
1236 |
$errors->add( 'loggedout', __( 'You are now logged out.' ), 'message' );
|
1237 |
+
} elseif ( isset( $_GET['registration'] ) && 'disabled' === $_GET['registration'] ) {
|
1238 |
$errors->add( 'registerdisabled', __( 'User registration is currently not allowed.' ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
1239 |
} elseif ( strpos( $redirect_to, 'about.php?updated' ) ) {
|
1240 |
$errors->add( 'updated', __( '<strong>You have successfully updated WordPress!</strong> Please log back in to see what’s new.' ), 'message' );
|
1241 |
} elseif ( WP_Recovery_Mode_Link_Service::LOGIN_ACTION_ENTERED === $action ) {
|
1242 |
$errors->add( 'enter_recovery_mode', __( 'Recovery Mode Initialized. Please log in to continue.' ), 'message' );
|
1243 |
+
} elseif ( isset( $_GET['redirect_to'] ) && false !== strpos( $_GET['redirect_to'], 'wp-admin/authorize-application.php' ) ) {
|
1244 |
+
$query_component = wp_parse_url( $_GET['redirect_to'], PHP_URL_QUERY );
|
1245 |
+
parse_str( $query_component, $query );
|
1246 |
+
|
1247 |
+
if ( ! empty( $query['app_name'] ) ) {
|
1248 |
+
/* translators: 1: Website name, 2: Application name. */
|
1249 |
+
$message = sprintf( 'Please log in to %1$s to authorize %2$s to connect to your account.', get_bloginfo( 'name', 'display' ), '<strong>' . esc_html( $query['app_name'] ) . '</strong>' );
|
1250 |
+
} else {
|
1251 |
+
/* translators: %s: Website name. */
|
1252 |
+
$message = sprintf( 'Please log in to %s to proceed with authorization.', get_bloginfo( 'name', 'display' ) );
|
1253 |
+
}
|
1254 |
+
|
1255 |
+
$errors->add( 'authorize_application', $message, 'message' );
|
1256 |
}
|
1257 |
}
|
1258 |
|
1261 |
*
|
1262 |
* @since 3.6.0
|
1263 |
*
|
1264 |
+
* @param WP_Error $errors WP Error object.
|
1265 |
+
* @param string $redirect_to Redirect destination URL.
|
1266 |
*/
|
1267 |
$errors = apply_filters( 'wp_login_errors', $errors, $redirect_to );
|
1268 |
|
1274 |
login_header( __( 'Log In' ), '', $errors );
|
1275 |
|
1276 |
if ( isset( $_POST['log'] ) ) {
|
1277 |
+
$user_login = ( 'incorrect_password' === $errors->get_error_code() || 'empty_password' === $errors->get_error_code() ) ? esc_attr( wp_unslash( $_POST['log'] ) ) : '';
|
1278 |
}
|
1279 |
+
|
1280 |
$rememberme = ! empty( $_POST['rememberme'] );
|
1281 |
|
1282 |
if ( $errors->has_errors() ) {
|
1284 |
} else {
|
1285 |
$aria_describedby_error = '';
|
1286 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1287 |
|
1288 |
+
wp_enqueue_script( 'user-profile' );
|
1289 |
+
|
1290 |
+
//aiowps - this check is necessary because otherwise if variables are undefined we get a warning!
|
1291 |
+
if(empty($user_login)){
|
1292 |
+
$user_login = '';
|
1293 |
+
}
|
1294 |
+
if(empty($error)){
|
1295 |
+
$error = '';
|
1296 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1297 |
?>
|
1298 |
+
|
1299 |
+
<form name="loginform" id="loginform" action="<?php echo esc_url( site_url( 'wp-login.php', 'login_post' ) ); ?>" method="post">
|
1300 |
+
<p>
|
1301 |
+
<label for="user_login"><?php _e( 'Username or Email Address' ); ?></label>
|
1302 |
+
<input type="text" name="log" id="user_login"<?php echo $aria_describedby_error; ?> class="input" value="<?php echo esc_attr( $user_login ); ?>" size="20" autocapitalize="off" />
|
1303 |
+
</p>
|
1304 |
+
|
1305 |
+
<div class="user-pass-wrap">
|
1306 |
+
<label for="user_pass"><?php _e( 'Password' ); ?></label>
|
1307 |
+
<div class="wp-pwd">
|
1308 |
+
<input type="password" name="pwd" id="user_pass"<?php echo $aria_describedby_error; ?> class="input password-input" value="" size="20" />
|
1309 |
+
<button type="button" class="button button-secondary wp-hide-pw hide-if-no-js" data-toggle="0" aria-label="<?php esc_attr_e( 'Show password' ); ?>">
|
1310 |
+
<span class="dashicons dashicons-visibility" aria-hidden="true"></span>
|
1311 |
+
</button>
|
1312 |
+
</div>
|
1313 |
+
</div>
|
|
|
1314 |
<?php
|
1315 |
+
|
1316 |
+
/**
|
1317 |
+
* Fires following the 'Password' field in the login form.
|
1318 |
+
*
|
1319 |
+
* @since 2.1.0
|
1320 |
+
*/
|
1321 |
+
do_action( 'login_form' );
|
1322 |
+
|
1323 |
+
?>
|
1324 |
+
<p class="forgetmenot"><input name="rememberme" type="checkbox" id="rememberme" value="forever" <?php checked( $rememberme ); ?> /> <label for="rememberme"><?php esc_html_e( 'Remember Me' ); ?></label></p>
|
1325 |
+
<p class="submit">
|
1326 |
+
<input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="<?php esc_attr_e( 'Log In' ); ?>" />
|
1327 |
+
<?php
|
1328 |
+
|
1329 |
+
if ( $interim_login ) {
|
1330 |
+
?>
|
1331 |
+
<input type="hidden" name="interim-login" value="1" />
|
1332 |
+
<?php
|
1333 |
+
} else {
|
1334 |
+
?>
|
1335 |
+
<input type="hidden" name="redirect_to" value="<?php echo esc_attr( $redirect_to ); ?>" />
|
1336 |
+
<?php
|
1337 |
+
}
|
1338 |
+
|
1339 |
+
if ( $customize_login ) {
|
1340 |
+
?>
|
1341 |
+
<input type="hidden" name="customize-login" value="1" />
|
1342 |
+
<?php
|
1343 |
+
}
|
1344 |
+
|
1345 |
+
?>
|
1346 |
+
<input type="hidden" name="testcookie" value="1" />
|
1347 |
+
</p>
|
1348 |
+
</form>
|
1349 |
+
|
1350 |
+
<?php
|
1351 |
+
|
1352 |
+
if ( ! $interim_login ) {
|
1353 |
+
?>
|
1354 |
+
<p id="nav">
|
1355 |
+
<?php
|
1356 |
+
|
1357 |
+
if ( get_option( 'users_can_register' ) ) {
|
1358 |
$registration_url = sprintf( '<a href="%s">%s</a>', esc_url( wp_registration_url() ), __( 'Register' ) );
|
1359 |
|
1360 |
/** This filter is documented in wp-includes/general-template.php */
|
1361 |
echo apply_filters( 'register', $registration_url );
|
1362 |
|
1363 |
echo esc_html( $login_link_separator );
|
1364 |
+
}
|
1365 |
+
|
1366 |
?>
|
1367 |
+
<a href="<?php echo esc_url( wp_lostpassword_url() ); ?>"><?php _e( 'Lost your password?' ); ?></a>
|
1368 |
+
</p>
|
1369 |
+
<?php
|
1370 |
+
}
|
1371 |
|
1372 |
+
$login_script = 'function wp_attempt_focus() {';
|
1373 |
+
$login_script .= 'setTimeout( function() {';
|
1374 |
+
$login_script .= 'try {';
|
1375 |
+
|
1376 |
+
if ( $user_login ) {
|
1377 |
+
$login_script .= 'd = document.getElementById( "user_pass" ); d.value = "";';
|
1378 |
+
} else {
|
1379 |
+
$login_script .= 'd = document.getElementById( "user_login" );';
|
1380 |
+
|
1381 |
+
if ( $errors->get_error_code() === 'invalid_username' ) {
|
1382 |
+
$login_script .= 'd.value = "";';
|
|
|
1383 |
}
|
1384 |
+
}
|
1385 |
+
|
1386 |
+
$login_script .= 'd.focus(); d.select();';
|
1387 |
+
$login_script .= '} catch( er ) {}';
|
1388 |
+
$login_script .= '}, 200);';
|
1389 |
+
$login_script .= "}\n"; // End of wp_attempt_focus().
|
|
|
1390 |
|
|
|
1391 |
/**
|
1392 |
* Filters whether to print the call to `wp_attempt_focus()` on the login screen.
|
1393 |
*
|
1396 |
* @param bool $print Whether to print the function call. Default true.
|
1397 |
*/
|
1398 |
if ( apply_filters( 'enable_login_autofocus', true ) && ! $error ) {
|
1399 |
+
$login_script .= "wp_attempt_focus();\n";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1400 |
}
|
|
|
|
|
|
|
|
|
1401 |
|
1402 |
+
// Run `wpOnload()` if defined.
|
1403 |
+
$login_script .= "if ( typeof wpOnload === 'function' ) { wpOnload() }";
|
1404 |
+
|
1405 |
+
?>
|
1406 |
+
<script type="text/javascript">
|
1407 |
+
<?php echo $login_script; ?>
|
1408 |
+
</script>
|
1409 |
<?php
|
|
|
1410 |
|
1411 |
+
if ( $interim_login ) {
|
1412 |
+
?>
|
1413 |
+
<script type="text/javascript">
|
1414 |
+
( function() {
|
1415 |
+
try {
|
1416 |
+
var i, links = document.getElementsByTagName( 'a' );
|
1417 |
+
for ( i in links ) {
|
1418 |
+
if ( links[i].href ) {
|
1419 |
+
links[i].target = '_blank';
|
1420 |
+
links[i].rel = 'noopener';
|
1421 |
+
}
|
1422 |
+
}
|
1423 |
+
} catch( er ) {}
|
1424 |
+
}());
|
1425 |
+
</script>
|
1426 |
+
<?php
|
1427 |
+
}
|
1428 |
+
|
1429 |
+
login_footer();
|
1430 |
break;
|
1431 |
} // End action switch.
|
readme.txt
CHANGED
@@ -2,9 +2,9 @@
|
|
2 |
Contributors: Tips and Tricks HQ, wpsolutions, Peter Petreski, Ruhul Amin, mbrsolution
|
3 |
Donate link: https://www.tipsandtricks-hq.com
|
4 |
Tags: security, secure, Anti Virus, antivirus, ban, ban hacker, virus, firewall, firewall security, login, lockdown, htaccess, hack, malware, vulnerability, protect, protection, phishing, database, backup, plugin, sql injection, ssl, restrict, login captcha, bot, hotlink, 404 detection, admin, rename, all in one, scan, scanner, iframe,
|
5 |
-
Requires at least:
|
6 |
-
Tested up to: 5.
|
7 |
-
Stable tag: 4.4.
|
8 |
License: GPLv3
|
9 |
|
10 |
A comprehensive, user-friendly, all in one WordPress security and firewall plugin for your site.
|
@@ -184,6 +184,25 @@ None
|
|
184 |
|
185 |
== Changelog ==
|
186 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
187 |
= 4.4.4 =
|
188 |
- Fixed bugs and improved functionality related to "logged in users" functionality.
|
189 |
- Google recaptha checks for WooCommerce product reviews
|
2 |
Contributors: Tips and Tricks HQ, wpsolutions, Peter Petreski, Ruhul Amin, mbrsolution
|
3 |
Donate link: https://www.tipsandtricks-hq.com
|
4 |
Tags: security, secure, Anti Virus, antivirus, ban, ban hacker, virus, firewall, firewall security, login, lockdown, htaccess, hack, malware, vulnerability, protect, protection, phishing, database, backup, plugin, sql injection, ssl, restrict, login captcha, bot, hotlink, 404 detection, admin, rename, all in one, scan, scanner, iframe,
|
5 |
+
Requires at least: 5.0
|
6 |
+
Tested up to: 5.7
|
7 |
+
Stable tag: 4.4.8
|
8 |
License: GPLv3
|
9 |
|
10 |
A comprehensive, user-friendly, all in one WordPress security and firewall plugin for your site.
|
184 |
|
185 |
== Changelog ==
|
186 |
|
187 |
+
= 4.4.8 =
|
188 |
+
- Fixed an issue with the rename login page feature on WordPress v5.7.
|
189 |
+
|
190 |
+
= 4.4.7 =
|
191 |
+
- Updated the renamed login page code to reflect the latest WordPress wp-login.php code.
|
192 |
+
- Cleaned up/improved repeated code.
|
193 |
+
- Translation string fix in the rename login feature.
|
194 |
+
- Added action hook "aiowps_site_lockout_settings_saved" that is triggered after the site lockout configuration is saved.
|
195 |
+
- Updated some queries to use $wpdb->prepare() or esc_sql() wherever possible.
|
196 |
+
|
197 |
+
= 4.4.6 =
|
198 |
+
- Fixed potential vulnerability with the Banned User Agents feature (in the blacklist menu). Thanks to WonTae Jang.
|
199 |
+
|
200 |
+
= 4.4.5 =
|
201 |
+
- Fixed default DateTime to prevent DB error.
|
202 |
+
- Added Korean language translation files. Thanks to Jonghyun Cho.
|
203 |
+
- Reworked the code for the "Generate New DB Table Prefix" feature to make it more robust. Thanks to @baddiedev.
|
204 |
+
- Added translation ability to some strings.
|
205 |
+
|
206 |
= 4.4.4 =
|
207 |
- Fixed bugs and improved functionality related to "logged in users" functionality.
|
208 |
- Google recaptha checks for WooCommerce product reviews
|
wp-security-core.php
CHANGED
@@ -7,7 +7,7 @@ if ( !defined('ABSPATH') ) {
|
|
7 |
if (!class_exists('AIO_WP_Security')){
|
8 |
|
9 |
class AIO_WP_Security{
|
10 |
-
var $version = '4.4.
|
11 |
var $db_version = '1.9';
|
12 |
var $plugin_url;
|
13 |
var $plugin_path;
|
7 |
if (!class_exists('AIO_WP_Security')){
|
8 |
|
9 |
class AIO_WP_Security{
|
10 |
+
var $version = '4.4.8';
|
11 |
var $db_version = '1.9';
|
12 |
var $plugin_url;
|
13 |
var $plugin_path;
|
wp-security.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: All In One WP Security
|
4 |
-
Version: 4.4.
|
5 |
Plugin URI: https://www.tipsandtricks-hq.com/wordpress-security-and-firewall-plugin
|
6 |
Author: Tips and Tricks HQ, Peter Petreski, Ruhul, Ivy
|
7 |
Author URI: https://www.tipsandtricks-hq.com/
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: All In One WP Security
|
4 |
+
Version: 4.4.8
|
5 |
Plugin URI: https://www.tipsandtricks-hq.com/wordpress-security-and-firewall-plugin
|
6 |
Author: Tips and Tricks HQ, Peter Petreski, Ruhul, Ivy
|
7 |
Author URI: https://www.tipsandtricks-hq.com/
|