Ultimate Member – User Profile & Membership Plugin - Version 2.0.50

Version Description

Download this release

Release Info

Developer nsinelnikov
Plugin Icon 128x128 Ultimate Member – User Profile & Membership Plugin
Version 2.0.50
Comparing to
See all releases

Code changes from version 2.0.49 to 2.0.50

includes/class-config.php CHANGED
@@ -1,8 +1,10 @@
1
<?php
2
namespace um;
3
4
if ( ! defined( 'ABSPATH' ) ) exit;
5
6
if ( ! class_exists( 'um\Config' ) ) {
7
8
@@ -539,6 +541,8 @@ if ( ! class_exists( 'um\Config' ) ) {
539
'rest_api_version' => '2.0'
540
);
541
542
$tabs = UM()->profile()->tabs_primary();
543
foreach ( $tabs as $id => $tab ) {
544
$this->settings_defaults['profile_tab_' . $id] = 1;
1
<?php
2
namespace um;
3
4
+
5
if ( ! defined( 'ABSPATH' ) ) exit;
6
7
+
8
if ( ! class_exists( 'um\Config' ) ) {
9
10
541
'rest_api_version' => '2.0'
542
);
543
544
+ add_filter( 'um_get_tabs_from_config', '__return_true' );
545
+
546
$tabs = UM()->profile()->tabs_primary();
547
foreach ( $tabs as $id => $tab ) {
548
$this->settings_defaults['profile_tab_' . $id] = 1;
includes/core/class-access.php CHANGED
@@ -372,15 +372,22 @@ if ( ! class_exists( 'um\core\Access' ) ) {
372
* Old global restrict content logic
373
*/
374
function template_redirect() {
375
- global $post;
376
377
//if we logged by administrator it can access to all content
378
if ( current_user_can( 'administrator' ) )
379
return;
380
381
//if we use individual restrict content options skip this function
382
- if ( $this->singular_page )
383
return;
384
385
//also skip if we currently at wp-admin or 404 page
386
if ( is_admin() || is_404() )
372
* Old global restrict content logic
373
*/
374
function template_redirect() {
375
+ global $post, $wp_query;
376
377
//if we logged by administrator it can access to all content
378
if ( current_user_can( 'administrator' ) )
379
return;
380
381
+ if ( is_object( $wp_query ) ) {
382
+ $is_singular = $wp_query->is_singular();
383
+ } else {
384
+ $is_singular = ! empty( $wp_query->is_singular ) ? true : false;
385
+ }
386
+
387
//if we use individual restrict content options skip this function
388
+ if ( $is_singular && $this->singular_page ) {
389
return;
390
+ }
391
392
//also skip if we currently at wp-admin or 404 page
393
if ( is_admin() || is_404() )
includes/core/class-external-integrations.php CHANGED
@@ -286,13 +286,6 @@ if ( ! class_exists( 'um\core\External_Integrations' ) ) {
286
if ( function_exists( 'icl_get_current_language' ) && icl_get_current_language() != icl_get_default_language() ) {
287
$url = $this->get_url_for_language( UM()->config()->permalinks[ $slug ], icl_get_current_language() );
288
289
- /*if ( get_post_meta( get_the_ID(), '_um_wpml_account', true ) == 1 ) {
290
- $url = get_permalink( get_the_ID() );
291
- }
292
- if ( get_post_meta( get_the_ID(), '_um_wpml_user', true ) == 1 ) {
293
- $url = $this->get_url_for_language( UM()->config()->permalinks[ $slug ], icl_get_current_language() );
294
- }*/
295
-
296
if ( $updated ) {
297
$url = add_query_arg( 'updated', esc_attr( $updated ), $url );
298
}
286
if ( function_exists( 'icl_get_current_language' ) && icl_get_current_language() != icl_get_default_language() ) {
287
$url = $this->get_url_for_language( UM()->config()->permalinks[ $slug ], icl_get_current_language() );
288
289
if ( $updated ) {
290
$url = add_query_arg( 'updated', esc_attr( $updated ), $url );
291
}
includes/core/class-validation.php CHANGED
@@ -73,7 +73,11 @@ if ( ! class_exists( 'um\core\Validation' ) ) {
73
}
74
75
//validation of correct values from options in wp-admin
76
- $stripslashes = stripslashes( $value );
77
if ( in_array( $fields[ $key ]['type'], array( 'select' ) ) &&
78
! empty( $stripslashes ) && ! empty( $fields[ $key ]['options'] ) &&
79
! in_array( $stripslashes, array_map( 'trim', $fields[ $key ]['options'] ) ) ) {
73
}
74
75
//validation of correct values from options in wp-admin
76
+ $stripslashes = $value;
77
+ if( is_string( $value ) ){
78
+ $stripslashes = stripslashes( $value );
79
+ }
80
+
81
if ( in_array( $fields[ $key ]['type'], array( 'select' ) ) &&
82
! empty( $stripslashes ) && ! empty( $fields[ $key ]['options'] ) &&
83
! in_array( $stripslashes, array_map( 'trim', $fields[ $key ]['options'] ) ) ) {
includes/core/um-filters-members.php CHANGED
@@ -378,7 +378,7 @@ function um_prepare_user_query_args( $query_args, $args ) {
378
379
} elseif ( 'display_name' == $sortby ) {
380
381
- /*$display_name = UM()->options()->get( 'display_name' );
382
if ( $display_name == 'username' ) {
383
$query_args['orderby'] = 'user_login';
384
$order = 'ASC';
@@ -397,22 +397,7 @@ function um_prepare_user_query_args( $query_args, $args ) {
397
398
$query_args['orderby'] = 'full_name, display_name';
399
$order = 'ASC';
400
- }*/
401
-
402
- $query_args['meta_query'][] = array(
403
- 'relation' => 'OR',
404
- 'full_name' => array(
405
- 'key' => 'full_name',
406
- 'compare' => 'EXISTS'
407
- ),
408
- array(
409
- 'key' => 'full_name',
410
- 'compare' => 'NOT EXISTS'
411
- )
412
- );
413
-
414
- $query_args['orderby'] = 'full_name, display_name';
415
- $order = 'ASC';
416
417
} elseif ( in_array( $sortby, array( 'last_name', 'first_name' ) ) ) {
418
378
379
} elseif ( 'display_name' == $sortby ) {
380
381
+ $display_name = UM()->options()->get( 'display_name' );
382
if ( $display_name == 'username' ) {
383
$query_args['orderby'] = 'user_login';
384
$order = 'ASC';
397
398
$query_args['orderby'] = 'full_name, display_name';
399
$order = 'ASC';
400
+ }
401
402
} elseif ( in_array( $sortby, array( 'last_name', 'first_name' ) ) ) {
403
includes/um-short-functions.php CHANGED
@@ -1442,20 +1442,24 @@ function um_can_view_field( $data ) {
1442
$current_user_roles = um_user( 'roles' );
1443
um_fetch_user( $previous_user );
1444
1445
- if ( $data['public'] == '-3' && ! um_is_user_himself() && ( empty( $current_user_roles ) || count( array_intersect( $current_user_roles, $data['roles'] ) ) <= 0 ) )
1446
return false;
1447
1448
- if ( ! um_is_user_himself() && $data['public'] == '-1' && ! UM()->roles()->um_user_can( 'can_edit_everyone' ) )
1449
return false;
1450
1451
- if ( $data['public'] == '-2' && $data['roles'] )
1452
- if ( empty( $current_user_roles ) || count( array_intersect( $current_user_roles, $data['roles'] ) ) <= 0 )
1453
return false;
1454
}
1455
1456
}
1457
1458
- return true;
1459
}
1460
1461
1442
$current_user_roles = um_user( 'roles' );
1443
um_fetch_user( $previous_user );
1444
1445
+ if ( $data['public'] == '-3' && ! um_is_user_himself() && ( empty( $current_user_roles ) || count( array_intersect( $current_user_roles, $data['roles'] ) ) <= 0 ) ) {
1446
return false;
1447
+ }
1448
1449
+ if ( ! um_is_user_himself() && $data['public'] == '-1' && ! UM()->roles()->um_user_can( 'can_edit_everyone' ) ) {
1450
return false;
1451
+ }
1452
1453
+ if ( $data['public'] == '-2' && $data['roles'] ) {
1454
+ if ( empty( $current_user_roles ) || count( array_intersect( $current_user_roles, $data['roles'] ) ) <= 0 ) {
1455
return false;
1456
+ }
1457
+ }
1458
}
1459
1460
}
1461
1462
+ return apply_filters( 'um_can_view_field', true, $data );
1463
}
1464
1465
languages/ultimate-member-en_US.mo CHANGED
Binary file
languages/ultimate-member-en_US.po CHANGED
@@ -1,8 +1,8 @@
1
msgid ""
2
msgstr ""
3
"Project-Id-Version: Ultimate Member\n"
4
- "POT-Creation-Date: 2019-05-29 18:50+0300\n"
5
- "PO-Revision-Date: 2019-05-29 18:50+0300\n"
6
"Last-Translator: \n"
7
"Language-Team: \n"
8
"Language: en_US\n"
@@ -1706,7 +1706,7 @@ msgid ""
1706
msgstr ""
1707
1708
#: includes/admin/core/class-admin-settings.php:436
1709
- #: includes/class-config.php:134 includes/class-config.php:746
1710
#: includes/core/class-account.php:92
1711
msgid "Account"
1712
msgstr ""
@@ -3229,7 +3229,7 @@ msgid ""
3229
msgstr ""
3230
3231
#: includes/admin/templates/directory/search.php:95
3232
- #: includes/class-config.php:153 includes/class-config.php:248
3233
msgid "{total_users} Members"
3234
msgstr ""
3235
@@ -3242,7 +3242,7 @@ msgid "Same as above but in case of 1 user found only"
3242
msgstr ""
3243
3244
#: includes/admin/templates/directory/search.php:103
3245
- #: includes/class-config.php:154 includes/class-config.php:249
3246
msgid "{total_users} Member"
3247
msgstr ""
3248
@@ -3256,7 +3256,7 @@ msgid ""
3256
msgstr ""
3257
3258
#: includes/admin/templates/directory/search.php:111
3259
- #: includes/class-config.php:155
3260
msgid "We are sorry. We cannot find any users who match your search criteria."
3261
msgstr ""
3262
@@ -3964,145 +3964,145 @@ msgstr ""
3964
msgid "Check All"
3965
msgstr ""
3966
3967
- #: includes/class-config.php:129 includes/class-config.php:741
3968
msgid "User"
3969
msgstr ""
3970
3971
- #: includes/class-config.php:130 includes/class-config.php:235
3972
- #: includes/class-config.php:241 includes/class-config.php:742
3973
msgid "Login"
3974
msgstr ""
3975
3976
- #: includes/class-config.php:131 includes/class-config.php:233
3977
- #: includes/class-config.php:245 includes/class-config.php:743
3978
msgid "Register"
3979
msgstr ""
3980
3981
- #: includes/class-config.php:132 includes/class-config.php:744
3982
msgid "Members"
3983
msgstr ""
3984
3985
- #: includes/class-config.php:133 includes/class-config.php:745
3986
#: includes/core/um-actions-profile.php:1138
3987
#: includes/core/um-actions-user.php:15
3988
msgid "Logout"
3989
msgstr ""
3990
3991
- #: includes/class-config.php:135 includes/class-config.php:747
3992
msgid "Password Reset"
3993
msgstr ""
3994
3995
- #: includes/class-config.php:308
3996
msgid "Account Welcome Email"
3997
msgstr ""
3998
3999
- #: includes/class-config.php:319
4000
msgid ""
4001
"Whether to send the user an email when his account is automatically approved"
4002
msgstr ""
4003
4004
- #: includes/class-config.php:325
4005
msgid "Account Activation Email"
4006
msgstr ""
4007
4008
- #: includes/class-config.php:333
4009
msgid ""
4010
"Whether to send the user an email when his account needs e-mail activation"
4011
msgstr ""
4012
4013
- #: includes/class-config.php:338
4014
msgid "Your account is pending review"
4015
msgstr ""
4016
4017
- #: includes/class-config.php:346
4018
msgid "Whether to send the user an email when his account needs admin review"
4019
msgstr ""
4020
4021
- #: includes/class-config.php:351
4022
msgid "Account Approved Email"
4023
msgstr ""
4024
4025
- #: includes/class-config.php:363
4026
msgid "Whether to send the user an email when his account is approved"
4027
msgstr ""
4028
4029
- #: includes/class-config.php:368
4030
msgid "Account Rejected Email"
4031
msgstr ""
4032
4033
- #: includes/class-config.php:375
4034
msgid "Whether to send the user an email when his account is rejected"
4035
msgstr ""
4036
4037
- #: includes/class-config.php:380
4038
msgid "Account Deactivated Email"
4039
msgstr ""
4040
4041
- #: includes/class-config.php:387
4042
msgid "Whether to send the user an email when his account is deactivated"
4043
msgstr ""
4044
4045
- #: includes/class-config.php:393
4046
msgid "Account Deleted Email"
4047
msgstr ""
4048
4049
- #: includes/class-config.php:400
4050
msgid "Whether to send the user an email when his account is deleted"
4051
msgstr ""
4052
4053
- #: includes/class-config.php:406
4054
msgid "Password Reset Email"
4055
msgstr ""
4056
4057
- #: includes/class-config.php:414
4058
msgid ""
4059
"Whether to send an email when users changed their password (Recommended, "
4060
"please keep on)"
4061
msgstr ""
4062
4063
- #: includes/class-config.php:420
4064
msgid "Password Changed Email"
4065
msgstr ""
4066
4067
- #: includes/class-config.php:427
4068
msgid ""
4069
"Whether to send the user an email when he request to reset password "
4070
"(Recommended, please keep on)"
4071
msgstr ""
4072
4073
- #: includes/class-config.php:433
4074
msgid "Account Updated Email"
4075
msgstr ""
4076
4077
- #: includes/class-config.php:440
4078
msgid "Whether to send the user an email when he updated their account"
4079
msgstr ""
4080
4081
- #: includes/class-config.php:446
4082
msgid "New User Notification"
4083
msgstr ""
4084
4085
- #: includes/class-config.php:452
4086
msgid "Whether to receive notification when a new user account is approved"
4087
msgstr ""
4088
4089
- #: includes/class-config.php:458
4090
msgid "Account Needs Review Notification"
4091
msgstr ""
4092
4093
- #: includes/class-config.php:465
4094
msgid "Whether to receive notification when an account needs admin review"
4095
msgstr ""
4096
4097
- #: includes/class-config.php:470
4098
msgid "Account Deletion Notification"
4099
msgstr ""
4100
4101
- #: includes/class-config.php:473
4102
msgid "Whether to receive notification when an account is deleted"
4103
msgstr ""
4104
4105
- #: includes/class-config.php:496
4106
msgid ""
4107
"Are you sure you want to delete your account? This will erase all of your "
4108
"account data from the site. To delete your account enter your password below"
@@ -6309,12 +6309,12 @@ msgstr ""
6309
msgid "Less than 1 year old"
6310
msgstr ""
6311
6312
- #: includes/core/class-external-integrations.php:494
6313
#, php-format
6314
msgid "Edit the %s translation"
6315
msgstr ""
6316
6317
- #: includes/core/class-external-integrations.php:501
6318
#, php-format
6319
msgid "Add translation to %s"
6320
msgstr ""
1
msgid ""
2
msgstr ""
3
"Project-Id-Version: Ultimate Member\n"
4
+ "POT-Creation-Date: 2019-07-01 14:36+0300\n"
5
+ "PO-Revision-Date: 2019-07-01 14:36+0300\n"
6
"Last-Translator: \n"
7
"Language-Team: \n"
8
"Language: en_US\n"
1706
msgstr ""
1707
1708
#: includes/admin/core/class-admin-settings.php:436
1709
+ #: includes/class-config.php:136 includes/class-config.php:750
1710
#: includes/core/class-account.php:92
1711
msgid "Account"
1712
msgstr ""
3229
msgstr ""
3230
3231
#: includes/admin/templates/directory/search.php:95
3232
+ #: includes/class-config.php:155 includes/class-config.php:250
3233
msgid "{total_users} Members"
3234
msgstr ""
3235
3242
msgstr ""
3243
3244
#: includes/admin/templates/directory/search.php:103
3245
+ #: includes/class-config.php:156 includes/class-config.php:251
3246
msgid "{total_users} Member"
3247
msgstr ""
3248
3256
msgstr ""
3257
3258
#: includes/admin/templates/directory/search.php:111
3259
+ #: includes/class-config.php:157
3260
msgid "We are sorry. We cannot find any users who match your search criteria."
3261
msgstr ""
3262
3964
msgid "Check All"
3965
msgstr ""
3966
3967
+ #: includes/class-config.php:131 includes/class-config.php:745
3968
msgid "User"
3969
msgstr ""
3970
3971
+ #: includes/class-config.php:132 includes/class-config.php:237
3972
+ #: includes/class-config.php:243 includes/class-config.php:746
3973
msgid "Login"
3974
msgstr ""
3975
3976
+ #: includes/class-config.php:133 includes/class-config.php:235
3977
+ #: includes/class-config.php:247 includes/class-config.php:747
3978
msgid "Register"
3979
msgstr ""
3980
3981
+ #: includes/class-config.php:134 includes/class-config.php:748
3982
msgid "Members"
3983
msgstr ""
3984
3985
+ #: includes/class-config.php:135 includes/class-config.php:749
3986
#: includes/core/um-actions-profile.php:1138
3987
#: includes/core/um-actions-user.php:15
3988
msgid "Logout"
3989
msgstr ""
3990
3991
+ #: includes/class-config.php:137 includes/class-config.php:751
3992
msgid "Password Reset"
3993
msgstr ""
3994
3995
+ #: includes/class-config.php:310
3996
msgid "Account Welcome Email"
3997
msgstr ""
3998
3999
+ #: includes/class-config.php:321
4000
msgid ""
4001
"Whether to send the user an email when his account is automatically approved"
4002
msgstr ""
4003
4004
+ #: includes/class-config.php:327
4005
msgid "Account Activation Email"
4006
msgstr ""
4007
4008
+ #: includes/class-config.php:335
4009
msgid ""
4010
"Whether to send the user an email when his account needs e-mail activation"
4011
msgstr ""
4012
4013
+ #: includes/class-config.php:340
4014
msgid "Your account is pending review"
4015
msgstr ""
4016
4017
+ #: includes/class-config.php:348
4018
msgid "Whether to send the user an email when his account needs admin review"
4019
msgstr ""
4020
4021
+ #: includes/class-config.php:353
4022
msgid "Account Approved Email"
4023
msgstr ""
4024
4025
+ #: includes/class-config.php:365
4026
msgid "Whether to send the user an email when his account is approved"
4027
msgstr ""
4028
4029
+ #: includes/class-config.php:370
4030
msgid "Account Rejected Email"
4031
msgstr ""
4032
4033
+ #: includes/class-config.php:377
4034
msgid "Whether to send the user an email when his account is rejected"
4035
msgstr ""
4036
4037
+ #: includes/class-config.php:382
4038
msgid "Account Deactivated Email"
4039
msgstr ""
4040
4041
+ #: includes/class-config.php:389
4042
msgid "Whether to send the user an email when his account is deactivated"
4043
msgstr ""
4044
4045
+ #: includes/class-config.php:395
4046
msgid "Account Deleted Email"
4047
msgstr ""
4048
4049
+ #: includes/class-config.php:402
4050
msgid "Whether to send the user an email when his account is deleted"
4051
msgstr ""
4052
4053
+ #: includes/class-config.php:408
4054
msgid "Password Reset Email"
4055
msgstr ""
4056
4057
+ #: includes/class-config.php:416
4058
msgid ""
4059
"Whether to send an email when users changed their password (Recommended, "
4060
"please keep on)"
4061
msgstr ""
4062
4063
+ #: includes/class-config.php:422
4064
msgid "Password Changed Email"
4065
msgstr ""
4066
4067
+ #: includes/class-config.php:429
4068
msgid ""
4069
"Whether to send the user an email when he request to reset password "
4070
"(Recommended, please keep on)"
4071
msgstr ""
4072
4073
+ #: includes/class-config.php:435
4074
msgid "Account Updated Email"
4075
msgstr ""
4076
4077
+ #: includes/class-config.php:442
4078
msgid "Whether to send the user an email when he updated their account"
4079
msgstr ""
4080
4081
+ #: includes/class-config.php:448
4082
msgid "New User Notification"
4083
msgstr ""
4084
4085
+ #: includes/class-config.php:454
4086
msgid "Whether to receive notification when a new user account is approved"
4087
msgstr ""
4088
4089
+ #: includes/class-config.php:460
4090
msgid "Account Needs Review Notification"
4091
msgstr ""
4092
4093
+ #: includes/class-config.php:467
4094
msgid "Whether to receive notification when an account needs admin review"
4095
msgstr ""
4096
4097
+ #: includes/class-config.php:472
4098
msgid "Account Deletion Notification"
4099
msgstr ""
4100
4101
+ #: includes/class-config.php:475
4102
msgid "Whether to receive notification when an account is deleted"
4103
msgstr ""
4104
4105
+ #: includes/class-config.php:498
4106
msgid ""
4107
"Are you sure you want to delete your account? This will erase all of your "
4108
"account data from the site. To delete your account enter your password below"
6309
msgid "Less than 1 year old"
6310
msgstr ""
6311
6312
+ #: includes/core/class-external-integrations.php:487
6313
#, php-format
6314
msgid "Edit the %s translation"
6315
msgstr ""
6316
6317
+ #: includes/core/class-external-integrations.php:494
6318
#, php-format
6319
msgid "Add translation to %s"
6320
msgstr ""
readme.txt CHANGED
@@ -6,7 +6,7 @@ Donate link:
6
Tags: community, member, membership, user-profile, user-registration
7
Requires at least: 4.9
8
Tested up to: 5.2
9
- Stable tag: 2.0.49
10
License: GNU Version 2 or Any Later Version
11
License URI: http://www.gnu.org/licenses/gpl-3.0.txt
12
@@ -71,6 +71,10 @@ Ultimate Member has a range of extensions that allow you to extend the power of
71
72
Our official [theme](https://ultimatemember.com/theme/) is purpose built for websites that have logged in and out users. The [theme](https://ultimatemember.com/theme/) has deep integration with Ultimate Member plugin and the extensions, different header designs for logged-in/out users and works alongside the Beaver Builder and Elementor page builders.
73
74
= Development * Translations =
75
76
If you're a developer and would like to contribute to the source code of the plugin you can do so via our [GitHub Repository](https://github.com/ultimatemember/ultimatemember).
@@ -133,6 +137,16 @@ The plugin works with popular caching plugins by automatically excluding Ultimat
133
134
= Important: UM2.0+ is a significant update to the code base from 1.3.88. Please make sure you take a full-site backup with restore point before updating the plugin =
135
136
= 2.0.49: May 29, 2019 =
137
138
* Enhancements:
6
Tags: community, member, membership, user-profile, user-registration
7
Requires at least: 4.9
8
Tested up to: 5.2
9
+ Stable tag: 2.0.50
10
License: GNU Version 2 or Any Later Version
11
License URI: http://www.gnu.org/licenses/gpl-3.0.txt
12
71
72
Our official [theme](https://ultimatemember.com/theme/) is purpose built for websites that have logged in and out users. The [theme](https://ultimatemember.com/theme/) has deep integration with Ultimate Member plugin and the extensions, different header designs for logged-in/out users and works alongside the Beaver Builder and Elementor page builders.
73
74
+ = ForumWP =
75
+
76
+ In addition to Ultimate Member we also have another plugin called [ForumWP](https://forumwpplugin.com/). ForumWP is a forum plugin which adds an online forum to your website, allowing users to create topics and write replies. Forums are a great way to build and grow an online community.
77
+
78
= Development * Translations =
79
80
If you're a developer and would like to contribute to the source code of the plugin you can do so via our [GitHub Repository](https://github.com/ultimatemember/ultimatemember).
137
138
= Important: UM2.0+ is a significant update to the code base from 1.3.88. Please make sure you take a full-site backup with restore point before updating the plugin =
139
140
+ = 2.0.50: July 02, 2019 =
141
+
142
+ * Enhancements:
143
+ - Extended hooks for 3rd party integrations
144
+
145
+ * Bugfixes:
146
+ - Fixed PHP notices when runs validation
147
+ - Fixed loop issue with Profile tabs
148
+ - Fixed home page restrictions
149
+
150
= 2.0.49: May 29, 2019 =
151
152
* Enhancements:
ultimate-member.php CHANGED
@@ -3,7 +3,7 @@
3
Plugin Name: Ultimate Member
4
Plugin URI: http://ultimatemember.com/
5
Description: The easiest way to create powerful online communities and beautiful user profiles with WordPress
6
- Version: 2.0.49
7
Author: Ultimate Member
8
Author URI: http://ultimatemember.com/
9
Text Domain: ultimate-member
3
Plugin Name: Ultimate Member
4
Plugin URI: http://ultimatemember.com/
5
Description: The easiest way to create powerful online communities and beautiful user profiles with WordPress
6
+ Version: 2.0.50
7
Author: Ultimate Member
8
Author URI: http://ultimatemember.com/
9
Text Domain: ultimate-member