- added profile privacy setting for the avoiding profile indexation;

This commit is contained in:
nikitasinelnikov
2020-06-19 13:07:04 +03:00
parent a41cad52e1
commit 02fde13b39
7 changed files with 70 additions and 22 deletions
+1 -1
View File
@@ -590,7 +590,7 @@ if ( ! class_exists( 'um\core\Account' ) ) {
case 'privacy':
$args = 'profile_privacy,hide_in_members';
$args = 'profile_privacy,profile_noindex,hide_in_members';
/**
* UM hook
*
+31 -12
View File
@@ -1115,18 +1115,37 @@ if ( ! class_exists( 'um\core\Builtin' ) ) {
// account page use ( not public )
'profile_privacy' => array(
'title' => __('Profile Privacy','ultimate-member'),
'metakey' => 'profile_privacy',
'type' => 'select',
'label' => __('Profile Privacy','ultimate-member'),
'help' => __('Who can see your public profile?','ultimate-member'),
'required' => 0,
'public' => 1,
'editable' => 1,
'default' => 'Everyone',
'options' => $profile_privacy,
'allowclear' => 0,
'account_only' => true,
'title' => __( 'Profile Privacy', 'ultimate-member' ),
'metakey' => 'profile_privacy',
'type' => 'select',
'label' => __( 'Profile Privacy', 'ultimate-member' ),
'help' => __( 'Who can see your public profile?', 'ultimate-member' ),
'required' => 0,
'public' => 1,
'editable' => 1,
'default' => 'Everyone',
'options' => $profile_privacy,
'allowclear' => 0,
'account_only' => true,
'required_perm' => 'can_make_private_profile',
),
'profile_noindex' => array(
'title' => __( 'Avoid my profile indexing', 'ultimate-member' ),
'metakey' => 'profile_noindex',
'type' => 'select',
'label' => __( 'Avoid my profile indexing', 'ultimate-member' ),
'help' => __( 'Hide my profile for robots?', 'ultimate-member' ),
'required' => 0,
'public' => 1,
'editable' => 1,
'default' => '0',
'options' => array(
'0' => __( 'No', 'ultimate-member' ),
'1' => __( 'Yes', 'ultimate-member' ),
),
'allowclear' => 0,
'account_only' => true,
'required_perm' => 'can_make_private_profile',
),
+20 -6
View File
@@ -629,6 +629,20 @@ function um_profile_dynamic_meta_desc() {
if ( um_is_core_page( 'user' ) && um_get_requested_user() ) {
$user_id = um_get_requested_user();
$privacy = get_user_meta( $user_id, 'profile_privacy', true );
if ( $privacy == __( 'Only me', 'ultimate-member' ) || $privacy == 'Only me' ) {
return;
}
$noindex = get_user_meta( $user_id, 'profile_noindex', true );
if ( ! empty( $noindex ) ) { ?>
<meta name="robots" content="noindex, nofollow" />
<?php return;
}
um_fetch_user( $user_id );
$locale = get_user_locale( $user_id );
@@ -647,12 +661,12 @@ function um_profile_dynamic_meta_desc() {
$image = um_get_user_avatar_url( $user_id, $size );
$person = array(
"@context" => "http://schema.org",
"@type" => "Person",
"name" => esc_attr( $title ),
"description" => esc_attr( $description ),
"image" => esc_url( $image ),
"url" => esc_url( $url )
"@context" => "http://schema.org",
"@type" => "Person",
"name" => esc_attr( $title ),
"description" => esc_attr( $description ),
"image" => esc_url( $image ),
"url" => esc_url( $url ),
);
um_reset_user();
+12
View File
@@ -16,6 +16,18 @@ function um_dynamic_user_profile_pagetitle( $title, $sep = '' ) {
if ( um_is_core_page( 'user' ) && um_get_requested_user() ) {
$user_id = um_get_requested_user();
$privacy = get_user_meta( $user_id, 'profile_privacy', true );
if ( $privacy == __( 'Only me', 'ultimate-member' ) || $privacy == 'Only me' ) {
return $title;
}
$noindex = get_user_meta( $user_id, 'profile_noindex', true );
if ( ! empty( $noindex ) ) {
return $title;
}
um_fetch_user( um_get_requested_user() );
$profile_title = um_convert_tags( $profile_title );