diff --git a/includes/core/um-actions-profile.php b/includes/core/um-actions-profile.php index 7f7e9b37..688d9e9e 100644 --- a/includes/core/um-actions-profile.php +++ b/includes/core/um-actions-profile.php @@ -721,7 +721,7 @@ function um_profile_dynamic_meta_desc() { return; } - $locale = get_user_locale( $user_id ); + $locale = get_user_locale( $user_id ); $site_name = get_bloginfo( 'name' ); $twitter = (string) um_user( 'twitter' ); @@ -729,16 +729,77 @@ function um_profile_dynamic_meta_desc() { $twitter = trim( str_replace( 'https://twitter.com/', '', $twitter ), "/ \n\r\t\v\0" ); } - $title = trim( um_user( 'display_name' ) ); + $title = trim( um_user( 'display_name' ) ); $description = um_convert_tags( UM()->options()->get( 'profile_desc' ) ); - $url = um_user_profile_url( $user_id ); + $url = um_user_profile_url( $user_id ); - $size = 190; - $sizes = UM()->options()->get( 'photo_thumb_sizes' ); - if ( is_array( $sizes ) ) { - $size = um_closest_num( $sizes, $size ); + /** + * UM hook + * + * @type filter + * @title um_profile_dynamic_meta_image_size + * @description Change the profile SEO image size. Default 190. Available 'original'. + * @input_vars + * [{"var":"$image_size","type":"int|string","desc":"Image size"}, + * {"var":"$user_id","type":"int","desc":"User ID"}] + * @change_log + * ["Since: 2.5.5"] + * @usage add_filter( 'um_profile_dynamic_meta_image_size', 'function_name', 10, 2 ); + * @example + * + */ + $image_size = apply_filters( 'um_profile_dynamic_meta_image_size', 190, $user_id ); + + /** + * UM hook + * + * @type filter + * @title um_profile_dynamic_meta_image_type + * @description Change the profile SEO image type. Default 'profile_photo'. Available 'cover_photo', 'profile_photo', . + * @input_vars + * [{"var":"$image_type","type":"string","desc":"Image type - cover_photo or profile_photo"}, + * {"var":"$user_id","type":"int","desc":"User ID"}] + * @change_log + * ["Since: 2.5.5"] + * @usage add_filter( 'um_profile_dynamic_meta_image_type', 'function_name', 10, 2 ); + * @example + * + */ + $image_type = apply_filters( 'um_profile_dynamic_meta_image_type', 'profile_photo', $user_id ); + + if ( 'cover_photo' === $image_type ) { + if ( is_numeric( $image_size ) ) { + $sizes = UM()->options()->get( 'cover_thumb_sizes' ); + if ( is_array( $sizes ) ) { + $image_size = um_closest_num( $sizes, $image_size ); + } + $image = um_get_cover_uri( um_profile( 'cover_photo' ), $image_size ); + } else { + $image = um_get_cover_uri( um_profile( 'cover_photo' ), null ); + } + } else { + if ( is_numeric( $image_size ) ) { + $sizes = UM()->options()->get( 'photo_thumb_sizes' ); + if ( is_array( $sizes ) ) { + $image_size = um_closest_num( $sizes, $image_size ); + } + $image = um_get_user_avatar_url( $user_id, $image_size ); + } else { + $image = um_get_user_avatar_url( $user_id, 'original' ); + } } - $image = um_get_user_avatar_url( $user_id, $size ); $person = array( "@context" => "http://schema.org", @@ -764,13 +825,15 @@ function um_profile_dynamic_meta_desc() { - - + + + + - +