implement after-login-route setting
This commit is contained in:
@@ -32,7 +32,10 @@ add_action('init', function () {
|
|||||||
$user_id = find_or_create_user($identifier_name, $identifier_value, $name);
|
$user_id = find_or_create_user($identifier_name, $identifier_value, $name);
|
||||||
|
|
||||||
login_user($user_id);
|
login_user($user_id);
|
||||||
wp_redirect(home_url('/dashboard'));
|
|
||||||
|
$redirect_path = get_configured_option('after-login-route');
|
||||||
|
wp_redirect(home_url($redirect_path));
|
||||||
|
|
||||||
exit();
|
exit();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
+25
-5
@@ -12,9 +12,9 @@ add_action('admin_menu', function () {
|
|||||||
|
|
||||||
add_action('admin_init', function () {
|
add_action('admin_init', function () {
|
||||||
|
|
||||||
register_setting(config('da.settings-group'), config('da.options.jwt-secret'));
|
foreach (config('da.options') as $configured => $options_key) {
|
||||||
register_setting(config('da.settings-group'), config('da.options.user-identifier'));
|
register_setting(config('da.settings-group'), $options_key);
|
||||||
register_setting(config('da.settings-group'), config('da.options.login-route'));
|
}
|
||||||
|
|
||||||
add_settings_section(
|
add_settings_section(
|
||||||
config('da.section-id'),
|
config('da.section-id'),
|
||||||
@@ -64,7 +64,22 @@ add_action('admin_init', function () {
|
|||||||
$name = config('da.options.login-route');
|
$name = config('da.options.login-route');
|
||||||
$value = esc_attr(get_option($name, config('da.login_route_default')));
|
$value = esc_attr(get_option($name, config('da.login_route_default')));
|
||||||
echo '<div class="ltr" style="float: right; display: flex; align-items: center; gap: 5px;">';
|
echo '<div class="ltr" style="float: right; display: flex; align-items: center; gap: 5px;">';
|
||||||
echo '<span style="color: #666;">' . home_url('/') . '</span>';
|
echo '<span style="color: #666;">'.home_url('/').'</span>';
|
||||||
|
echo "<input type='text' name='$name' value='$value' class='regular-text' />";
|
||||||
|
echo '</div>';
|
||||||
|
},
|
||||||
|
config('da.settings-page'),
|
||||||
|
config('da.section-id')
|
||||||
|
);
|
||||||
|
|
||||||
|
add_settings_field(
|
||||||
|
config('da.options.after-login-route'),
|
||||||
|
config('da.translations.after-login-route'),
|
||||||
|
function () {
|
||||||
|
$name = config('da.options.after-login-route');
|
||||||
|
$value = esc_attr(get_option($name, config('da.after_login_route_default')));
|
||||||
|
echo '<div class="ltr" style="float: right; display: flex; align-items: center; gap: 5px;">';
|
||||||
|
echo '<span style="color: #666;">'.home_url('/').'</span>';
|
||||||
echo "<input type='text' name='$name' value='$value' class='regular-text' />";
|
echo "<input type='text' name='$name' value='$value' class='regular-text' />";
|
||||||
echo '</div>';
|
echo '</div>';
|
||||||
},
|
},
|
||||||
@@ -74,7 +89,12 @@ add_action('admin_init', function () {
|
|||||||
|
|
||||||
$loginRouteOptionName = config('da.options.login-route');
|
$loginRouteOptionName = config('da.options.login-route');
|
||||||
add_filter("pre_update_option_{$loginRouteOptionName}", function ($value) {
|
add_filter("pre_update_option_{$loginRouteOptionName}", function ($value) {
|
||||||
return trim($value, '/');
|
return trim($value, '/');
|
||||||
|
});
|
||||||
|
|
||||||
|
$afterLoginRouteOptionName = config('da.options.after-login-route');
|
||||||
|
add_filter("pre_update_option_{$afterLoginRouteOptionName}", function ($value) {
|
||||||
|
return trim($value, '/');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
+4
-1
@@ -10,6 +10,7 @@ return [
|
|||||||
'jwt-secret' => 'da_jwt_secret',
|
'jwt-secret' => 'da_jwt_secret',
|
||||||
'user-identifier' => 'da_user_identifier',
|
'user-identifier' => 'da_user_identifier',
|
||||||
'login-route' => 'da_login_route',
|
'login-route' => 'da_login_route',
|
||||||
|
'after-login-route' => 'da_after_login_route',
|
||||||
],
|
],
|
||||||
|
|
||||||
'user-identifiers' => [
|
'user-identifiers' => [
|
||||||
@@ -19,6 +20,7 @@ return [
|
|||||||
],
|
],
|
||||||
|
|
||||||
'login_route_default' => 'dabestaniha/login',
|
'login_route_default' => 'dabestaniha/login',
|
||||||
|
'after_login_route_default' => 'dashboard',
|
||||||
|
|
||||||
'translations' => [
|
'translations' => [
|
||||||
'mobile' => 'تلفن همراه',
|
'mobile' => 'تلفن همراه',
|
||||||
@@ -31,7 +33,8 @@ return [
|
|||||||
|
|
||||||
'jwt-secret' => 'کلید JWT',
|
'jwt-secret' => 'کلید JWT',
|
||||||
'user-identifier' => 'فیلد شناسایی کاربر',
|
'user-identifier' => 'فیلد شناسایی کاربر',
|
||||||
'login-route' => 'آدرس لاگین دبستانی ها',
|
'login-route' => 'مسیر لاگین دبستانی ها',
|
||||||
|
'after-login-route' => 'مسیر بعد از لاگین',
|
||||||
|
|
||||||
'new-user' => 'کاربر جدید',
|
'new-user' => 'کاربر جدید',
|
||||||
],
|
],
|
||||||
|
|||||||
Reference in New Issue
Block a user